enhance inline (#5105)

This commit is contained in:
Alex Lam S.L
2021-07-27 14:47:01 +01:00
committed by GitHub
parent e219a9a78a
commit 4fe2cac35e
4 changed files with 62 additions and 21 deletions

View File

@@ -227,7 +227,7 @@ inline_await_1_trim: {
console.log("PASS");
}
expect: {
void 0;
0;
console.log("PASS");
}
expect_stdout: "PASS"
@@ -571,7 +571,7 @@ drop_async_1: {
}
expect: {
console.log(function(a) {
void (a *= 7);
a *= 7;
return a;
}(6));
}
@@ -1774,7 +1774,7 @@ issue_5001: {
}
expect: {
var a = 0;
void a++;
a++;
console.log(a ? "PASS" : "FAIL");
}
expect_stdout: "PASS"

View File

@@ -1557,9 +1557,9 @@ issue_2665: {
}
expect: {
var a = 1;
!function g() {
(function g() {
a-- && g();
}();
})();
console.log(a);
}
expect_stdout: "-1"
@@ -3379,7 +3379,7 @@ issue_4834: {
}
expect: {
try {
void b.p;
b.p;
} catch (e) {
console.log("PASS");
}

View File

@@ -1171,11 +1171,11 @@ issue_2620_4: {
}
expect: {
var c = "FAIL";
!function() {
(function() {
switch (NaN) {
case void (c = "PASS"):
}
}();
})();
console.log(c);
}
expect_stdout: "PASS"
@@ -6565,3 +6565,38 @@ issue_5098: {
}
expect_stdout: "PASS"
}
shorter_without_void: {
options = {
inline: true,
passes: 2,
reduce_vars: true,
side_effects: true,
toplevel: true,
}
input: {
var a;
function f(b) {
a = b;
}
f("foo");
console.log(a) || f("bar");
console.log(a, f("baz"));
console.log(a);
}
expect: {
var a;
function f(b) {
a = b;
}
a = "foo";
console.log(a) || (a = "bar");
console.log(a, f("baz"));
console.log(a);
}
expect_stdout: [
"foo",
"bar undefined",
"baz",
]
}