http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55501
--- Comment #8 from Tobias Burnus <burnus at gcc dot gnu.org> 2012-11-28 10:54:56 UTC --- (In reply to comment #5) > + && tsource->expr_type != EXPR_STRUCTURE) That's not okay: If you have integer, allocatable :: a(:), b(:) one has an EXPR_STRUCTURE for "[a,b]" but not a constant expression. One has to do a deep check. Well, gfc_is_constant_expr() is supposed to do this. (Or should gfc_check_init_expr be used? I always confuse the two. For F90/F95 it makes a difference, for F200x it doesn't, and gfortran's usage is a mess.)