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 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65
|
tests/cases/compiler/literalsInComputedProperties1.ts(39,5): error TS2452: An enum member cannot have a numeric name.
tests/cases/compiler/literalsInComputedProperties1.ts(40,5): error TS2452: An enum member cannot have a numeric name.
tests/cases/compiler/literalsInComputedProperties1.ts(41,5): error TS2452: An enum member cannot have a numeric name.
tests/cases/compiler/literalsInComputedProperties1.ts(42,5): error TS2452: An enum member cannot have a numeric name.
==== tests/cases/compiler/literalsInComputedProperties1.ts (4 errors) ====
let x = {
1:1,
[2]:1,
"3":1,
["4"]:1
}
x[1].toExponential();
x[2].toExponential();
x[3].toExponential();
x[4].toExponential();
interface A {
1:number;
[2]:number;
"3":number;
["4"]:number;
}
let y:A;
y[1].toExponential();
y[2].toExponential();
y[3].toExponential();
y[4].toExponential();
class C {
1:number;
[2]:number;
"3":number;
["4"]:number;
}
let z:C;
z[1].toExponential();
z[2].toExponential();
z[3].toExponential();
z[4].toExponential();
enum X {
1 = 1,
~
!!! error TS2452: An enum member cannot have a numeric name.
[2] = 2,
~~~
!!! error TS2452: An enum member cannot have a numeric name.
"3" = 3,
~~~
!!! error TS2452: An enum member cannot have a numeric name.
["4"] = 4,
~~~~~
!!! error TS2452: An enum member cannot have a numeric name.
"foo" = 5,
["bar"] = 6
}
let a = X["foo"];
let a0 = X["bar"];
// TODO: make sure that enum still disallow template literals as member names
|