$ cat fc019.f90
! Original bug-report submitted by Walt Brainerd, The Fortran Company
character(len=128) :: ASCII = ' '
! This works
integer i
i = len (ASCII(1:0))
print *, i
! This works too
print *, len (ASCII(1:2))
! This fails
print *, len (ASCII(1:0))
end
$ gfc fc019.f90 && ./a.out
fc019.f90: In function �MAIN__�:
fc019.f90:13: internal compiler error: in expand_expr_addr_expr_1, at
expr.c:6218
Note that is works for ASCII(1,2) and it works for ASCII(1:0) if you use a
variable to store the result.
--
Summary: LEN of a null slice and temporaries don't mix up well
Product: gcc
Version: unknown
Status: UNCONFIRMED
Severity: normal
Priority: P2
Component: fortran
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: fxcoudert at gcc dot gnu dot org
CC: gcc-bugs at gcc dot gnu dot org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=20833