https://gcc.gnu.org/g:d18a72c5bcbbacf0320d943fa6720744313a3f45
commit d18a72c5bcbbacf0320d943fa6720744313a3f45 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 9ef699ee29dd..3dc650c8eba2 100644 --- a/gcc/fortran/trans-stmt.cc +++ b/gcc/fortran/trans-stmt.cc @@ -3833,8 +3833,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) {