https://gcc.gnu.org/g:0b635e068d368d4969108d6403c38d4a17706460
commit 0b635e068d368d4969108d6403c38d4a17706460 Author: Mikael Morin <mik...@gcc.gnu.org> Date: Tue Jul 15 21:06:28 2025 +0200 Extraction gfc_init_static_descriptor Correction compilation Renommage gfc_clear_descriptor -> gfc_init_static_descriptor Diff: --- gcc/fortran/trans-array.cc | 6 +----- gcc/fortran/trans-descriptor.cc | 8 ++++++++ gcc/fortran/trans-descriptor.h | 1 + 3 files changed, 10 insertions(+), 5 deletions(-) diff --git a/gcc/fortran/trans-array.cc b/gcc/fortran/trans-array.cc index 8e4a347d1186..2b123d470c88 100644 --- a/gcc/fortran/trans-array.cc +++ b/gcc/fortran/trans-array.cc @@ -555,12 +555,8 @@ gfc_get_array_span (tree desc, gfc_expr *expr) void gfc_trans_static_array_pointer (gfc_symbol * sym) { - tree type; - gcc_assert (TREE_STATIC (sym->backend_decl)); - /* Just zero the data member. */ - type = TREE_TYPE (sym->backend_decl); - DECL_INITIAL (sym->backend_decl) = gfc_build_null_descriptor (type); + gfc_init_static_descriptor (sym->backend_decl); } diff --git a/gcc/fortran/trans-descriptor.cc b/gcc/fortran/trans-descriptor.cc index cc90e4e918e1..2c9bc36e72bd 100644 --- a/gcc/fortran/trans-descriptor.cc +++ b/gcc/fortran/trans-descriptor.cc @@ -669,3 +669,11 @@ gfc_init_descriptor_result (stmtblock_t *block, tree descr) gfc_conv_descriptor_data_set (block, descr, null_pointer_node); } + +void +gfc_init_static_descriptor (tree descr) +{ + tree type = TREE_TYPE (descr); + DECL_INITIAL (descr) = gfc_build_null_descriptor (type); +} + diff --git a/gcc/fortran/trans-descriptor.h b/gcc/fortran/trans-descriptor.h index 0b6540116452..4e435f3a223d 100644 --- a/gcc/fortran/trans-descriptor.h +++ b/gcc/fortran/trans-descriptor.h @@ -94,5 +94,6 @@ gfc_get_descriptor_offsets_for_info (const_tree desc_type, tree *data_off, void gfc_init_descriptor_variable (stmtblock_t *block, gfc_symbol *sym, tree descr); void gfc_init_descriptor_result (stmtblock_t *block, tree descr); +void gfc_init_static_descriptor (tree descr); #endif /* GFC_TRANS_DESCRIPTOR_H */