summaryrefslogtreecommitdiffstats
path: root/lldb/examples/darwin/heap_find/heap.py
diff options
context:
space:
mode:
authorGreg Clayton <gclayton@apple.com>2015-01-14 21:37:19 +0000
committerGreg Clayton <gclayton@apple.com>2015-01-14 21:37:19 +0000
commit6e7ab02cffea3844aba7bbe33e53f5b7fd97bde6 (patch)
tree2e1493e5d1b772b8da77deaf4940fd603b18aca5 /lldb/examples/darwin/heap_find/heap.py
parentda5a97594a1e2887e1df7f17510dac0d66e5b8ce (diff)
downloadbcm5719-llvm-6e7ab02cffea3844aba7bbe33e53f5b7fd97bde6.tar.gz
bcm5719-llvm-6e7ab02cffea3844aba7bbe33e53f5b7fd97bde6.zip
Specify ObjC++ when running heap commands in case we are stopped in a frame with another language.
This ensures the expression gets runs with the correct language. <rdar://problem/18816647> llvm-svn: 226041
Diffstat (limited to 'lldb/examples/darwin/heap_find/heap.py')
-rw-r--r--lldb/examples/darwin/heap_find/heap.py4
1 files changed, 4 insertions, 0 deletions
diff --git a/lldb/examples/darwin/heap_find/heap.py b/lldb/examples/darwin/heap_find/heap.py
index a7273758816..2ebff60ba7a 100644
--- a/lldb/examples/darwin/heap_find/heap.py
+++ b/lldb/examples/darwin/heap_find/heap.py
@@ -406,6 +406,7 @@ info''' % (options.max_frames, options.max_history, addr);
expr_options.SetIgnoreBreakpoints(True);
expr_options.SetTimeoutInMicroSeconds (5*1000*1000) # 5 second timeout
expr_options.SetTryAllThreads (True)
+ expr_options.SetLanguage(lldb.eLanguageTypeObjC_plus_plus)
expr_sbvalue = frame.EvaluateExpression (expr, expr_options)
if options.verbose:
print "expression:"
@@ -443,6 +444,7 @@ def display_match_results (result, options, arg_str_description, expr, print_no_
expr_options.SetFetchDynamicValue(lldb.eNoDynamicValues);
expr_options.SetTimeoutInMicroSeconds (30*1000*1000) # 30 second timeout
expr_options.SetTryAllThreads (False)
+ expr_options.SetLanguage (lldb.eLanguageTypeObjC_plus_plus)
expr_sbvalue = frame.EvaluateExpression (expr, expr_options)
if options.verbose:
print "expression:"
@@ -990,6 +992,7 @@ def objc_refs(debugger, command, result, dict):
expr_options.SetIgnoreBreakpoints(True);
expr_options.SetTimeoutInMicroSeconds (3*1000*1000) # 3 second infinite timeout
expr_options.SetTryAllThreads (True)
+ expr_options.SetLanguage(lldb.eLanguageTypeObjC_plus_plus)
num_objc_classes_value = frame.EvaluateExpression("(int)objc_getClassList((void *)0, (int)0)", expr_options)
if not num_objc_classes_value.error.Success():
result.AppendMessage('error: %s' % num_objc_classes_value.error.GetCString())
@@ -1093,6 +1096,7 @@ int nc = (int)objc_getClassList(baton.classes, sizeof(baton.classes)/sizeof(Clas
expr_options.SetIgnoreBreakpoints(True);
expr_options.SetTimeoutInMicroSeconds (1*1000*1000) # 1 second timeout
expr_options.SetTryAllThreads (True)
+ expr_options.SetLanguage(lldb.eLanguageTypeObjC_plus_plus)
expr_sbvalue = frame.EvaluateExpression (addr_expr_str, expr_options)
if expr_sbvalue.error.Success():
isa = expr_sbvalue.unsigned
OpenPOWER on IntegriCloud