From: Paul Thomas Date: Tue, 21 Mar 2023 06:28:07 +0000 (+0000) Subject: Fortran: Fix regression caused by PR37336 patch [PR109206] X-Git-Tag: basepoints/gcc-14~435 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=259bd768640328cc98647c5cf8b0d6dcfba6d4bf;p=thirdparty%2Fgcc.git Fortran: Fix regression caused by PR37336 patch [PR109206] 2023-03-21 Paul Thomas gcc/fortran PR fortran/109206 * trans-array.cc (gfc_trans_array_constructor_value): Correct incorrect setting of typespec. --- diff --git a/gcc/fortran/trans-array.cc b/gcc/fortran/trans-array.cc index 7bc0e03dd0d2..41661b4195e7 100644 --- a/gcc/fortran/trans-array.cc +++ b/gcc/fortran/trans-array.cc @@ -2046,6 +2046,7 @@ gfc_trans_array_constructor_value (stmtblock_t * pblock, tree shadow_loopvar = NULL_TREE; gfc_saved_var saved_loopvar; + ts.type = BT_UNKNOWN; mpz_init (size); for (c = gfc_constructor_first (base); c; c = gfc_constructor_next (c)) { @@ -2204,7 +2205,9 @@ gfc_trans_array_constructor_value (stmtblock_t * pblock, gfc_add_modify (&body, *offsetvar, *poffset); *poffset = *offsetvar; } - ts = c->expr->ts; + + if (!c->iterator) + ts = c->expr->ts; } /* The frontend should already have done any expansions