1""" 2Make sure that ivars of Objective-C++ classes are visible in LLDB. 3""" 4 5 6 7import lldb 8from lldbsuite.test.decorators import * 9from lldbsuite.test.lldbtest import * 10from lldbsuite.test import lldbutil 11 12 13class ObjCXXTestCase(TestBase): 14 15 mydir = TestBase.compute_mydir(__file__) 16 17 def test_break(self): 18 """Test ivars of Objective-C++ classes""" 19 if self.getArchitecture() == 'i386': 20 self.skipTest("requires Objective-C 2.0 runtime") 21 22 self.build() 23 exe = self.getBuildArtifact("a.out") 24 self.runCmd("file " + exe, CURRENT_EXECUTABLE_SET) 25 26 lldbutil.run_break_set_by_source_regexp( 27 self, 'breakpoint 1', num_expected_locations=1) 28 29 self.runCmd("run", RUN_SUCCEEDED) 30 31 self.expect("expr f->f", "Found ivar in class", 32 substrs=["= 3"]) 33