fix corner case in reduce_vars (#3895)

fixes #3894
This commit is contained in:
Alex Lam S.L
2020-05-13 16:44:54 +01:00
committed by GitHub
parent 30ed8f5580
commit fe2f1965d6
2 changed files with 33 additions and 0 deletions

View File

@@ -741,6 +741,11 @@ merge(Compressor.prototype, {
if (j < 0) return value;
return iife.args[j] || make_node(AST_Undefined, iife);
};
d.fixed.reduce_arg = function() {
var j = fn.argnames.indexOf(arg);
if (j < 0 || j >= iife.args.length) return;
iife.args[j] = make_node(AST_Number, iife.args[j], { value: 0 });
};
tw.loop_ids[d.id] = tw.in_loop;
mark(tw, d, true);
} else {
@@ -7566,6 +7571,7 @@ merge(Compressor.prototype, {
}));
} else {
value = fixed.optimize(compressor);
if (def.fixed.reduce_arg) def.fixed.reduce_arg();
}
def.replaced++;
return value;