fix corner case in pure_getters (#4449)

fixes #4448
This commit is contained in:
Alex Lam S.L
2020-12-24 19:58:23 +00:00
committed by GitHub
parent 1896694532
commit dfc3ec9cef
2 changed files with 30 additions and 0 deletions

View File

@@ -358,6 +358,7 @@ merge(Compressor.prototype, {
function is_arguments(def) { function is_arguments(def) {
if (def.name != "arguments") return false; if (def.name != "arguments") return false;
if (!def.scope.uses_arguments) return false;
var orig = def.orig; var orig = def.orig;
return orig.length == 1 && orig[0] instanceof AST_SymbolFunarg; return orig.length == 1 && orig[0] instanceof AST_SymbolFunarg;
} }

View File

@@ -587,3 +587,32 @@ issue_4401: {
] ]
node_version: ">=4" node_version: ">=4"
} }
issue_4448: {
options = {
pure_getters: "strict",
side_effects: true,
}
input: {
var A;
try {
(arguments => {
arguments[0];
})(A);
} catch (e) {
console.log("PASS");
}
}
expect: {
var A;
try {
(arguments => {
arguments[0];
})(A);
} catch (e) {
console.log("PASS");
}
}
expect_stdout: "PASS"
node_version: ">=4"
}