@@ -587,7 +587,10 @@ merge(Compressor.prototype, {
|
|||||||
d.assignments++;
|
d.assignments++;
|
||||||
var fixed = d.fixed;
|
var fixed = d.fixed;
|
||||||
var value = eq ? node.right : node;
|
var value = eq ? node.right : node;
|
||||||
if (is_modified(compressor, tw, node, value, 0)) return;
|
if (is_modified(compressor, tw, node, value, 0)) {
|
||||||
|
d.fixed = false;
|
||||||
|
return;
|
||||||
|
}
|
||||||
var safe = eq || safe_to_read(tw, d);
|
var safe = eq || safe_to_read(tw, d);
|
||||||
node.right.walk(tw);
|
node.right.walk(tw);
|
||||||
if (safe && safe_to_assign(tw, d)) {
|
if (safe && safe_to_assign(tw, d)) {
|
||||||
|
|||||||
@@ -7383,3 +7383,26 @@ issue_3974: {
|
|||||||
}
|
}
|
||||||
expect_stdout: "PASS"
|
expect_stdout: "PASS"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
issue_4030: {
|
||||||
|
options = {
|
||||||
|
collapse_vars: true,
|
||||||
|
evaluate: true,
|
||||||
|
reduce_vars: true,
|
||||||
|
toplevel: true,
|
||||||
|
unused: true,
|
||||||
|
}
|
||||||
|
input: {
|
||||||
|
var a;
|
||||||
|
{
|
||||||
|
delete (a = "PASS");
|
||||||
|
A = "PASS";
|
||||||
|
}
|
||||||
|
console.log(A);
|
||||||
|
}
|
||||||
|
expect: {
|
||||||
|
A = "PASS";
|
||||||
|
console.log("PASS");
|
||||||
|
}
|
||||||
|
expect_stdout: "PASS"
|
||||||
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user