https://gcc.gnu.org/bugzilla/show_bug.cgi?id=67721
Mikael Morin <mikael at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Keywords| |patch, wrong-code Known to fail| |6.0 --- Comment #1 from Mikael Morin <mikael at gcc dot gnu.org> --- Draft patch: diff --git a/gcc/fortran/trans-expr.c b/gcc/fortran/trans-expr.c index cfa1a71..e086fe3 100644 --- a/gcc/fortran/trans-expr.c +++ b/gcc/fortran/trans-expr.c @@ -9232,7 +9232,6 @@ gfc_trans_assignment_1 (gfc_expr * expr1, gfc_expr * expr2, bool init_flag, scalar_to_array = (expr2->ts.type == BT_DERIVED && expr2->ts.u.derived->attr.alloc_comp && !expr_is_variable (expr2) - && !gfc_is_constant_expr (expr2) && expr1->rank && !expr2->rank); scalar_to_array |= (expr1->ts.type == BT_DERIVED && expr1->rank