Author: Raphael Isemann Date: 2020-11-19T17:07:12+01:00 New Revision: a703998e66f7500442e8f55bfcddf4a5820ca023
URL: https://github.com/llvm/llvm-project/commit/a703998e66f7500442e8f55bfcddf4a5820ca023 DIFF: https://github.com/llvm/llvm-project/commit/a703998e66f7500442e8f55bfcddf4a5820ca023.diff LOG: [lldb] Remove legacy casts from TestStackFromStdModule We can handle all the types in the expression evaluator now without casting. On Linux, we have a system header declaration that is still causing issues, so I'm skipping the test there until I get around to fix this. Added: Modified: lldb/test/API/commands/expression/import-std-module/stack/TestStackFromStdModule.py Removed: ################################################################################ diff --git a/lldb/test/API/commands/expression/import-std-module/stack/TestStackFromStdModule.py b/lldb/test/API/commands/expression/import-std-module/stack/TestStackFromStdModule.py index fe19a4e5f1b3..d9a7e186fa6f 100644 --- a/lldb/test/API/commands/expression/import-std-module/stack/TestStackFromStdModule.py +++ b/lldb/test/API/commands/expression/import-std-module/stack/TestStackFromStdModule.py @@ -12,6 +12,7 @@ class TestStack(TestBase): @add_test_categories(["libc++"]) @skipIf(compiler=no_match("clang")) + @skipIfLinux # Declaration in some Linux headers causes LLDB to crash. def test(self): self.build() @@ -21,25 +22,50 @@ def test(self): self.runCmd("settings set target.import-std-module true") # Test std::stack functionality with a std::deque. + stack_type = "std::stack<C, std::deque<C, std::allocator<C> > >" + size_type = stack_type + "::size_type" + + self.expect_expr("s_deque", result_type=stack_type) self.expect("expr s_deque.pop()") self.expect("expr s_deque.push({4})") - self.expect("expr (size_t)s_deque.size()", substrs=['(size_t) $0 = 3']) - self.expect("expr (int)s_deque.top().i", substrs=['(int) $1 = 4']) + self.expect_expr("s_deque.size()", + result_type=size_type, + result_value="3") + self.expect_expr("s_deque.top().i", + result_type="int", + result_value="4") self.expect("expr s_deque.emplace(5)") - self.expect("expr (int)s_deque.top().i", substrs=['(int) $2 = 5']) + self.expect_expr("s_deque.top().i", + result_type="int", + result_value="5") # Test std::stack functionality with a std::vector. + stack_type = "std::stack<C, std::vector<C, std::allocator<C> > >" + size_type = stack_type + "::size_type" + + self.expect_expr("s_vector", result_type=stack_type) self.expect("expr s_vector.pop()") self.expect("expr s_vector.push({4})") - self.expect("expr (size_t)s_vector.size()", substrs=['(size_t) $3 = 3']) - self.expect("expr (int)s_vector.top().i", substrs=['(int) $4 = 4']) + self.expect_expr("s_vector.size()", + result_type=size_type, + result_value="3") + self.expect_expr("s_vector.top().i", + result_type="int", + result_value="4") self.expect("expr s_vector.emplace(5)") - self.expect("expr (int)s_vector.top().i", substrs=['(int) $5 = 5']) + self.expect_expr("s_vector.top().i", + result_type="int", + result_value="5") # Test std::stack functionality with a std::list. + stack_type = "std::stack<C, std::list<C, std::allocator<C> > >" + size_type = stack_type + "::size_type" + self.expect_expr("s_list", result_type=stack_type) self.expect("expr s_list.pop()") self.expect("expr s_list.push({4})") - self.expect("expr (size_t)s_list.size()", substrs=['(size_t) $6 = 3']) - self.expect("expr (int)s_list.top().i", substrs=['(int) $7 = 4']) + self.expect_expr("s_list.size()", + result_type=size_type, + result_value="3") + self.expect_expr("s_list.top().i", result_type="int", result_value="4") self.expect("expr s_list.emplace(5)") - self.expect("expr (int)s_list.top().i", substrs=['(int) $8 = 5']) + self.expect_expr("s_list.top().i", result_type="int", result_value="5") _______________________________________________ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits