[Bug fortran/47565] [4.6 Regression][OOP] Segfault with TBP

janus at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Tue Feb 1 13:39:00 GMT 2011


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47565

janus at gcc dot gnu.org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |ASSIGNED
         AssignedTo|unassigned at gcc dot       |janus at gcc dot gnu.org
                   |gnu.org                     |

--- Comment #2 from janus at gcc dot gnu.org 2011-02-01 13:39:31 UTC ---
Here is the obvious fix:


Index: trans-expr.c
===================================================================
--- trans-expr.c        (revision 169470)
+++ trans-expr.c        (working copy)
@@ -4627,7 +4627,7 @@ gfc_conv_structure (gfc_se * se, gfc_expr * expr,
         components.  Although the latter have a default initializer
         of EXPR_NULL,... by default, the static nullify is not needed
         since this is done every time we come into scope.  */
-      if (!c->expr || cm->attr.allocatable)
+      if (!c->expr || (cm->attr.allocatable && cm->attr.flavor !=
FL_PROCEDURE))
         continue;

       if (strcmp (cm->name, "_size") == 0)



Will commit after regtesting.



More information about the Gcc-bugs mailing list