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

Reply via email to