=== tests/cases/conformance/types/typeRelationships/recursiveTypes/nominalSubtypeCheckOfTypeParameter2.ts === interface B { >B : B, Symbol(B, Decl(nominalSubtypeCheckOfTypeParameter2.ts, 0, 0)) >T : T, Symbol(T, Decl(nominalSubtypeCheckOfTypeParameter2.ts, 0, 12)) bar: T; >bar : T, Symbol(bar, Decl(nominalSubtypeCheckOfTypeParameter2.ts, 0, 16)) >T : T, Symbol(T, Decl(nominalSubtypeCheckOfTypeParameter2.ts, 0, 12)) } // ok interface A extends B { >A : A, Symbol(A, Decl(nominalSubtypeCheckOfTypeParameter2.ts, 2, 1)) >T : T, Symbol(T, Decl(nominalSubtypeCheckOfTypeParameter2.ts, 5, 12)) >B : B, Symbol(B, Decl(nominalSubtypeCheckOfTypeParameter2.ts, 0, 0)) >T : T, Symbol(T, Decl(nominalSubtypeCheckOfTypeParameter2.ts, 5, 12)) foo: T; >foo : T, Symbol(foo, Decl(nominalSubtypeCheckOfTypeParameter2.ts, 5, 29)) >T : T, Symbol(T, Decl(nominalSubtypeCheckOfTypeParameter2.ts, 5, 12)) } // ok interface A2 extends B> { >A2 : A2, Symbol(A2, Decl(nominalSubtypeCheckOfTypeParameter2.ts, 7, 1)) >T : T, Symbol(T, Decl(nominalSubtypeCheckOfTypeParameter2.ts, 10, 13)) >B : B, Symbol(B, Decl(nominalSubtypeCheckOfTypeParameter2.ts, 0, 0)) >B : B, Symbol(B, Decl(nominalSubtypeCheckOfTypeParameter2.ts, 0, 0)) baz: T; >baz : T, Symbol(baz, Decl(nominalSubtypeCheckOfTypeParameter2.ts, 10, 38)) >T : T, Symbol(T, Decl(nominalSubtypeCheckOfTypeParameter2.ts, 10, 13)) } interface C { >C : C, Symbol(C, Decl(nominalSubtypeCheckOfTypeParameter2.ts, 12, 1)) >T : T, Symbol(T, Decl(nominalSubtypeCheckOfTypeParameter2.ts, 14, 12)) bam: T; >bam : T, Symbol(bam, Decl(nominalSubtypeCheckOfTypeParameter2.ts, 14, 16)) >T : T, Symbol(T, Decl(nominalSubtypeCheckOfTypeParameter2.ts, 14, 12)) } // ok interface A3 extends B> { >A3 : A3, Symbol(A3, Decl(nominalSubtypeCheckOfTypeParameter2.ts, 16, 1)) >T : T, Symbol(T, Decl(nominalSubtypeCheckOfTypeParameter2.ts, 19, 13)) >B : B, Symbol(B, Decl(nominalSubtypeCheckOfTypeParameter2.ts, 0, 0)) >C : C, Symbol(C, Decl(nominalSubtypeCheckOfTypeParameter2.ts, 12, 1)) >T : T, Symbol(T, Decl(nominalSubtypeCheckOfTypeParameter2.ts, 19, 13)) bing: T; >bing : T, Symbol(bing, Decl(nominalSubtypeCheckOfTypeParameter2.ts, 19, 33)) >T : T, Symbol(T, Decl(nominalSubtypeCheckOfTypeParameter2.ts, 19, 13)) }