[Lldb-commits] [PATCH] D39727: Make TestTopLevelExprs more robust in face of linker GC
Pavel Labath via Phabricator via lldb-commits
lldb-commits at lists.llvm.org
Wed Nov 8 02:49:29 PST 2017
This revision was automatically updated to reflect the committed changes.
Closed by commit rL317678: Make TestTopLevelExprs more robust in face of linker GC (authored by labath).
Repository:
rL LLVM
https://reviews.llvm.org/D39727
Files:
lldb/trunk/packages/Python/lldbsuite/test/expression_command/top-level/TestTopLevelExprs.py
lldb/trunk/packages/Python/lldbsuite/test/expression_command/top-level/dummy.cpp
Index: lldb/trunk/packages/Python/lldbsuite/test/expression_command/top-level/TestTopLevelExprs.py
===================================================================
--- lldb/trunk/packages/Python/lldbsuite/test/expression_command/top-level/TestTopLevelExprs.py
+++ lldb/trunk/packages/Python/lldbsuite/test/expression_command/top-level/TestTopLevelExprs.py
@@ -57,23 +57,6 @@
self.runCmd("run", RUN_SUCCEEDED)
@add_test_categories(['pyapi'])
- @expectedFailureAndroid(api_levels=list(range(22+1)), bugnumber="llvm.org/pr27787")
- @expectedFailureAll(
- oslist=["linux"],
- archs=[
- "arm",
- "aarch64"],
- bugnumber="llvm.org/pr27787")
- @expectedFailureAll(
- bugnumber="llvm.org/pr28353",
- oslist=["linux"],
- archs=[
- "i386",
- "x86_64"],
- compiler="gcc",
- compiler_version=[
- "<",
- "4.9"])
@skipIf(debug_info="gmodules") # not relevant
@skipIf(oslist=["windows"]) # Error in record layout on Windows
def test_top_level_expressions(self):
Index: lldb/trunk/packages/Python/lldbsuite/test/expression_command/top-level/dummy.cpp
===================================================================
--- lldb/trunk/packages/Python/lldbsuite/test/expression_command/top-level/dummy.cpp
+++ lldb/trunk/packages/Python/lldbsuite/test/expression_command/top-level/dummy.cpp
@@ -1,7 +1,15 @@
#include <stdio.h>
-int main()
-{
- printf("This is a dummy\n"); // Set breakpoint here
- return 0;
+// These are needed to make sure that the linker does not strip the parts of the
+// C++ abi library that are necessary to execute the expressions in the
+// debugger. It would be great if we did not need to do this, but the fact that
+// LLDB cannot conjure up the abi library on demand is not relevant for testing
+// top level expressions.
+struct DummyA {};
+struct DummyB : public virtual DummyA {};
+
+int main() {
+ DummyB b;
+ printf("This is a dummy\n"); // Set breakpoint here
+ return 0;
}
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D39727.122046.patch
Type: text/x-patch
Size: 2075 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/lldb-commits/attachments/20171108/c7445c20/attachment-0001.bin>
More information about the lldb-commits
mailing list