From ef9f7ca3e7c7f71df440645f782b3a7da4646d9b Mon Sep 17 00:00:00 2001 From: "Alex Lam S.L" Date: Sat, 23 Jan 2021 23:05:43 +0000 Subject: fix corner case in `collapse_vars` (#4587) fixes #4586 --- lib/compress.js | 2 ++ 1 file changed, 2 insertions(+) (limited to 'lib') diff --git a/lib/compress.js b/lib/compress.js index c6ebb34c..f4441775 100644 --- a/lib/compress.js +++ b/lib/compress.js @@ -2345,6 +2345,7 @@ merge(Compressor.prototype, { if (expr.operator == "=" && lhs instanceof AST_SymbolRef && (def = lhs.definition()).references[0] === lhs + && !(scope.uses_arguments && is_funarg(def)) && !compressor.exposed(def)) { var referenced = def.references.length - def.replaced; if (referenced > 1) mangleable_var(expr.right); @@ -2357,6 +2358,7 @@ merge(Compressor.prototype, { var def = expr.name.definition(); if (def.const_redefs) return; if (!member(expr.name, def.orig)) return; + if (scope.uses_arguments && is_funarg(def)) return; var declared = def.orig.length - def.eliminated - (declare_only[def.name] || 0); var referenced = def.references.length - def.replaced - (assignments[def.name] || 0); if (declared > 1 && !(expr.name instanceof AST_SymbolFunarg)) { -- cgit v1.2.3