gate various label-related transformations (#3812)
This commit is contained in:
@@ -3962,11 +3962,12 @@ merge(Compressor.prototype, {
|
||||
});
|
||||
|
||||
OPT(AST_LabeledStatement, function(self, compressor) {
|
||||
if (self.body instanceof AST_Break
|
||||
if (compressor.option("dead_code")
|
||||
&& self.body instanceof AST_Break
|
||||
&& compressor.loopcontrol_target(self.body) === self.body) {
|
||||
return make_node(AST_EmptyStatement, self);
|
||||
}
|
||||
return self.label.references.length == 0 ? self.body : self;
|
||||
return compressor.option("unused") && self.label.references.length == 0 ? self.body : self;
|
||||
});
|
||||
|
||||
OPT(AST_Block, function(self, compressor) {
|
||||
|
||||
@@ -3,6 +3,7 @@ labels_1: {
|
||||
conditionals: true,
|
||||
dead_code: true,
|
||||
if_return: true,
|
||||
unused: true,
|
||||
}
|
||||
input: {
|
||||
out: {
|
||||
@@ -21,6 +22,7 @@ labels_2: {
|
||||
conditionals: true,
|
||||
dead_code: true,
|
||||
if_return: true,
|
||||
unused: true,
|
||||
}
|
||||
input: {
|
||||
out: {
|
||||
@@ -61,6 +63,7 @@ labels_4: {
|
||||
conditionals: true,
|
||||
dead_code: true,
|
||||
if_return: true,
|
||||
unused: true,
|
||||
}
|
||||
input: {
|
||||
out: for (var i = 0; i < 5; ++i) {
|
||||
@@ -105,6 +108,9 @@ labels_5: {
|
||||
}
|
||||
|
||||
labels_6: {
|
||||
options = {
|
||||
dead_code: true,
|
||||
}
|
||||
input: {
|
||||
out: break out;
|
||||
};
|
||||
@@ -159,6 +165,7 @@ labels_9: {
|
||||
conditionals: true,
|
||||
dead_code: true,
|
||||
if_return: true,
|
||||
unused: true,
|
||||
}
|
||||
input: {
|
||||
out: while (foo) {
|
||||
|
||||
@@ -549,6 +549,7 @@ issue_2740_2: {
|
||||
dead_code: true,
|
||||
loops: true,
|
||||
passes: 2,
|
||||
unused: true,
|
||||
}
|
||||
input: {
|
||||
L1: while (x()) {
|
||||
@@ -564,6 +565,7 @@ issue_2740_3: {
|
||||
options = {
|
||||
dead_code: true,
|
||||
loops: true,
|
||||
unused: true,
|
||||
}
|
||||
input: {
|
||||
L1: for (var x = 0; x < 3; x++) {
|
||||
@@ -589,6 +591,7 @@ issue_2740_4: {
|
||||
dead_code: true,
|
||||
loops: true,
|
||||
passes: 2,
|
||||
unused: true,
|
||||
}
|
||||
input: {
|
||||
L1: for (var x = 0; x < 3; x++) {
|
||||
@@ -613,6 +616,7 @@ issue_2740_5: {
|
||||
dead_code: true,
|
||||
loops: true,
|
||||
passes: 2,
|
||||
unused: true,
|
||||
}
|
||||
input: {
|
||||
L1: for (var x = 0; x < 3; x++) {
|
||||
@@ -763,6 +767,7 @@ issue_3631_1: {
|
||||
loops: true,
|
||||
reduce_vars: true,
|
||||
toplevel: true,
|
||||
unused: true,
|
||||
}
|
||||
input: {
|
||||
var c = 0;
|
||||
@@ -789,6 +794,7 @@ issue_3631_2: {
|
||||
loops: true,
|
||||
reduce_vars: true,
|
||||
toplevel: true,
|
||||
unused: true,
|
||||
}
|
||||
input: {
|
||||
L: for (var a = 1; a--; console.log(b)) {
|
||||
|
||||
@@ -69,6 +69,7 @@ label_if_break: {
|
||||
dead_code: true,
|
||||
evaluate: true,
|
||||
side_effects: true,
|
||||
unused: true,
|
||||
}
|
||||
input: {
|
||||
L: if (true) {
|
||||
|
||||
Reference in New Issue
Block a user