diff options
author | Raphael Isemann <teemperor@gmail.com> | 2019-10-17 21:27:26 +0000 |
---|---|---|
committer | Raphael Isemann <teemperor@gmail.com> | 2019-10-17 21:27:26 +0000 |
commit | 21c1243e4b7b17dd1e33784f51ca7f71e54ede73 (patch) | |
tree | 6af0784c7015bf1e12e0e3be62b0b96c506b939a | |
parent | 7217c867bbce5be7270b61dcbcdc1c2817555b2f (diff) |
[lldb] X-fail tests that use constructors in expressions on Windows
These tests were testing a bug related to constructors. It seems that
on Windows the expression command can't construct objects (or at least,
call their constructor explicitly which is required for the tests), so
this is just x-failing them until Windows actually supports constructor calls.
git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@375173 91177308-0d34-0410-b5e6-96231b3b80d8
2 files changed, 19 insertions, 1 deletions
diff --git a/packages/Python/lldbsuite/test/commands/expression/call-overridden-method/TestCallOverriddenMethod.py b/packages/Python/lldbsuite/test/commands/expression/call-overridden-method/TestCallOverriddenMethod.py index 93b918542..f630aef9e 100644 --- a/packages/Python/lldbsuite/test/commands/expression/call-overridden-method/TestCallOverriddenMethod.py +++ b/packages/Python/lldbsuite/test/commands/expression/call-overridden-method/TestCallOverriddenMethod.py @@ -53,3 +53,20 @@ class ExprCommandCallOverriddenMethod(TestBase): # Test with locally constructed instances. self.expect("expr Base().foo()", substrs=["1"]) self.expect("expr Derived().foo()", substrs=["2"]) + + @expectedFailureAll(oslist=["windows"], bugnumber="llvm.org/pr43707") + def test_call_on_temporary(self): + """Test calls to overridden methods in derived classes.""" + self.build() + + # Set breakpoint in main and run exe + self.runCmd("file " + self.getBuildArtifact("a.out"), + CURRENT_EXECUTABLE_SET) + lldbutil.run_break_set_by_file_and_line( + self, "main.cpp", self.line, num_expected_locations=-1, loc_exact=True) + + self.runCmd("run", RUN_SUCCEEDED) + + # Test with locally constructed instances. + self.expect("expr Base().foo()", substrs=["1"]) + self.expect("expr Derived().foo()", substrs=["2"]) diff --git a/packages/Python/lldbsuite/test/commands/expression/ignore-artificial-constructors/TestIgnoreArtificialConstructors.py b/packages/Python/lldbsuite/test/commands/expression/ignore-artificial-constructors/TestIgnoreArtificialConstructors.py index 03424658f..e33423ad7 100644 --- a/packages/Python/lldbsuite/test/commands/expression/ignore-artificial-constructors/TestIgnoreArtificialConstructors.py +++ b/packages/Python/lldbsuite/test/commands/expression/ignore-artificial-constructors/TestIgnoreArtificialConstructors.py @@ -1,4 +1,5 @@ from lldbsuite.test import lldbinline from lldbsuite.test import decorators -lldbinline.MakeInlineTest(__file__, globals(), None) +lldbinline.MakeInlineTest(__file__, globals(), [lldbinline.expectedFailureAll( + oslist=["windows"], bugnumber="llvm.org/pr43707")]) |