https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104211
anlauf at gcc dot gnu.org changed: What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |NEW Last reconfirmed| |2022-01-24 Priority|P3 |P4 CC| |anlauf at gcc dot gnu.org Ever confirmed|0 |1 --- Comment #1 from anlauf at gcc dot gnu.org --- Confirmed. We hit an assert which can be replaced by an error message, such as: diff --git a/gcc/fortran/expr.cc b/gcc/fortran/expr.cc index ed82a94022f..78f21c24f43 100644 --- a/gcc/fortran/expr.cc +++ b/gcc/fortran/expr.cc @@ -1718,7 +1718,12 @@ find_array_section (gfc_expr *expr, gfc_ref *ref) } cons = gfc_constructor_lookup (base, limit); - gcc_assert (cons); + if (cons == NULL) + { + gfc_error ("Bad array constructor at %L", &ref->u.ar.where); + t = false; + goto cleanup; + } gfc_constructor_append_expr (&expr->value.constructor, gfc_copy_expr (cons->expr), NULL); }