http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48133
Jan Hubicka <hubicka at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |hjl.tools at gmail dot com --- Comment #13 from Jan Hubicka <hubicka at gcc dot gnu.org> 2012-08-10 05:38:10 UTC --- This seems to work for me now jh@gcc10:~/trunk/build/gcc$ ./gfortran -O2 -c t.f90 -B ./ jh@gcc10:~/trunk/build/gcc$ cat t.f90 SUBROUTINE goo() IMPLICIT NONE CHARACTER(len=9),SAVE :: s INTEGER,SAVE :: i,j,k i=0 j=0 DO WHILE (i==0) CALL goo1(s) IF (INDEX(s,'$')/=1 .AND. INDEX(s,'!')/=1) THEN CALL goo2(k) IF (k>0) THEN i=1 END IF END IF END DO END SUBROUTINE ! gfortran -O2 -c goo.f90 (similarly with the C testcase). It would be nice to know what fixed it. H.J, do you think you can track it?