------- Comment #17 from dominiq at lps dot ens dot fr 2009-12-15 14:15 ------- > But in comment #5 you wrote that it passes with the print, right? So, this > dump > contains correct or incorrect code?
The dump for 4.5 is from the incorrect code. The behavior of this bug has change over time, it started for -m64 only with/without print, then it failes also with -m32, finally at revision 155239 it fails with the print: ... print *, temp if (any (temp .ne. (/100, 100, 100, 210, 210, 210, 310, 310, 337, 337/))) & call abort end program [karma] f90/bug% gfc -O3 where_2.f90 [karma] f90/bug% a.out 100 100 100 210 210 210 310 337 310 310 Abort [karma] f90/bug% gfc -m64 -O3 where_2.f90 [karma] f90/bug% a.out 100 100 100 210 210 210 310 337 310 337 Abort Note that the content of temp change with the mode. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=41082