A recent gfortran ICEs on the following code:

INTEGER :: J
CHARACTER(LEN=8) :: str
J=3
write(str,'(2A4)') (/(F(I,J),I=1,2)/)
IF (str.NE." ODD EVE") CALL ABORT()
CONTAINS
 FUNCTION F(K,J) RESULT(I)
  INTEGER :: K,J
  CHARACTER(LEN=J) :: I
  IF (MODULO(K,2).EQ.0) THEN
     I="EVEN"
  ELSE
     I="ODD"
  ENDIF
 END FUNCTION
END


-- 
           Summary: ICE on valid code with gfortran
           Product: gcc
           Version: 4.3.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: fortran
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: jv244 at cam dot ac dot uk


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31219

Reply via email to