http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47850
--- Comment #11 from Jerry DeLisle <jvdelisle at gcc dot gnu.org> 2011-03-06 14:59:05 UTC --- Info: Does not fix it but why this behavior with the test case? Index: expr.c =================================================================== --- expr.c (revision 170543) +++ expr.c (working copy) @@ -946,6 +946,7 @@ gfc_is_constant_expr (gfc_expr *e) return 1; case EXPR_ARRAY: + /* return 1 here and it works. */ return gfc_constant_ac (e); default: