This seems evil: imagine converting a `return` into a `become` and suddenly you get issues because the behavior changed ?

Instead, I would propose to make it visible: if you want to have locals that have a destructor: no problem, but wrap them in an explicit `{}` block so that it's *visible* they get destroyed before the `become` instruction.