From: Alex Lam S.L Date: Fri, 11 Dec 2020 20:45:35 +0000 (+0000) Subject: fix corner cases in `unused` & `varify` (#4368) X-Git-Url: https://git.ndcode.org/public/gitweb.cgi?a=commitdiff_plain;h=58dff9ada3adf21dbe7d8d205e76cfbd48b8619a;p=UglifyJS.git fix corner cases in `unused` & `varify` (#4368) fixes #4365 --- diff --git a/lib/compress.js b/lib/compress.js index 27b080bb..cc601bfb 100644 --- a/lib/compress.js +++ b/lib/compress.js @@ -7284,7 +7284,7 @@ merge(Compressor.prototype, { }); function is_safe_lexical(def) { - return def.orig.length < (def.orig[0] instanceof AST_SymbolLambda ? 3 : 2); + return def.name != "arguments" && def.orig.length < (def.orig[0] instanceof AST_SymbolLambda ? 3 : 2); } function may_overlap(compressor, def) { diff --git a/test/compress/const.js b/test/compress/const.js index c269f8c0..4eea1977 100644 --- a/test/compress/const.js +++ b/test/compress/const.js @@ -1347,3 +1347,31 @@ issue_4305_2: { } expect_stdout: true } + +issue_4365_1: { + options = { + toplevel: true, + unused: true, + } + input: { + const arguments = 42; + } + expect: { + const arguments = 42; + } + expect_stdout: true +} + +issue_4365_2: { + options = { + toplevel: true, + varify: true, + } + input: { + const arguments = 42; + } + expect: { + const arguments = 42; + } + expect_stdout: true +}