[Lldb-commits] [lldb] r283289 - The collision of class C and libsystem_c.dylib:C is a failure

Jim Ingham via lldb-commits lldb-commits at lists.llvm.org
Tue Oct 4 18:19:15 PDT 2016


Author: jingham
Date: Tue Oct  4 20:19:15 2016
New Revision: 283289

URL: http://llvm.org/viewvc/llvm-project?rev=283289&view=rev
Log:
The collision of class C and libsystem_c.dylib:C is a failure
worth preserving, but not essential to the purpose of this test
so I broke it into a separate test.

Modified:
    lldb/trunk/packages/Python/lldbsuite/test/lang/cpp/scope/TestCppScope.py

Modified: lldb/trunk/packages/Python/lldbsuite/test/lang/cpp/scope/TestCppScope.py
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/packages/Python/lldbsuite/test/lang/cpp/scope/TestCppScope.py?rev=283289&r1=283288&r2=283289&view=diff
==============================================================================
--- lldb/trunk/packages/Python/lldbsuite/test/lang/cpp/scope/TestCppScope.py (original)
+++ lldb/trunk/packages/Python/lldbsuite/test/lang/cpp/scope/TestCppScope.py Tue Oct  4 20:19:15 2016
@@ -11,9 +11,19 @@ class TestCppScopes(TestBase):
 
     mydir = TestBase.compute_mydir(__file__)
 
-    @expectedFailureDarwin(bugnumber="<rdar://problem/28623427>")
     @expectedFailureAll(oslist=["windows"], bugnumber="llvm.org/pr24764")
-    def test_with_run_command(self):
+    def test_all_but_c(self):
+        self.do_test(False)
+
+    # There's a global symbol in libsystem on Darwin that messes up
+    # the lookup of class C.  Breaking that test out from the others
+    # since that is a odd failure, and I don't want it to mask the
+    # real purpose of this test.
+    @expectedFailureDarwin(bugnumber="<rdar://problem/28623427>")
+    def test_c(self):
+        self.do_test(True)
+    
+    def do_test(self, test_c):
         self.build()
 
         # Get main source file
@@ -75,6 +85,11 @@ class TestCppScopes(TestBase):
                 "target variable returns wrong variable " + name)
 
         for name in global_variables_assert:
+            if name is "C::a" and not test_c:
+                continue
+            if name is not "C::a" and test_c:
+                continue
+
             value = frame.EvaluateExpression(name)
             assert_value = global_variables_assert[name]
             self.assertTrue(




More information about the lldb-commits mailing list