https://gcc.gnu.org/g:de590b0d85ce1165a4565517833e6b6511e780ee

commit de590b0d85ce1165a4565517833e6b6511e780ee
Author: Mikael Morin <[email protected]>
Date:   Thu Aug 6 13:59:21 2026 +0200

    Refactoring gfc_set_descriptor_from_scalar

Diff:
---
 gcc/fortran/trans-descriptor.cc | 12 +-----------
 1 file changed, 1 insertion(+), 11 deletions(-)

diff --git a/gcc/fortran/trans-descriptor.cc b/gcc/fortran/trans-descriptor.cc
index 431f8445765b..2fd17458b656 100644
--- a/gcc/fortran/trans-descriptor.cc
+++ b/gcc/fortran/trans-descriptor.cc
@@ -1034,17 +1034,7 @@ gfc_set_descriptor_from_scalar (stmtblock_t *block, tree 
descr, tree scalar,
 void
 gfc_set_descriptor_from_scalar (stmtblock_t *block, tree descr, tree scalar)
 {
-  tree etype = TREE_TYPE (scalar);
-  if (!POINTER_TYPE_P (TREE_TYPE (scalar)))
-    scalar = gfc_build_addr_expr (NULL_TREE, scalar);
-  else if (TREE_TYPE (etype) && TREE_CODE (TREE_TYPE (etype)) == ARRAY_TYPE)
-    etype = TREE_TYPE (etype);
-
-  gfc_conv_descriptor_dtype_set (block, descr,
-                                gfc_get_dtype_rank_type (0, etype));
-  gfc_conv_descriptor_data_set (block, descr, scalar);
-  gfc_conv_descriptor_span_set (block, descr,
-                               gfc_conv_descriptor_elem_len_get (descr));
+  gfc_set_descriptor_from_scalar (block, descr, scalar, NULL_TREE, NULL_TREE);
 }

Reply via email to