Name Description Size
8.12.5-3-b_1.js --- es5id: 8.12.5-3-b_1 description: > Changing the value of a data property should not affect it's non-value property descriptor attributes. --- 1005
8.12.5-3-b_2.js --- es5id: 8.12.5-3-b_2 description: > Changing the value of a data property should not affect it's non-value property descriptor attributes. --- 1035
8.12.5-5-b_1.js --- es5id: 8.12.5-5-b_1 description: > Changing the value of an accessor property should not affect it's property descriptor attributes. --- 935
8.14.4-8-b_1.js --- es5id: 8.14.4-8-b_1 description: Non-writable property on a prototype written to. flags: [noStrict] --- 549
8.14.4-8-b_2-strict.js --- es5id: 8.14.4-8-b_2 description: Non-writable property on a prototype written to in strict mode. flags: [onlyStrict] --- 547
11.13.1-1-6-s.js --- info: PutValue operates only on references (see step 3.a). es5id: 11.13.1-1-6-s description: > simple assignment throws ReferenceError if LeftHandSide is an unresolvable reference (base obj undefined) --- 488
11.13.1-1-s-strict.js --- es5id: 11.13.1-1-s description: > Strict Mode - TypeError is thrown if The LeftHandSide is a reference to a data property with the attribute value {[[Writable]]:false} under strict mode flags: [onlyStrict] --- 708
11.13.1-2-s-strict.js --- es5id: 11.13.1-2-s description: > Strict Mode - TypeError is thrown if The LeftHandSide is a reference to an accessor property with the attribute value {[[Set]]:undefined} under strict mode flags: [onlyStrict] --- 761
11.13.1-3-s-strict.js --- es5id: 11.13.1-3-s description: > Strict Mode - TypeError is thrown if The LeftHandSide is a reference to a non-existent property of an object whose [[Extensible]] internal property has the value false under strict mode flags: [onlyStrict] --- 570
11.13.1-4-1.js --- info: PutValue operates only on references (see step 3.b). es5id: 11.13.1-4-1 description: > simple assignment creates property on the global object if LeftHandSide is an unresolvable reference flags: [noStrict] --- 810
11.13.1-4-3-s-strict.js --- es5id: 11.13.1-4-3-s description: > simple assignment throws TypeError if LeftHandSide is a readonly property in strict mode (Global.Infinity) flags: [onlyStrict] --- 445
11.13.1-4-6-s-strict.js --- es5id: 11.13.1-4-6-s description: > simple assignment throws TypeError if LeftHandSide is a readonly property in strict mode (Function.length) flags: [onlyStrict] --- 425
11.13.1-4-14-s-strict.js --- es5id: 11.13.1-4-14-s description: > simple assignment throws TypeError if LeftHandSide is a readonly property in strict mode (Number.MAX_VALUE) flags: [onlyStrict] --- 428
11.13.1-4-27-s-strict.js --- es5id: 11.13.1-4-27-s description: > simple assignment throws TypeError if LeftHandSide is a readonly property in strict mode (Global.undefined) flags: [onlyStrict] --- 448
11.13.1-4-28gs-strict.js --- es5id: 11.13.1-4-28gs description: > Strict Mode - TypeError is thrown if the identifier 'Math.PI' appears as the LeftHandSideExpression of simple assignment(=) flags: [onlyStrict] --- 432
11.13.1-4-29gs-strict.js --- es5id: 11.13.1-4-29gs description: > Strict Mode - TypeError is thrown if the identifier 'Math.PI' appears as the LeftHandSideExpression of simple assignment(=) flags: [onlyStrict] --- 432
assignment-operator-calls-putvalue-lref--rval--1.js --- esid: sec-object-environment-records-setmutablebinding-n-v-s description: > Assignment Operator calls PutValue(lref, rval) (formerly S11.13.1_A5_T5) info: | The concrete Environment Record method SetMutableBinding for object Environment Records attempts to set the value of the Environment Record's associated binding object's property whose name is the value of the argument N to the value of argument V. A property named N normally already exists but if it does not or is not currently writable, error handling is determined by the value of the Boolean argument S. Let stillExists be ? HasProperty(bindings, N). If stillExists is false and S is true, throw a ReferenceError exception. flags: [noStrict] --- 1223
assignment-operator-calls-putvalue-lref--rval-.js --- esid: sec-object-environment-records-setmutablebinding-n-v-s description: > Assignment Operator calls PutValue(lref, rval) (formerly S11.13.1_A5_T4) info: | The concrete Environment Record method SetMutableBinding for object Environment Records attempts to set the value of the Environment Record's associated binding object's property whose name is the value of the argument N to the value of argument V. A property named N normally already exists but if it does not or is not currently writable, error handling is determined by the value of the Boolean argument S. Let stillExists be ? HasProperty(bindings, N). If stillExists is false and S is true, throw a ReferenceError exception. flags: [noStrict] --- 1159
browser.js 0
destructuring
dstr
fn-name-arrow.js --- es6id: 12.14.4 description: Assignment of function `name` attribute (ArrowFunction) info: | AssignmentExpression[In, Yield] : LeftHandSideExpression[?Yield] = AssignmentExpression[?In, ?Yield] 1. If LeftHandSideExpression is neither an ObjectLiteral nor an ArrayLiteral, then [...] e. If IsAnonymousFunctionDefinition(AssignmentExpression) and IsIdentifierRef of LeftHandSideExpression are both true, then i. Let hasNameProperty be HasOwnProperty(rval, "name"). ii. ReturnIfAbrupt(hasNameProperty). iii. If hasNameProperty is false, perform SetFunctionName(rval, GetReferencedName(lref)). includes: [propertyHelper.js] --- 1034
fn-name-class.js --- es6id: 12.14.4 description: Assignment of function `name` attribute (ClassExpression) info: | AssignmentExpression[In, Yield] : LeftHandSideExpression[?Yield] = AssignmentExpression[?In, ?Yield] 1. If LeftHandSideExpression is neither an ObjectLiteral nor an ArrayLiteral, then [...] e. If IsAnonymousFunctionDefinition(AssignmentExpression) and IsIdentifierRef of LeftHandSideExpression are both true, then i. Let hasNameProperty be HasOwnProperty(rval, "name"). ii. ReturnIfAbrupt(hasNameProperty). iii. If hasNameProperty is false, perform SetFunctionName(rval, GetReferencedName(lref)). includes: [propertyHelper.js] features: [class] --- 1197
fn-name-cover.js --- es6id: 12.14.4 description: > Assignment of function `name` attribute (CoverParenthesizedExpression) info: | AssignmentExpression[In, Yield] : LeftHandSideExpression[?Yield] = AssignmentExpression[?In, ?Yield] 1. If LeftHandSideExpression is neither an ObjectLiteral nor an ArrayLiteral, then [...] e. If IsAnonymousFunctionDefinition(AssignmentExpression) and IsIdentifierRef of LeftHandSideExpression are both true, then i. Let hasNameProperty be HasOwnProperty(rval, "name"). ii. ReturnIfAbrupt(hasNameProperty). iii. If hasNameProperty is false, perform SetFunctionName(rval, GetReferencedName(lref)). includes: [propertyHelper.js] --- 1134
fn-name-fn.js --- es6id: 12.14.4 description: Assignment of function `name` attribute (FunctionExpression) info: | AssignmentExpression[In, Yield] : LeftHandSideExpression[?Yield] = AssignmentExpression[?In, ?Yield] 1. If LeftHandSideExpression is neither an ObjectLiteral nor an ArrayLiteral, then [...] e. If IsAnonymousFunctionDefinition(AssignmentExpression) and IsIdentifierRef of LeftHandSideExpression are both true, then i. Let hasNameProperty be HasOwnProperty(rval, "name"). ii. ReturnIfAbrupt(hasNameProperty). iii. If hasNameProperty is false, perform SetFunctionName(rval, GetReferencedName(lref)). includes: [propertyHelper.js] --- 1089
fn-name-gen.js --- es6id: 12.14.4 description: Assignment of function `name` attribute (GeneratorExpression) info: | AssignmentExpression[In, Yield] : LeftHandSideExpression[?Yield] = AssignmentExpression[?In, ?Yield] 1. If LeftHandSideExpression is neither an ObjectLiteral nor an ArrayLiteral, then [...] e. If IsAnonymousFunctionDefinition(AssignmentExpression) and IsIdentifierRef of LeftHandSideExpression are both true, then i. Let hasNameProperty be HasOwnProperty(rval, "name"). ii. ReturnIfAbrupt(hasNameProperty). iii. If hasNameProperty is false, perform SetFunctionName(rval, GetReferencedName(lref)). includes: [propertyHelper.js] features: [generators] --- 1123
fn-name-lhs-cover.js --- esid: sec-assignment-operators-runtime-semantics-evaluation description: Left-hand side as a CoverParenthesizedExpression info: | AssignmentExpression[In, Yield, Await] : LeftHandSideExpression[?Yield, ?Await] = AssignmentExpression[?In, ?Yield, ?Await] 1. If LeftHandSideExpression is neither an ObjectLiteral nor an ArrayLiteral, then [...] c. If IsAnonymousFunctionDefinition(AssignmentExpression) and IsIdentifierRef of LeftHandSideExpression are both true, then i. Let rval be NamedEvaluation of AssignmentExpression with argument GetReferencedName(lref). includes: [propertyHelper.js] --- 969
fn-name-lhs-member.js --- esid: sec-assignment-operators-runtime-semantics-evaluation description: Left-hand side as a MemberExpression info: | AssignmentExpression[In, Yield, Await] : LeftHandSideExpression[?Yield, ?Await] = AssignmentExpression[?In, ?Yield, ?Await] 1. If LeftHandSideExpression is neither an ObjectLiteral nor an ArrayLiteral, then [...] c. If IsAnonymousFunctionDefinition(AssignmentExpression) and IsIdentifierRef of LeftHandSideExpression are both true, then i. Let rval be NamedEvaluation of AssignmentExpression with argument GetReferencedName(lref). includes: [propertyHelper.js] --- 967
id-arguments-strict-strict.js --- es5id: 11.13.1-4-30-s description: > Strict Mode - SyntaxError is thrown if the identifier 'arguments' appears as the LeftHandSideExpression (PrimaryExpression) of simple assignment(=). negative: phase: parse type: SyntaxError flags: [onlyStrict] --- 485
id-eval-strict-strict.js --- es5id: 11.13.1-4-30-s description: > Strict Mode - SyntaxError is thrown if the identifier 'eval' appears as the LeftHandSideExpression (PrimaryExpression) of simple assignment(=). negative: phase: parse type: SyntaxError flags: [onlyStrict] --- 475
line-terminator.js --- description: > White Space between LeftHandSideExpression and "=" or between "=" and AssignmentExpression is allowed es5id: 11.13.1_A1 --- 414
member-expr-ident-name-break-escaped.js --- description: break is a valid identifier name, using escape (MemberExpression IdentifierName) esid: prod-PropertyDefinition flags: [generated] info: | MemberExpression: ... MemberExpression . IdentifierName Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 618
member-expr-ident-name-case-escaped.js --- description: case is a valid identifier name, using escape (MemberExpression IdentifierName) esid: prod-PropertyDefinition flags: [generated] info: | MemberExpression: ... MemberExpression . IdentifierName Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 614
member-expr-ident-name-catch-escaped.js --- description: catch is a valid identifier name, using escape (MemberExpression IdentifierName) esid: prod-PropertyDefinition flags: [generated] info: | MemberExpression: ... MemberExpression . IdentifierName Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 618
member-expr-ident-name-class-escaped.js --- description: class is a valid identifier name, using escape (MemberExpression IdentifierName) esid: prod-PropertyDefinition flags: [generated] info: | MemberExpression: ... MemberExpression . IdentifierName Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 618
member-expr-ident-name-const-escaped.js --- description: const is a valid identifier name, using escape (MemberExpression IdentifierName) esid: prod-PropertyDefinition flags: [generated] info: | MemberExpression: ... MemberExpression . IdentifierName Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 618
member-expr-ident-name-continue-escaped.js --- description: continue is a valid identifier name, using escape (MemberExpression IdentifierName) esid: prod-PropertyDefinition flags: [generated] info: | MemberExpression: ... MemberExpression . IdentifierName Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 630
member-expr-ident-name-debugger-escaped.js --- description: debugger is a valid identifier name, using escape (MemberExpression IdentifierName) esid: prod-PropertyDefinition flags: [generated] info: | MemberExpression: ... MemberExpression . IdentifierName Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 630
member-expr-ident-name-default-escaped-ext.js --- description: default is a valid identifier name, using extended escape (MemberExpression IdentifierName) esid: prod-PropertyDefinition flags: [generated] info: | MemberExpression: ... MemberExpression . IdentifierName Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 639
member-expr-ident-name-default-escaped.js --- description: default is a valid identifier name, using escape (MemberExpression IdentifierName) esid: prod-PropertyDefinition flags: [generated] info: | MemberExpression: ... MemberExpression . IdentifierName Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 626
member-expr-ident-name-default.js --- description: default is a valid identifier name (MemberExpression IdentifierName) esid: prod-PropertyDefinition flags: [generated] info: | MemberExpression: ... MemberExpression . IdentifierName Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 599
member-expr-ident-name-delete-escaped.js --- description: delete is a valid identifier name, using escape (MemberExpression IdentifierName) esid: prod-PropertyDefinition flags: [generated] info: | MemberExpression: ... MemberExpression . IdentifierName Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 622
member-expr-ident-name-do-escaped.js --- description: do is a valid identifier name, using escape (MemberExpression IdentifierName) esid: prod-PropertyDefinition flags: [generated] info: | MemberExpression: ... MemberExpression . IdentifierName Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 606
member-expr-ident-name-else-escaped.js --- description: else is a valid identifier name, using escape (MemberExpression IdentifierName) esid: prod-PropertyDefinition flags: [generated] info: | MemberExpression: ... MemberExpression . IdentifierName Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 614
member-expr-ident-name-enum-escaped.js --- description: enum is a valid identifier name, using escape (MemberExpression IdentifierName) esid: prod-PropertyDefinition flags: [generated] info: | MemberExpression: ... MemberExpression . IdentifierName Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 614
member-expr-ident-name-export-escaped.js --- description: export is a valid identifier name, using escape (MemberExpression IdentifierName) esid: prod-PropertyDefinition flags: [generated] info: | MemberExpression: ... MemberExpression . IdentifierName Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 622
member-expr-ident-name-extends-escaped-ext.js --- description: extends is a valid identifier name, using extended escape (MemberExpression IdentifierName) esid: prod-PropertyDefinition flags: [generated] info: | MemberExpression: ... MemberExpression . IdentifierName Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 639
member-expr-ident-name-extends-escaped.js --- description: extends is a valid identifier name, using escape (MemberExpression IdentifierName) esid: prod-PropertyDefinition flags: [generated] info: | MemberExpression: ... MemberExpression . IdentifierName Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 626
member-expr-ident-name-extends.js --- description: extends is a valid identifier name (MemberExpression IdentifierName) esid: prod-PropertyDefinition flags: [generated] info: | MemberExpression: ... MemberExpression . IdentifierName Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 599
member-expr-ident-name-finally-escaped.js --- description: finally is a valid identifier name, using escape (MemberExpression IdentifierName) esid: prod-PropertyDefinition flags: [generated] info: | MemberExpression: ... MemberExpression . IdentifierName Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 626
member-expr-ident-name-for-escaped.js --- description: for is a valid identifier name, using escape (MemberExpression IdentifierName) esid: prod-PropertyDefinition flags: [generated] info: | MemberExpression: ... MemberExpression . IdentifierName Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 610
member-expr-ident-name-function-escaped.js --- description: function is a valid identifier name, using escape (MemberExpression IdentifierName) esid: prod-PropertyDefinition flags: [generated] info: | MemberExpression: ... MemberExpression . IdentifierName Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 630
member-expr-ident-name-if-escaped.js --- description: if is a valid identifier name, using escape (MemberExpression IdentifierName) esid: prod-PropertyDefinition flags: [generated] info: | MemberExpression: ... MemberExpression . IdentifierName Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 606
member-expr-ident-name-implements-escaped.js --- description: implements is a valid identifier name, using escape (MemberExpression IdentifierName) esid: prod-PropertyDefinition flags: [generated] info: | MemberExpression: ... MemberExpression . IdentifierName Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 652
member-expr-ident-name-import-escaped.js --- description: import is a valid identifier name, using escape (MemberExpression IdentifierName) esid: prod-PropertyDefinition flags: [generated] info: | MemberExpression: ... MemberExpression . IdentifierName Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 622
member-expr-ident-name-in-escaped.js --- description: in is a valid identifier name, using escape (MemberExpression IdentifierName) esid: prod-PropertyDefinition flags: [generated] info: | MemberExpression: ... MemberExpression . IdentifierName Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 606
member-expr-ident-name-instanceof-escaped.js --- description: instanceof is a valid identifier name, using escape (MemberExpression IdentifierName) esid: prod-PropertyDefinition flags: [generated] info: | MemberExpression: ... MemberExpression . IdentifierName Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 638
member-expr-ident-name-interface-escaped.js --- description: interface is a valid identifier name, using escape (MemberExpression IdentifierName) esid: prod-PropertyDefinition flags: [generated] info: | MemberExpression: ... MemberExpression . IdentifierName Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 648
member-expr-ident-name-let-escaped.js --- description: let is a valid identifier name, using escape (MemberExpression IdentifierName) esid: prod-PropertyDefinition flags: [generated] info: | MemberExpression: ... MemberExpression . IdentifierName Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 624
member-expr-ident-name-new-escaped.js --- description: new is a valid identifier name, using escape (MemberExpression IdentifierName) esid: prod-PropertyDefinition flags: [generated] info: | MemberExpression: ... MemberExpression . IdentifierName Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 610
member-expr-ident-name-package-escaped.js --- description: package is a valid identifier name, using escape (MemberExpression IdentifierName) esid: prod-PropertyDefinition flags: [generated] info: | MemberExpression: ... MemberExpression . IdentifierName Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 640
member-expr-ident-name-private-escaped.js --- description: private is a valid identifier name, using escape (MemberExpression IdentifierName) esid: prod-PropertyDefinition flags: [generated] info: | MemberExpression: ... MemberExpression . IdentifierName Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 640
member-expr-ident-name-protected-escaped.js --- description: protected is a valid identifier name, using escape (MemberExpression IdentifierName) esid: prod-PropertyDefinition flags: [generated] info: | MemberExpression: ... MemberExpression . IdentifierName Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 648
member-expr-ident-name-public-escaped.js --- description: public is a valid identifier name, using escape (MemberExpression IdentifierName) esid: prod-PropertyDefinition flags: [generated] info: | MemberExpression: ... MemberExpression . IdentifierName Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 636
member-expr-ident-name-return-escaped.js --- description: return is a valid identifier name, using escape (MemberExpression IdentifierName) esid: prod-PropertyDefinition flags: [generated] info: | MemberExpression: ... MemberExpression . IdentifierName Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 622
member-expr-ident-name-static-escaped.js --- description: static is a valid identifier name, using escape (MemberExpression IdentifierName) esid: prod-PropertyDefinition flags: [generated] info: | MemberExpression: ... MemberExpression . IdentifierName Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 636
member-expr-ident-name-super-escaped.js --- description: super is a valid identifier name, using escape (MemberExpression IdentifierName) esid: prod-PropertyDefinition flags: [generated] info: | MemberExpression: ... MemberExpression . IdentifierName Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 618
member-expr-ident-name-switch-escaped.js --- description: switch is a valid identifier name, using escape (MemberExpression IdentifierName) esid: prod-PropertyDefinition flags: [generated] info: | MemberExpression: ... MemberExpression . IdentifierName Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 622
member-expr-ident-name-this-escaped.js --- description: this is a valid identifier name, using escape (MemberExpression IdentifierName) esid: prod-PropertyDefinition flags: [generated] info: | MemberExpression: ... MemberExpression . IdentifierName Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 614
member-expr-ident-name-throw-escaped.js --- description: throw is a valid identifier name, using escape (MemberExpression IdentifierName) esid: prod-PropertyDefinition flags: [generated] info: | MemberExpression: ... MemberExpression . IdentifierName Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 618
member-expr-ident-name-try-escaped.js --- description: try is a valid identifier name, using escape (MemberExpression IdentifierName) esid: prod-PropertyDefinition flags: [generated] info: | MemberExpression: ... MemberExpression . IdentifierName Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 610
member-expr-ident-name-typeof-escaped.js --- description: typeof is a valid identifier name, using escape (MemberExpression IdentifierName) esid: prod-PropertyDefinition flags: [generated] info: | MemberExpression: ... MemberExpression . IdentifierName Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 622
member-expr-ident-name-var-escaped.js --- description: var is a valid identifier name, using escape (MemberExpression IdentifierName) esid: prod-PropertyDefinition flags: [generated] info: | MemberExpression: ... MemberExpression . IdentifierName Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 610
member-expr-ident-name-void-escaped.js --- description: void is a valid identifier name, using escape (MemberExpression IdentifierName) esid: prod-PropertyDefinition flags: [generated] info: | MemberExpression: ... MemberExpression . IdentifierName Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 614
member-expr-ident-name-while-escaped.js --- description: while is a valid identifier name, using escape (MemberExpression IdentifierName) esid: prod-PropertyDefinition flags: [generated] info: | MemberExpression: ... MemberExpression . IdentifierName Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 618
member-expr-ident-name-with-escaped.js --- description: with is a valid identifier name, using escape (MemberExpression IdentifierName) esid: prod-PropertyDefinition flags: [generated] info: | MemberExpression: ... MemberExpression . IdentifierName Reserved Words A reserved word is an IdentifierName that cannot be used as an Identifier. --- 614
non-simple-target.js --- esid: sec-assignment-operators-static-semantics-early-errors info: | It is an early Syntax Error if LeftHandSideExpression is neither an ObjectLiteral nor an ArrayLiteral and AssignmentTargetType of LeftHandSideExpression is invalid or strict. description: Assignment with non-simple target negative: phase: parse type: SyntaxError --- 551
S8.12.4_A1.js --- info: If the property has the ReadOnly attribute, [[CanPut]](P) return false es5id: 8.12.4_A1 description: Try put other value for Math.E property flags: [noStrict] --- 481
S8.12.5_A1.js --- info: | When the [[Put]] method of O is called with property P and value V, and If O doesn't have a property with name P, then creates a property with name P, set its value to V and give it empty attributes es5id: 8.12.5_A1 description: Put to not existent properties --- 1536
S8.12.5_A2.js --- info: | When the [[Put]] method of O is called with property P and value V, then set the value of the property to V. The attributes of the property are not changed es5id: 8.12.5_A2 description: Put to existent properties --- 1838
S11.13.1_A2.1_T1.js --- info: Operator x = y uses GetValue and PutValue es5id: 11.13.1_A2.1_T1 description: Either AssigmentExpression is not Reference or GetBase is not null --- 1315
S11.13.1_A2.1_T2.js --- info: Operator x = y uses GetValue and PutValue es5id: 11.13.1_A2.1_T2 description: If GetBase(AssigmentExpression) is null, throw ReferenceError --- 573
S11.13.1_A3.1.js --- info: Operator x = y PutValue(x, y) es5id: 11.13.1_A3.1 description: Checking Expression and Variable statements --- 486
S11.13.1_A3.2.js --- info: Operator x = y returns GetValue(y) es5id: 11.13.1_A3.2 description: Checking Expression and Variable statements --- 527
S11.13.1_A4_T1.js --- info: "AssignmentExpression : LeftHandSideExpression = AssignmentExpression" es5id: 11.13.1_A4_T1 description: Syntax check --- 452
S11.13.1_A4_T2.js --- info: "AssignmentExpression : LeftHandSideExpression = AssignmentExpression" es5id: 11.13.1_A4_T2 description: Syntax check if "x = x" throws ReferenceError --- 581
S11.13.1_A5_T1.js --- info: Assignment Operator calls PutValue(lref, rval) es5id: S11.13.1_A5_T1 description: > Evaluating LeftHandSideExpression lref returns Reference type; Reference base value is an environment record and environment record kind is object environment record. PutValue(lref, rval) uses the initially created Reference even if the environment binding is no longer present. Binding in surrounding function environment record is not changed. flags: [noStrict] --- 949
S11.13.1_A5_T2.js --- info: Assignment Operator calls PutValue(lref, rval) es5id: S11.13.1_A5_T2 description: > Evaluating LeftHandSideExpression lref returns Reference type; Reference base value is an environment record and environment record kind is object environment record. PutValue(lref, rval) uses the initially created Reference even if the environment binding is no longer present. Binding in surrounding global environment record is not changed. flags: [noStrict] --- 881
S11.13.1_A5_T3.js --- info: Assignment Operator calls PutValue(lref, rval) es5id: S11.13.1_A5_T3 description: > Evaluating LeftHandSideExpression lref returns Reference type; Reference base value is an environment record and environment record kind is object environment record. PutValue(lref, rval) uses the initially created Reference even if the environment binding is no longer present. Binding in surrounding object environment record is not changed. flags: [noStrict] --- 986
S11.13.1_A6_T1.js --- info: Assignment Operator calls PutValue(lref, rval) es5id: S11.13.1_A6_T1 description: > Evaluating LeftHandSideExpression lref returns Reference type; Reference base value is an environment record and environment record kind is declarative environment record. PutValue(lref, rval) uses the initially created Reference even if a more local binding is available. flags: [noStrict] --- 896
S11.13.1_A6_T2.js --- info: Assignment Operator calls PutValue(lref, rval) es5id: S11.13.1_A6_T2 description: > Evaluating LeftHandSideExpression lref returns Reference type; Reference base value is an environment record and environment record kind is declarative environment record. PutValue(lref, rval) uses the initially created Reference even if a more local binding is available. flags: [noStrict] --- 884
S11.13.1_A6_T3.js --- info: Assignment Operator calls PutValue(lref, rval) es5id: S11.13.1_A6_T3 description: > Evaluating LeftHandSideExpression lref returns Reference type; Reference base value is an environment record and environment record kind is declarative environment record. PutValue(lref, rval) uses the initially created Reference even if a more local binding is available. flags: [noStrict] --- 869
S11.13.1_A7_T4.js --- info: Assignment Operator evaluates its operands from left to right. description: > The left-hand side expression is evaluated before the right-hand side. Left-hand side expression is MemberExpression: base[prop]. ToPropertyKey(prop) is only called once. --- 659
shell.js 0
target-assignment-inside-function.js --- esid: sec-assignment-operators-static-semantics-early-errors description: Applied to assignment info: | AssignmentExpression : LeftHandSideExpression = AssignmentExpression - It is an early Syntax Error if LeftHandSideExpression is neither an ObjectLiteral nor an ArrayLiteral and AssignmentTargetType of LeftHandSideExpression is invalid or strict. negative: phase: parse type: SyntaxError --- 648
target-assignment.js --- esid: sec-assignment-operators-static-semantics-early-errors description: Applied to assignment info: | AssignmentExpression : LeftHandSideExpression = AssignmentExpression - It is an early Syntax Error if LeftHandSideExpression is neither an ObjectLiteral nor an ArrayLiteral and AssignmentTargetType of LeftHandSideExpression is invalid or strict. negative: phase: parse type: SyntaxError --- 627
target-boolean.js --- esid: sec-assignment-operators-static-semantics-early-errors description: > simple assignment throws SyntaxError if LeftHandSide is not a reference (boolean) info: | AssignmentExpression : LeftHandSideExpression = AssignmentExpression It is an early Syntax Error if LeftHandSideExpression is neither an ObjectLiteral nor an ArrayLiteral and AssignmentTargetType of LeftHandSideExpression is invalid or strict. negative: phase: parse type: SyntaxError --- 690
target-cover-id.js --- esid: sec-assignment-operators-static-semantics-early-errors es6id: 12.14.1 es5id: 11.1.6_A3_T5 description: Applied to a "covered" IdentifierReference info: | AssignmentExpression : LeftHandSideExpression = AssignmentExpression - It is an early Reference Error if LeftHandSideExpression is neither an ObjectLiteral nor an ArrayLiteral and IsValidSimpleAssignmentTarget of LeftHandSideExpression is false. Static Semantics: IsValidSimpleAssignmentTarget IdentifierReference : Identifier 1. If this IdentifierReference is contained in strict mode code and StringValue of Identifier is "eval" or "arguments", return false. 2. Return true. --- 875
target-cover-newtarget.js --- esid: sec-assignment-operators-static-semantics-early-errors description: Applied to a "covered" new.target info: | AssignmentExpression : LeftHandSideExpression = AssignmentExpression - It is an early Syntax Error if LeftHandSideExpression is neither an ObjectLiteral nor an ArrayLiteral and AssignmentTargetType of LeftHandSideExpression is invalid or strict. 12.3.1.6 Static Semantics: AssignmentTargetType NewTarget: new.target 1. Return invalid. negative: phase: parse type: SyntaxError features: [new.target] --- 782
target-cover-yieldexpr.js --- esid: sec-assignment-operators-static-semantics-early-errors description: Applied to a "covered" YieldExpression info: | AssignmentExpression : LeftHandSideExpression = AssignmentExpression - It is an early Syntax Error if LeftHandSideExpression is neither an ObjectLiteral nor an ArrayLiteral and AssignmentTargetType of LeftHandSideExpression is invalid or strict. 12.15.3 Static Semantics: IsValidSimpleAssignmentTarget AssignmentExpression: YieldExpression ArrowFunction AsyncArrowFunction LeftHandSideExpression = AssignmentExpression LeftHandSideExpression AssignmentOperator AssignmentExpression 1. Return invalid. features: [generators] negative: phase: parse type: SyntaxError --- 966
target-member-computed-reference-null.js --- esid: sec-assignment-operators description: Assignment Operator evaluates the value prior validating a MemberExpression's reference (null) info: | # 13.15.2 Runtime Semantics: Evaluation AssignmentExpression : LeftHandSideExpression = AssignmentExpression 1. If LeftHandSideExpression is neither an ObjectLiteral nor an ArrayLiteral, then a. Let lref be the result of evaluating LeftHandSideExpression. [...] e. Perform ? PutValue(lref, rval). # 6.2.4.5 PutValue ( V, W ) [...] 5. If IsPropertyReference(V) is true, then a. Let baseObj be ? ToObject(V.[[Base]]). --- 1297
target-member-computed-reference-undefined.js --- esid: sec-assignment-operators description: Assignment Operator evaluates the value prior validating a MemberExpression's reference (undefined) info: | # 13.15.2 Runtime Semantics: Evaluation AssignmentExpression : LeftHandSideExpression = AssignmentExpression 1. If LeftHandSideExpression is neither an ObjectLiteral nor an ArrayLiteral, then a. Let lref be the result of evaluating LeftHandSideExpression. [...] e. Perform ? PutValue(lref, rval). # 6.2.4.5 PutValue ( V, W ) [...] 5. If IsPropertyReference(V) is true, then a. Let baseObj be ? ToObject(V.[[Base]]). --- 1312
target-member-computed-reference.js --- esid: sec-assignment-operators description: Assignment Operator evaluates its operands from left to right (formerly S11.13.1_A7_T3) info: | The left-hand side expression is evaluated before the right-hand side. Left-hand side expression is MemberExpression: base[prop]. ToPropertyKey(prop) occurs after both sides are evaluated. --- 1104
target-member-identifier-reference-null.js --- esid: sec-assignment-operators description: Assignment Operator evaluates the value prior validating a MemberExpression's reference (null) info: | # 13.15.2 Runtime Semantics: Evaluation AssignmentExpression : LeftHandSideExpression = AssignmentExpression 1. If LeftHandSideExpression is neither an ObjectLiteral nor an ArrayLiteral, then a. Let lref be the result of evaluating LeftHandSideExpression. [...] e. Perform ? PutValue(lref, rval). # 6.2.4.5 PutValue ( V, W ) [...] 5. If IsPropertyReference(V) is true, then a. Let baseObj be ? ToObject(V.[[Base]]). --- 907
target-member-identifier-reference-undefined.js --- esid: sec-assignment-operators description: Assignment Operator evaluates the value prior validating a MemberExpression's reference (undefined) info: | # 13.15.2 Runtime Semantics: Evaluation AssignmentExpression : LeftHandSideExpression = AssignmentExpression 1. If LeftHandSideExpression is neither an ObjectLiteral nor an ArrayLiteral, then a. Let lref be the result of evaluating LeftHandSideExpression. [...] e. Perform ? PutValue(lref, rval). # 6.2.4.5 PutValue ( V, W ) [...] 5. If IsPropertyReference(V) is true, then a. Let baseObj be ? ToObject(V.[[Base]]). --- 917
target-newtarget.js --- esid: sec-assignment-operators-static-semantics-early-errors description: Applied to new.target info: | AssignmentExpression : LeftHandSideExpression = AssignmentExpression - It is an early Syntax Error if LeftHandSideExpression is neither an ObjectLiteral nor an ArrayLiteral and AssignmentTargetType of LeftHandSideExpression is invalid or strict. 12.3.1.6 Static Semantics: AssignmentTargetType NewTarget: new.target 1. Return invalid. negative: phase: parse type: SyntaxError features: [new.target] --- 768
target-null.js --- esid: sec-assignment-operators-static-semantics-early-errors description: > simple assignment throws SyntaxError if LeftHandSide is not a reference (null) info: | AssignmentExpression : LeftHandSideExpression = AssignmentExpression It is an early Syntax Error if LeftHandSideExpression is neither an ObjectLiteral nor an ArrayLiteral and AssignmentTargetType of LeftHandSideExpression is invalid or strict. negative: phase: parse type: SyntaxError --- 687
target-number.js --- esid: sec-assignment-operators-static-semantics-early-errors description: > simple assignment throws SyntaxError if LeftHandSide is not a reference (number) info: | AssignmentExpression : LeftHandSideExpression = AssignmentExpression It is an early Syntax Error if LeftHandSideExpression is neither an ObjectLiteral nor an ArrayLiteral and AssignmentTargetType of LeftHandSideExpression is invalid or strict. negative: phase: parse type: SyntaxError --- 687
target-string.js --- esid: sec-assignment-operators-static-semantics-early-errors description: > simple assignment throws SyntaxError if LeftHandSide is not a reference (string) info: | AssignmentExpression : LeftHandSideExpression = AssignmentExpression It is an early Syntax Error if LeftHandSideExpression is neither an ObjectLiteral nor an ArrayLiteral and AssignmentTargetType of LeftHandSideExpression is invalid or strict. negative: phase: parse type: SyntaxError --- 688
target-super-computed-reference-null.js --- esid: sec-assignment-operators description: Assignment Operator evaluates the value prior validating a SuperProperty's reference (null) info: | # 13.15.2 Runtime Semantics: Evaluation AssignmentExpression : LeftHandSideExpression = AssignmentExpression 1. If LeftHandSideExpression is neither an ObjectLiteral nor an ArrayLiteral, then a. Let lref be the result of evaluating LeftHandSideExpression. [...] e. Perform ? PutValue(lref, rval). # 6.2.4.5 PutValue ( V, W ) [...] 5. If IsPropertyReference(V) is true, then a. Let baseObj be ? ToObject(V.[[Base]]). --- 961
target-super-computed-reference.js --- esid: sec-assignment-operators description: Assignment Operator evaluates its operands from left to right info: | The left-hand side expression is evaluated before the right-hand side. Left-hand side expression is MemberExpression: super[prop]. ToPropertyKey(prop) occurs after both sides are evaluated. --- 1133
target-super-identifier-reference-null.js --- esid: sec-assignment-operators description: Assignment Operator evaluates the value prior validating a SuperProperty's reference (null) info: | # 13.15.2 Runtime Semantics: Evaluation AssignmentExpression : LeftHandSideExpression = AssignmentExpression 1. If LeftHandSideExpression is neither an ObjectLiteral nor an ArrayLiteral, then a. Let lref be the result of evaluating LeftHandSideExpression. [...] e. Perform ? PutValue(lref, rval). # 6.2.4.5 PutValue ( V, W ) [...] 5. If IsPropertyReference(V) is true, then a. Let baseObj be ? ToObject(V.[[Base]]). --- 960
white-space.js --- description: > White Space between LeftHandSideExpression and "=" or between "=" and AssignmentExpression is allowed es5id: 11.13.1_A1 --- 1470