[Lldb-commits] [lldb] a703998 - [lldb] Remove legacy casts from TestStackFromStdModule
Raphael Isemann via lldb-commits
lldb-commits at lists.llvm.org
Thu Nov 19 08:07:35 PST 2020
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")
More information about the lldb-commits
mailing list