http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55960
--- Comment #3 from janus at gcc dot gnu.org 2013-01-13 16:57:18 UTC --- This fixes the ICE in comment 0: Index: gcc/fortran/expr.c =================================================================== --- gcc/fortran/expr.c (revision 195125) +++ gcc/fortran/expr.c (working copy) @@ -4335,9 +4335,11 @@ replace_comp (gfc_expr *expr, gfc_symbol *sym, int the symtree rather than create a new one (and probably fail later). */ stree = gfc_find_symtree (ns ? ns->sym_root : gfc_current_ns->sym_root, expr->symtree->n.sym->name); - gcc_assert (stree); - stree->n.sym->attr = expr->symtree->n.sym->attr; - expr->symtree = stree; + if (stree) + { + stree->n.sym->attr = expr->symtree->n.sym->attr; + expr->symtree = stree; + } } return false; }