aboutsummaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
Diffstat (limited to 'test')
-rw-r--r--test/compress/numbers.js45
1 files changed, 42 insertions, 3 deletions
diff --git a/test/compress/numbers.js b/test/compress/numbers.js
index c432a435..07e93f60 100644
--- a/test/compress/numbers.js
+++ b/test/compress/numbers.js
@@ -997,7 +997,7 @@ identity_1: {
expect: {
0 + a;
a + 0;
- -a;
+ 0 - a;
+a;
+a;
+a;
@@ -1023,7 +1023,7 @@ identity_2: {
expect: {
+!a;
+!a;
- -!a;
+ 0 - !a;
+!a;
+!a;
+!a;
@@ -1049,7 +1049,7 @@ identity_3: {
expect: {
--a;
--a;
- - --a;
+ 0 - --a;
--a;
--a;
--a;
@@ -1057,3 +1057,42 @@ identity_3: {
--a;
}
}
+
+issue_3653: {
+ options = {
+ evaluate: true,
+ }
+ input: {
+ console.log(0 - (console && 0));
+ console.log(0 + (0 - (console && 0)));
+ console.log(0 - (0 - (console && 0)));
+ console.log(1 * (0 - (console && 0)));
+ console.log(1 / (0 - (console && 0)));
+ console.log((0 - (console && 0)) + 0);
+ console.log((0 - (console && 0)) - 0);
+ console.log((0 - (console && 0)) * 1);
+ console.log((0 - (console && 0)) / 1);
+ }
+ expect: {
+ console.log(0 - (console && 0));
+ console.log(0 - (console && 0));
+ console.log(0 - (0 - (console && 0)));
+ console.log(0 - (console && 0));
+ console.log(1 / (0 - (console && 0)));
+ console.log(0 - (console && 0));
+ console.log(0 - (console && 0));
+ console.log(0 - (console && 0));
+ console.log(0 - (console && 0));
+ }
+ expect_stdout: [
+ "0",
+ "0",
+ "0",
+ "0",
+ "Infinity",
+ "0",
+ "0",
+ "0",
+ "0",
+ ]
+}