fix corner case in unused (#4147)

fixes #4146
This commit is contained in:
Alex Lam S.L
2020-09-22 13:08:45 +01:00
committed by GitHub
parent 6d4c0fa6fa
commit 3472cf1a90
3 changed files with 32 additions and 6 deletions

View File

@@ -36,7 +36,7 @@ jobs:
npm config set update-notifier false npm config set update-notifier false
npm --version npm --version
while !(npm install); do echo "'npm install' failed - retrying..."; done while !(npm install); do echo "'npm install' failed - retrying..."; done
PERIOD=-2000 PERIOD=-5000
if [[ $CAUSE == "schedule" ]]; then if [[ $CAUSE == "schedule" ]]; then
PERIOD=`node test/ufuzz/actions $BASE_URL $TOKEN` PERIOD=`node test/ufuzz/actions $BASE_URL $TOKEN`
fi fi

View File

@@ -6474,17 +6474,16 @@ merge(Compressor.prototype, {
side_effects.push(node); side_effects.push(node);
args[pos++] = make_sequence(call, side_effects); args[pos++] = make_sequence(call, side_effects);
side_effects = []; side_effects = [];
} else if (!trim && fn.argnames[i].__unused) { } else if (!trim) {
if (side_effects.length) { if (side_effects.length) {
node = make_sequence(call, side_effects); args[pos++] = make_sequence(call, side_effects);
side_effects = []; side_effects = [];
} else { } else {
node = make_node(AST_Number, args[i], { args[pos++] = make_node(AST_Number, args[i], {
value: 0 value: 0
}); });
continue;
} }
args[pos++] = node;
continue;
} }
} else { } else {
side_effects.push(args[i]); side_effects.push(args[i]);

View File

@@ -2965,3 +2965,30 @@ issue_4144: {
} }
expect_stdout: "PASS" expect_stdout: "PASS"
} }
issue_4146: {
options = {
reduce_vars: true,
toplevel: true,
unused: true,
}
input: {
function f(a, b) {
function g() {}
var a = g;
var c = b;
c.p;
console.log(typeof a);
}
f("FAIL", 42);
}
expect: {
(function(a, b) {
a = function () {};
var c = b;
c.p;
console.log(typeof a);
})(0, 42);
}
expect_stdout: "function"
}