This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug fortran/33395] [ISO_C_BINDING ?] ICE (segfault) in gfc_conv_initializer
- From: "crickett at lanl dot gov" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 11 Sep 2007 19:51:03 -0000
- Subject: [Bug fortran/33395] [ISO_C_BINDING ?] ICE (segfault) in gfc_conv_initializer
- References: <bug-33395-13404@http.gcc.gnu.org/bugzilla/>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Comment #4 from crickett at lanl dot gov 2007-09-11 19:51 -------
(In reply to comment #3)
> gfc_conv_initializer contains:
>
> if (expr != NULL && expr->ts.type == BT_DERIVED
> && expr->ts.is_iso_c && expr->ts.derived
> && (expr->symtree->n.sym->intmod_sym_id == ISOCBINDING_NULL_PTR
> || expr->symtree->n.sym->intmod_sym_id == ISOCBINDING_NULL_FUNPTR))
>
> And here: expr->symtree == NULL ...
>
This is a bug with iso_c_binding. The symtree is not always built for an
expression. However, the expr->ts.derived is available. I have a patch that
seems to fix this and I hope to submit it soon.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=33395