------- Comment #6 from jvdelisle at verizon dot net 2008-01-13 15:18 -------
Subject: Re: Rejects valid with bogus error message:
parameter initalization
pault at gcc dot gnu dot org wrote:
> ------- Comment #5 from pault at gcc dot gnu dot org 2008-01-13 08:49 -------
> (In reply to comment #4)
>> This is similar to 34432 is some ways. I think we are not matching the (\ \)
>> correctly. I don't think gfc_match_expr has the tooling for it yet.
>
> The error message is spurious in my opinion. It is left on the stack from a
> failed match. As I say above, the problem is in simplification and,
> specifically, the simplification of reshape.
>
I agree there is a failed match. I am reducing the test case until I can get
this to succeed. I have managed to ICE a similar test case. Here:
! Rejects-valid. Fails with gfortran 4.1, 4.2 and 4.3
! For 4.3 the error message is:
!
! (/ linem, nplam /) )
! 1
!Error: Invalid character in name at (1)
!
! Found using the Fortran Company Fortran 90 Test Suite (Lite),
! Version 1.4
program splitprms
integer, parameter :: nplam = 3 ! # of plans to expand TABs
integer, parameter :: linem = 132 ! max. line length
integer, parameter :: ncntm = 39 ! max. # cont. lines
integer, dimension (linem, nplam) :: nxttab
nxttab = &
reshape ( &
(/ max( (/ (6+3*((i-6+3)/3), i= 1,linem), &
(6+2*((i-6+2)/2), i= 1,linem) /), &
(/ (6, i= 1, 2*linem) /) ), &
(/ (i, i= 1,linem) /) /),&
(/ linem, nplam /) )
print *, nxttab
end program splitprms
]$ gfc pr34556.f90
pr34556.f90: In function splitprms:
pr34556.f90:10: internal compiler error: Intrinsic function (164)
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34556