https://gcc.gnu.org/g:69f8efdeee6a374d727a0e357e32d0e25b2b1bf2

commit 69f8efdeee6a374d727a0e357e32d0e25b2b1bf2
Author: Mikael Morin <mik...@gcc.gnu.org>
Date:   Fri Jul 18 15:26:55 2025 +0200

    Revert "Factorisation gfc_conv_shift_descriptor"
    
    This reverts commit d9cb2c7f244ea41b83d3781b860eb8d4b418ffb7.

Diff:
---
 gcc/fortran/trans-stmt.cc | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/gcc/fortran/trans-stmt.cc b/gcc/fortran/trans-stmt.cc
index 8fedda1159d6..c359637355f7 100644
--- a/gcc/fortran/trans-stmt.cc
+++ b/gcc/fortran/trans-stmt.cc
@@ -2172,12 +2172,16 @@ trans_associate_var (gfc_symbol *sym, gfc_wrapped_block 
*block)
       if ((!sym->assoc->variable && !cst_array_ctor)
          || !whole_array)
        {
+         int dim;
+
          if (whole_array)
            gfc_add_modify (&se.pre, desc, se.expr);
 
          /* The generated descriptor has lower bound zero (as array
             temporary), shift bounds so we get lower bounds of 1.  */
-         gfc_conv_shift_descriptor (&se.pre, desc, e->rank);
+         for (dim = 0; dim < e->rank; ++dim)
+           gfc_conv_shift_descriptor_lbound (&se.pre, desc,
+                                             dim, gfc_index_one_node);
        }
 
       /* If this is a subreference array pointer associate name use the

Reply via email to