fix corner case in unused (#5190)

fixes #5189
This commit is contained in:
Alex Lam S.L
2021-11-23 12:10:05 +00:00
committed by GitHub
parent ea10498902
commit dc9e1ff0b1
2 changed files with 50 additions and 0 deletions

View File

@@ -7211,6 +7211,9 @@ merge(Compressor.prototype, {
if (!drop) break;
var sym = elements[0];
if (sym.has_side_effects(compressor)) break;
if (value.has_side_effects(compressor) && sym.match_symbol(function(node) {
return node instanceof AST_PropAccess;
})) break;
value = make_node(AST_Sub, node, {
expression: value,
property: make_node(AST_Number, node, { value: 0 }),
@@ -7337,6 +7340,9 @@ merge(Compressor.prototype, {
var prop = properties[0];
if (prop.key instanceof AST_Node) break;
if (prop.value.has_side_effects(compressor)) break;
if (value.has_side_effects(compressor) && prop.value.match_symbol(function(node) {
return node instanceof AST_PropAccess;
})) break;
value = make_node(AST_Sub, node, {
expression: value,
property: make_node_from_constant(prop.key, prop),