def(AST_ObjectProperty, function(compressor, first_in_statement) {
return this.value.drop_side_effect_free(compressor, first_in_statement);
});
- def(AST_Sequence, function(compressor) {
- var last = this.tail_node();
- var expr = last.drop_side_effect_free(compressor);
- if (expr === last) return this;
- var expressions = this.expressions.slice(0, -1);
- if (expr) expressions.push(expr);
+ def(AST_Sequence, function(compressor, first_in_statement) {
+ var expressions = trim(this.expressions, compressor, first_in_statement);
+ if (expressions === this.expressions) return this;
+ if (!expressions) return null;
return make_sequence(this, expressions);
});
def(AST_Sub, function(compressor, first_in_statement) {