2014-07-13 01:04:16 +02:00
|
|
|
==== tests/cases/compiler/assignmentCompatBug2.ts (5 errors) ====
|
|
|
|
var b2: { b: number;} = { a: 0 }; // error
|
2014-07-19 02:30:06 +02:00
|
|
|
~~
|
2014-07-13 01:04:16 +02:00
|
|
|
!!! Type '{ a: number; }' is not assignable to type '{ b: number; }':
|
|
|
|
!!! Property 'b' is missing in type '{ a: number; }'.
|
|
|
|
|
|
|
|
b2 = { a: 0 }; // error
|
|
|
|
~~
|
|
|
|
!!! Type '{ a: number; }' is not assignable to type '{ b: number; }':
|
|
|
|
!!! Property 'b' is missing in type '{ a: number; }'.
|
|
|
|
|
|
|
|
b2 = {b: 0, a: 0 };
|
|
|
|
|
|
|
|
var b3: { f(n: number): number; g(s: string): number; m: number; n?: number; k?(a: any): any; };
|
|
|
|
|
|
|
|
b3 = {
|
|
|
|
f: (n) => { return 0; },
|
|
|
|
g: (s) => { return 0; },
|
|
|
|
m: 0,
|
|
|
|
}; // ok
|
|
|
|
|
|
|
|
b3 = {
|
|
|
|
~~
|
|
|
|
!!! Type '{ f: (n: number) => number; g: (s: string) => number; }' is not assignable to type '{ f(n: number): number; g(s: string): number; m: number; n?: number; k?(a: any): any; }':
|
|
|
|
!!! Property 'm' is missing in type '{ f: (n: number) => number; g: (s: string) => number; }'.
|
|
|
|
f: (n) => { return 0; },
|
|
|
|
g: (s) => { return 0; },
|
|
|
|
}; // error
|
|
|
|
|
|
|
|
b3 = {
|
|
|
|
~~
|
|
|
|
!!! Type '{ f: (n: number) => number; m: number; }' is not assignable to type '{ f(n: number): number; g(s: string): number; m: number; n?: number; k?(a: any): any; }':
|
|
|
|
!!! Property 'g' is missing in type '{ f: (n: number) => number; m: number; }'.
|
|
|
|
f: (n) => { return 0; },
|
|
|
|
m: 0,
|
|
|
|
}; // error
|
|
|
|
|
|
|
|
b3 = {
|
|
|
|
f: (n) => { return 0; },
|
|
|
|
g: (s) => { return 0; },
|
|
|
|
m: 0,
|
|
|
|
n: 0,
|
|
|
|
k: (a) =>{ return null; },
|
|
|
|
}; // ok
|
|
|
|
|
|
|
|
b3 = {
|
|
|
|
~~
|
|
|
|
!!! Type '{ f: (n: number) => number; g: (s: string) => number; n: number; k: (a: any) => any; }' is not assignable to type '{ f(n: number): number; g(s: string): number; m: number; n?: number; k?(a: any): any; }':
|
|
|
|
!!! Property 'm' is missing in type '{ f: (n: number) => number; g: (s: string) => number; n: number; k: (a: any) => any; }'.
|
|
|
|
f: (n) => { return 0; },
|
|
|
|
g: (s) => { return 0; },
|
|
|
|
n: 0,
|
|
|
|
k: (a) =>{ return null; },
|
|
|
|
}; // error
|