https://gcc.gnu.org/g:fd19529193b6c23be35f5b10c621a469a8a96d08
commit fd19529193b6c23be35f5b10c621a469a8a96d08 Author: Mikael Morin <mik...@gcc.gnu.org> Date: Mon Mar 17 19:09:18 2025 +0100 fortran: Remove array bound update after constructor expansion The array constructor expansion extends the size of the array dynamically, and sets the upper bound appropriately every time it does. There is no need to do it again at the end of expansion. gcc/fortran/ChangeLog: * trans-array.cc (trans_array_constructor): Remove the update of the array descriptor upper bound after array constructor expansion. Diff: --- gcc/fortran/trans-array.cc | 1 - 1 file changed, 1 deletion(-) diff --git a/gcc/fortran/trans-array.cc b/gcc/fortran/trans-array.cc index 98f6ea160160..0876dd4264bc 100644 --- a/gcc/fortran/trans-array.cc +++ b/gcc/fortran/trans-array.cc @@ -3115,7 +3115,6 @@ trans_array_constructor (gfc_ss * ss, locus * where) gfc_array_index_type, offsetvar, gfc_index_one_node); tmp = gfc_evaluate_now (tmp, &outer_loop->pre); - gfc_conv_descriptor_ubound_set (&loop->pre, desc, gfc_rank_cst[0], tmp); if (*loop_ubound0 && VAR_P (*loop_ubound0)) gfc_add_modify (&outer_loop->pre, *loop_ubound0, tmp); else