diff options
author | Alex Lam S.L <alexlamsl@gmail.com> | 2021-06-22 22:03:11 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-06-23 05:03:11 +0800 |
commit | 8b05677c15308923a76a6c769dc628a93901556d (patch) | |
tree | a0faadfd9e2d5f05e54ac59754245a5329ba903b /lib | |
parent | 95090dbf24dbda120924eb3cd003f80e0128f52a (diff) | |
download | tracifyjs-8b05677c15308923a76a6c769dc628a93901556d.tar.gz tracifyjs-8b05677c15308923a76a6c769dc628a93901556d.zip |
fix corner case in `collapse_vars` (#5026)
fixes #5025
Diffstat (limited to 'lib')
-rw-r--r-- | lib/compress.js | 7 |
1 files changed, 2 insertions, 5 deletions
diff --git a/lib/compress.js b/lib/compress.js index 66441e80..5a1df7c3 100644 --- a/lib/compress.js +++ b/lib/compress.js @@ -1818,10 +1818,7 @@ merge(Compressor.prototype, { return node; } if (is_lhs(node, parent)) { - if (value_def && !hit_rhs) { - assign_used = true; - if (node.definition().last_ref === node) replaced++; - } + if (value_def && !hit_rhs) assign_used = true; return node; } else if (value_def) { if (stop_if_hit && assign_pos == 0) assign_pos = remaining - replaced; @@ -2024,7 +2021,7 @@ merge(Compressor.prototype, { statements[i].transform(scanner); } if (value_def) { - if (!replaced || remaining > replaced) { + if (!replaced || remaining > replaced + assign_used) { candidates.push(hit_stack); force_single = true; continue; |