@@ -1501,9 +1501,9 @@ merge(Compressor.prototype, {
|
||||
// Skip (non-executed) functions
|
||||
if (node instanceof AST_Scope) return node;
|
||||
// Stop upon collision with block-scoped variables
|
||||
if (node.variables && !node.variables.all(function(def) {
|
||||
if (!(node.variables && node.variables.all(function(def) {
|
||||
return !lvalues.has(def.name);
|
||||
})) {
|
||||
}))) {
|
||||
abort = true;
|
||||
return node;
|
||||
}
|
||||
|
||||
@@ -1385,8 +1385,6 @@ function OutputStream(options) {
|
||||
make_block(stat, output);
|
||||
} else if (!stat || stat instanceof AST_EmptyStatement) {
|
||||
output.force_semicolon();
|
||||
} else if (stat instanceof AST_Const) {
|
||||
make_block(stat, output);
|
||||
} else {
|
||||
stat.print(output);
|
||||
}
|
||||
|
||||
@@ -1009,3 +1009,26 @@ issue_4212_2: {
|
||||
}
|
||||
expect_stdout: true
|
||||
}
|
||||
|
||||
issue_4216: {
|
||||
options = {
|
||||
collapse_vars: true,
|
||||
conditionals: true,
|
||||
dead_code: true,
|
||||
evaluate: true,
|
||||
}
|
||||
input: {
|
||||
if (a = 0) {
|
||||
const a = 0;
|
||||
}
|
||||
console.log(typeof a);
|
||||
}
|
||||
expect: {
|
||||
a = 0;
|
||||
{
|
||||
const a = void 0;
|
||||
}
|
||||
console.log(typeof a);
|
||||
}
|
||||
expect_stdout: true
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user