From: kzc Date: Wed, 17 Aug 2016 01:54:54 +0000 (-0400) Subject: Fix negate_iife regression #1254 X-Git-Url: https://git.ndcode.org/public/gitweb.cgi?a=commitdiff_plain;h=d854523783b4;p=UglifyJS.git Fix negate_iife regression #1254 --- diff --git a/lib/output.js b/lib/output.js index 801f7516..f1e0c2f1 100644 --- a/lib/output.js +++ b/lib/output.js @@ -531,6 +531,8 @@ function OutputStream(options) { }); PARENS([ AST_Unary, AST_Undefined ], function(output){ + if (this.expression instanceof AST_Call) + return false; var p = output.parent(); return p instanceof AST_PropAccess && p.expression === this || p instanceof AST_Call && p.expression === this; diff --git a/test/compress/negate-iife.js b/test/compress/negate-iife.js index b73ff547..aa95d958 100644 --- a/test/compress/negate-iife.js +++ b/test/compress/negate-iife.js @@ -130,3 +130,31 @@ negate_iife_issue_1073: { }(7))(); } } + +issue_1254_negate_iife_false: { + options = { + negate_iife: false, + } + input: { + (function() { + return function() { + console.log('test') + }; + })()(); + } + expect_exact: '(function(){return function(){console.log("test")}})()();' +} + +issue_1254_negate_iife_true: { + options = { + negate_iife: true, + } + input: { + (function() { + return function() { + console.log('test') + }; + })()(); + } + expect_exact: '!function(){return function(){console.log("test")}}()();' +}