https://gcc.gnu.org/g:e2f64cdc884758412440a3f3bbf3d8069d343f4d
commit e2f64cdc884758412440a3f3bbf3d8069d343f4d Author: Mikael Morin <mik...@gcc.gnu.org> Date: Fri Jul 18 15:26:09 2025 +0200 Revert "Factorisation set_contiguous_array" This reverts commit 563cc24ad25f26b504f79bc3377ded2749bd949c. Diff: --- gcc/fortran/trans-array.cc | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/gcc/fortran/trans-array.cc b/gcc/fortran/trans-array.cc index bb339941ae36..f071a5fc9220 100644 --- a/gcc/fortran/trans-array.cc +++ b/gcc/fortran/trans-array.cc @@ -9652,11 +9652,21 @@ structure_alloc_comps (gfc_symbol * der_type, tree decl, tree dest, cdesc = gfc_create_var (cdesc, "cdesc"); DECL_ARTIFICIAL (cdesc) = 1; + gfc_conv_descriptor_dtype_set (&dealloc_block, cdesc, + gfc_get_dtype_rank_type (1, tmp)); + gfc_conv_descriptor_lbound_set (&dealloc_block, cdesc, + gfc_index_zero_node, + gfc_index_one_node); + gfc_conv_descriptor_stride_set (&dealloc_block, cdesc, + gfc_index_zero_node, + gfc_index_one_node); + gfc_conv_descriptor_ubound_set (&dealloc_block, cdesc, + gfc_index_zero_node, ubound); + if (attr->dimension) comp = gfc_conv_descriptor_data_get (comp); - gfc_set_contiguous_descriptor (&dealloc_block, cdesc, ubound, - comp); + gfc_conv_descriptor_data_set (&dealloc_block, cdesc, comp); /* Now call the deallocator. */ vtab = gfc_find_vtab (&c->ts);