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

--- Comment #8 from Thomas Koenig <tkoenig at gcc dot gnu.org> ---
This patch looks good:

--- arith.c     (Revision 223202)
+++ arith.c     (Arbeitskopie)
@@ -1390,6 +1390,12 @@ reduce_binary (arith (*eval) (gfc_expr *, gfc_expr
   if (op1->expr_type == EXPR_CONSTANT && op2->expr_type == EXPR_CONSTANT)
     return eval (op1, op2, result);

+  if (op1->expr_type == EXPR_ARRAY)
+    gfc_check_constructor_type (op1);
+
+  if (op2->expr_type == EXPR_ARRAY)
+    gfc_check_constructor_type (op2);
+
   if (op1->expr_type == EXPR_CONSTANT && op2->expr_type == EXPR_ARRAY)
     return reduce_binary_ca (eval, op1, op2, result);

Reply via email to