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

anlauf at gcc dot gnu.org changed:

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

--- Comment #2 from anlauf at gcc dot gnu.org ---
Testing this patch:

diff --git a/gcc/fortran/arith.cc b/gcc/fortran/arith.cc
index 06e032e22db..204fc433dff 100644
--- a/gcc/fortran/arith.cc
+++ b/gcc/fortran/arith.cc
@@ -1489,6 +1489,9 @@ eval_intrinsic (gfc_intrinsic_op op,
   int unary;
   arith rc;

+  if (!op1)
+    return NULL;
+
   gfc_clear_ts (&temp.ts);

   switch (op)
@@ -1706,7 +1709,7 @@ eval_type_intrinsic0 (gfc_intrinsic_op iop, gfc_expr *op)
 static int
 gfc_zero_size_array (gfc_expr *e)
 {
-  if (e->expr_type != EXPR_ARRAY)
+  if (e == NULL || e->expr_type != EXPR_ARRAY)
     return 0;

   return e->value.constructor == NULL;

Reply via email to