File tree Expand file tree Collapse file tree 4 files changed +66
-1
lines changed
tests/fixture/issues/10412 Expand file tree Collapse file tree 4 files changed +66
-1
lines changed Original file line number Diff line number Diff line change @@ -182,10 +182,12 @@ impl Optimizer<'_> {
182
182
}
183
183
184
184
if let Some ( v) = self . data . vars . get ( & i. to_id ( ) ) {
185
+ let is_used_in_member =
186
+ v. property_mutation_count > 0 || v. flags . contains ( VarUsageInfoFlags :: USED_AS_REF ) ;
185
187
if v. ref_count == 0
186
188
&& v. usage_count == 0
187
189
&& !v. flags . contains ( VarUsageInfoFlags :: REASSIGNED )
188
- && v . property_mutation_count == 0
190
+ && !is_used_in_member
189
191
{
190
192
self . changed = true ;
191
193
report_change ! (
Original file line number Diff line number Diff line change
1
+ {
2
+ "arguments" : false ,
3
+ "arrows" : true ,
4
+ "booleans" : true ,
5
+ "booleans_as_integers" : false ,
6
+ "collapse_vars" : true ,
7
+ "comparisons" : true ,
8
+ "computed_props" : true ,
9
+ "conditionals" : true ,
10
+ "dead_code" : true ,
11
+ "directives" : true ,
12
+ "drop_console" : false ,
13
+ "drop_debugger" : true ,
14
+ "evaluate" : true ,
15
+ "expression" : false ,
16
+ "hoist_funs" : false ,
17
+ "hoist_props" : true ,
18
+ "hoist_vars" : false ,
19
+ "if_return" : true ,
20
+ "join_vars" : true ,
21
+ "keep_classnames" : false ,
22
+ "keep_fargs" : true ,
23
+ "keep_fnames" : false ,
24
+ "keep_infinity" : false ,
25
+ "loops" : true ,
26
+ "negate_iife" : true ,
27
+ "properties" : true ,
28
+ "reduce_funcs" : false ,
29
+ "reduce_vars" : false ,
30
+ "side_effects" : true ,
31
+ "switches" : true ,
32
+ "typeofs" : true ,
33
+ "unsafe" : false ,
34
+ "unsafe_arrows" : false ,
35
+ "unsafe_comps" : false ,
36
+ "unsafe_Function" : false ,
37
+ "unsafe_math" : false ,
38
+ "unsafe_symbols" : false ,
39
+ "unsafe_methods" : false ,
40
+ "unsafe_proto" : false ,
41
+ "unsafe_regexp" : false ,
42
+ "unsafe_undefined" : false ,
43
+ "unused" : true
44
+ }
Original file line number Diff line number Diff line change
1
+ ( function ( e , i ) {
2
+ // "_" rename to another name also reproduce
3
+ var _ = ( ( ( i = { } ) [ n . NONE ] = { platform : a . NONE } ) , i ) ;
4
+
5
+ e . getPlatform = function ( ) {
6
+ // "_" should not be removed
7
+ console . log ( _ [ t . toString ( ) ] ) ;
8
+ } ;
9
+ } ) ( ) ;
Original file line number Diff line number Diff line change
1
+ ! function ( e , i ) {
2
+ // "_" rename to another name also reproduce
3
+ var _ = ( ( i = { } ) [ n . NONE ] = {
4
+ platform : a . NONE
5
+ } , i ) ;
6
+ e . getPlatform = function ( ) {
7
+ // "_" should not be removed
8
+ console . log ( _ [ t . toString ( ) ] ) ;
9
+ } ;
10
+ } ( ) ;
You can’t perform that action at this time.
0 commit comments