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)
     {

Reply via email to