http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47224
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 | Summary|ICE with procedure pointer |[F03] ICE with procedure |component |pointer component --- Comment #3 from janus at gcc dot gnu.org 2011-01-09 17:45:24 UTC --- Mine. The following patch fixes the test case and does not produce any regressions on the "proc_*" test cases, which means it's probably fine: Index: gcc/fortran/resolve.c =================================================================== --- gcc/fortran/resolve.c (revision 168609) +++ gcc/fortran/resolve.c (working copy) @@ -1528,7 +1528,6 @@ resolve_actual_arglist (gfc_actual_arglist *arg, p gfc_symtree *parent_st; gfc_expr *e; int save_need_full_assumed_size; - gfc_component *comp; for (; arg; arg = arg->next) { @@ -1548,20 +1547,6 @@ resolve_actual_arglist (gfc_actual_arglist *arg, p continue; } - if (gfc_is_proc_ptr_comp (e, &comp)) - { - e->ts = comp->ts; - if (e->expr_type == EXPR_PPC) - { - if (comp->as != NULL) - e->rank = comp->as->rank; - e->expr_type = EXPR_FUNCTION; - } - if (gfc_resolve_expr (e) == FAILURE) - return FAILURE; - goto argument_list; - } - if (e->expr_type == EXPR_VARIABLE && e->symtree->n.sym->attr.generic && no_formal_args Will commit as obvious after a full regtest.