add feature tags

This commit is contained in:
Gus Caplan 2020-09-30 17:52:36 -05:00 committed by Rick Waldron
parent 1d31345a70
commit 6aa8338d23
73 changed files with 97 additions and 41 deletions

View File

@ -279,6 +279,9 @@ Uint32Array
Uint8ClampedArray Uint8ClampedArray
WeakMap WeakMap
WeakSet WeakSet
__proto__
__getter__
__setter__
## Test-Harness Features ## Test-Harness Features
# #

View File

@ -6,7 +6,7 @@ description: Behavior when [[DefineOwnProperty]] returns an abrupt completion
info: | info: |
[...] [...]
5. Perform ? DefinePropertyOrThrow(O, key, desc). 5. Perform ? DefinePropertyOrThrow(O, key, desc).
features: [Proxy] features: [Proxy, __getter__]
---*/ ---*/
var noop = function() {}; var noop = function() {};

View File

@ -11,6 +11,7 @@ info: |
5. Perform ? DefinePropertyOrThrow(O, key, desc). 5. Perform ? DefinePropertyOrThrow(O, key, desc).
6. Return undefined. 6. Return undefined.
includes: [propertyHelper.js] includes: [propertyHelper.js]
features: [__getter__]
---*/ ---*/
var subject = {}; var subject = {};

View File

@ -11,6 +11,7 @@ info: |
5. Perform ? DefinePropertyOrThrow(O, key, desc). 5. Perform ? DefinePropertyOrThrow(O, key, desc).
6. Return undefined. 6. Return undefined.
includes: [propertyHelper.js] includes: [propertyHelper.js]
features: [__getter__]
---*/ ---*/
var subject = {}; var subject = {};

View File

@ -6,6 +6,7 @@ description: Behavior when property exists and is not configurable
info: | info: |
[...] [...]
5. Perform ? DefinePropertyOrThrow(O, key, desc). 5. Perform ? DefinePropertyOrThrow(O, key, desc).
features: [__getter__]
---*/ ---*/
var noop = function() {}; var noop = function() {};

View File

@ -6,6 +6,7 @@ description: Behavior when "this" value is not extensible
info: | info: |
[...] [...]
5. Perform ? DefinePropertyOrThrow(O, key, desc). 5. Perform ? DefinePropertyOrThrow(O, key, desc).
features: [__getter__]
---*/ ---*/
var noop = function() {}; var noop = function() {};

View File

@ -6,7 +6,7 @@ description: Behavior when getter is not callable
info: | info: |
[...] [...]
2. If IsCallable(getter) is false, throw a TypeError exception. 2. If IsCallable(getter) is false, throw a TypeError exception.
features: [Symbol] features: [Symbol, __getter__]
---*/ ---*/
var subject = {}; var subject = {};

View File

@ -6,6 +6,7 @@ description: Behavior when property key cannot be derived
info: | info: |
[...] [...]
4. Let key be ? ToPropertyKey(P). 4. Let key be ? ToPropertyKey(P).
features: [__getter__]
---*/ ---*/
var noop = function() {}; var noop = function() {};

View File

