File: typeParameterArgumentEquivalence5.errors.txt

package info (click to toggle)
node-typescript 5.0.4%2Bds1-1
  • links: PTS, VCS
  • area: main
  • in suites: experimental
  • size: 459,116 kB
  • sloc: javascript: 1,972,754; makefile: 6; sh: 1
file content (30 lines) | stat: -rw-r--r-- 2,108 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
tests/cases/compiler/typeParameterArgumentEquivalence5.ts(4,5): error TS2322: Type '() => (item: any) => T' is not assignable to type '() => (item: any) => U'.
  Call signature return types '(item: any) => T' and '(item: any) => U' are incompatible.
    Type 'T' is not assignable to type 'U'.
      'U' could be instantiated with an arbitrary type which could be unrelated to 'T'.
tests/cases/compiler/typeParameterArgumentEquivalence5.ts(5,5): error TS2322: Type '() => (item: any) => U' is not assignable to type '() => (item: any) => T'.
  Call signature return types '(item: any) => U' and '(item: any) => T' are incompatible.
    Type 'U' is not assignable to type 'T'.
      'T' could be instantiated with an arbitrary type which could be unrelated to 'U'.


==== tests/cases/compiler/typeParameterArgumentEquivalence5.ts (2 errors) ====
    function foo<T,U>() {
        var x: () => (item) => U;
        var y: () => (item) => T;
        x = y;  // Should be an error
        ~
!!! error TS2322: Type '() => (item: any) => T' is not assignable to type '() => (item: any) => U'.
!!! error TS2322:   Call signature return types '(item: any) => T' and '(item: any) => U' are incompatible.
!!! error TS2322:     Type 'T' is not assignable to type 'U'.
!!! error TS2322:       'U' could be instantiated with an arbitrary type which could be unrelated to 'T'.
!!! related TS2208 tests/cases/compiler/typeParameterArgumentEquivalence5.ts:1:14: This type parameter might need an `extends U` constraint.
        y = x;  // Shound be an error
        ~
!!! error TS2322: Type '() => (item: any) => U' is not assignable to type '() => (item: any) => T'.
!!! error TS2322:   Call signature return types '(item: any) => U' and '(item: any) => T' are incompatible.
!!! error TS2322:     Type 'U' is not assignable to type 'T'.
!!! error TS2322:       'T' could be instantiated with an arbitrary type which could be unrelated to 'U'.
!!! related TS2208 tests/cases/compiler/typeParameterArgumentEquivalence5.ts:1:16: This type parameter might need an `extends T` constraint.
    }