1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
|
tests/cases/compiler/chainedAssignment1.ts(21,1): error TS2741: Property 'a' is missing in type 'Z' but required in type 'X'.
tests/cases/compiler/chainedAssignment1.ts(21,6): error TS2739: Type 'Z' is missing the following properties from type 'Y': a, b
tests/cases/compiler/chainedAssignment1.ts(22,1): error TS2322: Type 'Z' is not assignable to type 'Y'.
==== tests/cases/compiler/chainedAssignment1.ts (3 errors) ====
class X {
constructor(public z) { }
a: number;
}
class Y {
constructor(public z) {
}
a: number;
b: string;
}
class Z {
z: any;
c: string;
}
var c1 = new X(3);
var c2 = new Y(5);
var c3 = new Z();
c1 = c2 = c3; // a bug made this not report the same error as below
~~
!!! error TS2741: Property 'a' is missing in type 'Z' but required in type 'X'.
!!! related TS2728 tests/cases/compiler/chainedAssignment1.ts:3:5: 'a' is declared here.
~~
!!! error TS2739: Type 'Z' is missing the following properties from type 'Y': a, b
c2 = c3; // Error TS111: Cannot convert Z to Y
~~
!!! error TS2322: Type 'Z' is not assignable to type 'Y'.
|