fix corner case in merge_vars (#4629)

fixes #4628
This commit is contained in:
Alex Lam S.L
2021-02-09 04:36:12 +00:00
committed by GitHub
parent e13d1e9969
commit fcee32527b
2 changed files with 36 additions and 2 deletions

View File

@@ -5276,8 +5276,13 @@ merge(Compressor.prototype, {
return true;
}
if (node instanceof AST_VarDef) {
if (node.value) node.value.walk(tw);
node.name.mark_symbol(node.value ? function(node) {
var assigned = node.value;
if (assigned) {
assigned.walk(tw);
} else {
assigned = segment.block instanceof AST_ForEnumeration && segment.block.init === tw.parent();
}
node.name.mark_symbol(assigned ? function(node) {
if (!(node instanceof AST_SymbolDeclaration)) return;
if (node instanceof AST_SymbolVar) {
mark(node);