diff options
Diffstat (limited to 'lib/compress.js')
-rw-r--r-- | lib/compress.js | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/lib/compress.js b/lib/compress.js index 666f4c4c..e8a71791 100644 --- a/lib/compress.js +++ b/lib/compress.js @@ -7615,9 +7615,11 @@ merge(Compressor.prototype, { value = value.fixed_value(); } if (!value) return false; - return !(value instanceof AST_Lambda) - || compressor.parent() instanceof AST_New - || !value.contains_this(); + if (!(value instanceof AST_Lambda)) return true; + var parent = compressor.parent(); + if (parent.TYPE != "Call") return true; + if (parent.expression !== compressor.self()) return true; + return !value.contains_this(); } OPT(AST_Sub, function(self, compressor) { |