fix corner case in properties

fixes #4888
This commit is contained in:
alexlamsl 2021-05-01 05:48:59 +08:00
parent 8e4a19ffec
commit d698648f96
2 changed files with 18 additions and 0 deletions

View File

@ -11532,6 +11532,7 @@ merge(Compressor.prototype, {
AST_PropAccess.DEFMETHOD("flatten_object", function(key, compressor) { AST_PropAccess.DEFMETHOD("flatten_object", function(key, compressor) {
if (!compressor.option("properties")) return; if (!compressor.option("properties")) return;
if (key === "__proto__") return;
var expr = this.expression; var expr = this.expression;
if (expr instanceof AST_Object) { if (expr instanceof AST_Object) {
var props = expr.properties; var props = expr.properties;

View File

@ -1446,3 +1446,20 @@ issue_4831_2: {
expect_stdout: "PASS" expect_stdout: "PASS"
node_version: ">=4" node_version: ">=4"
} }
issue_4888: {
options = {
properties: true,
}
input: {
console.log(typeof {
__proto__: 42,
}.__proto__);
}
expect: {
console.log(typeof {
__proto__: 42,
}.__proto__);
}
expect_stdout: "object"
}