https://gcc.gnu.org/g:41b056229a428f1bfc1d13e7a8ef87e7e3601b30
commit 41b056229a428f1bfc1d13e7a8ef87e7e3601b30 Author: Mikael Morin <mik...@gcc.gnu.org> Date: Fri Feb 14 17:23:47 2025 +0100 Correction régression class_to_type_2.f90 Diff: --- gcc/fortran/trans-array.cc | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/gcc/fortran/trans-array.cc b/gcc/fortran/trans-array.cc index f285f4550088..8d20abbe0304 100644 --- a/gcc/fortran/trans-array.cc +++ b/gcc/fortran/trans-array.cc @@ -8266,9 +8266,11 @@ gfc_set_delta (gfc_loopinfo *loop) gfc_ss_type ss_type; ss_type = ss->info->type; - if (ss_type != GFC_SS_SECTION - && ss_type != GFC_SS_COMPONENT - && ss_type != GFC_SS_CONSTRUCTOR) + if (!(ss_type == GFC_SS_SECTION + || ss_type == GFC_SS_COMPONENT + || ss_type == GFC_SS_CONSTRUCTOR + || (ss_type == GFC_SS_FUNCTION + && gfc_is_class_array_function (ss->info->expr)))) continue; info = &ss->info->data.array;