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

commit r15-6729-gd107140205537aec9c8e235d869b166e9b884775
Author: Andre Vehreschild <ve...@gcc.gnu.org>
Date:   Wed Jan 8 14:58:35 2025 +0100

    Fortran: Cylce detection for non vtypes only. [PR118337]
    
    gcc/fortran/ChangeLog:
    
            PR fortran/118337
    
            * resolve.cc (resolve_fl_derived0): Exempt vtypes from cycle
            detection.

Diff:
---
 gcc/fortran/resolve.cc | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/gcc/fortran/resolve.cc b/gcc/fortran/resolve.cc
index 6dcda70679f2..dab0c3af6018 100644
--- a/gcc/fortran/resolve.cc
+++ b/gcc/fortran/resolve.cc
@@ -16840,7 +16840,8 @@ resolve_fl_derived0 (gfc_symbol *sym)
 
   /* Resolving components below, may create vtabs for which the cyclic type
      information needs to be present.  */
-  resolve_cyclic_derived_type (sym);
+  if (!sym->attr.vtype)
+    resolve_cyclic_derived_type (sym);
 
   c = (sym->attr.is_class) ? CLASS_DATA (sym->components)
                           : sym->components;

Reply via email to