1!RUN: bbc --dump-symbols %s | FileCheck %s 2!RUN: %flang_fc1 -fdebug-dump-symbols %s | FileCheck %s 3! Ensure that cycles via POINTERs do not instantiate incomplete derived 4! types that would lead to types whose sizeinbytes=0 5program main 6 implicit none 7 type t1 8 type(t2), pointer :: b 9 end type t1 10!CHECK: .dt.t1, SAVE, TARGET (CompilerCreated, ReadOnly): ObjectEntity type: TYPE(derivedtype) init:derivedtype(binding=NULL(),name=.n.t1,sizeinbytes=40_8,uninstantiated=NULL(),kindparameter=NULL(),lenparameterkind=NULL(),component=.c.t1,procptr=NULL(),special=NULL(),specialbitset=0_4,hasparent=0_1,noinitializationneeded=0_1,nodestructionneeded=1_1,nofinalizationneeded=1_1) 11 type :: t2 12 type(t1) :: a 13 end type t2 14! CHECK: .dt.t2, SAVE, TARGET (CompilerCreated, ReadOnly): ObjectEntity type: TYPE(derivedtype) init:derivedtype(binding=NULL(),name=.n.t2,sizeinbytes=40_8,uninstantiated=NULL(),kindparameter=NULL(),lenparameterkind=NULL(),component=.c.t2,procptr=NULL(),special=NULL(),specialbitset=0_4,hasparent=0_1,noinitializationneeded=0_1,nodestructionneeded=1_1,nofinalizationneeded=1_1) 15end program main 16 17