https://gcc.gnu.org/g:9a5f9099b6915543f27048ef3e6f98a0e02eaf8e
commit 9a5f9099b6915543f27048ef3e6f98a0e02eaf8e Author: Mikael Morin <mik...@gcc.gnu.org> Date: Tue Sep 23 15:41:01 2025 +0200 Correction régression actual_array_subref.f90 Diff: --- gcc/fortran/trans-array.cc | 2 ++ 1 file changed, 2 insertions(+) diff --git a/gcc/fortran/trans-array.cc b/gcc/fortran/trans-array.cc index 78c50797865a..83e314454f1b 100644 --- a/gcc/fortran/trans-array.cc +++ b/gcc/fortran/trans-array.cc @@ -7240,6 +7240,8 @@ gfc_get_dataptr_offset (stmtblock_t *block, tree parm, tree desc, tree offset, break; case REF_SUBSTRING: + if (TREE_CODE (TREE_TYPE (tmp)) == POINTER_TYPE) + tmp = build_fold_indirect_ref_loc (input_location, tmp); gcc_assert (TREE_CODE (TREE_TYPE (tmp)) == ARRAY_TYPE); gfc_init_se (&start, NULL); gfc_conv_expr_type (&start, ref->u.ss.start, gfc_charlen_type_node);