http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50659
--- Comment #3 from janus at gcc dot gnu.org 2011-10-07 19:32:25 UTC --- Here is a variant which gives the same ICE, but after a regular error message: program p implicit none procedure(Proc) :: Proc_Get contains function Proc (arg) integer :: arrSize double precision, dimension(arrSize) :: proc double precision :: arg end function end double precision, dimension(arrSize) :: proc 1 Error: Variable 'arrsize' cannot appear in the expression at (1) f951: internal compiler error: in replace_symbol, at fortran/expr.c:4155