TypeScript/tests/baselines/reference/objectLiteralIndexerErrors.errors.txt
2014-09-11 16:11:08 -07:00

20 lines
731 B
Plaintext

==== tests/cases/compiler/objectLiteralIndexerErrors.ts (1 errors) ====
interface A {
x: number;
}
interface B extends A {
y: string;
}
var a: A;
var b: B;
var c: any;
var o1: { [s: string]: A;[n: number]: B; } = { x: b, 0: a }; // both indexers are A
~~
!!! error TS2322: Type '{ [x: string]: A; [x: number]: A; 0: A; x: B; }' is not assignable to type '{ [x: string]: A; [x: number]: B; }':
!!! error TS2322: Index signatures are incompatible:
!!! error TS2322: Type 'A' is not assignable to type 'B':
!!! error TS2322: Property 'y' is missing in type 'A'.
o1 = { x: c, 0: a }; // string indexer is any, number indexer is A