20 lines
No EOL
675 B
Text
20 lines
No EOL
675 B
Text
==== 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
|
|
~~
|
|
!!! Type '{ [x: string]: A; [x: number]: A; 0: A; x: B; }' is not assignable to type '{ [x: string]: A; [x: number]: B; }':
|
|
!!! Index signatures are incompatible:
|
|
!!! Type 'A' is not assignable to type 'B':
|
|
!!! Property 'y' is missing in type 'A'.
|
|
o1 = { x: c, 0: a }; // string indexer is any, number indexer is A |