aboutsummaryrefslogtreecommitdiff
path: root/lldb/source/Commands/CommandObjectThread.cpp
diff options
context:
space:
mode:
authorXun Li <xun@fb.com>2020-10-12 12:00:20 -0700
committerXun Li <xun@fb.com>2020-10-12 12:00:20 -0700
commitdce8f2bb25ea1d01533d8e602f2520492fa67259 (patch)
tree29c41e354bc63823ba434ffebe9840d2e61b2818 /lldb/source/Commands/CommandObjectThread.cpp
parentf09587c64ccb713af1e83d4f01a6aea3cb682c94 (diff)
downloadllvm-dce8f2bb25ea1d01533d8e602f2520492fa67259.zip
llvm-dce8f2bb25ea1d01533d8e602f2520492fa67259.tar.gz
llvm-dce8f2bb25ea1d01533d8e602f2520492fa67259.tar.bz2
[Coroutine][Sema] Only tighten the suspend call temp lifetime for final awaiter
In https://reviews.llvm.org/D87470 I added the change to tighten the lifetime of the expression awaiter.await_suspend().address. Howver it was incorrect. ExprWithCleanups will call the dtor and end the lifetime for all the temps created in the current full expr. When this is called on a normal await call, we don't want to do that. We only want to do this for the call on the final_awaiter, to avoid writing into the frame after the frame is destroyed. This change fixes it, by checking IsImplicit. Differential Revision: https://reviews.llvm.org/D89066
Diffstat (limited to 'lldb/source/Commands/CommandObjectThread.cpp')
0 files changed, 0 insertions, 0 deletions