On 11/2/23 21:18, Nathaniel Shead wrote:
Bootstrapped and regtested on x86-64_pc_linux_gnu.
I'm not entirely sure if the change I made to have destructors clobber with
CLOBBER_EOL instead of CLOBBER_UNDEF is appropriate, but nothing seemed to have
broken by doing this and I wasn't able to find anything else that really
depended on this distinction other than a warning pass. Otherwise I could
experiment with a new clobber kind for destructor calls.
It seems wrong to me: CLOBBER_EOL is documented to mean that the storage
is expiring at that point as well, which a (pseudo-)destructor does not
imply; it's perfectly valid to destroy an object and then create another
in the same storage.
We probably do want another clobber kind for end of object lifetime.
And/or one for beginning of object lifetime.
Jason