40 lines
1.5 KiB
Plaintext
40 lines
1.5 KiB
Plaintext
tests/cases/compiler/typeMatch1.ts(18,1): error TS2322: Type 'D' is not assignable to type 'C'.
|
|
Types have separate declarations of a private property 'x'.
|
|
tests/cases/compiler/typeMatch1.ts(19,4): error TS2322: Type 'typeof C' is not assignable to type 'C'.
|
|
Property 'x' is missing in type 'typeof C'.
|
|
tests/cases/compiler/typeMatch1.ts(20,1): error TS2367: This condition will always return 'false' since the types 'typeof C' and 'typeof D' have no overlap.
|
|
|
|
|
|
==== tests/cases/compiler/typeMatch1.ts (3 errors) ====
|
|
interface I { z; }
|
|
interface I2 { z; }
|
|
|
|
var x1: { z: number; f(n: number): string; f(s: string): number; }
|
|
var x2: { z:number;f:{(n:number):string;(s:string):number;}; } = x1;
|
|
var i:I;
|
|
var i2:I2;
|
|
var x3:{ z; }= i;
|
|
var x4:{ z; }= i2;
|
|
var x5:I=i2;
|
|
|
|
class C { private x; }
|
|
class D { private x; }
|
|
|
|
var x6=new C();
|
|
var x7=new D();
|
|
|
|
x6 = x7;
|
|
~~
|
|
!!! error TS2322: Type 'D' is not assignable to type 'C'.
|
|
!!! error TS2322: Types have separate declarations of a private property 'x'.
|
|
x6=C;
|
|
~
|
|
!!! error TS2322: Type 'typeof C' is not assignable to type 'C'.
|
|
!!! error TS2322: Property 'x' is missing in type 'typeof C'.
|
|
!!! related TS6213 tests/cases/compiler/typeMatch1.ts:19:4: Did you mean to use 'new' with this expression?
|
|
C==D;
|
|
~~~~
|
|
!!! error TS2367: This condition will always return 'false' since the types 'typeof C' and 'typeof D' have no overlap.
|
|
C==C;
|
|
|
|
|