=== tests/cases/compiler/nestedInfinitelyExpandedRecursiveTypes.ts === interface F { >F : F, Symbol(F, Decl(nestedInfinitelyExpandedRecursiveTypes.ts, 0, 0)) >T : T, Symbol(T, Decl(nestedInfinitelyExpandedRecursiveTypes.ts, 0, 12)) t: G T>>; >t : G T>>, Symbol(t, Decl(nestedInfinitelyExpandedRecursiveTypes.ts, 0, 16)) >G : G, Symbol(G, Decl(nestedInfinitelyExpandedRecursiveTypes.ts, 2, 1)) >F : F, Symbol(F, Decl(nestedInfinitelyExpandedRecursiveTypes.ts, 0, 0)) >T : T, Symbol(T, Decl(nestedInfinitelyExpandedRecursiveTypes.ts, 0, 12)) } interface G { >G : G, Symbol(G, Decl(nestedInfinitelyExpandedRecursiveTypes.ts, 2, 1)) >U : U, Symbol(U, Decl(nestedInfinitelyExpandedRecursiveTypes.ts, 3, 12)) t: G U>>; >t : G U>>, Symbol(t, Decl(nestedInfinitelyExpandedRecursiveTypes.ts, 3, 16)) >G : G, Symbol(G, Decl(nestedInfinitelyExpandedRecursiveTypes.ts, 2, 1)) >G : G, Symbol(G, Decl(nestedInfinitelyExpandedRecursiveTypes.ts, 2, 1)) >U : U, Symbol(U, Decl(nestedInfinitelyExpandedRecursiveTypes.ts, 3, 12)) } var f: F; >f : F, Symbol(f, Decl(nestedInfinitelyExpandedRecursiveTypes.ts, 7, 3)) >F : F, Symbol(F, Decl(nestedInfinitelyExpandedRecursiveTypes.ts, 0, 0)) var g: G; >g : G, Symbol(g, Decl(nestedInfinitelyExpandedRecursiveTypes.ts, 8, 3)) >G : G, Symbol(G, Decl(nestedInfinitelyExpandedRecursiveTypes.ts, 2, 1)) f = g; >f = g : G >f : F, Symbol(f, Decl(nestedInfinitelyExpandedRecursiveTypes.ts, 7, 3)) >g : G, Symbol(g, Decl(nestedInfinitelyExpandedRecursiveTypes.ts, 8, 3)) g = f; >g = f : F >g : G, Symbol(g, Decl(nestedInfinitelyExpandedRecursiveTypes.ts, 8, 3)) >f : F, Symbol(f, Decl(nestedInfinitelyExpandedRecursiveTypes.ts, 7, 3))