=== tests/cases/compiler/recursiveBaseConstructorCreation2.ts === declare class base >base : Symbol(base, Decl(recursiveBaseConstructorCreation2.ts, 0, 0)) { } declare class abc extends base >abc : Symbol(abc, Decl(recursiveBaseConstructorCreation2.ts, 2, 1)) >base : Symbol(base, Decl(recursiveBaseConstructorCreation2.ts, 0, 0)) { foo: xyz; >foo : Symbol(foo, Decl(recursiveBaseConstructorCreation2.ts, 4, 1)) >xyz : Symbol(xyz, Decl(recursiveBaseConstructorCreation2.ts, 6, 1)) } declare class xyz extends abc >xyz : Symbol(xyz, Decl(recursiveBaseConstructorCreation2.ts, 6, 1)) >abc : Symbol(abc, Decl(recursiveBaseConstructorCreation2.ts, 2, 1)) { } var bar = new xyz(); // Error: Invalid 'new' expression. >bar : Symbol(bar, Decl(recursiveBaseConstructorCreation2.ts, 11, 3)) >xyz : Symbol(xyz, Decl(recursiveBaseConstructorCreation2.ts, 6, 1))