https://gcc.gnu.org/g:da3c98acae679598060e0e9cad42353c0dea8149
commit da3c98acae679598060e0e9cad42353c0dea8149 Author: Mikael Morin <mik...@gcc.gnu.org> Date: Fri Mar 7 10:22:58 2025 +0100 Correction régression PR100040.f90 Diff: --- gcc/fortran/trans-stmt.cc | 2 ++ 1 file changed, 2 insertions(+) diff --git a/gcc/fortran/trans-stmt.cc b/gcc/fortran/trans-stmt.cc index 1ba09d2f575d..453d45951824 100644 --- a/gcc/fortran/trans-stmt.cc +++ b/gcc/fortran/trans-stmt.cc @@ -3927,8 +3927,10 @@ gfc_trans_select_rank_cases (gfc_code * code) /* Calculate the switch expression. */ gfc_init_se (&se, NULL); gfc_conv_expr_descriptor (&se, code->expr1); + gfc_add_block_to_block (&block, &se.pre); rank = gfc_conv_descriptor_rank_get (se.expr); rank = gfc_evaluate_now (rank, &block); + gfc_add_block_to_block (&block, &se.post); symbol_attribute attr = gfc_expr_attr (code->expr1); if (!attr.pointer && !attr.allocatable) {