Name Description Size
__proto__-duplicate-computed.js --- esid: sec-__proto__-property-names-in-object-initializers es6id: B.3.1 description: > The syntax error for duplicate `__proto__` property is not valid if the duplicate is a ComputedPropertyName info: | B.3.1__proto__ Property Names in Object Initializers It is a Syntax Error if PropertyNameList of PropertyDefinitionList contains any duplicate entries for "__proto__" and at least two of those entries were obtained from productions of the form PropertyDefinition : PropertyName : AssignmentExpression . 12.2.6.6 Static Semantics: PropertyNameList ... 3. Append PropName of PropertyDefinition to the end of list. ... 12.2.6.5 Static Semantics: PropName ComputedPropertyName : [ AssignmentExpression ] 1. Return empty. --- 1361
__proto__-duplicate.js --- esid: sec-__proto__-property-names-in-object-initializers es6id: B.3.1 description: Duplicate `__proto__` property info: | It is a Syntax Error if PropertyNameList of PropertyDefinitionList contains any duplicate entries for "__proto__" and at least two of those entries were obtained from productions of the form PropertyDefinition : PropertyName : AssignmentExpression . negative: phase: parse type: SyntaxError --- 696
__proto__-fn-name.js --- es6id: B.3.1 description: Function name is not assigned based on the property name info: | [...] 6. If propKey is the String value "__proto__" and if IsComputedPropertyKey(propKey) is false, then a. If Type(propValue) is either Object or Null, then i. Return object.[[SetPrototypeOf]](propValue). b. Return NormalCompletion(empty). 7. If IsAnonymousFunctionDefinition(AssignmentExpression) is true, then a. Let hasNameProperty be HasOwnProperty(propValue, "name"). b. ReturnIfAbrupt(hasNameProperty). c. If hasNameProperty is false, perform SetFunctionName(propValue, propKey). --- 903
__proto__-permitted-dup-shorthand.js --- esid: sec-object-initializer description: Permitted duplicate `__proto__` property (shorthand) info: | Annex B defines an early error for duplicate PropertyName of `__proto__`, but this does not apply to properties created from other productions. B.3.1 __proto__ Property Names in Object Initializers It is a Syntax Error if PropertyNameList of PropertyDefinitionList contains any duplicate entries for "__proto__" and at least two of those entries were obtained from productions of the form PropertyDefinition : PropertyName : AssignmentExpression . --- 884
__proto__-permitted-dup.js --- esid: sec-object-initializer description: Permitted duplicate `__proto__` property info: | Annex B defines an early error for duplicate PropertyName of `__proto__`, but this does not apply to properties created from other productions. B.3.1 __proto__ Property Names in Object Initializers It is a Syntax Error if PropertyNameList of PropertyDefinitionList contains any duplicate entries for "__proto__" and at least two of those entries were obtained from productions of the form PropertyDefinition : PropertyName : AssignmentExpression . features: [generators, async-functions, async-iteration, __proto__] --- 1225
__proto__-poisoned-object-prototype.js --- esid: sec-__proto__-property-names-in-object-initializers description: > The value of the `__proto__` property key is assigned to the [[Prototype]]. Object.prototype.__proto__ setter should not be called. info: | __proto__ Property Names in Object Initializers PropertyDefinition : PropertyName : AssignmentExpression [...] 7. If isProtoSetter is true, then a. If Type(propValue) is either Object or Null, then i. Return object.[[SetPrototypeOf]](propValue). --- 941
__proto__-value-non-object.js --- esid: sec-__proto__-property-names-in-object-initializers es6id: B.3.1 description: > The value of the `__proto__` property key is not assigned to the [[Prototype]] internal slot, nor to a property named "__proto__" (non-Object, non-null value) info: | ... 6. If propKey is the String value "__proto__" and if IsComputedPropertyKey(propKey) is false, then a. If Type(propValue) is either Object or Null, then [...] b. Return NormalCompletion(empty). features: [Symbol] --- 1988
__proto__-value-null.js --- esid: sec-__proto__-property-names-in-object-initializers es6id: B.3.1 description: > The value of the `__proto__` property key is assigned to the [[Prototype]] internal slot (null value) info: | ... 6. If propKey is the String value "__proto__" and if IsComputedPropertyKey(propKey) is false, then a. If Type(propValue) is either Object or Null, then i. Return object.[[SetPrototypeOf]](propValue). --- 778
__proto__-value-obj.js --- esid: sec-__proto__-property-names-in-object-initializers es6id: B.3.1 description: > The value of the `__proto__` property key is assigned to the [[Prototype]] internal slot (Object value) info: | __proto__ Property Names in Object Initializers ... 6. If propKey is the String value "__proto__" and if IsComputedPropertyKey(propKey) is false, then a. If Type(propValue) is either Object or Null, then i. Return object.[[SetPrototypeOf]](propValue). b. Return NormalCompletion(empty). ... --- 879
11.1.5-0-1.js --- info: | it isn't clear what specific requirements of the specificaiton are being tested here. This test should probably be replaced by some more targeted tests. AllenWB es5id: 11.1.5-0-1 description: Object literal - get set property --- 660
11.1.5-0-2.js --- info: | it isn't clear what specific requirements of the specificaiton are being tested here. This test should probably be replaced by some more targeted tests. AllenWB es5id: 11.1.5-0-2 description: Object literal - multiple get set properties --- 841
11.1.5-1gs-strict.js --- es5id: 11.1.5-1gs description: > Strict Mode - SyntaxError is thrown when 'eval' occurs as the Identifier in a PropertySetParameterList of a PropertyAssignment that is contained in strict code negative: phase: parse type: SyntaxError flags: [onlyStrict] --- 524
11.1.5-2gs.js --- es5id: 11.1.5-2gs description: > Duplicate definitions of data properties are allowed in ObjectLiterals. --- 370
11.1.5_3-3-1.js --- info: | Refer 11.1.5; The production PropertyNameAndValueList : PropertyAssignment 3.Call the [[DefineOwnProperty]] internal method of obj with arguments propId.name, propId.descriptor, and false. es5id: 11.1.5_3-3-1 description: > Object initialization using PropertyNameAndValueList (PropertyAssignment) when property (read-only) exists in Object.prototype (step 3) --- 899
11.1.5_4-4-a-3.js --- info: | Refer 11.1.5; The production PropertyNameAndValueList : PropertyNameAndValueList , PropertyAssignment 4. If previous is not undefined then throw a SyntaxError exception if any of the following conditions are true a. This production is contained in strict code and IsDataDescriptor(previous) is true and IsDataDescriptor(propId.descriptor) is true es5id: 11.1.5_4-4-a-3 description: > Object literal - Duplicate data property name allowed gets last defined value --- 745
11.1.5_4-4-b-1.js --- es5id: 11.1.5_4-4-b-1 description: > Object literal - No SyntaxError if a data property definition is followed by get accessor definition with the same name --- 373
11.1.5_4-5-1.js --- info: | Refer 11.1.5; The production PropertyNameAndValueList : PropertyNameAndValueList , PropertyAssignment 5.Call the [[DefineOwnProperty]] internal method of obj with arguments propId.name, propId.descriptor, and false. es5id: 11.1.5_4-5-1 description: > Object initialization using PropertyNameAndValueList (PropertyNameAndValueList , PropertyAssignment) when property (read-only) exists in Object.prototype (Step 5) --- 926
11.1.5_5-4-1.js --- info: | Refer 11.1.5; The production PropertyAssignment : PropertyName : AssignmentExpression 4.Let desc be the Property Descriptor{[[Value]]: propValue, [[Writable]]: true, [[Enumerable]]: true, [[Configurable]]: true} es5id: 11.1.5_5-4-1 description: Object literal - property descriptor for assignment expression --- 809
11.1.5_6-3-1.js --- info: | Refer 11.1.5; The production PropertyAssignment : get PropertyName ( ) { FunctionBody } 3.Let desc be the Property Descriptor{[[Get]]: closure, [[Enumerable]]: true, [[Configurable]]: true} es5id: 11.1.5_6-3-1 description: Object literal - property descriptor for get property assignment --- 713
11.1.5_6-3-2.js --- info: | Refer 11.1.5; The production PropertyAssignment : get PropertyName ( ) { FunctionBody } 3.Let desc be the Property Descriptor{[[Get]]: closure, [[Enumerable]]: true, [[Configurable]]: true} es5id: 11.1.5_6-3-2 description: > Object literal - property descriptor for get property assignment should not create a set function --- 683
11.1.5_7-3-1.js --- info: | Refer 11.1.5; The production PropertyAssignment : set PropertyName( PropertySetParameterList ) { FunctionBody } 3.Let desc be the Property Descriptor{[[Set]]: closure, [[Enumerable]]: true, [[Configurable]]: true} es5id: 11.1.5_7-3-1 description: Object literal - property descriptor for set property assignment --- 740
11.1.5_7-3-2.js --- info: | Refer 11.1.5; The production PropertyAssignment : get PropertyName ( ) { FunctionBody } 3.Let desc be the Property Descriptor{[[Get]]: closure, [[Enumerable]]: true, [[Configurable]]: true} es5id: 11.1.5_7-3-2 description: > Object literal - property descriptor for set property assignment should not create a get function --- 677
accessor-name-computed-err-evaluation.js --- description: Abrupt completion when evaluating expression (Object initializer) esid: sec-object-initializer-runtime-semantics-evaluation flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } 1. Let obj be ObjectCreate(%ObjectPrototype%). 2. Let status be the result of performing PropertyDefinitionEvaluation of PropertyDefinitionList with arguments obj and true. 12.2.6.7 Runtime Semantics: Evaluation ComputedPropertyName : [ AssignmentExpression ] 1. Let exprValue be the result of evaluating AssignmentExpression. 2. Let propName be ? GetValue(exprValue). --- 1114
accessor-name-computed-err-to-prop-key.js --- description: Abrupt completion when coercing to property key value (Object initializer) esid: sec-object-initializer-runtime-semantics-evaluation flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } 1. Let obj be ObjectCreate(%ObjectPrototype%). 2. Let status be the result of performing PropertyDefinitionEvaluation of PropertyDefinitionList with arguments obj and true. 12.2.6.7 Runtime Semantics: Evaluation [...] ComputedPropertyName : [ AssignmentExpression ] 1. Let exprValue be the result of evaluating AssignmentExpression. 2. Let propName be ? GetValue(exprValue). 3. Return ? ToPropertyKey(propName). 7.1.14 ToPropertyKey 1. Let key be ? ToPrimitive(argument, hint String). 7.1.1 ToPrimitive [...] 7. Return ? OrdinaryToPrimitive(input, hint). 7.1.1.1 OrdinaryToPrimitive 5. For each name in methodNames in List order, do [...] 6. Throw a TypeError exception. --- 1444
accessor-name-computed-err-unresolvable.js --- description: Abrupt completion when resolving reference value (Object initializer) esid: sec-object-initializer-runtime-semantics-evaluation flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } 1. Let obj be ObjectCreate(%ObjectPrototype%). 2. Let status be the result of performing PropertyDefinitionEvaluation of PropertyDefinitionList with arguments obj and true. 12.2.6.7 Runtime Semantics: Evaluation [...] ComputedPropertyName : [ AssignmentExpression ] 1. Let exprValue be the result of evaluating AssignmentExpression. 2. Let propName be ? GetValue(exprValue). --- 1096
accessor-name-computed-in.js --- esid: sec-object-initializer-runtime-semantics-evaluation es6id: 12.2.6.8 description: > AssignmentExpression may contain `in` keyword regardless of outer context info: | 12.2.6.7 Runtime Semantics: Evaluation [...] ComputedPropertyName : [ AssignmentExpression ] 1. Let exprValue be the result of evaluating AssignmentExpression. 2. Let propName be ? GetValue(exprValue). 3. Return ? ToPropertyKey(propName). --- 925
accessor-name-computed-yield-expr.js --- esid: sec-object-initializer-runtime-semantics-evaluation es6id: 12.2.6.8 description: > The `yield` keyword behaves as a YieldExpression within a generator function info: | 12.2.6.7 Runtime Semantics: Evaluation [...] ComputedPropertyName : [ AssignmentExpression ] 1. Let exprValue be the result of evaluating AssignmentExpression. 2. Let propName be ? GetValue(exprValue). 3. Return ? ToPropertyKey(propName). features: [generators] --- 952
accessor-name-computed-yield-id.js --- esid: sec-object-initializer-runtime-semantics-evaluation es6id: 12.2.6.8 description: > The `yield` keyword behaves as an Identifier outside of a generator function info: | 12.2.6.7 Runtime Semantics: Evaluation [...] ComputedPropertyName : [ AssignmentExpression ] 1. Let exprValue be the result of evaluating AssignmentExpression. 2. Let propName be ? GetValue(exprValue). 3. Return ? ToPropertyKey(propName). flags: [noStrict] --- 854
accessor-name-computed.js --- description: Computed values as accessor property names (AssignmentExpression) (Object initializer) esid: sec-object-initializer-runtime-semantics-evaluation flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } 1. Let obj be ObjectCreate(%ObjectPrototype%). 2. Let status be the result of performing PropertyDefinitionEvaluation of PropertyDefinitionList with arguments obj and true. 12.2.6.7 Runtime Semantics: Evaluation [...] ComputedPropertyName : [ AssignmentExpression ] 1. Let exprValue be the result of evaluating AssignmentExpression. 2. Let propName be ? GetValue(exprValue). 3. Return ? ToPropertyKey(propName). --- 1189
accessor-name-literal-numeric-binary.js --- description: Computed values as accessor property names (numeric literal in binary notation) (Object initializer) esid: sec-object-initializer-runtime-semantics-evaluation flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } 1. Let obj be ObjectCreate(%ObjectPrototype%). 2. Let status be the result of performing PropertyDefinitionEvaluation of PropertyDefinitionList with arguments obj and true. 12.2.6.7 Runtime Semantics: Evaluation [...] ComputedPropertyName : [ AssignmentExpression ] 1. Let exprValue be the result of evaluating AssignmentExpression. 2. Let propName be ? GetValue(exprValue). 3. Return ? ToPropertyKey(propName). --- 1169
accessor-name-literal-numeric-exponent.js --- description: Computed values as accessor property names (numeric literal in exponent notation) (Object initializer) esid: sec-object-initializer-runtime-semantics-evaluation flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } 1. Let obj be ObjectCreate(%ObjectPrototype%). 2. Let status be the result of performing PropertyDefinitionEvaluation of PropertyDefinitionList with arguments obj and true. 12.2.6.7 Runtime Semantics: Evaluation [...] ComputedPropertyName : [ AssignmentExpression ] 1. Let exprValue be the result of evaluating AssignmentExpression. 2. Let propName be ? GetValue(exprValue). 3. Return ? ToPropertyKey(propName). --- 1191
accessor-name-literal-numeric-hex.js --- description: Computed values as accessor property names (numeric literal in hexadecimal notation) (Object initializer) esid: sec-object-initializer-runtime-semantics-evaluation flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } 1. Let obj be ObjectCreate(%ObjectPrototype%). 2. Let status be the result of performing PropertyDefinitionEvaluation of PropertyDefinitionList with arguments obj and true. 12.2.6.7 Runtime Semantics: Evaluation [...] ComputedPropertyName : [ AssignmentExpression ] 1. Let exprValue be the result of evaluating AssignmentExpression. 2. Let propName be ? GetValue(exprValue). 3. Return ? ToPropertyKey(propName). --- 1173
accessor-name-literal-numeric-leading-decimal.js --- description: Computed values as accessor property names (numeric literal with leading decimal point) (Object initializer) esid: sec-object-initializer-runtime-semantics-evaluation flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } 1. Let obj be ObjectCreate(%ObjectPrototype%). 2. Let status be the result of performing PropertyDefinitionEvaluation of PropertyDefinitionList with arguments obj and true. 12.2.6.7 Runtime Semantics: Evaluation [...] ComputedPropertyName : [ AssignmentExpression ] 1. Let exprValue be the result of evaluating AssignmentExpression. 2. Let propName be ? GetValue(exprValue). 3. Return ? ToPropertyKey(propName). --- 1186
accessor-name-literal-numeric-non-canonical.js --- description: Computed values as accessor property names (numeric literal with non-canonical representation) (Object initializer) esid: sec-object-initializer-runtime-semantics-evaluation flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } 1. Let obj be ObjectCreate(%ObjectPrototype%). 2. Let status be the result of performing PropertyDefinitionEvaluation of PropertyDefinitionList with arguments obj and true. 12.2.6.7 Runtime Semantics: Evaluation [...] ComputedPropertyName : [ AssignmentExpression ] 1. Let exprValue be the result of evaluating AssignmentExpression. 2. Let propName be ? GetValue(exprValue). 3. Return ? ToPropertyKey(propName). --- 1207
accessor-name-literal-numeric-octal.js --- description: Computed values as accessor property names (numeric literal in octal notation) (Object initializer) esid: sec-object-initializer-runtime-semantics-evaluation flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } 1. Let obj be ObjectCreate(%ObjectPrototype%). 2. Let status be the result of performing PropertyDefinitionEvaluation of PropertyDefinitionList with arguments obj and true. 12.2.6.7 Runtime Semantics: Evaluation [...] ComputedPropertyName : [ AssignmentExpression ] 1. Let exprValue be the result of evaluating AssignmentExpression. 2. Let propName be ? GetValue(exprValue). 3. Return ? ToPropertyKey(propName). --- 1167
accessor-name-literal-numeric-zero.js --- description: Computed values as accessor property names (numeric literal zero) (Object initializer) esid: sec-object-initializer-runtime-semantics-evaluation flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } 1. Let obj be ObjectCreate(%ObjectPrototype%). 2. Let status be the result of performing PropertyDefinitionEvaluation of PropertyDefinitionList with arguments obj and true. 12.2.6.7 Runtime Semantics: Evaluation [...] ComputedPropertyName : [ AssignmentExpression ] 1. Let exprValue be the result of evaluating AssignmentExpression. 2. Let propName be ? GetValue(exprValue). 3. Return ? ToPropertyKey(propName). --- 1147
accessor-name-literal-string-char-escape.js --- description: Computed values as accessor property names (string literal containing a character escape sequence) (Object initializer) esid: sec-object-initializer-runtime-semantics-evaluation flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } 1. Let obj be ObjectCreate(%ObjectPrototype%). 2. Let status be the result of performing PropertyDefinitionEvaluation of PropertyDefinitionList with arguments obj and true. 12.2.6.7 Runtime Semantics: Evaluation [...] ComputedPropertyName : [ AssignmentExpression ] 1. Let exprValue be the result of evaluating AssignmentExpression. 2. Let propName be ? GetValue(exprValue). 3. Return ? ToPropertyKey(propName). --- 1252
accessor-name-literal-string-default-escaped-ext.js --- description: Computed values as accessor property names (string literal 'default' w/ extended escape) (Object initializer) esid: sec-object-initializer-runtime-semantics-evaluation flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } 1. Let obj be ObjectCreate(%ObjectPrototype%). 2. Let status be the result of performing PropertyDefinitionEvaluation of PropertyDefinitionList with arguments obj and true. 12.2.6.7 Runtime Semantics: Evaluation [...] ComputedPropertyName : [ AssignmentExpression ] 1. Let exprValue be the result of evaluating AssignmentExpression. 2. Let propName be ? GetValue(exprValue). 3. Return ? ToPropertyKey(propName). --- 1222
accessor-name-literal-string-default-escaped.js --- description: Computed values as accessor property names (string literal 'default' escaped) (Object initializer) esid: sec-object-initializer-runtime-semantics-evaluation flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } 1. Let obj be ObjectCreate(%ObjectPrototype%). 2. Let status be the result of performing PropertyDefinitionEvaluation of PropertyDefinitionList with arguments obj and true. 12.2.6.7 Runtime Semantics: Evaluation [...] ComputedPropertyName : [ AssignmentExpression ] 1. Let exprValue be the result of evaluating AssignmentExpression. 2. Let propName be ? GetValue(exprValue). 3. Return ? ToPropertyKey(propName). --- 1207
accessor-name-literal-string-default.js --- description: Computed values as accessor property names (string literal 'default') (Object initializer) esid: sec-object-initializer-runtime-semantics-evaluation flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } 1. Let obj be ObjectCreate(%ObjectPrototype%). 2. Let status be the result of performing PropertyDefinitionEvaluation of PropertyDefinitionList with arguments obj and true. 12.2.6.7 Runtime Semantics: Evaluation [...] ComputedPropertyName : [ AssignmentExpression ] 1. Let exprValue be the result of evaluating AssignmentExpression. 2. Let propName be ? GetValue(exprValue). 3. Return ? ToPropertyKey(propName). --- 1181
accessor-name-literal-string-double-quote.js --- description: Computed values as accessor property names (string literal using double quotes) (Object initializer) esid: sec-object-initializer-runtime-semantics-evaluation flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } 1. Let obj be ObjectCreate(%ObjectPrototype%). 2. Let status be the result of performing PropertyDefinitionEvaluation of PropertyDefinitionList with arguments obj and true. 12.2.6.7 Runtime Semantics: Evaluation [...] ComputedPropertyName : [ AssignmentExpression ] 1. Let exprValue be the result of evaluating AssignmentExpression. 2. Let propName be ? GetValue(exprValue). 3. Return ? ToPropertyKey(propName). --- 1212
accessor-name-literal-string-empty.js --- description: Computed values as accessor property names (string literal, the empty string) (Object initializer) esid: sec-object-initializer-runtime-semantics-evaluation flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } 1. Let obj be ObjectCreate(%ObjectPrototype%). 2. Let status be the result of performing PropertyDefinitionEvaluation of PropertyDefinitionList with arguments obj and true. 12.2.6.7 Runtime Semantics: Evaluation [...] ComputedPropertyName : [ AssignmentExpression ] 1. Let exprValue be the result of evaluating AssignmentExpression. 2. Let propName be ? GetValue(exprValue). 3. Return ? ToPropertyKey(propName). --- 1159
accessor-name-literal-string-hex-escape.js --- description: Computed values as accessor property names (string literal containing a hexadecimal escape sequence) (Object initializer) esid: sec-object-initializer-runtime-semantics-evaluation flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } 1. Let obj be ObjectCreate(%ObjectPrototype%). 2. Let status be the result of performing PropertyDefinitionEvaluation of PropertyDefinitionList with arguments obj and true. 12.2.6.7 Runtime Semantics: Evaluation [...] ComputedPropertyName : [ AssignmentExpression ] 1. Let exprValue be the result of evaluating AssignmentExpression. 2. Let propName be ? GetValue(exprValue). 3. Return ? ToPropertyKey(propName). --- 1229
accessor-name-literal-string-line-continuation.js --- description: Computed values as accessor property names (string literal containing LineContinuation) (Object initializer) esid: sec-object-initializer-runtime-semantics-evaluation flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } 1. Let obj be ObjectCreate(%ObjectPrototype%). 2. Let status be the result of performing PropertyDefinitionEvaluation of PropertyDefinitionList with arguments obj and true. 12.2.6.7 Runtime Semantics: Evaluation [...] ComputedPropertyName : [ AssignmentExpression ] 1. Let exprValue be the result of evaluating AssignmentExpression. 2. Let propName be ? GetValue(exprValue). 3. Return ? ToPropertyKey(propName). --- 1249
accessor-name-literal-string-single-quote.js --- description: Computed values as accessor property names (string literal using single quotes) (Object initializer) esid: sec-object-initializer-runtime-semantics-evaluation flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } 1. Let obj be ObjectCreate(%ObjectPrototype%). 2. Let status be the result of performing PropertyDefinitionEvaluation of PropertyDefinitionList with arguments obj and true. 12.2.6.7 Runtime Semantics: Evaluation [...] ComputedPropertyName : [ AssignmentExpression ] 1. Let exprValue be the result of evaluating AssignmentExpression. 2. Let propName be ? GetValue(exprValue). 3. Return ? ToPropertyKey(propName). --- 1212
accessor-name-literal-string-unicode-escape.js --- description: Computed values as accessor property names (string literal containing a Unicode escape sequence) (Object initializer) esid: sec-object-initializer-runtime-semantics-evaluation flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } 1. Let obj be ObjectCreate(%ObjectPrototype%). 2. Let status be the result of performing PropertyDefinitionEvaluation of PropertyDefinitionList with arguments obj and true. 12.2.6.7 Runtime Semantics: Evaluation [...] ComputedPropertyName : [ AssignmentExpression ] 1. Let exprValue be the result of evaluating AssignmentExpression. 2. Let propName be ? GetValue(exprValue). 3. Return ? ToPropertyKey(propName). --- 1257
browser.js 0
computed-__proto__.js --- esid: prod-PropertyDefinition description: > computed __proto__ property key is assigned to an own property info: | 12.2.6 Object Initializer PropertyDefinition[Yield, Await] : PropertyName[?Yield, ?Await] : AssignmentExpression[+In, ?Yield, ?Await] PropertyName[Yield, Await] : LiteralPropertyName ComputedPropertyName[?Yield, ?Await] ComputedPropertyName[Yield, Await] : [ AssignmentExpression[+In, ?Yield, ?Await] ] B.3.1__proto__ Property Names in Object Initializers ... 5. If propKey is the String value "__proto__" and if IsComputedPropertyKey(propKey) is false, then a. If Type(propValue) is either Object or Null, then i. Return object.[[SetPrototypeOf]](propValue). b. Return NormalCompletion(empty). features: [Symbol] --- 3903
computed-property-evaluation-order.js --- esid: sec-object-initializer-runtime-semantics-propertydefinitionevaluation description: > Evaluation of PropertyDefinitionList occurs in order, and each PropertyDefinition's PropertyName is evaluated before its AssignmentExpression. --- 847
concise-generator.js --- es6id: 12.2.5 description: > super method calls in object literal concise generator features: [generators] --- 631
cover-initialized-name.js --- esid: sec-object-initializer-static-semantics-early-errors es6id: 12.2.6.1 description: Initialized name is explicitly barred from object initializers info: | PropertyDefinition : CoverInitializedName - Always throw a Syntax Error if code matches this production. NOTE This production exists so that ObjectLiteral can serve as a cover grammar for ObjectAssignmentPattern. It cannot occur in an actual object initializer. 12.2.6 Object Initializer Syntax [...] CoverInitializedName[Yield]: IdentifierReference[?Yield] Initializer[+In, ?Yield] negative: phase: parse type: SyntaxError --- 840
covered-ident-name-prop-name-literal-break-escaped.js --- description: break is a valid identifier name, using escape (PropertyName in a CoverParenthesizedExpressionAndArrowParameterList) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: IdentifierReference PropertyName : AssignmentExpression MethodDefinition ... AssignmentExpression ... PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 1049
covered-ident-name-prop-name-literal-case-escaped.js --- description: case is a valid identifier name, using escape (PropertyName in a CoverParenthesizedExpressionAndArrowParameterList) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: IdentifierReference PropertyName : AssignmentExpression MethodDefinition ... AssignmentExpression ... PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 1045
covered-ident-name-prop-name-literal-catch-escaped.js --- description: catch is a valid identifier name, using escape (PropertyName in a CoverParenthesizedExpressionAndArrowParameterList) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: IdentifierReference PropertyName : AssignmentExpression MethodDefinition ... AssignmentExpression ... PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 1049
covered-ident-name-prop-name-literal-class-escaped.js --- description: class is a valid identifier name, using escape (PropertyName in a CoverParenthesizedExpressionAndArrowParameterList) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: IdentifierReference PropertyName : AssignmentExpression MethodDefinition ... AssignmentExpression ... PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 1049
covered-ident-name-prop-name-literal-const-escaped.js --- description: const is a valid identifier name, using escape (PropertyName in a CoverParenthesizedExpressionAndArrowParameterList) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: IdentifierReference PropertyName : AssignmentExpression MethodDefinition ... AssignmentExpression ... PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 1049
covered-ident-name-prop-name-literal-continue-escaped.js --- description: continue is a valid identifier name, using escape (PropertyName in a CoverParenthesizedExpressionAndArrowParameterList) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: IdentifierReference PropertyName : AssignmentExpression MethodDefinition ... AssignmentExpression ... PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 1061
covered-ident-name-prop-name-literal-debugger-escaped.js --- description: debugger is a valid identifier name, using escape (PropertyName in a CoverParenthesizedExpressionAndArrowParameterList) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: IdentifierReference PropertyName : AssignmentExpression MethodDefinition ... AssignmentExpression ... PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 1061
covered-ident-name-prop-name-literal-default-escaped-ext.js --- description: default is a valid identifier name, using extended escape (PropertyName in a CoverParenthesizedExpressionAndArrowParameterList) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: IdentifierReference PropertyName : AssignmentExpression MethodDefinition ... AssignmentExpression ... PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 1070
covered-ident-name-prop-name-literal-default-escaped.js --- description: default is a valid identifier name, using escape (PropertyName in a CoverParenthesizedExpressionAndArrowParameterList) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: IdentifierReference PropertyName : AssignmentExpression MethodDefinition ... AssignmentExpression ... PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 1057
covered-ident-name-prop-name-literal-default.js --- description: default is a valid identifier name (PropertyName in a CoverParenthesizedExpressionAndArrowParameterList) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: IdentifierReference PropertyName : AssignmentExpression MethodDefinition ... AssignmentExpression ... PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 1030
covered-ident-name-prop-name-literal-delete-escaped.js --- description: delete is a valid identifier name, using escape (PropertyName in a CoverParenthesizedExpressionAndArrowParameterList) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: IdentifierReference PropertyName : AssignmentExpression MethodDefinition ... AssignmentExpression ... PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 1053
covered-ident-name-prop-name-literal-do-escaped.js --- description: do is a valid identifier name, using escape (PropertyName in a CoverParenthesizedExpressionAndArrowParameterList) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: IdentifierReference PropertyName : AssignmentExpression MethodDefinition ... AssignmentExpression ... PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 1037
covered-ident-name-prop-name-literal-else-escaped.js --- description: else is a valid identifier name, using escape (PropertyName in a CoverParenthesizedExpressionAndArrowParameterList) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: IdentifierReference PropertyName : AssignmentExpression MethodDefinition ... AssignmentExpression ... PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 1045
covered-ident-name-prop-name-literal-enum-escaped.js --- description: enum is a valid identifier name, using escape (PropertyName in a CoverParenthesizedExpressionAndArrowParameterList) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: IdentifierReference PropertyName : AssignmentExpression MethodDefinition ... AssignmentExpression ... PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 1045
covered-ident-name-prop-name-literal-export-escaped.js --- description: export is a valid identifier name, using escape (PropertyName in a CoverParenthesizedExpressionAndArrowParameterList) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: IdentifierReference PropertyName : AssignmentExpression MethodDefinition ... AssignmentExpression ... PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 1053
covered-ident-name-prop-name-literal-extends-escaped-ext.js --- description: extends is a valid identifier name, using extended escape (PropertyName in a CoverParenthesizedExpressionAndArrowParameterList) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: IdentifierReference PropertyName : AssignmentExpression MethodDefinition ... AssignmentExpression ... PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 1070
covered-ident-name-prop-name-literal-extends-escaped.js --- description: extends is a valid identifier name, using escape (PropertyName in a CoverParenthesizedExpressionAndArrowParameterList) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: IdentifierReference PropertyName : AssignmentExpression MethodDefinition ... AssignmentExpression ... PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 1057
covered-ident-name-prop-name-literal-extends.js --- description: extends is a valid identifier name (PropertyName in a CoverParenthesizedExpressionAndArrowParameterList) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: IdentifierReference PropertyName : AssignmentExpression MethodDefinition ... AssignmentExpression ... PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 1030
covered-ident-name-prop-name-literal-finally-escaped.js --- description: finally is a valid identifier name, using escape (PropertyName in a CoverParenthesizedExpressionAndArrowParameterList) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: IdentifierReference PropertyName : AssignmentExpression MethodDefinition ... AssignmentExpression ... PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 1057
covered-ident-name-prop-name-literal-for-escaped.js --- description: for is a valid identifier name, using escape (PropertyName in a CoverParenthesizedExpressionAndArrowParameterList) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: IdentifierReference PropertyName : AssignmentExpression MethodDefinition ... AssignmentExpression ... PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 1041
covered-ident-name-prop-name-literal-function-escaped.js --- description: function is a valid identifier name, using escape (PropertyName in a CoverParenthesizedExpressionAndArrowParameterList) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: IdentifierReference PropertyName : AssignmentExpression MethodDefinition ... AssignmentExpression ... PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 1061
covered-ident-name-prop-name-literal-if-escaped.js --- description: if is a valid identifier name, using escape (PropertyName in a CoverParenthesizedExpressionAndArrowParameterList) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: IdentifierReference PropertyName : AssignmentExpression MethodDefinition ... AssignmentExpression ... PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 1037
covered-ident-name-prop-name-literal-implements-escaped.js --- description: implements is a valid identifier name, using escape (PropertyName in a CoverParenthesizedExpressionAndArrowParameterList) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: IdentifierReference PropertyName : AssignmentExpression MethodDefinition ... AssignmentExpression ... PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 1083
covered-ident-name-prop-name-literal-import-escaped.js --- description: import is a valid identifier name, using escape (PropertyName in a CoverParenthesizedExpressionAndArrowParameterList) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: IdentifierReference PropertyName : AssignmentExpression MethodDefinition ... AssignmentExpression ... PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 1053
covered-ident-name-prop-name-literal-in-escaped.js --- description: in is a valid identifier name, using escape (PropertyName in a CoverParenthesizedExpressionAndArrowParameterList) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: IdentifierReference PropertyName : AssignmentExpression MethodDefinition ... AssignmentExpression ... PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 1037
covered-ident-name-prop-name-literal-instanceof-escaped.js --- description: instanceof is a valid identifier name, using escape (PropertyName in a CoverParenthesizedExpressionAndArrowParameterList) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: IdentifierReference PropertyName : AssignmentExpression MethodDefinition ... AssignmentExpression ... PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 1069
covered-ident-name-prop-name-literal-interface-escaped.js --- description: interface is a valid identifier name, using escape (PropertyName in a CoverParenthesizedExpressionAndArrowParameterList) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: IdentifierReference PropertyName : AssignmentExpression MethodDefinition ... AssignmentExpression ... PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 1079
covered-ident-name-prop-name-literal-let-escaped.js --- description: let is a valid identifier name, using escape (PropertyName in a CoverParenthesizedExpressionAndArrowParameterList) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: IdentifierReference PropertyName : AssignmentExpression MethodDefinition ... AssignmentExpression ... PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 1055
covered-ident-name-prop-name-literal-new-escaped.js --- description: new is a valid identifier name, using escape (PropertyName in a CoverParenthesizedExpressionAndArrowParameterList) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: IdentifierReference PropertyName : AssignmentExpression MethodDefinition ... AssignmentExpression ... PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 1041
covered-ident-name-prop-name-literal-package-escaped.js --- description: package is a valid identifier name, using escape (PropertyName in a CoverParenthesizedExpressionAndArrowParameterList) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: IdentifierReference PropertyName : AssignmentExpression MethodDefinition ... AssignmentExpression ... PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 1071
covered-ident-name-prop-name-literal-private-escaped.js --- description: private is a valid identifier name, using escape (PropertyName in a CoverParenthesizedExpressionAndArrowParameterList) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: IdentifierReference PropertyName : AssignmentExpression MethodDefinition ... AssignmentExpression ... PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 1071
covered-ident-name-prop-name-literal-protected-escaped.js --- description: protected is a valid identifier name, using escape (PropertyName in a CoverParenthesizedExpressionAndArrowParameterList) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: IdentifierReference PropertyName : AssignmentExpression MethodDefinition ... AssignmentExpression ... PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 1079
covered-ident-name-prop-name-literal-public-escaped.js --- description: public is a valid identifier name, using escape (PropertyName in a CoverParenthesizedExpressionAndArrowParameterList) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: IdentifierReference PropertyName : AssignmentExpression MethodDefinition ... AssignmentExpression ... PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 1067
covered-ident-name-prop-name-literal-return-escaped.js --- description: return is a valid identifier name, using escape (PropertyName in a CoverParenthesizedExpressionAndArrowParameterList) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: IdentifierReference PropertyName : AssignmentExpression MethodDefinition ... AssignmentExpression ... PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 1053
covered-ident-name-prop-name-literal-static-escaped.js --- description: static is a valid identifier name, using escape (PropertyName in a CoverParenthesizedExpressionAndArrowParameterList) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: IdentifierReference PropertyName : AssignmentExpression MethodDefinition ... AssignmentExpression ... PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 1067
covered-ident-name-prop-name-literal-super-escaped.js --- description: super is a valid identifier name, using escape (PropertyName in a CoverParenthesizedExpressionAndArrowParameterList) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: IdentifierReference PropertyName : AssignmentExpression MethodDefinition ... AssignmentExpression ... PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 1049
covered-ident-name-prop-name-literal-switch-escaped.js --- description: switch is a valid identifier name, using escape (PropertyName in a CoverParenthesizedExpressionAndArrowParameterList) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: IdentifierReference PropertyName : AssignmentExpression MethodDefinition ... AssignmentExpression ... PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 1053
covered-ident-name-prop-name-literal-this-escaped.js --- description: this is a valid identifier name, using escape (PropertyName in a CoverParenthesizedExpressionAndArrowParameterList) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: IdentifierReference PropertyName : AssignmentExpression MethodDefinition ... AssignmentExpression ... PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 1045
covered-ident-name-prop-name-literal-throw-escaped.js --- description: throw is a valid identifier name, using escape (PropertyName in a CoverParenthesizedExpressionAndArrowParameterList) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: IdentifierReference PropertyName : AssignmentExpression MethodDefinition ... AssignmentExpression ... PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 1049
covered-ident-name-prop-name-literal-try-escaped.js --- description: try is a valid identifier name, using escape (PropertyName in a CoverParenthesizedExpressionAndArrowParameterList) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: IdentifierReference PropertyName : AssignmentExpression MethodDefinition ... AssignmentExpression ... PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 1041
covered-ident-name-prop-name-literal-typeof-escaped.js --- description: typeof is a valid identifier name, using escape (PropertyName in a CoverParenthesizedExpressionAndArrowParameterList) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: IdentifierReference PropertyName : AssignmentExpression MethodDefinition ... AssignmentExpression ... PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 1053
covered-ident-name-prop-name-literal-var-escaped.js --- description: var is a valid identifier name, using escape (PropertyName in a CoverParenthesizedExpressionAndArrowParameterList) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: IdentifierReference PropertyName : AssignmentExpression MethodDefinition ... AssignmentExpression ... PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 1041
covered-ident-name-prop-name-literal-void-escaped.js --- description: void is a valid identifier name, using escape (PropertyName in a CoverParenthesizedExpressionAndArrowParameterList) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: IdentifierReference PropertyName : AssignmentExpression MethodDefinition ... AssignmentExpression ... PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 1045
covered-ident-name-prop-name-literal-while-escaped.js --- description: while is a valid identifier name, using escape (PropertyName in a CoverParenthesizedExpressionAndArrowParameterList) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: IdentifierReference PropertyName : AssignmentExpression MethodDefinition ... AssignmentExpression ... PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 1049
covered-ident-name-prop-name-literal-with-escaped.js --- description: with is a valid identifier name, using escape (PropertyName in a CoverParenthesizedExpressionAndArrowParameterList) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: IdentifierReference PropertyName : AssignmentExpression MethodDefinition ... AssignmentExpression ... PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 1045
cpn-obj-lit-computed-property-name-from-additive-expression-add.js --- description: Computed property name from additive expression "add" (ComputedPropertyName in ObjectLiteral) esid: prod-ComputedPropertyName features: [computed-property-names] flags: [generated] info: | ObjectLiteral: { PropertyDefinitionList } PropertyDefinitionList: PropertyDefinition PropertyDefinition: PropertyName: AssignmentExpression PropertyName: ComputedPropertyName ComputedPropertyName: [ AssignmentExpression ] --- 849
cpn-obj-lit-computed-property-name-from-additive-expression-subtract.js --- description: Computed property name from additive expression "subtract" (ComputedPropertyName in ObjectLiteral) esid: prod-ComputedPropertyName features: [computed-property-names] flags: [generated] info: | ObjectLiteral: { PropertyDefinitionList } PropertyDefinitionList: PropertyDefinition PropertyDefinition: PropertyName: AssignmentExpression PropertyName: ComputedPropertyName ComputedPropertyName: [ AssignmentExpression ] --- 859
cpn-obj-lit-computed-property-name-from-arrow-function-expression.js --- description: Computed property name from arrow function (ComputedPropertyName in ObjectLiteral) esid: prod-ComputedPropertyName features: [computed-property-names] flags: [generated] info: | ObjectLiteral: { PropertyDefinitionList } PropertyDefinitionList: PropertyDefinition PropertyDefinition: PropertyName: AssignmentExpression PropertyName: ComputedPropertyName ComputedPropertyName: [ AssignmentExpression ] --- 852
cpn-obj-lit-computed-property-name-from-assignment-expression-assignment.js --- description: Computed property name from assignment expression (ComputedPropertyName in ObjectLiteral) esid: prod-ComputedPropertyName features: [computed-property-names] flags: [generated] info: | ObjectLiteral: { PropertyDefinitionList } PropertyDefinitionList: PropertyDefinition PropertyDefinition: PropertyName: AssignmentExpression PropertyName: ComputedPropertyName ComputedPropertyName: [ AssignmentExpression ] --- 890
cpn-obj-lit-computed-property-name-from-assignment-expression-bitwise-or.js --- description: Computed property name from assignment expression bitwise or (ComputedPropertyName in ObjectLiteral) esid: prod-ComputedPropertyName features: [computed-property-names] flags: [generated] info: | ObjectLiteral: { PropertyDefinitionList } PropertyDefinitionList: PropertyDefinition PropertyDefinition: PropertyName: AssignmentExpression PropertyName: ComputedPropertyName ComputedPropertyName: [ AssignmentExpression ] --- 904
cpn-obj-lit-computed-property-name-from-assignment-expression-coalesce.js --- description: Computed property name from assignment expression coalesce (ComputedPropertyName in ObjectLiteral) esid: prod-ComputedPropertyName features: [computed-property-names, logical-assignment-operators] flags: [generated] info: | ObjectLiteral: { PropertyDefinitionList } PropertyDefinitionList: PropertyDefinition PropertyDefinition: PropertyName: AssignmentExpression PropertyName: ComputedPropertyName ComputedPropertyName: [ AssignmentExpression ] --- 936
cpn-obj-lit-computed-property-name-from-assignment-expression-logical-and.js --- description: Computed property name from assignment expression logical and (ComputedPropertyName in ObjectLiteral) esid: prod-ComputedPropertyName features: [computed-property-names, logical-assignment-operators] flags: [generated] info: | ObjectLiteral: { PropertyDefinitionList } PropertyDefinitionList: PropertyDefinition PropertyDefinition: PropertyName: AssignmentExpression PropertyName: ComputedPropertyName ComputedPropertyName: [ AssignmentExpression ] --- 939
cpn-obj-lit-computed-property-name-from-assignment-expression-logical-or.js --- description: Computed property name from assignment expression logical or (ComputedPropertyName in ObjectLiteral) esid: prod-ComputedPropertyName features: [computed-property-names, logical-assignment-operators] flags: [generated] info: | ObjectLiteral: { PropertyDefinitionList } PropertyDefinitionList: PropertyDefinition PropertyDefinition: PropertyName: AssignmentExpression PropertyName: ComputedPropertyName ComputedPropertyName: [ AssignmentExpression ] --- 937
cpn-obj-lit-computed-property-name-from-async-arrow-function-expression.js --- description: Computed property name from function expression (ComputedPropertyName in ObjectLiteral) esid: prod-ComputedPropertyName features: [computed-property-names] flags: [generated] info: | ObjectLiteral: { PropertyDefinitionList } PropertyDefinitionList: PropertyDefinition PropertyDefinition: PropertyName: AssignmentExpression PropertyName: ComputedPropertyName ComputedPropertyName: [ AssignmentExpression ] --- 878
cpn-obj-lit-computed-property-name-from-await-expression.js --- description: Computed property name from condition expression (ComputedPropertyName in ObjectLiteral) esid: prod-ComputedPropertyName features: [computed-property-names, top-level-await] flags: [generated, async, module] info: | ObjectLiteral: { PropertyDefinitionList } PropertyDefinitionList: PropertyDefinition PropertyDefinition: PropertyName: AssignmentExpression PropertyName: ComputedPropertyName ComputedPropertyName: [ AssignmentExpression ] --- 923
cpn-obj-lit-computed-property-name-from-condition-expression-false.js --- description: Computed property name from condition expression (ComputedPropertyName in ObjectLiteral) esid: prod-ComputedPropertyName features: [computed-property-names] flags: [generated] info: | ObjectLiteral: { PropertyDefinitionList } PropertyDefinitionList: PropertyDefinition PropertyDefinition: PropertyName: AssignmentExpression PropertyName: ComputedPropertyName ComputedPropertyName: [ AssignmentExpression ] --- 871
cpn-obj-lit-computed-property-name-from-condition-expression-true.js --- description: Computed property name from condition expression (ComputedPropertyName in ObjectLiteral) esid: prod-ComputedPropertyName features: [computed-property-names] flags: [generated] info: | ObjectLiteral: { PropertyDefinitionList } PropertyDefinitionList: PropertyDefinition PropertyDefinition: PropertyName: AssignmentExpression PropertyName: ComputedPropertyName ComputedPropertyName: [ AssignmentExpression ] --- 867
cpn-obj-lit-computed-property-name-from-decimal-e-notational-literal.js --- description: Computed property name from decimal e notational literal (ComputedPropertyName in ObjectLiteral) esid: prod-ComputedPropertyName features: [computed-property-names] flags: [generated] info: | ObjectLiteral: { PropertyDefinitionList } PropertyDefinitionList: PropertyDefinition PropertyDefinition: PropertyName: AssignmentExpression PropertyName: ComputedPropertyName ComputedPropertyName: [ AssignmentExpression ] --- 854
cpn-obj-lit-computed-property-name-from-decimal-literal.js --- description: Computed property name from decimal literal (ComputedPropertyName in ObjectLiteral) esid: prod-ComputedPropertyName features: [computed-property-names] flags: [generated] info: | ObjectLiteral: { PropertyDefinitionList } PropertyDefinitionList: PropertyDefinition PropertyDefinition: PropertyName: AssignmentExpression PropertyName: ComputedPropertyName ComputedPropertyName: [ AssignmentExpression ] --- 825
cpn-obj-lit-computed-property-name-from-exponetiation-expression.js --- description: Computed property name from exponentiation expression (ComputedPropertyName in ObjectLiteral) esid: prod-ComputedPropertyName features: [computed-property-names, exponentiation] flags: [generated] info: | ObjectLiteral: { PropertyDefinitionList } PropertyDefinitionList: PropertyDefinition PropertyDefinition: PropertyName: AssignmentExpression PropertyName: ComputedPropertyName ComputedPropertyName: [ AssignmentExpression ] --- 869
cpn-obj-lit-computed-property-name-from-expression-coalesce.js --- description: Computed property name from coalesce (ComputedPropertyName in ObjectLiteral) esid: prod-ComputedPropertyName features: [computed-property-names] flags: [generated] info: | ObjectLiteral: { PropertyDefinitionList } PropertyDefinitionList: PropertyDefinition PropertyDefinition: PropertyName: AssignmentExpression PropertyName: ComputedPropertyName ComputedPropertyName: [ AssignmentExpression ] --- 871
cpn-obj-lit-computed-property-name-from-expression-logical-and.js --- description: Computed property name from logical and (ComputedPropertyName in ObjectLiteral) esid: prod-ComputedPropertyName features: [computed-property-names] flags: [generated] info: | ObjectLiteral: { PropertyDefinitionList } PropertyDefinitionList: PropertyDefinition PropertyDefinition: PropertyName: AssignmentExpression PropertyName: ComputedPropertyName ComputedPropertyName: [ AssignmentExpression ] --- 873
cpn-obj-lit-computed-property-name-from-expression-logical-or.js --- description: Computed property name from logical or (ComputedPropertyName in ObjectLiteral) esid: prod-ComputedPropertyName features: [computed-property-names] flags: [generated] info: | ObjectLiteral: { PropertyDefinitionList } PropertyDefinitionList: PropertyDefinition PropertyDefinition: PropertyName: AssignmentExpression PropertyName: ComputedPropertyName ComputedPropertyName: [ AssignmentExpression ] --- 871
cpn-obj-lit-computed-property-name-from-function-declaration.js --- description: Computed property name from function (ComputedPropertyName in ObjectLiteral) esid: prod-ComputedPropertyName features: [computed-property-names] flags: [generated] info: | ObjectLiteral: { PropertyDefinitionList } PropertyDefinitionList: PropertyDefinition PropertyDefinition: PropertyName: AssignmentExpression PropertyName: ComputedPropertyName ComputedPropertyName: [ AssignmentExpression ] --- 839
cpn-obj-lit-computed-property-name-from-function-expression.js --- description: Computed property name from function expression (ComputedPropertyName in ObjectLiteral) esid: prod-ComputedPropertyName features: [computed-property-names] flags: [generated] info: | ObjectLiteral: { PropertyDefinitionList } PropertyDefinitionList: PropertyDefinition PropertyDefinition: PropertyName: AssignmentExpression PropertyName: ComputedPropertyName ComputedPropertyName: [ AssignmentExpression ] --- 866
cpn-obj-lit-computed-property-name-from-generator-function-declaration.js --- description: Computed property name from generator function (ComputedPropertyName in ObjectLiteral) esid: prod-ComputedPropertyName features: [computed-property-names] flags: [generated] info: | ObjectLiteral: { PropertyDefinitionList } PropertyDefinitionList: PropertyDefinition PropertyDefinition: PropertyName: AssignmentExpression PropertyName: ComputedPropertyName ComputedPropertyName: [ AssignmentExpression ] --- 872
cpn-obj-lit-computed-property-name-from-identifier.js --- description: Computed property name from string literal (ComputedPropertyName in ObjectLiteral) esid: prod-ComputedPropertyName features: [computed-property-names] flags: [generated] info: | ObjectLiteral: { PropertyDefinitionList } PropertyDefinitionList: PropertyDefinition PropertyDefinition: PropertyName: AssignmentExpression PropertyName: ComputedPropertyName ComputedPropertyName: [ AssignmentExpression ] --- 831
cpn-obj-lit-computed-property-name-from-integer-e-notational-literal.js --- description: Computed property name from numeric literal (ComputedPropertyName in ObjectLiteral) esid: prod-ComputedPropertyName features: [computed-property-names] flags: [generated] info: | ObjectLiteral: { PropertyDefinitionList } PropertyDefinitionList: PropertyDefinition PropertyDefinition: PropertyName: AssignmentExpression PropertyName: ComputedPropertyName ComputedPropertyName: [ AssignmentExpression ] --- 832
cpn-obj-lit-computed-property-name-from-integer-separators.js --- description: Computed property name from integer with separators (ComputedPropertyName in ObjectLiteral) esid: prod-ComputedPropertyName features: [computed-property-names] flags: [generated] info: | ObjectLiteral: { PropertyDefinitionList } PropertyDefinitionList: PropertyDefinition PropertyDefinition: PropertyName: AssignmentExpression PropertyName: ComputedPropertyName ComputedPropertyName: [ AssignmentExpression ] --- 914
cpn-obj-lit-computed-property-name-from-math.js --- description: Computed property name from math (ComputedPropertyName in ObjectLiteral) esid: prod-ComputedPropertyName features: [computed-property-names, exponentiation] flags: [generated] info: | ObjectLiteral: { PropertyDefinitionList } PropertyDefinitionList: PropertyDefinition PropertyDefinition: PropertyName: AssignmentExpression PropertyName: ComputedPropertyName ComputedPropertyName: [ AssignmentExpression ] --- 897
cpn-obj-lit-computed-property-name-from-multiplicative-expression-div.js --- description: Computed property name from multiplicative expression "divide" (ComputedPropertyName in ObjectLiteral) esid: prod-ComputedPropertyName features: [computed-property-names] flags: [generated] info: | ObjectLiteral: { PropertyDefinitionList } PropertyDefinitionList: PropertyDefinition PropertyDefinition: PropertyName: AssignmentExpression PropertyName: ComputedPropertyName ComputedPropertyName: [ AssignmentExpression ] --- 864
cpn-obj-lit-computed-property-name-from-multiplicative-expression-mult.js --- description: Computed property name from multiplicative expression "multiply" (ComputedPropertyName in ObjectLiteral) esid: prod-ComputedPropertyName features: [computed-property-names] flags: [generated] info: | ObjectLiteral: { PropertyDefinitionList } PropertyDefinitionList: PropertyDefinition PropertyDefinition: PropertyName: AssignmentExpression PropertyName: ComputedPropertyName ComputedPropertyName: [ AssignmentExpression ] --- 867
cpn-obj-lit-computed-property-name-from-null.js --- description: Computed property name from condition expression (ComputedPropertyName in ObjectLiteral) esid: prod-ComputedPropertyName features: [computed-property-names] flags: [generated] info: | ObjectLiteral: { PropertyDefinitionList } PropertyDefinitionList: PropertyDefinition PropertyDefinition: PropertyName: AssignmentExpression PropertyName: ComputedPropertyName ComputedPropertyName: [ AssignmentExpression ] --- 831
cpn-obj-lit-computed-property-name-from-numeric-literal.js --- description: Computed property name from numeric literal (ComputedPropertyName in ObjectLiteral) esid: prod-ComputedPropertyName features: [computed-property-names] flags: [generated] info: | ObjectLiteral: { PropertyDefinitionList } PropertyDefinitionList: PropertyDefinition PropertyDefinition: PropertyName: AssignmentExpression PropertyName: ComputedPropertyName ComputedPropertyName: [ AssignmentExpression ] --- 819
cpn-obj-lit-computed-property-name-from-string-literal.js --- description: Computed property name from string literal (ComputedPropertyName in ObjectLiteral) esid: prod-ComputedPropertyName features: [computed-property-names] flags: [generated] info: | ObjectLiteral: { PropertyDefinitionList } PropertyDefinitionList: PropertyDefinition PropertyDefinition: PropertyName: AssignmentExpression PropertyName: ComputedPropertyName ComputedPropertyName: [ AssignmentExpression ] --- 829
cpn-obj-lit-computed-property-name-from-yield-expression.js --- description: Computed property name from yield expression (ComputedPropertyName in ObjectLiteral) esid: prod-ComputedPropertyName features: [computed-property-names] flags: [generated] info: | ObjectLiteral: { PropertyDefinitionList } PropertyDefinitionList: PropertyDefinition PropertyDefinition: PropertyName: AssignmentExpression PropertyName: ComputedPropertyName ComputedPropertyName: [ AssignmentExpression ] --- 912
dstr
fn-name-accessor-get.js --- es6id: 14.3.9 description: Assignment of function `name` attribute ("get" accessor) info: | MethodDefinition : get PropertyName ( ) { FunctionBody } [...] 8. Perform SetFunctionName(closure, propKey, "get"). includes: [propertyHelper.js] features: [Symbol] --- 1120
fn-name-accessor-set.js --- es6id: 14.3.9 description: Assignment of function `name` attribute ("set" accessor) info: | MethodDefinition : set PropertyName ( PropertySetParameterList ) { FunctionBody } [...] 7. Perform SetFunctionName(closure, propKey, "set"). includes: [propertyHelper.js] features: [Symbol] --- 1156
fn-name-arrow.js --- es6id: 12.2.6.9 description: Assignment of function `name` attribute (ArrowFunction) info: | 6. If IsAnonymousFunctionDefinition(AssignmentExpression) is true, then a. Let hasNameProperty be HasOwnProperty(propValue, "name"). b. ReturnIfAbrupt(hasNameProperty). c. If hasNameProperty is false, perform SetFunctionName(propValue, propKey). includes: [propertyHelper.js] features: [Symbol] --- 1091
fn-name-class.js --- es6id: 12.2.6.9 description: Assignment of function `name` attribute (ClassExpression) info: | 6. If IsAnonymousFunctionDefinition(AssignmentExpression) is true, then a. Let hasNameProperty be HasOwnProperty(propValue, "name"). b. ReturnIfAbrupt(hasNameProperty). c. If hasNameProperty is false, perform SetFunctionName(propValue, propKey). includes: [propertyHelper.js] features: [class, Symbol] --- 1150
fn-name-cover.js --- es6id: 12.2.6.9 description: > Assignment of function `name` attribute (CoverParenthesizedExpression) info: | 6. If IsAnonymousFunctionDefinition(AssignmentExpression) is true, then a. Let hasNameProperty be HasOwnProperty(propValue, "name"). b. ReturnIfAbrupt(hasNameProperty). c. If hasNameProperty is false, perform SetFunctionName(propValue, propKey). includes: [propertyHelper.js] features: [Symbol] --- 1191
fn-name-fn.js --- es6id: 12.2.6.9 description: Assignment of function `name` attribute (FunctionExpression) info: | 6. If IsAnonymousFunctionDefinition(AssignmentExpression) is true, then a. Let hasNameProperty be HasOwnProperty(propValue, "name"). b. ReturnIfAbrupt(hasNameProperty). c. If hasNameProperty is false, perform SetFunctionName(propValue, propKey). includes: [propertyHelper.js] features: [Symbol] --- 1166
fn-name-gen.js --- es6id: 12.2.6.9 description: > Assignment of function `name` attribute (GeneratorExpression) info: | 6. If IsAnonymousFunctionDefinition(AssignmentExpression) is true, then a. Let hasNameProperty be HasOwnProperty(propValue, "name"). b. ReturnIfAbrupt(hasNameProperty). c. If hasNameProperty is false, perform SetFunctionName(propValue, propKey). includes: [propertyHelper.js] features: [generators, Symbol] --- 1189
getter-body-strict-inside.js --- es5id: 11.1.5_6-2-2-s description: > Strict Mode - SyntaxError is thrown when an assignment to a reserved word or a future reserved word is made inside a strict mode FunctionBody of a PropertyAssignment negative: phase: parse type: SyntaxError flags: [noStrict] --- 537
getter-body-strict-outside-strict.js --- es5id: 11.1.5_6-2-1-s description: > Strict Mode - SyntaxError is thrown when an assignment to a reserved word or a future reserved word is contained in strict code negative: phase: parse type: SyntaxError flags: [onlyStrict] --- 493
getter-param-dflt.js --- esid: sec-method-definitions es6id: 14.3 description: > Get accessor method may not have a formal parameter (regardless of the presence of an initializer) info: | Syntax MethodDefinition[Yield] : get PropertyName[?Yield] ( ) { FunctionBody } features: [default-parameters] negative: phase: parse type: SyntaxError --- 564
getter-prop-desc.js --- esid: sec-object-initializer-runtime-semantics-evaluation es6id: 12.2.6.8 description: Property descriptor of "set" accessor methods info: | ObjectLiteral: { PropertyDefinitionList } { PropertyDefinitionList , } 1. Let obj be ObjectCreate(%ObjectPrototype%). 2. Let status be the result of performing PropertyDefinitionEvaluation of PropertyDefinitionList with arguments obj and true. 3. ReturnIfAbrupt(status). 4. Return obj. 14.3.8 Runtime Semantics: PropertyDefinitionEvaluation MethodDefinition : get PropertyName ( ) { FunctionBody} [...] 9. Let desc be the PropertyDescriptor{[[Get]]: closure, [[Enumerable]]: enumerable, [[Configurable]]: true}. [...] includes: [propertyHelper.js] --- 1325
getter-super-prop.js --- es6id: 12.2.5 description: > super method calls in object literal getter --- 804
ident-name-method-def-break-escaped.js --- description: break is a valid identifier name, using escape (MethodDefinition) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: MethodDefinition ... MethodDefinition: PropertyName ( UniqueFormalParameters ){ FunctionBody } PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 1000
ident-name-method-def-case-escaped.js --- description: case is a valid identifier name, using escape (MethodDefinition) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: MethodDefinition ... MethodDefinition: PropertyName ( UniqueFormalParameters ){ FunctionBody } PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 996
ident-name-method-def-catch-escaped.js --- description: catch is a valid identifier name, using escape (MethodDefinition) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: MethodDefinition ... MethodDefinition: PropertyName ( UniqueFormalParameters ){ FunctionBody } PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 1000
ident-name-method-def-class-escaped.js --- description: class is a valid identifier name, using escape (MethodDefinition) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: MethodDefinition ... MethodDefinition: PropertyName ( UniqueFormalParameters ){ FunctionBody } PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 1000
ident-name-method-def-const-escaped.js --- description: const is a valid identifier name, using escape (MethodDefinition) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: MethodDefinition ... MethodDefinition: PropertyName ( UniqueFormalParameters ){ FunctionBody } PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 1000
ident-name-method-def-continue-escaped.js --- description: continue is a valid identifier name, using escape (MethodDefinition) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: MethodDefinition ... MethodDefinition: PropertyName ( UniqueFormalParameters ){ FunctionBody } PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 1012
ident-name-method-def-debugger-escaped.js --- description: debugger is a valid identifier name, using escape (MethodDefinition) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: MethodDefinition ... MethodDefinition: PropertyName ( UniqueFormalParameters ){ FunctionBody } PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 1012
ident-name-method-def-default-escaped-ext.js --- description: default is a valid identifier name, using extended escape (MethodDefinition) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: MethodDefinition ... MethodDefinition: PropertyName ( UniqueFormalParameters ){ FunctionBody } PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 1021
ident-name-method-def-default-escaped.js --- description: default is a valid identifier name, using escape (MethodDefinition) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: MethodDefinition ... MethodDefinition: PropertyName ( UniqueFormalParameters ){ FunctionBody } PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 1008
ident-name-method-def-default.js --- description: default is a valid identifier name (MethodDefinition) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: MethodDefinition ... MethodDefinition: PropertyName ( UniqueFormalParameters ){ FunctionBody } PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 981
ident-name-method-def-delete-escaped.js --- description: delete is a valid identifier name, using escape (MethodDefinition) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: MethodDefinition ... MethodDefinition: PropertyName ( UniqueFormalParameters ){ FunctionBody } PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 1004
ident-name-method-def-do-escaped.js --- description: do is a valid identifier name, using escape (MethodDefinition) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: MethodDefinition ... MethodDefinition: PropertyName ( UniqueFormalParameters ){ FunctionBody } PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 988
ident-name-method-def-else-escaped.js --- description: else is a valid identifier name, using escape (MethodDefinition) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: MethodDefinition ... MethodDefinition: PropertyName ( UniqueFormalParameters ){ FunctionBody } PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 996
ident-name-method-def-enum-escaped.js --- description: enum is a valid identifier name, using escape (MethodDefinition) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: MethodDefinition ... MethodDefinition: PropertyName ( UniqueFormalParameters ){ FunctionBody } PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 996
ident-name-method-def-export-escaped.js --- description: export is a valid identifier name, using escape (MethodDefinition) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: MethodDefinition ... MethodDefinition: PropertyName ( UniqueFormalParameters ){ FunctionBody } PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 1004
ident-name-method-def-extends-escaped-ext.js --- description: extends is a valid identifier name, using extended escape (MethodDefinition) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: MethodDefinition ... MethodDefinition: PropertyName ( UniqueFormalParameters ){ FunctionBody } PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 1021
ident-name-method-def-extends-escaped.js --- description: extends is a valid identifier name, using escape (MethodDefinition) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: MethodDefinition ... MethodDefinition: PropertyName ( UniqueFormalParameters ){ FunctionBody } PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 1008
ident-name-method-def-extends.js --- description: extends is a valid identifier name (MethodDefinition) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: MethodDefinition ... MethodDefinition: PropertyName ( UniqueFormalParameters ){ FunctionBody } PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 981
ident-name-method-def-finally-escaped.js --- description: finally is a valid identifier name, using escape (MethodDefinition) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: MethodDefinition ... MethodDefinition: PropertyName ( UniqueFormalParameters ){ FunctionBody } PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 1008
ident-name-method-def-for-escaped.js --- description: for is a valid identifier name, using escape (MethodDefinition) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: MethodDefinition ... MethodDefinition: PropertyName ( UniqueFormalParameters ){ FunctionBody } PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 992
ident-name-method-def-function-escaped.js --- description: function is a valid identifier name, using escape (MethodDefinition) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: MethodDefinition ... MethodDefinition: PropertyName ( UniqueFormalParameters ){ FunctionBody } PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 1012
ident-name-method-def-if-escaped.js --- description: if is a valid identifier name, using escape (MethodDefinition) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: MethodDefinition ... MethodDefinition: PropertyName ( UniqueFormalParameters ){ FunctionBody } PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 988
ident-name-method-def-implements-escaped.js --- description: implements is a valid identifier name, using escape (MethodDefinition) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: MethodDefinition ... MethodDefinition: PropertyName ( UniqueFormalParameters ){ FunctionBody } PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 1034
ident-name-method-def-import-escaped.js --- description: import is a valid identifier name, using escape (MethodDefinition) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: MethodDefinition ... MethodDefinition: PropertyName ( UniqueFormalParameters ){ FunctionBody } PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 1004
ident-name-method-def-in-escaped.js --- description: in is a valid identifier name, using escape (MethodDefinition) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: MethodDefinition ... MethodDefinition: PropertyName ( UniqueFormalParameters ){ FunctionBody } PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 988
ident-name-method-def-instanceof-escaped.js --- description: instanceof is a valid identifier name, using escape (MethodDefinition) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: MethodDefinition ... MethodDefinition: PropertyName ( UniqueFormalParameters ){ FunctionBody } PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 1020
ident-name-method-def-interface-escaped.js --- description: interface is a valid identifier name, using escape (MethodDefinition) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: MethodDefinition ... MethodDefinition: PropertyName ( UniqueFormalParameters ){ FunctionBody } PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 1030
ident-name-method-def-let-escaped.js --- description: let is a valid identifier name, using escape (MethodDefinition) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: MethodDefinition ... MethodDefinition: PropertyName ( UniqueFormalParameters ){ FunctionBody } PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 1006
ident-name-method-def-new-escaped.js --- description: new is a valid identifier name, using escape (MethodDefinition) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: MethodDefinition ... MethodDefinition: PropertyName ( UniqueFormalParameters ){ FunctionBody } PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 992
ident-name-method-def-package-escaped.js --- description: package is a valid identifier name, using escape (MethodDefinition) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: MethodDefinition ... MethodDefinition: PropertyName ( UniqueFormalParameters ){ FunctionBody } PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 1022
ident-name-method-def-private-escaped.js --- description: private is a valid identifier name, using escape (MethodDefinition) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: MethodDefinition ... MethodDefinition: PropertyName ( UniqueFormalParameters ){ FunctionBody } PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 1022
ident-name-method-def-protected-escaped.js --- description: protected is a valid identifier name, using escape (MethodDefinition) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: MethodDefinition ... MethodDefinition: PropertyName ( UniqueFormalParameters ){ FunctionBody } PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 1030
ident-name-method-def-public-escaped.js --- description: public is a valid identifier name, using escape (MethodDefinition) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: MethodDefinition ... MethodDefinition: PropertyName ( UniqueFormalParameters ){ FunctionBody } PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 1018
ident-name-method-def-return-escaped.js --- description: return is a valid identifier name, using escape (MethodDefinition) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: MethodDefinition ... MethodDefinition: PropertyName ( UniqueFormalParameters ){ FunctionBody } PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 1004
ident-name-method-def-static-escaped.js --- description: static is a valid identifier name, using escape (MethodDefinition) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: MethodDefinition ... MethodDefinition: PropertyName ( UniqueFormalParameters ){ FunctionBody } PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 1018
ident-name-method-def-super-escaped.js --- description: super is a valid identifier name, using escape (MethodDefinition) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: MethodDefinition ... MethodDefinition: PropertyName ( UniqueFormalParameters ){ FunctionBody } PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 1000
ident-name-method-def-switch-escaped.js --- description: switch is a valid identifier name, using escape (MethodDefinition) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: MethodDefinition ... MethodDefinition: PropertyName ( UniqueFormalParameters ){ FunctionBody } PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 1004
ident-name-method-def-this-escaped.js --- description: this is a valid identifier name, using escape (MethodDefinition) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: MethodDefinition ... MethodDefinition: PropertyName ( UniqueFormalParameters ){ FunctionBody } PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 996
ident-name-method-def-throw-escaped.js --- description: throw is a valid identifier name, using escape (MethodDefinition) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: MethodDefinition ... MethodDefinition: PropertyName ( UniqueFormalParameters ){ FunctionBody } PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 1000
ident-name-method-def-try-escaped.js --- description: try is a valid identifier name, using escape (MethodDefinition) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: MethodDefinition ... MethodDefinition: PropertyName ( UniqueFormalParameters ){ FunctionBody } PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 992
ident-name-method-def-typeof-escaped.js --- description: typeof is a valid identifier name, using escape (MethodDefinition) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: MethodDefinition ... MethodDefinition: PropertyName ( UniqueFormalParameters ){ FunctionBody } PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 1004
ident-name-method-def-var-escaped.js --- description: var is a valid identifier name, using escape (MethodDefinition) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: MethodDefinition ... MethodDefinition: PropertyName ( UniqueFormalParameters ){ FunctionBody } PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 992
ident-name-method-def-void-escaped.js --- description: void is a valid identifier name, using escape (MethodDefinition) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: MethodDefinition ... MethodDefinition: PropertyName ( UniqueFormalParameters ){ FunctionBody } PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 996
ident-name-method-def-while-escaped.js --- description: while is a valid identifier name, using escape (MethodDefinition) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: MethodDefinition ... MethodDefinition: PropertyName ( UniqueFormalParameters ){ FunctionBody } PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 1000
ident-name-method-def-with-escaped.js --- description: with is a valid identifier name, using escape (MethodDefinition) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: MethodDefinition ... MethodDefinition: PropertyName ( UniqueFormalParameters ){ FunctionBody } PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 996
ident-name-prop-name-literal-await-static-init.js --- esid: sec-class-definitions-static-semantics-early-errors description: The restriction on `await` does not apply to IdentifierName info: | BindingIdentifier : Identifier [...] - It is a Syntax Error if the code matched by this production is nested, directly or indirectly (but not crossing function or static initialization block boundaries), within a ClassStaticBlock and the StringValue of Identifier is "await". features: [class-static-block] --- 686
ident-name-prop-name-literal-break-escaped.js --- description: break is a valid identifier name, using escape (PropertyName) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: IdentifierReference PropertyName : AssignmentExpression MethodDefinition ... AssignmentExpression ... PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 986
ident-name-prop-name-literal-case-escaped.js --- description: case is a valid identifier name, using escape (PropertyName) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: IdentifierReference PropertyName : AssignmentExpression MethodDefinition ... AssignmentExpression ... PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 982
ident-name-prop-name-literal-catch-escaped.js --- description: catch is a valid identifier name, using escape (PropertyName) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: IdentifierReference PropertyName : AssignmentExpression MethodDefinition ... AssignmentExpression ... PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 986
ident-name-prop-name-literal-class-escaped.js --- description: class is a valid identifier name, using escape (PropertyName) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: IdentifierReference PropertyName : AssignmentExpression MethodDefinition ... AssignmentExpression ... PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 986
ident-name-prop-name-literal-const-escaped.js --- description: const is a valid identifier name, using escape (PropertyName) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: IdentifierReference PropertyName : AssignmentExpression MethodDefinition ... AssignmentExpression ... PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 986
ident-name-prop-name-literal-continue-escaped.js --- description: continue is a valid identifier name, using escape (PropertyName) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: IdentifierReference PropertyName : AssignmentExpression MethodDefinition ... AssignmentExpression ... PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 998
ident-name-prop-name-literal-debugger-escaped.js --- description: debugger is a valid identifier name, using escape (PropertyName) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: IdentifierReference PropertyName : AssignmentExpression MethodDefinition ... AssignmentExpression ... PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 998
ident-name-prop-name-literal-default-escaped-ext.js --- description: default is a valid identifier name, using extended escape (PropertyName) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: IdentifierReference PropertyName : AssignmentExpression MethodDefinition ... AssignmentExpression ... PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 1007
ident-name-prop-name-literal-default-escaped.js --- description: default is a valid identifier name, using escape (PropertyName) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: IdentifierReference PropertyName : AssignmentExpression MethodDefinition ... AssignmentExpression ... PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 994
ident-name-prop-name-literal-default.js --- description: default is a valid identifier name (PropertyName) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: IdentifierReference PropertyName : AssignmentExpression MethodDefinition ... AssignmentExpression ... PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 967
ident-name-prop-name-literal-delete-escaped.js --- description: delete is a valid identifier name, using escape (PropertyName) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: IdentifierReference PropertyName : AssignmentExpression MethodDefinition ... AssignmentExpression ... PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 990
ident-name-prop-name-literal-do-escaped.js --- description: do is a valid identifier name, using escape (PropertyName) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: IdentifierReference PropertyName : AssignmentExpression MethodDefinition ... AssignmentExpression ... PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 974
ident-name-prop-name-literal-else-escaped.js --- description: else is a valid identifier name, using escape (PropertyName) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: IdentifierReference PropertyName : AssignmentExpression MethodDefinition ... AssignmentExpression ... PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 982
ident-name-prop-name-literal-enum-escaped.js --- description: enum is a valid identifier name, using escape (PropertyName) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: IdentifierReference PropertyName : AssignmentExpression MethodDefinition ... AssignmentExpression ... PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 982
ident-name-prop-name-literal-export-escaped.js --- description: export is a valid identifier name, using escape (PropertyName) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: IdentifierReference PropertyName : AssignmentExpression MethodDefinition ... AssignmentExpression ... PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 990
ident-name-prop-name-literal-extends-escaped-ext.js --- description: extends is a valid identifier name, using extended escape (PropertyName) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: IdentifierReference PropertyName : AssignmentExpression MethodDefinition ... AssignmentExpression ... PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 1007
ident-name-prop-name-literal-extends-escaped.js --- description: extends is a valid identifier name, using escape (PropertyName) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: IdentifierReference PropertyName : AssignmentExpression MethodDefinition ... AssignmentExpression ... PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 994
ident-name-prop-name-literal-extends.js --- description: extends is a valid identifier name (PropertyName) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: IdentifierReference PropertyName : AssignmentExpression MethodDefinition ... AssignmentExpression ... PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 967
ident-name-prop-name-literal-finally-escaped.js --- description: finally is a valid identifier name, using escape (PropertyName) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: IdentifierReference PropertyName : AssignmentExpression MethodDefinition ... AssignmentExpression ... PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 994
ident-name-prop-name-literal-for-escaped.js --- description: for is a valid identifier name, using escape (PropertyName) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: IdentifierReference PropertyName : AssignmentExpression MethodDefinition ... AssignmentExpression ... PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 978
ident-name-prop-name-literal-function-escaped.js --- description: function is a valid identifier name, using escape (PropertyName) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: IdentifierReference PropertyName : AssignmentExpression MethodDefinition ... AssignmentExpression ... PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 998
ident-name-prop-name-literal-if-escaped.js --- description: if is a valid identifier name, using escape (PropertyName) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: IdentifierReference PropertyName : AssignmentExpression MethodDefinition ... AssignmentExpression ... PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 974
ident-name-prop-name-literal-implements-escaped.js --- description: implements is a valid identifier name, using escape (PropertyName) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: IdentifierReference PropertyName : AssignmentExpression MethodDefinition ... AssignmentExpression ... PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 1020
ident-name-prop-name-literal-import-escaped.js --- description: import is a valid identifier name, using escape (PropertyName) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: IdentifierReference PropertyName : AssignmentExpression MethodDefinition ... AssignmentExpression ... PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 990
ident-name-prop-name-literal-in-escaped.js --- description: in is a valid identifier name, using escape (PropertyName) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: IdentifierReference PropertyName : AssignmentExpression MethodDefinition ... AssignmentExpression ... PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 974
ident-name-prop-name-literal-instanceof-escaped.js --- description: instanceof is a valid identifier name, using escape (PropertyName) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: IdentifierReference PropertyName : AssignmentExpression MethodDefinition ... AssignmentExpression ... PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 1006
ident-name-prop-name-literal-interface-escaped.js --- description: interface is a valid identifier name, using escape (PropertyName) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: IdentifierReference PropertyName : AssignmentExpression MethodDefinition ... AssignmentExpression ... PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 1016
ident-name-prop-name-literal-let-escaped.js --- description: let is a valid identifier name, using escape (PropertyName) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: IdentifierReference PropertyName : AssignmentExpression MethodDefinition ... AssignmentExpression ... PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 992
ident-name-prop-name-literal-new-escaped.js --- description: new is a valid identifier name, using escape (PropertyName) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: IdentifierReference PropertyName : AssignmentExpression MethodDefinition ... AssignmentExpression ... PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 978
ident-name-prop-name-literal-package-escaped.js --- description: package is a valid identifier name, using escape (PropertyName) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: IdentifierReference PropertyName : AssignmentExpression MethodDefinition ... AssignmentExpression ... PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 1008
ident-name-prop-name-literal-private-escaped.js --- description: private is a valid identifier name, using escape (PropertyName) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: IdentifierReference PropertyName : AssignmentExpression MethodDefinition ... AssignmentExpression ... PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 1008
ident-name-prop-name-literal-protected-escaped.js --- description: protected is a valid identifier name, using escape (PropertyName) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: IdentifierReference PropertyName : AssignmentExpression MethodDefinition ... AssignmentExpression ... PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 1016
ident-name-prop-name-literal-public-escaped.js --- description: public is a valid identifier name, using escape (PropertyName) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: IdentifierReference PropertyName : AssignmentExpression MethodDefinition ... AssignmentExpression ... PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 1004
ident-name-prop-name-literal-return-escaped.js --- description: return is a valid identifier name, using escape (PropertyName) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: IdentifierReference PropertyName : AssignmentExpression MethodDefinition ... AssignmentExpression ... PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 990
ident-name-prop-name-literal-static-escaped.js --- description: static is a valid identifier name, using escape (PropertyName) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: IdentifierReference PropertyName : AssignmentExpression MethodDefinition ... AssignmentExpression ... PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 1004
ident-name-prop-name-literal-super-escaped.js --- description: super is a valid identifier name, using escape (PropertyName) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: IdentifierReference PropertyName : AssignmentExpression MethodDefinition ... AssignmentExpression ... PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 986
ident-name-prop-name-literal-switch-escaped.js --- description: switch is a valid identifier name, using escape (PropertyName) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: IdentifierReference PropertyName : AssignmentExpression MethodDefinition ... AssignmentExpression ... PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 990
ident-name-prop-name-literal-this-escaped.js --- description: this is a valid identifier name, using escape (PropertyName) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: IdentifierReference PropertyName : AssignmentExpression MethodDefinition ... AssignmentExpression ... PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 982
ident-name-prop-name-literal-throw-escaped.js --- description: throw is a valid identifier name, using escape (PropertyName) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: IdentifierReference PropertyName : AssignmentExpression MethodDefinition ... AssignmentExpression ... PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 986
ident-name-prop-name-literal-try-escaped.js --- description: try is a valid identifier name, using escape (PropertyName) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: IdentifierReference PropertyName : AssignmentExpression MethodDefinition ... AssignmentExpression ... PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 978
ident-name-prop-name-literal-typeof-escaped.js --- description: typeof is a valid identifier name, using escape (PropertyName) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: IdentifierReference PropertyName : AssignmentExpression MethodDefinition ... AssignmentExpression ... PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 990
ident-name-prop-name-literal-var-escaped.js --- description: var is a valid identifier name, using escape (PropertyName) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: IdentifierReference PropertyName : AssignmentExpression MethodDefinition ... AssignmentExpression ... PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 978
ident-name-prop-name-literal-void-escaped.js --- description: void is a valid identifier name, using escape (PropertyName) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: IdentifierReference PropertyName : AssignmentExpression MethodDefinition ... AssignmentExpression ... PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 982
ident-name-prop-name-literal-while-escaped.js --- description: while is a valid identifier name, using escape (PropertyName) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: IdentifierReference PropertyName : AssignmentExpression MethodDefinition ... AssignmentExpression ... PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 986
ident-name-prop-name-literal-with-escaped.js --- description: with is a valid identifier name, using escape (PropertyName) esid: prod-PropertyDefinition flags: [generated] info: | ObjectLiteral : { PropertyDefinitionList } { PropertyDefinitionList , } PropertyDefinitionList: PropertyDefinition PropertyDefinitionList , PropertyDefinition PropertyDefinition: IdentifierReference PropertyName : AssignmentExpression MethodDefinition ... AssignmentExpression ... PropertyName: LiteralPropertyName ... LiteralPropertyName: IdentifierName ... Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 982
identifier-shorthand-await-strict-mode.js --- description: > Object literal shorthands are limited to valid identifier references. await is valid in non-module strict mode code. esid: sec-object-initializer flags: [noStrict] info: | PropertyDefinition: IdentifierReference CoverInitializedName PropertyName : AssignmentExpression MethodDefinition Identifier : IdentifierName but not ReservedWord --- 607
identifier-shorthand-implements-invalid-strict-mode.js --- description: > Object literal shorthands are limited to valid identifier references. Future Reserved Words are disallowed in Strict Mode. (implements) esid: sec-object-initializer flags: [noStrict] info: | PropertyDefinition: IdentifierReference CoverInitializedName PropertyName : AssignmentExpression MethodDefinition Identifier : IdentifierName but not ReservedWord It is a Syntax Error if this phrase is contained in strict mode code and the StringValue of IdentifierName is: "implements", "interface", "let", "package", "private", "protected", "public", "static", or "yield". negative: phase: parse type: SyntaxError --- 934
identifier-shorthand-interface-invalid-strict-mode.js --- description: > Object literal shorthands are limited to valid identifier references. Future Reserved Words are disallowed in Strict Mode. (interface) esid: sec-object-initializer flags: [noStrict] info: | PropertyDefinition: IdentifierReference CoverInitializedName PropertyName : AssignmentExpression MethodDefinition Identifier : IdentifierName but not ReservedWord It is a Syntax Error if this phrase is contained in strict mode code and the StringValue of IdentifierName is: "implements", "interface", "let", "package", "private", "protected", "public", "static", or "yield". negative: phase: parse type: SyntaxError --- 931
identifier-shorthand-invalid-computed-name.js --- description: > Object literal shorthands are only valid with identifier references, not computed property names. esid: sec-object-initializer info: | PropertyDefinition: IdentifierReference CoverInitializedName PropertyName : AssignmentExpression MethodDefinition PropertyName: LiteralPropertyName ComputedPropertyName negative: phase: parse type: SyntaxError --- 634
identifier-shorthand-invalid-zero.js --- description: > Object literal shorthands are only valid with identifier references, not property names. (0) esid: sec-object-initializer info: | PropertyDefinition: IdentifierReference CoverInitializedName PropertyName : AssignmentExpression MethodDefinition negative: phase: parse type: SyntaxError --- 535
identifier-shorthand-let-invalid-strict-mode.js --- description: > Object literal shorthands are limited to valid identifier references. Future Reserved Words are disallowed in Strict Mode. (let) esid: sec-object-initializer flags: [noStrict] info: | PropertyDefinition: IdentifierReference CoverInitializedName PropertyName : AssignmentExpression MethodDefinition Identifier : IdentifierName but not ReservedWord It is a Syntax Error if this phrase is contained in strict mode code and the StringValue of IdentifierName is: "implements", "interface", "let", "package", "private", "protected", "public", "static", or "yield". negative: phase: parse type: SyntaxError --- 913
identifier-shorthand-package-invalid-strict-mode.js --- description: > Object literal shorthands are limited to valid identifier references. Future Reserved Words are disallowed in Strict Mode. (package) esid: sec-object-initializer flags: [noStrict] info: | PropertyDefinition: IdentifierReference CoverInitializedName PropertyName : AssignmentExpression MethodDefinition Identifier : IdentifierName but not ReservedWord It is a Syntax Error if this phrase is contained in strict mode code and the StringValue of IdentifierName is: "implements", "interface", "let", "package", "private", "protected", "public", "static", or "yield". negative: phase: parse type: SyntaxError --- 925
identifier-shorthand-private-invalid-strict-mode.js --- description: > Object literal shorthands are limited to valid identifier references. Future Reserved Words are disallowed in Strict Mode. (private) esid: sec-object-initializer flags: [noStrict] info: | PropertyDefinition: IdentifierReference CoverInitializedName PropertyName : AssignmentExpression MethodDefinition Identifier : IdentifierName but not ReservedWord It is a Syntax Error if this phrase is contained in strict mode code and the StringValue of IdentifierName is: "implements", "interface", "let", "package", "private", "protected", "public", "static", or "yield". negative: phase: parse type: SyntaxError --- 924
identifier-shorthand-protected-invalid-strict-mode.js --- description: > Object literal shorthands are limited to valid identifier references. Future Reserved Words are disallowed in Strict Mode. (protected) esid: sec-object-initializer flags: [noStrict] info: | PropertyDefinition: IdentifierReference CoverInitializedName PropertyName : AssignmentExpression MethodDefinition Identifier : IdentifierName but not ReservedWord It is a Syntax Error if this phrase is contained in strict mode code and the StringValue of IdentifierName is: "implements", "interface", "let", "package", "private", "protected", "public", "static", or "yield". negative: phase: parse type: SyntaxError --- 931
identifier-shorthand-public-invalid-strict-mode.js --- description: > Object literal shorthands are limited to valid identifier references. Future Reserved Words are disallowed in Strict Mode. (public) esid: sec-object-initializer flags: [noStrict] info: | PropertyDefinition: IdentifierReference CoverInitializedName PropertyName : AssignmentExpression MethodDefinition Identifier : IdentifierName but not ReservedWord It is a Syntax Error if this phrase is contained in strict mode code and the StringValue of IdentifierName is: "implements", "interface", "let", "package", "private", "protected", "public", "static", or "yield". negative: phase: parse type: SyntaxError --- 922
identifier-shorthand-static-init-await-invalid.js --- esid: sec-class-definitions-static-semantics-early-errors description: IdentifierReference may not be `await` within class static blocks info: | IdentifierReference : Identifier - It is a Syntax Error if the code matched by this production is nested, directly or indirectly (but not crossing function or static initialization block boundaries), within a ClassStaticBlock and the StringValue of Identifier is "arguments" or "await". negative: phase: parse type: SyntaxError features: [class-static-block] --- 771
identifier-shorthand-static-init-await-valid.js --- esid: sec-class-definitions-static-semantics-early-errors description: The `await` keyword is interpreted as an identifier within the body of arrow functions info: | ClassStaticBlockBody : ClassStaticBlockStatementList [...] - It is a Syntax Error if ContainsAwait of ClassStaticBlockStatementList is true. features: [class-static-block] --- 570
identifier-shorthand-static-invalid-strict-mode.js --- description: > Object literal shorthands are limited to valid identifier references. Future Reserved Words are disallowed in Strict Mode. (static) esid: sec-object-initializer flags: [noStrict] info: | PropertyDefinition: IdentifierReference CoverInitializedName PropertyName : AssignmentExpression MethodDefinition Identifier : IdentifierName but not ReservedWord It is a Syntax Error if this phrase is contained in strict mode code and the StringValue of IdentifierName is: "implements", "interface", "let", "package", "private", "protected", "public", "static", or "yield". negative: phase: parse type: SyntaxError --- 922
identifier-shorthand-yield-invalid-strict-mode.js --- description: > Object literal shorthands are limited to valid identifier references. Future Reserved Words are disallowed in Strict Mode. (yield) esid: sec-object-initializer flags: [noStrict] info: | PropertyDefinition: IdentifierReference CoverInitializedName PropertyName : AssignmentExpression MethodDefinition Identifier : IdentifierName but not ReservedWord It is a Syntax Error if this phrase is contained in strict mode code and the StringValue of IdentifierName is: "implements", "interface", "let", "package", "private", "protected", "public", "static", or "yield". negative: phase: parse type: SyntaxError --- 919
let-non-strict-access.js --- es6id: 12.2.5 description: > In non-strict mode, let is a valid Identifier. flags: [noStrict] --- 373
let-non-strict-syntax.js --- es6id: 12.2.5 description: > In non-strict mode, let is a valid Identifier. flags: [noStrict] --- 303
literal-property-name-bigint.js --- description: > BigInt in LiteralPropertyName must be valid and the property name must be the string representation of the numeric value. esid: prod-PropertyName info: | PropertyName[Yield, Await]: LiteralPropertyName ComputedPropertyName[?Yield, ?Await] LiteralPropertyName: IdentifierName StringLiteral NumericLiteral NumericLiteral: DecimalLiteral DecimalBigIntegerLiteral LiteralPropertyName: NumericLiteral 1. Let _nbr_ be the NumericValue of |NumericLiteral|. 1. Return ! ToString(_nbr_). features: [BigInt, class, destructuring-binding, let] --- 1544
method-definition
method.js --- es6id: 12.2.5 description: > super method calls in object literal method --- 852
not-defined.js --- es6id: 12.2.5 description: > Throws when IdentifierReference is undefined --- 322
object-spread-proxy-get-not-called-on-dontenum-keys.js --- esid: sec-object-initializer-runtime-semantics-propertydefinitionevaluation description: > Proxy's "get" trap is not invoked for non-enumerable keys. info: | PropertyDefinition : ... AssignmentExpression [...] 3. Let excludedNames be a new empty List. 4. Return ? CopyDataProperties(object, fromValue, excludedNames). CopyDataProperties ( target, source, excludedItems ) [...] 5. Let keys be ? from.[[OwnPropertyKeys]](). 6. For each element nextKey of keys in List order, do [...] c. If excluded is false, then i. Let desc be ? from.[[GetOwnProperty]](nextKey). ii. If desc is not undefined and desc.[[Enumerable]] is true, then 1. Let propValue be ? Get(from, nextKey). 2. Perform ! CreateDataPropertyOrThrow(target, nextKey, propValue). [[OwnPropertyKeys]] ( ) [...] 7. Let trapResultArray be ? Call(trap, handler, « target »). 8. Let trapResult be ? CreateListFromArrayLike(trapResultArray, « String, Symbol »). [...] 23. Return trapResult. features: [object-spread, Proxy, Symbol] includes: [compareArray.js, propertyHelper.js] --- 2650
object-spread-proxy-no-excluded-keys.js --- esid: sec-object-initializer-runtime-semantics-propertydefinitionevaluation description: > Proxy's "getOwnPropertyDescriptor" trap is invoked for all keys. info: | PropertyDefinition : ... AssignmentExpression [...] 3. Let excludedNames be a new empty List. 4. Return ? CopyDataProperties(object, fromValue, excludedNames). CopyDataProperties ( target, source, excludedItems ) [...] 5. Let keys be ? from.[[OwnPropertyKeys]](). 6. For each element nextKey of keys in List order, do [...] c. If excluded is false, then i. Let desc be ? from.[[GetOwnProperty]](nextKey). [[OwnPropertyKeys]] ( ) [...] 7. Let trapResultArray be ? Call(trap, handler, « target »). 8. Let trapResult be ? CreateListFromArrayLike(trapResultArray, « String, Symbol »). [...] 23. Return trapResult. features: [object-spread, Proxy, Symbol] includes: [compareArray.js] --- 1401
object-spread-proxy-ownkeys-returned-keys-order.js --- esid: sec-object-initializer-runtime-semantics-propertydefinitionevaluation description: > Proxy keys are iterated in order they were provided by "ownKeys" trap. info: | PropertyDefinition : ... AssignmentExpression [...] 3. Let excludedNames be a new empty List. 4. Return ? CopyDataProperties(object, fromValue, excludedNames). CopyDataProperties ( target, source, excludedItems ) [...] 5. Let keys be ? from.[[OwnPropertyKeys]](). 6. For each element nextKey of keys in List order, do [...] c. If excluded is false, then i. Let desc be ? from.[[GetOwnProperty]](nextKey). [[OwnPropertyKeys]] ( ) [...] 7. Let trapResultArray be ? Call(trap, handler, « target »). 8. Let trapResult be ? CreateListFromArrayLike(trapResultArray, « String, Symbol »). [...] 23. Return trapResult. features: [object-spread, Proxy, Symbol] includes: [compareArray.js] --- 1366
prop-def-id-eval-error-2.js --- es6id: 12.2.5.9 description: > Errors thrown during IdentifierReference evaluation are forwarded to the runtime. flags: [noStrict] features: [Proxy] --- 490
prop-def-id-eval-error.js --- es6id: 12.2.5.9 description: > Errors thrown during IdentifierReference evaluation are forwarded to the runtime. flags: [noStrict] features: [Symbol, Symbol.unscopables] --- 520
prop-def-id-get-error.js --- es6id: 12.2.5.9 description: > Errors thrown during IdentifierReference value retrieval are forwarded to the runtime. --- 368
prop-def-id-valid.js --- es6id: 12.2.5.9 description: > When a valid IdentifierReference appears in an object initializer, a new data property is created. The property name is the string value of the identifier, the property value is the value of the identifier, and the property is enumerable, writable, and configurable. includes: [propertyHelper.js] --- 666
prop-def-invalid-async-prefix.js --- description: > async is not a valid prefix of an identifier reference esid: sec-object-initializer info: | PropertyDefinition: IdentifierReference CoverInitializedName PropertyName : AssignmentExpression MethodDefinition MethodDefinition: PropertyName ( UniqueFormalParameters ) { FunctionBody } AsyncMethod AsyncMethod: async [no LineTerminator here] PropertyName ( UniqueFormalParameters ) { AsyncFunctionBody } VariableDeclaration : BindingPattern Initializer 1. Let rhs be the result of evaluating Initializer. 2. Let rval be GetValue(rhs). 3. ReturnIfAbrupt(rval). 4. Return the result of performing BindingInitialization for BindingPattern passing rval and undefined as arguments. negative: phase: parse type: SyntaxError --- 1046
prop-def-invalid-star-prefix.js --- description: > is not a valid prefix of an identifier reference esid: sec-object-initializer info: | PropertyDefinition: IdentifierReference CoverInitializedName PropertyName : AssignmentExpression MethodDefinition negative: phase: parse type: SyntaxError --- 505
prop-dup-data-data.js --- info: | Refer 11.1.5; The production PropertyNameAndValueList : PropertyNameAndValueList , PropertyAssignment 4. If previous is not undefined then throw a SyntaxError exception if any of the following conditions are true a. This production is contained in strict code and IsDataDescriptor(previous) is true and IsDataDescriptor(propId.descriptor) is true es5id: 11.1.5_4-4-a-2 description: > Object literal - Duplicate data property name allowed if not in strict mode --- 698
prop-dup-data-set.js --- es5id: 11.1.5_4-4-b-2 description: > Object literal - No SyntaxError if a data property definition is followed by set accessor definition with the same name --- 372
prop-dup-get-data.js --- es5id: 11.1.5_4-4-c-1 description: > Object literal - No SyntaxError if a get accessor property definition is followed by a data property definition with the same name --- 382
prop-dup-get-get.js --- es5id: 11.1.5_4-4-d-1 description: Object literal - No SyntaxError for duplicate property name (get,get) --- 317
prop-dup-get-set-get.js --- es5id: 11.1.5_4-4-d-3 description: > Object literal - No SyntaxError for duplicate property name (get,set,get) --- 350
prop-dup-set-data.js --- es5id: 11.1.5_4-4-c-2 description: > Object literal - No SyntaxError if a set accessor property definition is followed by a data property definition with the same name --- 383
prop-dup-set-get-set.js --- es5id: 11.1.5_4-4-d-4 description: > Object literal - No SyntaxError for duplicate property name (set,get,set) --- 354
prop-dup-set-set.js --- es5id: 11.1.5_4-4-d-2 description: Object literal - No SyntaxError for duplicate property name (set,set) --- 324
properties-names-eval-arguments.js --- es6id: 12.2.5 description: > property names `eval` and `arguments` --- 446
property-name-yield.js --- description: > `yield` may be used as a literal property name in an object literal. es6id: 12.1.1 --- 298
S11.1.5_A1.1.js --- info: "Evaluate the production ObjectLiteral: { }" es5id: 11.1.5_A1.1 description: > Checking various properteis of the object defined with "var object = {}" --- 1011
S11.1.5_A1.2.js --- info: | Evaluate the production ObjectLiteral: { NumericLiteral : AssignmentExpression} es5id: 11.1.5_A1.2 description: > Checking various properteis and contents of the object defined with "var object = {1 : true}" --- 1167
S11.1.5_A1.3.js --- info: | Evaluate the production ObjectLiteral: { StringLiteral : AssignmentExpression} es5id: 11.1.5_A1.3 description: > Checking various properteis and contents of the object defined with "var object = {"x" : true}" --- 1178
S11.1.5_A1.4.js --- info: | Evaluate the production ObjectLiteral: { Identifier : AssignmentExpression} es5id: 11.1.5_A1.4 description: > Checking various properteis and contents of the object defined with "var object = {prop : true}" --- 1194
S11.1.5_A2.js --- info: | Evaluate the production ObjectLiteral: { PropertyName : AssignmentExpression } es5id: 11.1.5_A2 description: Creating property "prop" of various types(boolean, number and etc.) --- 2774
S11.1.5_A3.js --- info: "Evaluate the production ObjectLiteral: { PropertyNameAndValueList }" es5id: 11.1.5_A3 description: > Creating the object defined with "var object = {0 : 1, "1" : "x", o : {}}" --- 892
S11.1.5_A4.1.js --- info: The PropertyName is not really a BooleanLiteral es5id: 11.1.5_A4.1 description: "Checking if execution of \"var object = {true : 1}\" does not fail" --- 358
S11.1.5_A4.2.js --- info: The PropertyName is not really a nullLiteral es5id: 11.1.5_A4.2 description: "Checking if execution of \"var object = {null : true}\" does not fail" --- 361
S11.1.5_A4.3.js --- info: | The PropertyName is undefined, ToString(BooleanLiteral), ToString(nullLiteral) es5id: 11.1.5_A4.3 description: "Creating properties with following names: undefined, 'true', 'null'" --- 1034
scope-gen-meth-body-lex-distinct.js --- esid: sec-functiondeclarationinstantiation description: > Creation of new lexical environment (distinct from the variable environment) for the function body outside of strict mode info: | [...] 29. If strict is false, then a. Let lexEnv be NewDeclarativeEnvironment(varEnv). b. NOTE: Non-strict functions use a separate lexical Environment Record for top-level lexical declarations so that a direct eval can determine whether any var scoped declarations introduced by the eval code conflict with pre-existing top-level lexically scoped declarations. This is not needed for strict functions because a strict direct eval always places all declarations into a new Environment Record. [...] 18.2.1.3 Runtime Semantics: EvalDeclarationInstantiation [...] 5. If strict is false, then [...] b. Let thisLex be lexEnv. c. Assert: The following loop will terminate. d. Repeat while thisLex is not the same as varEnv, i. Let thisEnvRec be thisLex's EnvironmentRecord. ii. If thisEnvRec is not an object Environment Record, then 1. NOTE: The environment of with statements cannot contain any lexical declaration so it doesn't need to be checked for var/let hoisting conflicts. 2. For each name in varNames, do a. If thisEnvRec.HasBinding(name) is true, then i. Throw a SyntaxError exception. ii. NOTE: Annex B.3.5 defines alternate semantics for the above step. b. NOTE: A direct eval will not hoist var declaration over a like-named lexical declaration. iii. Let thisLex be thisLex's outer environment reference. flags: [noStrict] features: [generators, let] --- 2211
scope-gen-meth-param-elem-var-close.js --- esid: sec-functiondeclarationinstantiation description: > sloppy direct evals in params introduce vars info: | [...] 20. Else, a. NOTE: A separate Environment Record is needed to ensure that bindings created by direct eval calls in the formal parameter list are outside the environment where parameters are declared. b. Let calleeEnv be the LexicalEnvironment of calleeContext. c. Let env be NewDeclarativeEnvironment(calleeEnv). d. Let envRec be env's EnvironmentRecord. [...] flags: [noStrict] features: [generators] --- 1092
scope-gen-meth-param-elem-var-open.js --- esid: sec-functiondeclarationinstantiation description: > sloppy direct evals in params introduce vars info: | [...] 20. Else, a. NOTE: A separate Environment Record is needed to ensure that bindings created by direct eval calls in the formal parameter list are outside the environment where parameters are declared. b. Let calleeEnv be the LexicalEnvironment of calleeContext. c. Let env be NewDeclarativeEnvironment(calleeEnv). d. Let envRec be env's EnvironmentRecord. [...] flags: [noStrict] features: [generators] --- 995
scope-gen-meth-param-rest-elem-var-close.js --- esid: sec-functiondeclarationinstantiation description: > sloppy direct evals in params introduce vars info: | [...] 20. Else, a. NOTE: A separate Environment Record is needed to ensure that bindings created by direct eval calls in the formal parameter list are outside the environment where parameters are declared. b. Let calleeEnv be the LexicalEnvironment of calleeContext. c. Let env be NewDeclarativeEnvironment(calleeEnv). d. Let envRec be env's EnvironmentRecord. [...] flags: [noStrict] features: [generators] --- 1018
scope-gen-meth-param-rest-elem-var-open.js --- esid: sec-functiondeclarationinstantiation description: > sloppy direct evals in params introduce vars info: | [...] 20. Else, a. NOTE: A separate Environment Record is needed to ensure that bindings created by direct eval calls in the formal parameter list are outside the environment where parameters are declared. b. Let calleeEnv be the LexicalEnvironment of calleeContext. c. Let env be NewDeclarativeEnvironment(calleeEnv). d. Let envRec be env's EnvironmentRecord. [...] flags: [noStrict] features: [generators] --- 1000
scope-gen-meth-paramsbody-var-close.js --- esid: sec-functiondeclarationinstantiation description: > Disposal of variable environment for the function body info: | [...] 26. If hasParameterExpressions is false, then [...] 27. Else, a. NOTE A separate Environment Record is needed to ensure that closures created by expressions in the formal parameter list do not have visibility of declarations in the function body. b. Let varEnv be NewDeclarativeEnvironment(env). c. Let varEnvRec be varEnv's EnvironmentRecord. d. Set the VariableEnvironment of calleeContext to varEnv. e. Let instantiatedVarNames be a new empty List. [...] features: [generators] --- 1171
scope-gen-meth-paramsbody-var-open.js --- esid: sec-functiondeclarationinstantiation description: > Creation of new variable environment for the function body (as distinct from that for the function's parameters) info: | [...] 26. If hasParameterExpressions is false, then [...] 27. Else, a. NOTE A separate Environment Record is needed to ensure that closures created by expressions in the formal parameter list do not have visibility of declarations in the function body. b. Let varEnv be NewDeclarativeEnvironment(env). c. Let varEnvRec be varEnv's EnvironmentRecord. d. Set the VariableEnvironment of calleeContext to varEnv. e. Let instantiatedVarNames be a new empty List. [...] features: [generators] --- 1208
scope-getter-body-lex-distinc.js --- esid: sec-functiondeclarationinstantiation description: > Creation of new lexical environment (distinct from the variable environment) for the function body outside of strict mode info: | [...] 29. If strict is false, then a. Let lexEnv be NewDeclarativeEnvironment(varEnv). b. NOTE: Non-strict functions use a separate lexical Environment Record for top-level lexical declarations so that a direct eval can determine whether any var scoped declarations introduced by the eval code conflict with pre-existing top-level lexically scoped declarations. This is not needed for strict functions because a strict direct eval always places all declarations into a new Environment Record. [...] 18.2.1.3 Runtime Semantics: EvalDeclarationInstantiation [...] 5. If strict is false, then [...] b. Let thisLex be lexEnv. c. Assert: The following loop will terminate. d. Repeat while thisLex is not the same as varEnv, i. Let thisEnvRec be thisLex's EnvironmentRecord. ii. If thisEnvRec is not an object Environment Record, then 1. NOTE: The environment of with statements cannot contain any lexical declaration so it doesn't need to be checked for var/let hoisting conflicts. 2. For each name in varNames, do a. If thisEnvRec.HasBinding(name) is true, then i. Throw a SyntaxError exception. ii. NOTE: Annex B.3.5 defines alternate semantics for the above step. b. NOTE: A direct eval will not hoist var declaration over a like-named lexical declaration. iii. Let thisLex be thisLex's outer environment reference. flags: [noStrict] features: [let] --- 2176
scope-meth-body-lex-distinct.js --- esid: sec-functiondeclarationinstantiation description: > Creation of new lexical environment (distinct from the variable environment) for the function body outside of strict mode info: | [...] 29. If strict is false, then a. Let lexEnv be NewDeclarativeEnvironment(varEnv). b. NOTE: Non-strict functions use a separate lexical Environment Record for top-level lexical declarations so that a direct eval can determine whether any var scoped declarations introduced by the eval code conflict with pre-existing top-level lexically scoped declarations. This is not needed for strict functions because a strict direct eval always places all declarations into a new Environment Record. [...] 18.2.1.3 Runtime Semantics: EvalDeclarationInstantiation [...] 5. If strict is false, then [...] b. Let thisLex be lexEnv. c. Assert: The following loop will terminate. d. Repeat while thisLex is not the same as varEnv, i. Let thisEnvRec be thisLex's EnvironmentRecord. ii. If thisEnvRec is not an object Environment Record, then 1. NOTE: The environment of with statements cannot contain any lexical declaration so it doesn't need to be checked for var/let hoisting conflicts. 2. For each name in varNames, do a. If thisEnvRec.HasBinding(name) is true, then i. Throw a SyntaxError exception. ii. NOTE: Annex B.3.5 defines alternate semantics for the above step. b. NOTE: A direct eval will not hoist var declaration over a like-named lexical declaration. iii. Let thisLex be thisLex's outer environment reference. flags: [noStrict] features: [let] --- 2154
scope-meth-param-elem-var-close.js --- esid: sec-functiondeclarationinstantiation description: > sloppy direct evals in params introduce vars info: | [...] 20. Else, a. NOTE: A separate Environment Record is needed to ensure that bindings created by direct eval calls in the formal parameter list are outside the environment where parameters are declared. b. Let calleeEnv be the LexicalEnvironment of calleeContext. c. Let env be NewDeclarativeEnvironment(calleeEnv). d. Let envRec be env's EnvironmentRecord. [...] flags: [noStrict] --- 1061
scope-meth-param-elem-var-open.js --- esid: sec-functiondeclarationinstantiation description: > sloppy direct evals in params introduce vars info: | [...] 20. Else, a. NOTE: A separate Environment Record is needed to ensure that bindings created by direct eval calls in the formal parameter list are outside the environment where parameters are declared. b. Let calleeEnv be the LexicalEnvironment of calleeContext. c. Let env be NewDeclarativeEnvironment(calleeEnv). d. Let envRec be env's EnvironmentRecord. [...] flags: [noStrict] --- 964
scope-meth-param-rest-elem-var-close.js --- esid: sec-functiondeclarationinstantiation description: > sloppy direct evals in params introduce vars info: | [...] 20. Else, a. NOTE: A separate Environment Record is needed to ensure that bindings created by direct eval calls in the formal parameter list are outside the environment where parameters are declared. b. Let calleeEnv be the LexicalEnvironment of calleeContext. c. Let env be NewDeclarativeEnvironment(calleeEnv). d. Let envRec be env's EnvironmentRecord. [...] flags: [noStrict] --- 987
scope-meth-param-rest-elem-var-open.js --- esid: sec-functiondeclarationinstantiation description: > sloppy direct evals in params introduce vars info: | [...] 20. Else, a. NOTE: A separate Environment Record is needed to ensure that bindings created by direct eval calls in the formal parameter list are outside the environment where parameters are declared. b. Let calleeEnv be the LexicalEnvironment of calleeContext. c. Let env be NewDeclarativeEnvironment(calleeEnv). d. Let envRec be env's EnvironmentRecord. [...] flags: [noStrict] --- 969
scope-meth-paramsbody-var-close.js --- esid: sec-functiondeclarationinstantiation description: > Disposal of variable environment for the function body info: | [...] 26. If hasParameterExpressions is false, then [...] 27. Else, a. NOTE A separate Environment Record is needed to ensure that closures created by expressions in the formal parameter list do not have visibility of declarations in the function body. b. Let varEnv be NewDeclarativeEnvironment(env). c. Let varEnvRec be varEnv's EnvironmentRecord. d. Set the VariableEnvironment of calleeContext to varEnv. e. Let instantiatedVarNames be a new empty List. [...] --- 1140
scope-meth-paramsbody-var-open.js --- esid: sec-functiondeclarationinstantiation description: > Creation of new variable environment for the function body (as distinct from that for the function's parameters) info: | [...] 26. If hasParameterExpressions is false, then [...] 27. Else, a. NOTE A separate Environment Record is needed to ensure that closures created by expressions in the formal parameter list do not have visibility of declarations in the function body. b. Let varEnv be NewDeclarativeEnvironment(env). c. Let varEnvRec be varEnv's EnvironmentRecord. d. Set the VariableEnvironment of calleeContext to varEnv. e. Let instantiatedVarNames be a new empty List. [...] --- 1177
scope-setter-body-lex-distinc.js --- esid: sec-functiondeclarationinstantiation description: > Creation of new lexical environment (distinct from the variable environment) for the function body outside of strict mode info: | [...] 29. If strict is false, then a. Let lexEnv be NewDeclarativeEnvironment(varEnv). b. NOTE: Non-strict functions use a separate lexical Environment Record for top-level lexical declarations so that a direct eval can determine whether any var scoped declarations introduced by the eval code conflict with pre-existing top-level lexically scoped declarations. This is not needed for strict functions because a strict direct eval always places all declarations into a new Environment Record. [...] 18.2.1.3 Runtime Semantics: EvalDeclarationInstantiation [...] 5. If strict is false, then [...] b. Let thisLex be lexEnv. c. Assert: The following loop will terminate. d. Repeat while thisLex is not the same as varEnv, i. Let thisEnvRec be thisLex's EnvironmentRecord. ii. If thisEnvRec is not an object Environment Record, then 1. NOTE: The environment of with statements cannot contain any lexical declaration so it doesn't need to be checked for var/let hoisting conflicts. 2. For each name in varNames, do a. If thisEnvRec.HasBinding(name) is true, then i. Throw a SyntaxError exception. ii. NOTE: Annex B.3.5 defines alternate semantics for the above step. b. NOTE: A direct eval will not hoist var declaration over a like-named lexical declaration. iii. Let thisLex be thisLex's outer environment reference. flags: [noStrict] features: [let] --- 2184
scope-setter-paramsbody-var-close.js --- esid: sec-functiondeclarationinstantiation description: > Disposal of variable environment for the function body info: | [...] 26. If hasParameterExpressions is false, then [...] 27. Else, a. NOTE A separate Environment Record is needed to ensure that closures created by expressions in the formal parameter list do not have visibility of declarations in the function body. b. Let varEnv be NewDeclarativeEnvironment(env). c. Let varEnvRec be varEnv's EnvironmentRecord. d. Set the VariableEnvironment of calleeContext to varEnv. e. Let instantiatedVarNames be a new empty List. [...] --- 1149
scope-setter-paramsbody-var-open.js --- esid: sec-functiondeclarationinstantiation description: > Creation of new variable environment for the function body (as distinct from that for the function's parameters) info: | [...] 26. If hasParameterExpressions is false, then [...] 27. Else, a. NOTE A separate Environment Record is needed to ensure that closures created by expressions in the formal parameter list do not have visibility of declarations in the function body. b. Let varEnv be NewDeclarativeEnvironment(env). c. Let varEnvRec be varEnv's EnvironmentRecord. d. Set the VariableEnvironment of calleeContext to varEnv. e. Let instantiatedVarNames be a new empty List. [...] --- 1191
setter-body-strict-inside.js --- es5id: 11.1.5_7-2-2-s description: > Strict Mode - SyntaxError is thrown when an assignment to a reserved word is made in a strict FunctionBody of a PropertyAssignment negative: phase: parse type: SyntaxError flags: [noStrict] --- 508
setter-body-strict-outside-strict.js --- es5id: 11.1.5_7-2-1-s description: > Strict Mode - SyntaxError is thrown when an assignment to a reserved word is contained in strict code negative: phase: parse type: SyntaxError flags: [onlyStrict] --- 472
setter-length-dflt.js --- es6id: 14.1.6 description: > Default parameters' effect on function length info: | Function length is counted by the non initialized parameters in the left. 9.2.4 FunctionInitialize (F, kind, ParameterList, Body, Scope) [...] 2. Let len be the ExpectedArgumentCount of ParameterList. 3. Perform ! DefinePropertyOrThrow(F, "length", PropertyDescriptor{[[Value]]: len, [[Writable]]: false, [[Enumerable]]: false, [[Configurable]]: true}). [...] FormalsList : FormalParameter 1. If HasInitializer of FormalParameter is true return 0 2. Return 1. FormalsList : FormalsList , FormalParameter 1. Let count be the ExpectedArgumentCount of FormalsList. 2. If HasInitializer of FormalsList is true or HasInitializer of FormalParameter is true, return count. 3. Return count+1. features: [default-parameters] includes: [propertyHelper.js] --- 1241
setter-param-arguments-strict-inside.js --- es5id: 11.1.5-4-s description: > Strict Mode - SyntaxError is thrown when 'arguments' occurs as the Identifier in a PropertySetParameterList of a PropertyAssignment if its FunctionBody is strict code negative: phase: parse type: SyntaxError flags: [noStrict] --- 528
setter-param-arguments-strict-outside-strict.js --- es5id: 11.1.5-2-s description: > Strict Mode - SyntaxError is thrown when 'arguments' occurs as the Identifier in a PropertySetParameterList of a PropertyAssignment that is contained in strict code negative: phase: parse type: SyntaxError flags: [onlyStrict] --- 519
setter-param-eval-strict-inside.js --- es5id: 11.1.5-3-s description: > Strict Mode - SyntaxError is thrown when 'evals' occurs as the Identifier in a PropertySetParameterList of a PropertyAssignment if its FunctionBody is strict code negative: phase: parse type: SyntaxError flags: [noStrict] --- 519
setter-param-eval-strict-outside-strict.js --- es5id: 11.1.5-1-s description: > Strict Mode - SyntaxError is thrown when 'eval' occurs as the Identifier in a PropertySetParameterList of a PropertyAssignment that is contained in strict code negative: phase: parse type: SyntaxError flags: [onlyStrict] --- 509
setter-prop-desc.js --- esid: sec-object-initializer-runtime-semantics-evaluation es6id: 12.2.6.8 description: Property descriptor of "set" accessor methods info: | ObjectLiteral: { PropertyDefinitionList } { PropertyDefinitionList , } 1. Let obj be ObjectCreate(%ObjectPrototype%). 2. Let status be the result of performing PropertyDefinitionEvaluation of PropertyDefinitionList with arguments obj and true. 3. ReturnIfAbrupt(status). 4. Return obj. 14.3.8 Runtime Semantics: PropertyDefinitionEvaluation MethodDefinition : set PropertyName ( PropertySetParameterList ) { FunctionBody } [...] 8. Let desc be the PropertyDescriptor{[[Set]]: closure, [[Enumerable]]: enumerable, [[Configurable]]: true}. [...] includes: [propertyHelper.js] --- 1349
setter-super-prop.js --- es6id: 12.2.5 description: > super method calls in object literal setters --- 772
shell.js 0
yield-non-strict-access.js --- es6id: 12.2.5 description: > In non-strict mode, yield is a valid Identifier. flags: [noStrict] --- 383
yield-non-strict-syntax.js --- es6id: 12.2.5 description: > In non-strict mode, yield is a valid Identifier. flags: [noStrict] --- 309