$> cat ice.f90
INTEGER, PARAMETER :: i = 42
INTEGER, PARAMETER :: array(1) = (/ 1 /)
INTEGER, PARAMETER :: unknown = array(shape(i))
END
$> gfortran-svn ice.f90
f951: internal compiler error: in find_array_section, at fortran/expr.c:1213
$> gfortran-svn --version
GNU Fortran (GCC) 4.4.0 20090101
intel 10.1:
$> ifort -warn all ice.f90
fortcom: Error: ice.f90, line 3: When using this inquiry function, the shape of
this object cannot be evaluated to a constant. [SHAPE]
INTEGER, PARAMETER :: unknown = array(shape(i))
--------------------------------------------^
Lahey: "Shape of arrays on left and right sides of assignment do not conform."
--
Summary: ICE on zero-sized array in initialization expression
Product: gcc
Version: 4.4.0
Status: UNCONFIRMED
Keywords: ice-on-invalid-code
Severity: normal
Priority: P3
Component: fortran
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: dfranke at gcc dot gnu dot org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38709