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
|
//// [constEnumErrors.ts]
const enum E {
A
}
module E {
var x = 1;
}
const enum E1 {
// illegal case
// forward reference to the element of the same enum
X = Y,
// forward reference to the element of the same enum
Y = E1.Z,
Y1 = E1["Z"]
}
const enum E2 {
A
}
var y0 = E2[1]
var name = "A";
var y1 = E2[name];
var x = E2;
var y = [E2];
function foo(t: any): void {
}
foo(E2);
const enum NaNOrInfinity {
A = 9007199254740992,
B = A * A,
C = B * B,
D = C * C,
E = D * D,
F = E * E, // overflow
G = 1 / 0, // overflow
H = 0 / 0 // NaN
}
//// [constEnumErrors.js]
var E;
(function (E) {
var x = 1;
})(E || (E = {}));
var y0 = E2[1];
var name = "A";
var y1 = E2[name];
var x = E2;
var y = [E2];
function foo(t) {
}
foo(E2);
|