File: enumAssignmentCompat5.errors.txt

package info (click to toggle)
node-typescript 3.3.3333-1
  • links: PTS, VCS
  • area: main
  • in suites: buster
  • size: 324,548 kB
  • sloc: makefile: 6; sh: 3
file content (30 lines) | stat: -rw-r--r-- 945 bytes parent folder | download | duplicates (6)
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/enumAssignmentCompat5.ts(20,9): error TS2535: Enum type 'Computed' has members with initializers that are not literals.


==== tests/cases/compiler/enumAssignmentCompat5.ts (1 errors) ====
    enum E {
        A, B, C
    }
    enum Computed {
        A = 1 << 1,
        B = 1 << 2,
        C = 1 << 3,
    }
    let n: number;
    let e: E = n; // ok because it's too inconvenient otherwise
    e = 0; // ok, in range
    e = 4; // ok, out of range, but allowed computed enums don't have all members
    let a: E.A = 0; // ok, A === 0
    a = 2; // error, 2 !== 0
    a = n; // ok
    
    let c: Computed = n; // ok
    c = n; // ok
    c = 4; // ok
    let ca: Computed.A = 1; // error, Computed.A isn't a literal type because Computed has no enum literals
            ~~~~~~~~~~
!!! error TS2535: Enum type 'Computed' has members with initializers that are not literals.