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

Reply via email to