@@ -968,6 +968,7 @@ merge(Compressor.prototype, {
|
|||||||
|| node instanceof AST_Call && lhs instanceof AST_PropAccess && lhs.equivalent_to(node.expression)
|
|| node instanceof AST_Call && lhs instanceof AST_PropAccess && lhs.equivalent_to(node.expression)
|
||||||
|| node instanceof AST_Debugger
|
|| node instanceof AST_Debugger
|
||||||
|| node instanceof AST_IterationStatement && !(node instanceof AST_For)
|
|| node instanceof AST_IterationStatement && !(node instanceof AST_For)
|
||||||
|
|| node instanceof AST_LoopControl
|
||||||
|| node instanceof AST_Try
|
|| node instanceof AST_Try
|
||||||
|| node instanceof AST_With
|
|| node instanceof AST_With
|
||||||
|| parent instanceof AST_For && node !== parent.init
|
|| parent instanceof AST_For && node !== parent.init
|
||||||
|
|||||||
@@ -4383,3 +4383,53 @@ cond_branch_switch: {
|
|||||||
}
|
}
|
||||||
expect_stdout: "1"
|
expect_stdout: "1"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
issue_2873_1: {
|
||||||
|
options = {
|
||||||
|
collapse_vars: true,
|
||||||
|
}
|
||||||
|
input: {
|
||||||
|
var b = 1, c = 0;
|
||||||
|
do {
|
||||||
|
c++;
|
||||||
|
if (!--b) break;
|
||||||
|
c = 1 + c;
|
||||||
|
} while (0);
|
||||||
|
console.log(b, c);
|
||||||
|
}
|
||||||
|
expect: {
|
||||||
|
var b = 1, c = 0;
|
||||||
|
do {
|
||||||
|
c++;
|
||||||
|
if (!--b) break;
|
||||||
|
c = 1 + c;
|
||||||
|
} while (0);
|
||||||
|
console.log(b, c);
|
||||||
|
}
|
||||||
|
expect_stdout: "0 1"
|
||||||
|
}
|
||||||
|
|
||||||
|
issue_2873_2: {
|
||||||
|
options = {
|
||||||
|
collapse_vars: true,
|
||||||
|
}
|
||||||
|
input: {
|
||||||
|
var b = 1, c = 0;
|
||||||
|
do {
|
||||||
|
c++;
|
||||||
|
if (!--b) continue;
|
||||||
|
c = 1 + c;
|
||||||
|
} while (0);
|
||||||
|
console.log(b, c);
|
||||||
|
}
|
||||||
|
expect: {
|
||||||
|
var b = 1, c = 0;
|
||||||
|
do {
|
||||||
|
c++;
|
||||||
|
if (!--b) continue;
|
||||||
|
c = 1 + c;
|
||||||
|
} while (0);
|
||||||
|
console.log(b, c);
|
||||||
|
}
|
||||||
|
expect_stdout: "0 1"
|
||||||
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user