https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69319
Andrew Pinski <pinskia at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|WAITING |RESOLVED Resolution|--- |INVALID --- Comment #5 from Andrew Pinski <pinskia at gcc dot gnu.org> --- (In reply to Frediano Ziglio from comment #4) > -O0, -O1 or -fno-strict-aliasing all works. > > But I don't understand how gcc can generate such code. > What am I missing? member and members struct access cannot alias. Please read up about C aliasing rules.