1""" 2Test the robustness of lldb expression parser. 3""" 4 5 6 7import lldb 8from lldbsuite.test.lldbtest import * 9 10 11class Radar8638051TestCase(TestBase): 12 13 mydir = TestBase.compute_mydir(__file__) 14 15 def test_expr_commands(self): 16 """The following expression commands should not crash.""" 17 self.build() 18 19 self.runCmd("file " + self.getBuildArtifact("a.out"), CURRENT_EXECUTABLE_SET) 20 21 self.runCmd("breakpoint set -n c") 22 23 self.runCmd("run", RUN_SUCCEEDED) 24 25 self.expect_expr("val", result_type="int", result_value="1") 26 self.expect_expr("*(&val)", result_type="int", result_value="1") 27 28 # rdar://problem/8638051 29 # lldb expression command: Could this crash be avoided 30 self.expect("expression &val", 31 startstr="(int *) $2 = ") 32 # (int *) $2 = 0x.... 33