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

Harald Anlauf <anlauf at gmx dot de> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |anlauf at gmx dot de

--- Comment #1 from Harald Anlauf <anlauf at gmx dot de> ---
Potential patch:

Index: gcc/fortran/check.c
===================================================================
--- gcc/fortran/check.c (revision 269177)
+++ gcc/fortran/check.c (working copy)
@@ -5487,6 +5487,13 @@
   if (!gfc_element_size (mold, &result_elt_size))
     return false;

+  if (result_elt_size == 0 && *source_size > 0)
+    {
+      gfc_error ("%<MOLD%> argument of %<TRANSFER%> intrinsic at %L "
+                 "has storage size 0", &mold->where);
+      return false;
+    }
+
   if ((result_elt_size > 0 && (mold->expr_type == EXPR_ARRAY || mold->rank))
       || size)
     {

Can you please verify that your testcases work?

Reply via email to