diff options
author | Alex Lam S.L <alexlamsl@gmail.com> | 2020-11-18 23:58:33 +0000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-11-19 07:58:33 +0800 |
commit | db87dcf13e69cecd0f6153f65ab9aab81cffd574 (patch) | |
tree | d115db465a565952fed0f1301619764c3b035819 | |
parent | aecbabc587247f65316988629d17aa29383f9156 (diff) | |
download | tracifyjs-db87dcf13e69cecd0f6153f65ab9aab81cffd574.tar.gz tracifyjs-db87dcf13e69cecd0f6153f65ab9aab81cffd574.zip |
enhance `varify` (#4303)
-rw-r--r-- | lib/compress.js | 4 | ||||
-rw-r--r-- | test/compress/varify.js | 19 |
2 files changed, 22 insertions, 1 deletions
diff --git a/lib/compress.js b/lib/compress.js index f0453d6a..acd15f5e 100644 --- a/lib/compress.js +++ b/lib/compress.js @@ -7124,7 +7124,9 @@ merge(Compressor.prototype, { var def = name.definition(); def.orig[def.orig.indexOf(node)] = name; var scope = def.scope.resolve(); - if (def.scope !== scope) scope.variables.set(def.name, def); + if (def.scope === scope) return; + def.scope = scope; + scope.variables.set(def.name, def); }), value: defn.value }); diff --git a/test/compress/varify.js b/test/compress/varify.js index 95acd032..4d2a6b5a 100644 --- a/test/compress/varify.js +++ b/test/compress/varify.js @@ -390,3 +390,22 @@ issue_4290_1_let: { expect_stdout: true node_version: ">=4" } + +drop_forin_let: { + options = { + loops: true, + toplevel: true, + unused: true, + varify: true, + } + input: { + "use strict"; + for (let a in console.log("PASS")); + } + expect: { + "use strict"; + console.log("PASS"); + } + expect_stdout: "PASS" + node_version: ">=4" +} |