@ -16,6 +16,7 @@ info: |
object has the attributes { [[Writable]]: false, [[Enumerable]]: false, object has the attributes { [[Writable]]: false, [[Enumerable]]: false,
[[Configurable]]: true }. [[Configurable]]: true }.
includes: [propertyHelper.js] includes: [propertyHelper.js]
features: [__getter__]
---*/ ---*/
verifyProperty(Object.prototype.__defineGetter__, "length", { verifyProperty(Object.prototype.__defineGetter__, "length", {

View File

@ -17,6 +17,7 @@ info: |
object, if it exists, has the attributes { [[Writable]]: false, object, if it exists, has the attributes { [[Writable]]: false,
[[Enumerable]]: false, [[Configurable]]: true }. [[Enumerable]]: false, [[Configurable]]: true }.
includes: [propertyHelper.js] includes: [propertyHelper.js]
features: [__getter__]
---*/ ---*/
verifyProperty(Object.prototype.__defineGetter__, "name", { verifyProperty(Object.prototype.__defineGetter__, "name", {

View File

@ -8,6 +8,7 @@ info: |
B.2 has the attributes { [[Writable]]: true, [[Enumerable]]: false, B.2 has the attributes { [[Writable]]: true, [[Enumerable]]: false,
[[Configurable]]: true } unless otherwise specified. [[Configurable]]: true } unless otherwise specified.
includes: [propertyHelper.js] includes: [propertyHelper.js]
features: [__getter__]
---*/ ---*/
verifyProperty(Object.prototype, "__defineGetter__", { verifyProperty(Object.prototype, "__defineGetter__", {

View File

@ -5,6 +5,7 @@ esid: sec-additional-properties-of-the-object.prototype-object
description: Behavior when "this" value is not Object-coercible description: Behavior when "this" value is not Object-coercible
info: | info: |
1. Let O be ? ToObject(this value). 1. Let O be ? ToObject(this value).
features: [__getter__]
---*/ ---*/
var __defineGetter__ = Object.prototype.__defineGetter__; var __defineGetter__ = Object.prototype.__defineGetter__;

View File

@ -6,7 +6,7 @@ description: Behavior when [[DefineOwnProperty]] returns an abrupt completion
info: | info: |
[...] [...]
5. Perform ? DefinePropertyOrThrow(O, key, desc). 5. Perform ? DefinePropertyOrThrow(O, key, desc).
features: [Proxy] features: [Proxy, __setter__]
---*/ ---*/
var noop = function() {}; var noop = function() {};

View File

@ -11,6 +11,7 @@ info: |
5. Perform ? DefinePropertyOrThrow(O, key, desc). 5. Perform ? DefinePropertyOrThrow(O, key, desc).
6. Return undefined. 6. Return undefined.
includes: [propertyHelper.js] includes: [propertyHelper.js]
features: [__setter__]
---*/ ---*/
var subject = {}; var subject = {};

View File

@ -11,6 +11,7 @@ info: |
5. Perform ? DefinePropertyOrThrow(O, key, desc). 5. Perform ? DefinePropertyOrThrow(O, key, desc).
6. Return undefined. 6. Return undefined.
includes: [propertyHelper.js] includes: [propertyHelper.js]
features: [__setter__]
---*/ ---*/
var subject = {}; var subject = {};

View File

@ -6,6 +6,7 @@ description: Behavior when property exists and is not configurable
info: | info: |
[...] [...]
5. Perform ? DefinePropertyOrThrow(O, key, desc). 5. Perform ? DefinePropertyOrThrow(O, key, desc).
features: [__setter__]
---*/ ---*/
var noop = function() {}; var noop = function() {};

View File

@ -6,6 +6,7 @@ description: Behavior when "this" value is not extensible
info: | info: |
[...] [...]
5. Perform ? DefinePropertyOrThrow(O, key, desc). 5. Perform ? DefinePropertyOrThrow(O, key, desc).
features: [__setter__]
---*/ ---*/
var noop = function() {}; var noop = function() {};

View File

@ -6,6 +6,7 @@ description: Behavior when property key cannot be derived
info: | info: |
[...] [...]
4. Let key be ? ToPropertyKey(P). 4. Let key be ? ToPropertyKey(P).
features: [__setter__]
---*/ ---*/
var noop = function() {}; var noop = function() {};

View File

@ -16,6 +16,7 @@ info: |
object has the attributes { [[Writable]]: false, [[Enumerable]]: false, object has the attributes { [[Writable]]: false, [[Enumerable]]: false,
[[Configurable]]: true }. [[Configurable]]: true }.
includes: [propertyHelper.js] includes: [propertyHelper.js]
features: [__setter__]
---*/ ---*/
verifyProperty(Object.prototype.__defineSetter__, "length", { verifyProperty(Object.prototype.__defineSetter__, "length", {

View File

@ -17,6 +17,7 @@ info: |
object, if it exists, has the attributes { [[Writable]]: false, object, if it exists, has the attributes { [[Writable]]: false,
[[Enumerable]]: false, [[Configurable]]: true }. [[Enumerable]]: false, [[Configurable]]: true }.
includes: [propertyHelper.js] includes: [propertyHelper.js]
features: [__setter__]
---*/ ---*/
verifyProperty(Object.prototype.__defineSetter__, "name", { verifyProperty(Object.prototype.__defineSetter__, "name", {

View File

@ -8,6 +8,7 @@ info: |
B.2 has the attributes { [[Writable]]: true, [[Enumerable]]: false, B.2 has the attributes { [[Writable]]: true, [[Enumerable]]: false,
[[Configurable]]: true } unless otherwise specified. [[Configurable]]: true } unless otherwise specified.
includes: [propertyHelper.js] includes: [propertyHelper.js]
features: [__setter__]
---*/ ---*/
verifyProperty(Object.prototype, "__defineSetter__", { verifyProperty(Object.prototype, "__defineSetter__", {

View File

@ -6,7 +6,7 @@ description: Behavior when getter is not callable
info: | info: |
[...] [...]
2. If IsCallable(setter) is false, throw a TypeError exception. 2. If IsCallable(setter) is false, throw a TypeError exception.
features: [Symbol] features: [Symbol, __setter__]
---*/ ---*/
var subject = {}; var subject = {};

View File

@ -5,6 +5,7 @@ esid: sec-additional-properties-of-the-object.prototype-object
description: Behavior when "this" value is not Object-coercible description: Behavior when "this" value is not Object-coercible
info: | info: |
1. Let O be ? ToObject(this value). 1. Let O be ? ToObject(this value).
features: [__setter__]
---*/ ---*/
var __defineSetter__ = Object.prototype.__defineSetter__; var __defineSetter__ = Object.prototype.__defineSetter__;

View File

@ -6,6 +6,7 @@ description: Behavior when property key cannot be derived
info: | info: |
[...] [...]
2. Let key be ? ToPropertyKey(P). 2. Let key be ? ToPropertyKey(P).
features: [__getter__]
---*/ ---*/
var subject = {}; var subject = {};

View File

@ -16,6 +16,7 @@ info: |
object has the attributes { [[Writable]]: false, [[Enumerable]]: false, object has the attributes { [[Writable]]: false, [[Enumerable]]: false,
[[Configurable]]: true }. [[Configurable]]: true }.
includes: [propertyHelper.js] includes: [propertyHelper.js]
features: [__getter__]
---*/ ---*/
verifyProperty(Object.prototype.__lookupGetter__, "length", { verifyProperty(Object.prototype.__lookupGetter__, "length", {

View File

@ -12,6 +12,7 @@ info: |
ii. Return undefined. ii. Return undefined.
c. Let O be ? O.[[GetPrototypeOf]](). c. Let O be ? O.[[GetPrototypeOf]]().
d. If O is null, return undefined. d. If O is null, return undefined.
features: [__getter__]
---*/ ---*/
var root = {}; var root = {};

View File

@ -14,6 +14,7 @@ info: |
ii. Return undefined. ii. Return undefined.
c. Let O be ? O.[[GetPrototypeOf]](). c. Let O be ? O.[[GetPrototypeOf]]().
d. If O is null, return undefined. d. If O is null, return undefined.
features: [__getter__]
---*/ ---*/
var root = Object.defineProperty({}, 'target', { get: function() {} }); var root = Object.defineProperty({}, 'target', { get: function() {} });

View File

@ -14,6 +14,7 @@ info: |
ii. Return undefined. ii. Return undefined.
c. Let O be ? O.[[GetPrototypeOf]](). c. Let O be ? O.[[GetPrototypeOf]]().
d. If O is null, return undefined. d. If O is null, return undefined.
features: [__getter__]
---*/ ---*/
var root = Object.defineProperty({}, 'target', { get: function() {} }); var root = Object.defineProperty({}, 'target', { get: function() {} });

View File

@ -12,6 +12,7 @@ info: |
ii. Return undefined. ii. Return undefined.
c. Let O be ? O.[[GetPrototypeOf]](). c. Let O be ? O.[[GetPrototypeOf]]().
d. If O is null, return undefined. d. If O is null, return undefined.
features: [__getter__]
---*/ ---*/
var root = Object.defineProperty({}, 'target', { get: function() {} }); var root = Object.defineProperty({}, 'target', { get: function() {} });

View File

@ -14,7 +14,7 @@ info: |
ii. Return undefined. ii. Return undefined.
c. Let O be ? O.[[GetPrototypeOf]](). c. Let O be ? O.[[GetPrototypeOf]]().
d. If O is null, return undefined. d. If O is null, return undefined.
features: [Proxy] features: [Proxy, __getter__]
---*/ ---*/
var root = Object.defineProperty({}, 'target', { get: function() {} }); var root = Object.defineProperty({}, 'target', { get: function() {} });

View File

@ -14,7 +14,7 @@ info: |
ii. Return undefined. ii. Return undefined.
c. Let O be ? O.[[GetPrototypeOf]](). c. Let O be ? O.[[GetPrototypeOf]]().
d. If O is null, return undefined. d. If O is null, return undefined.
features: [Proxy] features: [Proxy, __getter__]
---*/ ---*/
var root = Object.defineProperty({}, 'target', { get: function() {} }); var root = Object.defineProperty({}, 'target', { get: function() {} });

View File

@ -14,6 +14,7 @@ info: |
ii. Return undefined. ii. Return undefined.
c. Let O be ? O.[[GetPrototypeOf]](). c. Let O be ? O.[[GetPrototypeOf]]().
d. If O is null, return undefined. d. If O is null, return undefined.
features: [__getter__]
---*/ ---*/
var root = Object.defineProperty({}, 'target', { get: function() {} }); var root = Object.defineProperty({}, 'target', { get: function() {} });

View File

@ -14,6 +14,7 @@ info: |
ii. Return undefined. ii. Return undefined.
c. Let O be ? O.[[GetPrototypeOf]](). c. Let O be ? O.[[GetPrototypeOf]]().
d. If O is null, return undefined. d. If O is null, return undefined.
features: [__getter__]
---*/ ---*/
var root = Object.defineProperty({}, 'target', { get: function() {} }); var root = Object.defineProperty({}, 'target', { get: function() {} });

View File

@ -12,6 +12,7 @@ info: |
ii. Return undefined. ii. Return undefined.
c. Let O be ? O.[[GetPrototypeOf]](). c. Let O be ? O.[[GetPrototypeOf]]().
d. If O is null, return undefined. d. If O is null, return undefined.
features: [__getter__]
---*/ ---*/
var root = Object.defineProperty({}, 'target', { get: function() {} }); var root = Object.defineProperty({}, 'target', { get: function() {} });

View File

@ -13,7 +13,7 @@ info: |
ii. Return undefined. ii. Return undefined.
c. Let O be ? O.[[GetPrototypeOf]](). c. Let O be ? O.[[GetPrototypeOf]]().
d. If O is null, return undefined. d. If O is null, return undefined.
features: [Proxy] features: [Proxy, __getter__]
---*/ ---*/
var root = Object.defineProperty({}, 'target', { get: function() {} }); var root = Object.defineProperty({}, 'target', { get: function() {} });

View File

@ -13,7 +13,7 @@ info: |
ii. Return undefined. ii. Return undefined.
c. Let O be ? O.[[GetPrototypeOf]](). c. Let O be ? O.[[GetPrototypeOf]]().
d. If O is null, return undefined. d. If O is null, return undefined.
features: [Proxy] features: [Proxy, __getter__]
---*/ ---*/
var root = Object.defineProperty({}, 'target', { get: function() {} }); var root = Object.defineProperty({}, 'target', { get: function() {} });

View File

@ -17,6 +17,7 @@ info: |
object, if it exists, has the attributes { [[Writable]]: false, object, if it exists, has the attributes { [[Writable]]: false,
[[Enumerable]]: false, [[Configurable]]: true }. [[Enumerable]]: false, [[Configurable]]: true }.
includes: [propertyHelper.js] includes: [propertyHelper.js]
features: [__getter__]
---*/ ---*/
verifyProperty(Object.prototype.__lookupGetter__, "name", { verifyProperty(Object.prototype.__lookupGetter__, "name", {

View File

@ -8,6 +8,7 @@ info: |
B.2 has the attributes { [[Writable]]: true, [[Enumerable]]: false, B.2 has the attributes { [[Writable]]: true, [[Enumerable]]: false,
[[Configurable]]: true } unless otherwise specified. [[Configurable]]: true } unless otherwise specified.
includes: [propertyHelper.js] includes: [propertyHelper.js]
features: [__getter__]
---*/ ---*/
verifyProperty(Object.prototype, "__lookupGetter__", { verifyProperty(Object.prototype, "__lookupGetter__", {

View File

@ -5,6 +5,7 @@ esid: sec-additional-properties-of-the-object.prototype-object
description: Behavior when "this" value is not Object-coercible description: Behavior when "this" value is not Object-coercible
info: | info: |
1. Let O be ? ToObject(this value). 1. Let O be ? ToObject(this value).
features: [__getter__]
---*/ ---*/
var __lookupGetter__ = Object.prototype.__lookupGetter__; var __lookupGetter__ = Object.prototype.__lookupGetter__;

View File

@ -6,6 +6,7 @@ description: Behavior when property key cannot be derived
info: | info: |
[...] [...]
2. Let key be ? ToPropertyKey(P). 2. Let key be ? ToPropertyKey(P).
features: [__setter__]
---*/ ---*/
var subject = {}; var subject = {};

View File

@ -16,6 +16,7 @@ info: |
object has the attributes { [[Writable]]: false, [[Enumerable]]: false, object has the attributes { [[Writable]]: false, [[Enumerable]]: false,
[[Configurable]]: true }. [[Configurable]]: true }.
includes: [propertyHelper.js] includes: [propertyHelper.js]
features: [__setter__]
---*/ ---*/
verifyProperty(Object.prototype.__lookupSetter__, "length", { verifyProperty(Object.prototype.__lookupSetter__, "length", {

View File

@ -12,6 +12,7 @@ info: |
ii. Return undefined. ii. Return undefined.
c. Let O be ? O.[[GetPrototypeOf]](). c. Let O be ? O.[[GetPrototypeOf]]().
d. If O is null, return undefined. d. If O is null, return undefined.
features: [__setter__]
---*/ ---*/
var root = {}; var root = {};

View File

@ -14,6 +14,7 @@ info: |
ii. Return undefined. ii. Return undefined.
c. Let O be ? O.[[GetPrototypeOf]](). c. Let O be ? O.[[GetPrototypeOf]]().
d. If O is null, return undefined. d. If O is null, return undefined.
features: [__setter__]
---*/ ---*/
var root = Object.defineProperty({}, 'target', { set: function() {} }); var root = Object.defineProperty({}, 'target', { set: function() {} });

View File

@ -14,6 +14,7 @@ info: |
ii. Return undefined. ii. Return undefined.
c. Let O be ? O.[[GetPrototypeOf]](). c. Let O be ? O.[[GetPrototypeOf]]().
d. If O is null, return undefined. d. If O is null, return undefined.
features: [__setter__]
---*/ ---*/
var root = Object.defineProperty({}, 'target', { set: function() {} }); var root = Object.defineProperty({}, 'target', { set: function() {} });

View File

@ -12,6 +12,7 @@ info: |
ii. Return undefined. ii. Return undefined.
c. Let O be ? O.[[GetPrototypeOf]](). c. Let O be ? O.[[GetPrototypeOf]]().
d. If O is null, return undefined. d. If O is null, return undefined.
features: [__setter__]
---*/ ---*/
var root = Object.defineProperty({}, 'target', { set: function() {} }); var root = Object.defineProperty({}, 'target', { set: function() {} });

View File

@ -14,7 +14,7 @@ info: |
ii. Return undefined. ii. Return undefined.
c. Let O be ? O.[[GetPrototypeOf]](). c. Let O be ? O.[[GetPrototypeOf]]().
d. If O is null, return undefined. d. If O is null, return undefined.
features: [Proxy] features: [Proxy, __setter__]
---*/ ---*/
var root = Object.defineProperty({}, 'target', { set: function() {} }); var root = Object.defineProperty({}, 'target', { set: function() {} });

View File

@ -14,7 +14,7 @@ info: |
ii. Return undefined. ii. Return undefined.
c. Let O be ? O.[[GetPrototypeOf]](). c. Let O be ? O.[[GetPrototypeOf]]().
d. If O is null, return undefined. d. If O is null, return undefined.
features: [Proxy] features: [Proxy, __setter__]
---*/ ---*/
var root = Object.defineProperty({}, 'target', { set: function() {} }); var root = Object.defineProperty({}, 'target', { set: function() {} });

View File

@ -14,6 +14,7 @@ info: |
ii. Return undefined. ii. Return undefined.
c. Let O be ? O.[[GetPrototypeOf]](). c. Let O be ? O.[[GetPrototypeOf]]().
d. If O is null, return undefined. d. If O is null, return undefined.
features: [__setter__]
---*/ ---*/
var root = Object.defineProperty({}, 'target', { set: function() {} }); var root = Object.defineProperty({}, 'target', { set: function() {} });

View File

@ -14,6 +14,7 @@ info: |
ii. Return undefined. ii. Return undefined.
c. Let O be ? O.[[GetPrototypeOf]](). c. Let O be ? O.[[GetPrototypeOf]]().
d. If O is null, return undefined. d. If O is null, return undefined.
features: [__setter__]
---*/ ---*/
var root = Object.defineProperty({}, 'target', { set: function() {} }); var root = Object.defineProperty({}, 'target', { set: function() {} });

View File

@ -12,6 +12,7 @@ info: |
ii. Return undefined. ii. Return undefined.
c. Let O be ? O.[[GetPrototypeOf]](). c. Let O be ? O.[[GetPrototypeOf]]().
d. If O is null, return undefined. d. If O is null, return undefined.
features: [__setter__]
---*/ ---*/
var root = Object.defineProperty({}, 'target', { set: function() {} }); var root = Object.defineProperty({}, 'target', { set: function() {} });

View File

@ -13,7 +13,7 @@ info: |
ii. Return undefined. ii. Return undefined.
c. Let O be ? O.[[GetPrototypeOf]](). c. Let O be ? O.[[GetPrototypeOf]]().
d. If O is null, return undefined. d. If O is null, return undefined.
features: [Proxy] features: [Proxy, __setter__]
---*/ ---*/
var root = Object.defineProperty({}, 'target', { set: function() {} }); var root = Object.defineProperty({}, 'target', { set: function() {} });

View File

@ -13,7 +13,7 @@ info: |
ii. Return undefined. ii. Return undefined.
c. Let O be ? O.[[GetPrototypeOf]](). c. Let O be ? O.[[GetPrototypeOf]]().
d. If O is null, return undefined. d. If O is null, return undefined.
features: [Proxy] features: [Proxy, __setter__]
---*/ ---*/
var root = Object.defineProperty({}, 'target', { set: function() {} }); var root = Object.defineProperty({}, 'target', { set: function() {} });

View File

@ -17,6 +17,7 @@ info: |
object, if it exists, has the attributes { [[Writable]]: false, object, if it exists, has the attributes { [[Writable]]: false,
[[Enumerable]]: false, [[Configurable]]: true }. [[Enumerable]]: false, [[Configurable]]: true }.
includes: [propertyHelper.js] includes: [propertyHelper.js]
features: [__setter__]
---*/ ---*/
verifyProperty(Object.prototype.__lookupSetter__, "name", { verifyProperty(Object.prototype.__lookupSetter__, "name", {

View File

@ -8,6 +8,7 @@ info: |
B.2 has the attributes { [[Writable]]: true, [[Enumerable]]: false, B.2 has the attributes { [[Writable]]: true, [[Enumerable]]: false,
[[Configurable]]: true } unless otherwise specified. [[Configurable]]: true } unless otherwise specified.
includes: [propertyHelper.js] includes: [propertyHelper.js]
features: [__setter__]
---*/ ---*/
verifyProperty(Object.prototype, "__lookupSetter__", { verifyProperty(Object.prototype, "__lookupSetter__", {

View File

@ -5,6 +5,7 @@ esid: sec-additional-properties-of-the-object.prototype-object
description: Behavior when "this" value is not Object-coercible description: Behavior when "this" value is not Object-coercible
info: | info: |
1. Let O be ? ToObject(this value). 1. Let O be ? ToObject(this value).
features: [__setter__]
---*/ ---*/
var __lookupSetter__ = Object.prototype.__lookupSetter__; var __lookupSetter__ = Object.prototype.__lookupSetter__;

View File

@ -7,7 +7,7 @@ description: Abrupt completion from [[GetPrototypeOf]]
info: | info: |
1. Let O be ? ToObject(this value). 1. Let O be ? ToObject(this value).
2. Return ? O.[[GetPrototypeOf]](). 2. Return ? O.[[GetPrototypeOf]]().
features: [Proxy] features: [Proxy, __proto__]
---*/ ---*/
var get = Object.getOwnPropertyDescriptor(Object.prototype, '__proto__').get; var get = Object.getOwnPropertyDescriptor(Object.prototype, '__proto__').get;

View File

@ -11,6 +11,7 @@ description: >
properties have "get " or "set " prepended to the property name string. properties have "get " or "set " prepended to the property name string.
includes: [propertyHelper.js] includes: [propertyHelper.js]
features: [__proto__]
---*/ ---*/
var descriptor = Object.getOwnPropertyDescriptor(Object.prototype, "__proto__"); var descriptor = Object.getOwnPropertyDescriptor(Object.prototype, "__proto__");

View File

@ -7,6 +7,7 @@ description: Normal completion from ordinary object's [[GetPrototypeOf]]
info: | info: |
1. Let O be ? ToObject(this value). 1. Let O be ? ToObject(this value).
2. Return ? O.[[GetPrototypeOf]](). 2. Return ? O.[[GetPrototypeOf]]().
features: [__proto__]
---*/ ---*/
var get = Object.getOwnPropertyDescriptor(Object.prototype, '__proto__').get; var get = Object.getOwnPropertyDescriptor(Object.prototype, '__proto__').get;

View File

@ -6,6 +6,7 @@ es6id: B.2.2.1
description: Abrupt completion from ToObject description: Abrupt completion from ToObject
info: | info: |
1. Let O be ? ToObject(this value). 1. Let O be ? ToObject(this value).
features: [__proto__]
---*/ ---*/
var get = Object.getOwnPropertyDescriptor(Object.prototype, '__proto__').get; var get = Object.getOwnPropertyDescriptor(Object.prototype, '__proto__').get;

View File

@ -9,6 +9,7 @@ info: |
[[Enumerable]]: false, [[Configurable]]: true }. The [[Get]] and [[Set]] [[Enumerable]]: false, [[Configurable]]: true }. The [[Get]] and [[Set]]
attributes are defined as follows: attributes are defined as follows:
includes: [propertyHelper.js] includes: [propertyHelper.js]
features: [__proto__]
---*/ ---*/
var desc = Object.getOwnPropertyDescriptor(Object.prototype, '__proto__'); var desc = Object.getOwnPropertyDescriptor(Object.prototype, '__proto__');

View File

@ -7,7 +7,7 @@ description: Abrupt completion from [[SetPrototypeOf]]
info: | info: |
[...] [...]
4. Let status be ? O.[[SetPrototypeOf]](proto). 4. Let status be ? O.[[SetPrototypeOf]](proto).
features: [Proxy] features: [Proxy, __proto__]
---*/ ---*/
var thrower = function() { var thrower = function() {

View File

@ -23,6 +23,7 @@ info: |
i. If the [[GetPrototypeOf]] internal method of p is not the ordinary i. If the [[GetPrototypeOf]] internal method of p is not the ordinary
object internal method defined in 9.1.1, let done be true. object internal method defined in 9.1.1, let done be true.
ii. Else, let p be the value of p's [[Prototype]] internal slot. ii. Else, let p be the value of p's [[Prototype]] internal slot.
features: [__proto__]
---*/ ---*/
var root = {}; var root = {};

View File

@ -21,6 +21,7 @@ info: |
i. If the [[GetPrototypeOf]] internal method of p is not the ordinary i. If the [[GetPrototypeOf]] internal method of p is not the ordinary
object internal method defined in 9.1.1, let done be true. object internal method defined in 9.1.1, let done be true.
ii. Else, let p be the value of p's [[Prototype]] internal slot. ii. Else, let p be the value of p's [[Prototype]] internal slot.
features: [__proto__]
---*/ ---*/
var root = {}; var root = {};

View File

@ -11,6 +11,7 @@ description: >
properties have "get " or "set " prepended to the property name string. properties have "get " or "set " prepended to the property name string.
includes: [propertyHelper.js] includes: [propertyHelper.js]
features: [__proto__]
---*/ ---*/
var descriptor = Object.getOwnPropertyDescriptor(Object.prototype, '__proto__'); var descriptor = Object.getOwnPropertyDescriptor(Object.prototype, '__proto__');

View File

@ -7,6 +7,7 @@ info: |
[...] [...]
4. Let status be ? O.[[SetPrototypeOf]](proto). 4. Let status be ? O.[[SetPrototypeOf]](proto).
5. If status is false, throw a TypeError exception. 5. If status is false, throw a TypeError exception.
features: [__proto__]
---*/ ---*/
Object.prototype.__proto__ = null; Object.prototype.__proto__ = null;

View File

@ -7,7 +7,7 @@ description: Called with a value that is neither an Object nor Null
info: | info: |
1. Let O be ? RequireObjectCoercible(this value). 1. Let O be ? RequireObjectCoercible(this value).
2. If Type(proto) is neither Object nor Null, return undefined. 2. If Type(proto) is neither Object nor Null, return undefined.
features: [Symbol] features: [Symbol, __proto__]
---*/ ---*/
var set = Object.getOwnPropertyDescriptor(Object.prototype, '__proto__').set; var set = Object.getOwnPropertyDescriptor(Object.prototype, '__proto__').set;

View File

@ -16,6 +16,7 @@ info: |
3. Let current be the value of the [[Prototype]] internal slot of O. 3. Let current be the value of the [[Prototype]] internal slot of O.
4. If SameValue(V, current) is true, return true. 4. If SameValue(V, current) is true, return true.
5. If extensible is false, return false. 5. If extensible is false, return false.
features: [__proto__]
---*/ ---*/
var proto = {}; var proto = {};

View File

@ -6,6 +6,7 @@ es6id: B.2.2.1
description: Called on a value that is not object-coercible description: Called on a value that is not object-coercible
info: | info: |
1. Let O be ? RequireObjectCoercible(this value). 1. Let O be ? RequireObjectCoercible(this value).
features: [__proto__]
---*/ ---*/
var set = Object.getOwnPropertyDescriptor(Object.prototype, '__proto__').set; var set = Object.getOwnPropertyDescriptor(Object.prototype, '__proto__').set;

View File

@ -8,7 +8,7 @@ info: |
1. Let O be ? RequireObjectCoercible(this value). 1. Let O be ? RequireObjectCoercible(this value).
2. If Type(proto) is neither Object nor Null, return undefined. 2. If Type(proto) is neither Object nor Null, return undefined.
3. If Type(O) is not Object, return undefined. 3. If Type(O) is not Object, return undefined.
features: [Symbol] features: [Symbol, __proto__]
---*/ ---*/
var set = Object.getOwnPropertyDescriptor(Object.prototype, '__proto__').set; var set = Object.getOwnPropertyDescriptor(Object.prototype, '__proto__').set;

View File

@ -9,6 +9,7 @@ info: |
4. Let status be ? O.[[SetPrototypeOf]](proto). 4. Let status be ? O.[[SetPrototypeOf]](proto).
5. If status is false, throw a TypeError exception. 5. If status is false, throw a TypeError exception.
6. Return undefined. 6. Return undefined.
features: [__proto__]
---*/ ---*/
var set = Object.getOwnPropertyDescriptor(Object.prototype, '__proto__').set; var set = Object.getOwnPropertyDescriptor(Object.prototype, '__proto__').set;

View File

@ -26,7 +26,7 @@ info: |
... ...
12. Return true. 12. Return true.
includes: [proxyTrapsHelper.js] includes: [proxyTrapsHelper.js]
features: [Proxy] features: [Proxy, __proto__]
---*/ ---*/
var _handler, _target, _prop, _value, _receiver; var _handler, _target, _prop, _value, _receiver;

View File

@ -14,7 +14,7 @@ info: |
[...] [...]
4. Set obj.[[Prototype]] to proto. 4. Set obj.[[Prototype]] to proto.
features: [class] features: [class, __proto__]
---*/ ---*/
Object.defineProperty(Object.prototype, '__proto__', { Object.defineProperty(Object.prototype, '__proto__', {

View File

@ -13,7 +13,7 @@ info: |
any duplicate entries for "__proto__" and at least two of those entries any duplicate entries for "__proto__" and at least two of those entries
were obtained from productions of the form were obtained from productions of the form
PropertyDefinition : PropertyName : AssignmentExpression . PropertyDefinition : PropertyName : AssignmentExpression .
features: [generators, async-functions, async-iteration] features: [generators, async-functions, async-iteration, __proto__]
---*/ ---*/
var obj = { var obj = {