https://gcc.gnu.org/bugzilla/show_bug.cgi?id=120901
--- Comment #2 from Andrew Pinski <pinskia at gcc dot gnu.org> --- (In reply to Andrew Pinski from comment #1) > Note with -O2 -W -Wall we do get an uninitialized variable warning even: > > <source>:8:18: warning: 'argc.0' is used uninitialized [-Wuninitialized] > 8 | struct c a; > | ^ > <source>:6:9: note: 'argc.0' was declared here > 6 | }; > | ^ That is with: ``` int main(int argc, char *argv[]) { goto lab; struct c { int a[argc]; }; lab: ; struct c a; return sizeof(a); } ```