jimingham wrote:

RunThreadPlan has to handle two different use cases.  In then normal case where 
-i is 1 and -u is 0, the expression evaluation always pretends that nothing 
happened in the target.  The stop-reason is set back to whatever it was before 
expression evaluation and no events are generated.  After all, expressions can 
be IR interpreted so their success doesn't necessarily depend on running the 
process.

But when say -i is 0 and you hit a breakpoint while running the expression, 
then we need to promote that breakpoint-caused stop event to the user so the 
process state will change to "stopped at a breakpoint in the middle of this 
expression".  If you are in sync mode, then that stop event should get consumed 
on the way out of EvaluateExpression, but in async mode that event should be 
propagated so that the process event listener can fetch the event and so the 
public state gets correctly reset.


https://github.com/llvm/llvm-project/pull/144919
_______________________________________________
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

Reply via email to