Skip to content

Commit b5e0e8c

Browse files
authoredMar 2, 2017
facilitate fix for #1531 (#1542)
1 parent e5cb927 commit b5e0e8c

File tree

1 file changed

+8
-7
lines changed

1 file changed

+8
-7
lines changed
 

‎lib/compress.js

+8-7
Original file line numberDiff line numberDiff line change
@@ -181,6 +181,13 @@ merge(Compressor.prototype, {
181181
var reduce_vars = rescan && compressor.option("reduce_vars");
182182
var safe_ids = [];
183183
push();
184+
var suppressor = new TreeWalker(function(node) {
185+
if (node instanceof AST_Symbol) {
186+
var d = node.definition();
187+
if (node instanceof AST_SymbolRef) d.references.push(node);
188+
d.fixed = false;
189+
}
190+
});
184191
var tw = new TreeWalker(function(node){
185192
if (!(node instanceof AST_Directive || node instanceof AST_Constant)) {
186193
node._squeezed = false;
@@ -243,13 +250,7 @@ merge(Compressor.prototype, {
243250
return true;
244251
}
245252
if (node instanceof AST_ForIn) {
246-
var sym = node.init;
247-
if (sym instanceof AST_Var) {
248-
sym = sym.definitions[0].name;
249-
}
250-
var d = sym.definition();
251-
d.references.push(sym);
252-
d.fixed = false;
253+
node.init.walk(suppressor);
253254
node.object.walk(tw);
254255
push();
255256
node.body.walk(tw);

0 commit comments

Comments
 (0)
Please sign in to comment.