https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104635 --- Comment #8 from Szüllő Ádám <szullo.adam at gmail dot com> --- Yes, the code as a whole is invalid. But for(int i=0; i<4; i++) is well defined.