aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlex Lam S.L <alexlamsl@gmail.com>2020-03-01 20:34:31 +0000
committerGitHub <noreply@github.com>2020-03-01 20:34:31 +0000
commita051846d2275de75c72b69063a6b75ee0d302a8c (patch)
tree299681728a31b4214857a627d476928377859939
parent348547286611eaf665b00d5ee21a8fee2c2f0660 (diff)
downloadtracifyjs-a051846d2275de75c72b69063a6b75ee0d302a8c.tar.gz
tracifyjs-a051846d2275de75c72b69063a6b75ee0d302a8c.zip
fix corner case in `evaluate` (#3739)
fixes #3738
-rw-r--r--lib/compress.js3
-rw-r--r--test/compress/evaluate.js13
2 files changed, 14 insertions, 2 deletions
diff --git a/lib/compress.js b/lib/compress.js
index e455ea8d..ab89e927 100644
--- a/lib/compress.js
+++ b/lib/compress.js
@@ -2528,9 +2528,8 @@ merge(Compressor.prototype, {
return left.is_negative_zero() || right.is_negative_zero();
case "*":
case "/":
- return true;
case "%":
- return left.is_negative_zero();
+ return true;
default:
return false;
}
diff --git a/test/compress/evaluate.js b/test/compress/evaluate.js
index 09fdfb2a..6d3adacb 100644
--- a/test/compress/evaluate.js
+++ b/test/compress/evaluate.js
@@ -2161,3 +2161,16 @@ collapse_vars_regexp: {
"abbb",
]
}
+
+issue_3738: {
+ options = {
+ evaluate: true,
+ }
+ input: {
+ console.log(1 / (0 + ([] - 1) % 1));
+ }
+ expect: {
+ console.log(1 / (0 + ([] - 1) % 1));
+ }
+ expect_stdout: "Infinity"
+}