v8/test/mjsunit/regress/regress-crbug-580584.js
verwaest 997cd3d987 [api] Default native data property setter to replace the setter if the property is writable.
BUG=chromium:580584
LOG=y

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

Cr-Commit-Position: refs/heads/master@{#33551}
2016-01-27 13:22:18 +00:00

20 lines
792 B
JavaScript

// Copyright 2016 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.
function f() { return arguments }
// Reconfiguring function.name should update both the attributes and the value.
Object.defineProperty(f, "name", {
writable: true, configurable: true, value: 10});
assertEquals({value: 10, writable: true, enumerable: false, configurable: true},
Object.getOwnPropertyDescriptor(f, "name"));
var args = f();
// Setting a value for arguments[Symbol.iterator] should not affect the
// attributes.
args[Symbol.iterator] = 10;
assertEquals({value: 10, writable: true, configurable: true, enumerable: false},
Object.getOwnPropertyDescriptor(args, Symbol.iterator));