https://gcc.gnu.org/g:22e2303e995a79b0998caca0d0ff1079b0f4aef9
commit 22e2303e995a79b0998caca0d0ff1079b0f4aef9 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 51e5bcd2c281..75a41a38ea12 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;