[Bug fortran/43227] [4.5/4.6 Regression] ICE: segmentation fault in mio_expr
janus at gcc dot gnu dot org
gcc-bugzilla@gcc.gnu.org
Mon Apr 19 21:34:00 GMT 2010
------- Comment #21 from janus at gcc dot gnu dot org 2010-04-19 21:34 -------
(In reply to comment #20)
> Created an attachment (id=20429)
--> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=20429&action=view) [edit]
> A provisional fix for the PR
Yes, the following parts are approved (they're exactly what I had in mind):
@@ -10292,6 +10298,8 @@
{
c->ts.u.cl = gfc_new_charlen (sym->ns, ifc->ts.u.cl);
gfc_expr_replace_comp (c->ts.u.cl->length, c);
+ if (c->ts.u.cl->length && !c->ts.u.cl->resolved)
+ gfc_resolve_expr (c->ts.u.cl->length);
}
}
else if (c->ts.interface->name[0] != '\0' && !sym->attr.vtype)
@@ -10805,6 +10813,8 @@
{
sym->ts.u.cl = gfc_new_charlen (sym->ns, ifc->ts.u.cl);
gfc_expr_replace_symbols (sym->ts.u.cl->length, sym);
+ if (sym->ts.u.cl->length && !sym->ts.u.cl->resolved)
+ gfc_resolve_expr (sym->ts.u.cl->length);
}
}
else if (sym->ts.interface->name[0] != '\0')
Could you explain what the other stuff is needed for? I currently fail to see
that.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43227
More information about the Gcc-bugs
mailing list