diff options
| author | Dimitry Andric <dim@FreeBSD.org> | 2017-12-18 20:12:36 +0000 | 
|---|---|---|
| committer | Dimitry Andric <dim@FreeBSD.org> | 2017-12-18 20:12:36 +0000 | 
| commit | ef5d0b5e97ec8e6fa395d377b09aa7755e345b4f (patch) | |
| tree | 27916256fdeeb57d10d2f3d6948be5d71a703215 /packages/Python/lldbsuite/test/expression_command/top-level | |
| parent | 76e0736e7fcfeb179779e49c05604464b1ccd704 (diff) | |
Notes
Diffstat (limited to 'packages/Python/lldbsuite/test/expression_command/top-level')
4 files changed, 25 insertions, 27 deletions
| diff --git a/packages/Python/lldbsuite/test/expression_command/top-level/Makefile b/packages/Python/lldbsuite/test/expression_command/top-level/Makefile index 7146f227b98a..48eec5c5d268 100644 --- a/packages/Python/lldbsuite/test/expression_command/top-level/Makefile +++ b/packages/Python/lldbsuite/test/expression_command/top-level/Makefile @@ -1,12 +1,13 @@  LEVEL = ../../make -default: a.out dummy -  CXX_SOURCES := main.cpp test.cpp -dummy: dummy.cpp +include $(LEVEL)/Makefile.rules -clean:: -	rm -rf dummy dummy.dSYM +a.out: dummy -include $(LEVEL)/Makefile.rules +dummy: +	$(MAKE) -f dummy.mk + +clean:: +	$(MAKE) -f dummy.mk clean diff --git a/packages/Python/lldbsuite/test/expression_command/top-level/TestTopLevelExprs.py b/packages/Python/lldbsuite/test/expression_command/top-level/TestTopLevelExprs.py index 137c40398870..dfe95a1a9fa7 100644 --- a/packages/Python/lldbsuite/test/expression_command/top-level/TestTopLevelExprs.py +++ b/packages/Python/lldbsuite/test/expression_command/top-level/TestTopLevelExprs.py @@ -57,23 +57,6 @@ class TopLevelExpressionsTestCase(TestBase):          self.runCmd("run", RUN_SUCCEEDED)      @add_test_categories(['pyapi']) -    @expectedFailureAndroid(api_levels=[21, 22], 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): diff --git a/packages/Python/lldbsuite/test/expression_command/top-level/dummy.cpp b/packages/Python/lldbsuite/test/expression_command/top-level/dummy.cpp index 31204b21d972..fa49bd4bda7e 100644 --- a/packages/Python/lldbsuite/test/expression_command/top-level/dummy.cpp +++ b/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;  } diff --git a/packages/Python/lldbsuite/test/expression_command/top-level/dummy.mk b/packages/Python/lldbsuite/test/expression_command/top-level/dummy.mk new file mode 100644 index 000000000000..af97678b2cf5 --- /dev/null +++ b/packages/Python/lldbsuite/test/expression_command/top-level/dummy.mk @@ -0,0 +1,6 @@ +LEVEL = ../../make + +CXX_SOURCES := dummy.cpp +EXE := dummy + +include $(LEVEL)/Makefile.rules | 
