You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
[move-function-addr] When inserting compensating destroy_addr, insert debug_value undef before the destroy_addr.
Otherwise in async contexts we may propagate forward an original non-invalidated
debug_value created a use of the invalidated memory. This then causes the
MemoryLifetimeVerifier to trigger.
I also discovered via this test case that we were not ignoring end_access as a
liveness use when visiting non-closure uses. With this change we ignore it
now. That being said, the reason why the end_access has not been an issue
previously is that due to the hacky way that the move builtin lowers, we
actually create the move outside of the relevant access scope (which even worse
is a read!). I am going to fix that in a different PR though.
0 commit comments