v8/test/mjsunit/object-literal-multiple-proto-fields.js
arv bc3b2960e3 Fix issue with __proto__ when using ES6 object literals
It should be possible to create a concise method with the name
__proto__ without setting the [[Prototype]]. Similarly, property
name shorthands with the name __proto__ should define an own
property.

BUG=v8:3818
LOG=Y
R=adamk, dslomov@chromium.org

Review URL: https://codereview.chromium.org/858673002

Cr-Commit-Position: refs/heads/master@{#26172}
2015-01-20 16:31:43 +00:00

20 lines
428 B
JavaScript

// Copyright 2015 the V8 project authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
var p1 = {};
var p2 = {};
var p3 = {};
var x = 0;
var y = 0;
var z = 0;
var o = {
__proto__: (x++, p1),
__proto__: (y++, p2),
__proto__: (z++, p3)
};
assertEquals(1, x);
assertEquals(1, y);
assertEquals(1, z);
assertEquals(Object.getPrototypeOf(o), p3);