File: overloadOnConstInheritance2.errors.txt

package info (click to toggle)
node-typescript 2.1.5-1
  • links: PTS, VCS
  • area: main
  • in suites: stretch
  • size: 203,952 kB
  • ctags: 52,987
  • sloc: sh: 11; makefile: 5
file content (22 lines) | stat: -rw-r--r-- 1,196 bytes parent folder | download | duplicates (7)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
tests/cases/compiler/overloadOnConstInheritance2.ts(5,11): error TS2430: Interface 'Deriver' incorrectly extends interface 'Base'.
  Types of property 'addEventListener' are incompatible.
    Type '(x: "bar") => string' is not assignable to type '{ (x: string): any; (x: "foo"): string; }'.
      Types of parameters 'x' and 'x' are incompatible.
        Type '"foo"' is not assignable to type '"bar"'.


==== tests/cases/compiler/overloadOnConstInheritance2.ts (1 errors) ====
    interface Base {
        addEventListener(x: string): any;
        addEventListener(x: 'foo'): string;
    }
    interface Deriver extends Base {
              ~~~~~~~
!!! error TS2430: Interface 'Deriver' incorrectly extends interface 'Base'.
!!! error TS2430:   Types of property 'addEventListener' are incompatible.
!!! error TS2430:     Type '(x: "bar") => string' is not assignable to type '{ (x: string): any; (x: "foo"): string; }'.
!!! error TS2430:       Types of parameters 'x' and 'x' are incompatible.
!!! error TS2430:         Type '"foo"' is not assignable to type '"bar"'.
        addEventListener(x: 'bar'): string; // shouldn't need to redeclare the string overload
    }