tests/cases/compiler/arrayAssignmentTest3.ts(12,25): error TS2345: Argument of type 'B' is not assignable to parameter of type 'B[]'. Property 'length' is missing in type 'B'. ==== tests/cases/compiler/arrayAssignmentTest3.ts (1 errors) ==== // The following gives no error // Michal saw no error if he used number instead of B, // but I do... class B {} class a { constructor(public x: string, public y: number, z: B[]) { } } var xx = new a(null, 7, new B()); ~~~~~~~ !!! error TS2345: Argument of type 'B' is not assignable to parameter of type 'B[]'. !!! error TS2345: Property 'length' is missing in type 'B'.