File: inheritedMembersAndIndexSignaturesFromDifferentBases.errors.txt

package info (click to toggle)
node-typescript 5.0.4%2Bds1-2
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 459,140 kB
  • sloc: javascript: 1,972,754; makefile: 6; sh: 1
file content (48 lines) | stat: -rw-r--r-- 2,604 bytes parent folder | download | duplicates (3)
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
36
37
38
39
40
41
42
43
44
45
46
47
48
tests/cases/compiler/inheritedMembersAndIndexSignaturesFromDifferentBases.ts(17,11): error TS2411: Property 'm' of type '{}' is not assignable to 'string' index type '{ a: any; }'.
tests/cases/compiler/inheritedMembersAndIndexSignaturesFromDifferentBases.ts(23,11): error TS2411: Property '0' of type '{}' is not assignable to 'number' index type '{ a: any; b: any; }'.
tests/cases/compiler/inheritedMembersAndIndexSignaturesFromDifferentBases.ts(23,11): error TS2411: Property '0' of type '{}' is not assignable to 'string' index type '{ a: any; }'.
tests/cases/compiler/inheritedMembersAndIndexSignaturesFromDifferentBases.ts(25,11): error TS2411: Property '0' of type '{}' is not assignable to 'number' index type '{ a: any; b: any; }'.
tests/cases/compiler/inheritedMembersAndIndexSignaturesFromDifferentBases.ts(25,11): error TS2411: Property '0' of type '{}' is not assignable to 'string' index type '{ a: any; }'.
tests/cases/compiler/inheritedMembersAndIndexSignaturesFromDifferentBases.ts(25,11): error TS2411: Property 'm' of type '{}' is not assignable to 'string' index type '{ a: any; }'.


==== tests/cases/compiler/inheritedMembersAndIndexSignaturesFromDifferentBases.ts (6 errors) ====
    // indexer in B is a subtype of indexer in A
    interface A {
        [s: string]: {
            a;
        };
    }
    interface B {
        [s: number]: {
            a;
            b;
        };
    }
    interface C {
        m: {};
    }
    
    interface D extends A, B, C { } // error because m is not a subtype of {a;}
              ~
!!! error TS2411: Property 'm' of type '{}' is not assignable to 'string' index type '{ a: any; }'.
    
    interface E {
        0: {};
    }
    
    interface F extends A, B, E { } // error because 0 is not a subtype of {a; b;}
              ~
!!! error TS2411: Property '0' of type '{}' is not assignable to 'number' index type '{ a: any; b: any; }'.
              ~
!!! error TS2411: Property '0' of type '{}' is not assignable to 'string' index type '{ a: any; }'.
    
    interface G extends A, B, C, E { } // should only report one error
              ~
!!! error TS2411: Property '0' of type '{}' is not assignable to 'number' index type '{ a: any; b: any; }'.
              ~
!!! error TS2411: Property '0' of type '{}' is not assignable to 'string' index type '{ a: any; }'.
              ~
!!! error TS2411: Property 'm' of type '{}' is not assignable to 'string' index type '{ a: any; }'.
    
    interface H extends A, F { } // Should report no error at all because error is internal to F