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

Andrew Pinski <pinskia at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |RESOLVED
         Resolution|---                         |INVALID

--- Comment #1 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
The compound literal is consider an anonymous variable in the current scope. 
So in your case you take the address of it and then the scope ends but you
access it afterwards.

In previous versions of gcc, the compound literal was put in the function level
scope rather than in the current scope. Which is why it worked previously.  But
the code was undefined.  This was added to the changes page too.

Reply via email to