Fix (typeof side_effect()) in boolean context
Fixes #1289 with suggestion by @rvanvelzen
This commit is contained in:
@@ -2314,6 +2314,12 @@ merge(Compressor.prototype, {
|
||||
// typeof always returns a non-empty string, thus it's
|
||||
// always true in booleans
|
||||
compressor.warn("Boolean expression always true [{file}:{line},{col}]", self.start);
|
||||
if (self.expression.has_side_effects(compressor)) {
|
||||
return make_node(AST_Seq, self, {
|
||||
car: self.expression,
|
||||
cdr: make_node(AST_True, self)
|
||||
});
|
||||
}
|
||||
return make_node(AST_True, self);
|
||||
}
|
||||
if (e instanceof AST_Binary && self.operator == "!") {
|
||||
|
||||
Reference in New Issue
Block a user