https://gcc.gnu.org/g:6f62219138572db98a8f2f4044c5a541fcc6f540

commit 6f62219138572db98a8f2f4044c5a541fcc6f540
Author: Mikael Morin <[email protected]>
Date:   Thu Oct 15 14:51:49 2026 +0200

    Correction partielle class_dummy_7

Diff:
---
 gcc/fortran/expr.cc | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/gcc/fortran/expr.cc b/gcc/fortran/expr.cc
index 5d096886abd0..577302948576 100644
--- a/gcc/fortran/expr.cc
+++ b/gcc/fortran/expr.cc
@@ -1259,7 +1259,12 @@ is_subref_array (gfc_expr * e)
        return true;
 
       if (ref->type == REF_COMPONENT
-         && IS_POINTER (ref->u.c.component))
+         && ((ref->u.c.component->ts.type == BT_CLASS
+              && ref->u.c.component->ts.u.derived->attr.is_class
+              && CLASS_DATA (ref->u.c.component)->as
+              && CLASS_DATA (ref->u.c.component)->attr.class_pointer)
+             || (ref->u.c.component->as
+                 && ref->u.c.component->attr.pointer)))
        return true;
     }

Reply via email to