File tree 1 file changed +8
-7
lines changed
1 file changed +8
-7
lines changed Original file line number Diff line number Diff line change @@ -181,6 +181,13 @@ merge(Compressor.prototype, {
181
181
var reduce_vars = rescan && compressor . option ( "reduce_vars" ) ;
182
182
var safe_ids = [ ] ;
183
183
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
+ } ) ;
184
191
var tw = new TreeWalker ( function ( node ) {
185
192
if ( ! ( node instanceof AST_Directive || node instanceof AST_Constant ) ) {
186
193
node . _squeezed = false ;
@@ -243,13 +250,7 @@ merge(Compressor.prototype, {
243
250
return true ;
244
251
}
245
252
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 ) ;
253
254
node . object . walk ( tw ) ;
254
255
push ( ) ;
255
256
node . body . walk ( tw ) ;
You can’t perform that action at this time.
0 commit comments