1! This is a crazy program, recursive derived types with recursive kind 2! parameters are a terrible idea if they do not converge quickly. 3 4! RUN: bbc -emit-hlfir -o - -I nw %s | FileCheck %s 5 6subroutine foo(x) 7 type t(k) 8 integer, kind :: k 9 type(t(modulo(k+1,2))), pointer :: p 10 end type 11 type(t(1)) :: x 12end subroutine 13! CHECK-LABEL: func.func @_QPfoo( 14! CHECK-SAME: !fir.ref<!fir.type<_QFfooTtK1{p:!fir.box<!fir.ptr<!fir.type<_QFfooTtK0{p:!fir.box<!fir.ptr<!fir.type<_QFfooTtK1>>>}>>>}>> 15