https://gcc.gnu.org/g:298afb1c536d95e3ecc15973b872af8ce6ce3836
commit 298afb1c536d95e3ecc15973b872af8ce6ce3836 Author: Mikael Morin <mik...@gcc.gnu.org> Date: Wed Aug 13 21:57:46 2025 +0200 Correction régression associate_33 Diff: --- gcc/fortran/trans-descriptor.cc | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/gcc/fortran/trans-descriptor.cc b/gcc/fortran/trans-descriptor.cc index 8cc56c8a17f9..7e6b0f136104 100644 --- a/gcc/fortran/trans-descriptor.cc +++ b/gcc/fortran/trans-descriptor.cc @@ -1232,9 +1232,10 @@ shift_dimension_bounds (stmtblock_t * block, tree descr, tree dim, gfc_conv_descriptor_ubound_set (block, descr, dim, ubound); tree offs_diff = fold_build2_loc (input_location, MULT_EXPR, gfc_array_index_type, diff, orig_stride); - *offset_value = fold_build2_loc (input_location, MINUS_EXPR, - gfc_array_index_type, *offset_value, - offs_diff); + tree off = fold_build2_loc (input_location, MINUS_EXPR, + gfc_array_index_type, *offset_value, + offs_diff); + *offset_value = gfc_evaluate_now (off, block); /* Finally set lbound to value we want. */ gfc_conv_descriptor_lbound_set (block, descr, dim, new_lbound);