fix compress of IIFE with destructuring args (#2022)

This commit is contained in:
kzc
2017-05-30 01:17:06 -04:00
committed by Alex Lam S.L
parent c2e471e3ad
commit ec63588496
2 changed files with 64 additions and 8 deletions

View File

@@ -372,14 +372,16 @@ merge(Compressor.prototype, {
// (function(a,b) {...})(c,d) => (function() {var a=c,b=d; ...})()
// So existing transformation rules can work on them.
node.argnames.forEach(function(arg, i) {
var d = arg.definition();
if (!node.uses_arguments && d.fixed === undefined) {
d.fixed = function() {
return iife.args[i] || make_node(AST_Undefined, iife);
};
mark(d, true);
} else {
d.fixed = false;
if (arg.definition) {
var d = arg.definition();
if (!node.uses_arguments && d.fixed === undefined) {
d.fixed = function() {
return iife.args[i] || make_node(AST_Undefined, iife);
};
mark(d, true);
} else {
d.fixed = false;
}
}
});
}