This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug fortran/33395] [ISO_C_BINDING ?] ICE (segfault) in gfc_conv_initializer



------- 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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]