http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46201
janus at gcc dot gnu.org changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |ASSIGNED AssignedTo|unassigned at gcc dot |janus at gcc dot gnu.org |gnu.org | --- Comment #4 from janus at gcc dot gnu.org 2010-12-13 17:39:05 UTC --- The ICE is fixed by the following patch: Index: gcc/fortran/trans-expr.c =================================================================== --- gcc/fortran/trans-expr.c (revision 167750) +++ gcc/fortran/trans-expr.c (working copy) @@ -3594,7 +3594,7 @@ gfc_conv_procedure_call (gfc_se * se, gfc_symbol * if (!se->direct_byref) { - if (sym->attr.dimension || (comp && comp->attr.dimension)) + if ((sym->attr.dimension && !comp) || (comp && comp->attr.dimension)) { if (gfc_option.rtcheck & GFC_RTCHECK_BOUNDS) { Will commit as obvious after bootstrapping.