fix corner case in collapse_vars (#3521)

fixes #3520
This commit is contained in:
Alex Lam S.L
2019-10-24 01:13:57 +08:00
committed by GitHub
parent 370c8e0385
commit 0f7aa41e33
3 changed files with 43 additions and 4 deletions

View File

@@ -6258,3 +6258,41 @@ cond_sequence_return: {
}
expect_stdout: "2"
}
issue_3520: {
options = {
collapse_vars: true,
reduce_vars: true,
unused: true,
}
input: {
var a = 0;
var b = function(c) {
for (var i = 2; --i >= 0;) {
(function f() {
c = 0;
var i = void 0;
var f = f && f[i];
})();
a += b;
c && b++;
}
}(b = 1);
console.log(a);
}
expect: {
var a = 0;
var b = function(c) {
for (var i = 2; --i >= 0;) {
(function() {
c = 0;
var f = f && f[void 0];
})();
a += b;
c && b++;
}
}(b = 1);
console.log(a);
}
expect_stdout: "2"
}