File: typeAssertionsWithUnionTypes01.errors.txt

package info (click to toggle)
node-typescript 5.2.2-1
  • links: PTS, VCS
  • area: main
  • in suites: experimental
  • size: 497,488 kB
  • sloc: javascript: 2,107,274; makefile: 6; sh: 1
file content (23 lines) | stat: -rw-r--r-- 831 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
typeAssertionsWithUnionTypes01.ts(14,9): error TS2352: Conversion of type 'I1' to type 'number' may be a mistake because neither type sufficiently overlaps with the other. If this was intentional, convert the expression to 'unknown' first.


==== typeAssertionsWithUnionTypes01.ts (1 errors) ====
    interface I1 {
        p1: number
    }
    
    interface I2 extends I1 {
        p2: number;
    }
    
    var x = { p1: 10, p2: 20 };
    var y: number | I2 = x;
    var z: I1 = x;
    
    var a = <number | I2>z;
    var b = <number>z;
            ~~~~~~~~~
!!! error TS2352: Conversion of type 'I1' to type 'number' may be a mistake because neither type sufficiently overlaps with the other. If this was intentional, convert the expression to 'unknown' first.
    var c = <I2>z;
    var d = <I1>y;