@@ -1314,7 +1314,7 @@ var AST_Label = DEFNODE("Label", "references", {
|
||||
}
|
||||
}, AST_Symbol);
|
||||
|
||||
var AST_SymbolRef = DEFNODE("SymbolRef", "fixed", {
|
||||
var AST_SymbolRef = DEFNODE("SymbolRef", "fixed in_arg", {
|
||||
$documentation: "Reference to some symbol (not definition/declaration)",
|
||||
}, AST_Symbol);
|
||||
|
||||
|
||||
@@ -9881,6 +9881,7 @@ merge(Compressor.prototype, {
|
||||
if (compressor.option("arguments")
|
||||
&& expr instanceof AST_SymbolRef
|
||||
&& is_arguments(def = expr.definition())
|
||||
&& !expr.in_arg
|
||||
&& prop instanceof AST_Number
|
||||
&& (fn = def.scope) === find_lambda()
|
||||
&& fn.uses_arguments < (assigned ? 2 : 3)) {
|
||||
|
||||
@@ -1906,3 +1906,25 @@ issue_4395: {
|
||||
expect_stdout: "PASS"
|
||||
node_version: ">=6"
|
||||
}
|
||||
|
||||
issue_4399: {
|
||||
options = {
|
||||
arguments: true,
|
||||
}
|
||||
input: {
|
||||
console.log(function({
|
||||
[arguments[1]]: a,
|
||||
}, b) {
|
||||
return a;
|
||||
}([ "PASS" ], 0));
|
||||
}
|
||||
expect: {
|
||||
console.log(function({
|
||||
[arguments[1]]: a,
|
||||
}, b) {
|
||||
return a;
|
||||
}([ "PASS" ], 0));
|
||||
}
|
||||
expect_stdout: "PASS"
|
||||
node_version: ">=6"
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user