http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59589
janus at gcc dot gnu.org changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |ASSIGNED
Assignee|unassigned at gcc dot gnu.org |janus at gcc dot gnu.org
--- Comment #13 from janus at gcc dot gnu.org ---
I think the following is sufficient to fix it:
Index: gcc/fortran/class.c
===================================================================
--- gcc/fortran/class.c (revision 206231)
+++ gcc/fortran/class.c (working copy)
@@ -811,6 +811,7 @@ finalize_component (gfc_expr *expr, gfc_symbol *de
return;
if (comp->ts.type == BT_DERIVED && !comp->attr.allocatable
+ && !comp->ts.u.derived->attr.alloc_comp
&& (comp->ts.u.derived->f2k_derived == NULL
|| comp->ts.u.derived->f2k_derived->finalizers == NULL)
&& !has_finalizer_component (comp->ts.u.derived))