summaryrefslogtreecommitdiffstats
path: root/lldb/scripts/Python/interface/SBExpressionOptions.i
diff options
context:
space:
mode:
authorJim Ingham <jingham@apple.com>2013-11-07 00:11:47 +0000
committerJim Ingham <jingham@apple.com>2013-11-07 00:11:47 +0000
commit6fbc48bc427f4d8368bcb37116843045981e9b76 (patch)
tree7c1e9f97d44d3c381aa732274ecda09ded4a5287 /lldb/scripts/Python/interface/SBExpressionOptions.i
parentbed356a9eae0d45b878410b5c42d6ff278bb0c83 (diff)
downloadbcm5719-llvm-6fbc48bc427f4d8368bcb37116843045981e9b76.tar.gz
bcm5719-llvm-6fbc48bc427f4d8368bcb37116843045981e9b76.zip
This patch does a couple of things.
It completes the job of using EvaluateExpressionOptions consistently throughout the inferior function calling mechanism in lldb begun in Greg's patch r194009. It removes a handful of alternate calls into the ClangUserExpression/ClangFunction/ThreadPlanCallFunction which were there for convenience. Using the EvaluateExpressionOptions removes the need for them. Using that it gets the --debug option from Greg's patch to work cleanly. It also adds another EvaluateExpressionOption to not trap exceptions when running expressions. You shouldn't use this option unless you KNOW your expression can't throw beyond itself. This is: <rdar://problem/15374885> At present this is only available through the SB API's or python. It fixes a bug where function calls would unset the ObjC & C++ exception breakpoints without checking whether they were set by somebody else already. llvm-svn: 194182
Diffstat (limited to 'lldb/scripts/Python/interface/SBExpressionOptions.i')
-rw-r--r--lldb/scripts/Python/interface/SBExpressionOptions.i7
1 files changed, 7 insertions, 0 deletions
diff --git a/lldb/scripts/Python/interface/SBExpressionOptions.i b/lldb/scripts/Python/interface/SBExpressionOptions.i
index 703d51c8483..06b9be310de 100644
--- a/lldb/scripts/Python/interface/SBExpressionOptions.i
+++ b/lldb/scripts/Python/interface/SBExpressionOptions.i
@@ -71,6 +71,13 @@ public:
void
SetTryAllThreads (bool run_others = true);
+ bool
+ GetTrapExceptions () const;
+
+ %feature("docstring", "Sets whether to abort expression evaluation if an exception is thrown while executing. Don't set this to false unless you know the function you are calling traps all exceptions itself.") SetTryAllThreads;
+ void
+ SetTrapExceptions (bool trap_exceptions = true);
+
protected:
SBExpressionOptions (lldb_private::EvaluateExpressionOptions &expression_options);
OpenPOWER on IntegriCloud