$ cat forall.f90
character(12), dimension(2) :: a, b
a= (/"abcdefghijkl","mnopqrstuvwx"/)
! OK because it uses gfc_trans_assignment
forall (i=1:2) b(i) = a(i)
! Broken - gfc_trans_assign_need_temp has no handling of string lengths
forall (i=1:2) a(3-i) = a(i)
end

$ /irun/bin/gfortran forall.f90
forall.f90: In function 'MAIN__':
forall.f90:4: internal compiler error: in gfc_trans_scalar_assign, at
fortran/tr
ans-expr.c:3212
Please submit a full bug report,
with preprocessed source if appropriate.
See <URL:http://gcc.gnu.org/bugs.html> for instructions.


-- 
           Summary: ICE in FORALL character assignment with dependences
           Product: gcc
           Version: 4.2.0
            Status: UNCONFIRMED
          Keywords: ice-on-valid-code
          Severity: normal
          Priority: P3
         Component: fortran
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: pault at gcc dot gnu dot org


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

Reply via email to