[Lldb-commits] [lldb] r202561 - Make sure the exe_ctx passed to ClangUserExpression::Execute has a valid thread.
Ed Maste
emaste at freebsd.org
Mon Mar 3 07:55:14 PST 2014
On 28 February 2014 19:17, Jim Ingham <jingham at apple.com> wrote:
> Author: jingham
> Date: Fri Feb 28 18:17:06 2014
> New Revision: 202561
>
> URL: http://llvm.org/viewvc/llvm-project?rev=202561&view=rev
> Log:
> Make sure the exe_ctx passed to ClangUserExpression::Execute has a valid thread.
>
> <rdar://problem/15949113>
Hi Jim,
I saw a couple of test failures after this change. One of them
suggests it should be permissible to execute w/o a valid thread if the
expression can be evaluated statically (and that seems to be
sensible):
1: test_backticks_no_target
(TestBackticksWithoutATarget.BackticksWithNoTargetTestCase)
A simple test of backticks without a target. ... runCmd: print `1+2-3`
runCmd failed!
error: ClangUserExpression::Execute called with no thread selected.
I added a !m_can_interpret to the condition in r202722. My change
means we will again call PrepareToExecuteJITExpression and
FinalizeJITExecution with an exe_ctx with no valid thread, but only
with a successful IRInterpreter::Interpret call (or we return error
and do not call FinalizeJITExecution).
Please let me know if there's more context in rdar 15949113 that makes
this simple change incorrect and I can try to take a second look.
More information about the lldb-commits
mailing list