=== tests/cases/compiler/mutuallyRecursiveGenericBaseTypes2.ts === class foo >foo : Symbol(foo, Decl(mutuallyRecursiveGenericBaseTypes2.ts, 0, 0)) >T : Symbol(T, Decl(mutuallyRecursiveGenericBaseTypes2.ts, 0, 10)) { bar(): foo2 { return null; } >bar : Symbol(bar, Decl(mutuallyRecursiveGenericBaseTypes2.ts, 1, 1)) >foo2 : Symbol(foo2, Decl(mutuallyRecursiveGenericBaseTypes2.ts, 3, 1)) >T : Symbol(T, Decl(mutuallyRecursiveGenericBaseTypes2.ts, 0, 10)) } class foo2 extends foo { >foo2 : Symbol(foo2, Decl(mutuallyRecursiveGenericBaseTypes2.ts, 3, 1)) >T : Symbol(T, Decl(mutuallyRecursiveGenericBaseTypes2.ts, 5, 11)) >foo : Symbol(foo, Decl(mutuallyRecursiveGenericBaseTypes2.ts, 0, 0)) >T : Symbol(T, Decl(mutuallyRecursiveGenericBaseTypes2.ts, 5, 11)) } var test = new foo(); >test : Symbol(test, Decl(mutuallyRecursiveGenericBaseTypes2.ts, 8, 3)) >foo : Symbol(foo, Decl(mutuallyRecursiveGenericBaseTypes2.ts, 0, 0))