http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45909
Joost VandeVondele <Joost.VandeVondele at pci dot uzh.ch> changed: What |Removed |Added ---------------------------------------------------------------------------- Keywords| |ice-on-invalid-code Status|UNCONFIRMED |NEW Last reconfirmed| |2010.10.06 10:19:29 Known to work| |4.6.0 Ever Confirmed|0 |1 Known to fail| |4.4.0, 4.5.0 Severity|major |normal --- Comment #1 from Joost VandeVondele <Joost.VandeVondele at pci dot uzh.ch> 2010-10-06 10:19:29 UTC --- This is indeed failing for 4.4 and 4.5, but passes in 4.6. I'll leave it open to see if someone wants to backport the fix to 4.X. It is invalid code as you suggested: > gfortran test.f90 test.f90:14.43: & LevelSpecsType(my_number,(/0.,610.,1500., zerosData /)) 1 Error: Array 'zerosdata' at (1) is a variable, which does not reduce to a constant expression So you can declare zerosData with a parameter attribute to get it to work in 4.5 as well.