https://gcc.gnu.org/g:a3c26c3260c9994fc5034682c58514c0b202f506

commit a3c26c3260c9994fc5034682c58514c0b202f506
Author: Mikael Morin <[email protected]>
Date:   Wed Oct 14 10:58:03 2026 +0200

    Modif pointeurs polymorphes

Diff:
---
 gcc/fortran/trans-decl.cc | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/gcc/fortran/trans-decl.cc b/gcc/fortran/trans-decl.cc
index a614e71eced2..6d345417621a 100644
--- a/gcc/fortran/trans-decl.cc
+++ b/gcc/fortran/trans-decl.cc
@@ -1822,7 +1822,11 @@ gfc_get_symbol_decl (gfc_symbol * sym)
          && sym->attr.allocatable)
        gfc_defer_symbol_init (sym);
 
-      if ((sym->attr.pointer && sym->attr.dimension && sym->ts.type != 
BT_CLASS)
+      if ((IS_POINTER (sym)
+          && ((sym->ts.type == BT_CLASS
+               && sym->ts.u.derived->attr.is_class
+               && CLASS_DATA (sym)->attr.dimension)
+              || sym->attr.dimension))
          || gfc_is_span_addressed_dummy (sym))
        GFC_DECL_PTR_ARRAY_P (sym->backend_decl) = 1;

Reply via email to