https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61775

Mikael Morin <mikael at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |mikael at gcc dot gnu.org

--- Comment #4 from Mikael Morin <mikael at gcc dot gnu.org> ---
This seems to fix it here (not heavily tested):


Index: trans-expr.c
===================================================================
--- trans-expr.c    (révision 209169)
+++ trans-expr.c    (copie de travail)
@@ -7932,9 +7932,7 @@ gfc_trans_assignment_1 (gfc_expr * expr1, gfc_expr

   /* Walk the lhs.  */
   lss = gfc_walk_expr (expr1);
-  if (gfc_is_reallocatable_lhs (expr1)
-    && !(expr2->expr_type == EXPR_FUNCTION
-         && expr2->value.function.isym != NULL))
+  if (gfc_is_reallocatable_lhs (expr1))
     lss->is_alloc_lhs = 1;
   rss = NULL;
   if (lss != gfc_ss_terminator)

Reply via email to