Microsoft/TypeScript
Enum value `1 / 0` incorrectly transformed if there is `Infinity` declared in scope
Aberta
#55.091 aberto em 20 de jul. de 2023
BugDomain: enumHelp Wanted
Métricas do repositório
- Stars
- (108.860 estrelas)
- Métricas de merge de PR
- (Métricas PR pendentes)
Description
Bug Report
🔎 Search Terms
infinity enum variable let shadow
🕗 Version & Regression Information
Every version I tested
⏯ Playground Link
Playground link with relevant code
💻 Code
{
let Infinity = 3;
enum A {
X = 1 / 0
}
console.log(A.X)
}
🙁 Actual behavior
{
let Infinity = 3;
let A;
(function (A) {
A[A["X"] = Infinity] = "X";
})(A || (A = {}));
console.log(A.X);
}
and logs 3
🙂 Expected behavior
It should log the result of 1 / 0, which is Infinity.
Somewhat related to https://github.com/microsoft/TypeScript/issues/54981.