https://gcc.gnu.org/bugzilla/show_bug.cgi?id=89990

--- Comment #1 from Eric Blake <eblake at redhat dot com> ---
Other references to compound initializers going out of scope and causing
problems:
https://stackoverflow.com/questions/47691857/lifetime-of-a-compound-literal
https://wiki.sei.cmu.edu/confluence/display/c/DCL21-C.+Understand+the+storage+of+compound+literals

Having the compiler flag the programmer's use of undefined behavior, especially
where the use-after-free SEEMS to work because an earlier version of the
compiler deferred cleanup of the stack space until the function exited (even
though it was entitled to do so as soon as the conditional's scope ended),
would be handy.

Reply via email to