https://gcc.gnu.org/bugzilla/show_bug.cgi?id=82388
--- Comment #1 from Zhendong Su <su at cs dot ucdavis.edu> --- This one also seems to be related, but it fails non-deterministically. $ gcctk -Os tmp.c; a.out 32767 $ gcctk -Os tmp.c; a.out 0 $ gcctk -Os tmp.c; a.out 32767 $ gcctk -Os tmp.c; a.out 32767 $ gcctk -Os tmp.c; a.out 32767 $ ----------------------------------- int printf (const char *, ...); struct A { int:30; int b; }; struct A fn1 () { struct A e[9][5] = {{{1}}}; return e[8][0]; } int main () { struct A f = fn1 (); printf ("%d\n", f.b); return 0; }