https://gcc.gnu.org/g:6204b74e4bfb3faf0fab57e36e37e3eb0f612536

commit 6204b74e4bfb3faf0fab57e36e37e3eb0f612536
Author: Mikael Morin <mik...@gcc.gnu.org>
Date:   Sun Jul 6 12:01:58 2025 +0200

    Revert "Correction régression alloc_comp_assign_12 etc"
    
    This reverts commit 34172991fe82d72d686711edfaa25ed9c811097d.

Diff:
---
 gcc/fortran/trans-array.cc | 18 ------------------
 1 file changed, 18 deletions(-)

diff --git a/gcc/fortran/trans-array.cc b/gcc/fortran/trans-array.cc
index 355253a0b470..6af8ee0a9544 100644
--- a/gcc/fortran/trans-array.cc
+++ b/gcc/fortran/trans-array.cc
@@ -3441,24 +3441,6 @@ gfc_conv_ss_descriptor (stmtblock_t * block, gfc_ss * 
ss, int base)
   gfc_conv_expr_lhs (&se, ss_info->expr);
   gfc_add_block_to_block (block, &se.pre);
   info->descriptor = se.expr;
-  if (TREE_CODE (info->descriptor) == INDIRECT_REF)
-    {
-      tree ptr = TREE_OPERAND (info->descriptor, 0);
-      ptr = gfc_evaluate_now (ptr, block);
-      TREE_OPERAND (info->descriptor, 0) = ptr;
-    }
-  else if (TREE_CODE (info->descriptor) == COMPONENT_REF)
-    {
-      tree parent_ref = TREE_OPERAND (info->descriptor, 0);
-      tree parent_ptr_type = build_pointer_type (TREE_TYPE (parent_ref));
-      tree ptr = fold_build1_loc (input_location, ADDR_EXPR,
-                                 parent_ptr_type, parent_ref);
-      ptr = gfc_evaluate_now (ptr, block);
-      tree deref = fold_build1_loc (input_location, INDIRECT_REF,
-                                   TREE_TYPE (parent_ref),
-                                   ptr);
-      TREE_OPERAND (info->descriptor, 0) = deref;
-    }
   ss_info->string_length = se.string_length;
   ss_info->class_container = se.class_container;

Reply via email to