11.13.2-1-s.js |
---
es5id: 11.13.2-1-s
description: >
ReferenceError is thrown if the LeftHandSideExpression of a Compound
Assignment operator(*=) evaluates to an unresolvable reference
--- |
431 |
11.13.2-2-s.js |
---
es5id: 11.13.2-2-s
description: >
Strict Mode - ReferenceError is thrown if the LeftHandSideExpression of a
Compound Assignment operator(/=) evaluates to an unresolvable reference
--- |
445 |
11.13.2-4-s.js |
---
es5id: 11.13.2-4-s
description: >
Strict Mode - ReferenceError is thrown if the
LeftHandSideExpression of a Compound Assignment operator(+=)
evaluates to an unresolvable reference
--- |
449 |
11.13.2-5-s.js |
---
es5id: 11.13.2-5-s
description: >
Strict Mode - ReferenceError is thrown if the
LeftHandSideExpression of a Compound Assignment operator(-=)
evaluates to an unresolvable reference
--- |
449 |
11.13.2-6-1gs-strict.js |
---
es5id: 11.13.2-6-1gs
description: >
Strict Mode - SyntaxError is throw if the identifier eval appears
as the LeftHandSideExpression of a Compound Assignment operator(*=)
negative:
phase: parse
type: SyntaxError
flags: [onlyStrict]
--- |
468 |
11.13.2-6-s.js |
---
es5id: 11.13.2-6-s
description: >
Strict Mode - ReferenceError is thrown if the
LeftHandSideExpression of a Compound Assignment operator(<<=)
evaluates to an unresolvable reference
--- |
451 |
11.13.2-8-s.js |
---
es5id: 11.13.2-8-s
description: >
Strict Mode - ReferenceError is thrown if the
LeftHandSideExpression of a Compound Assignment operator(>>>=)
evaluates to an unresolvable reference
--- |
453 |
11.13.2-9-s.js |
---
es5id: 11.13.2-9-s
description: >
Strict Mode - ReferenceError is thrown if the
LeftHandSideExpression of a Compound Assignment operator(&=)
evaluates to an unresolvable reference
--- |
449 |
11.13.2-10-s.js |
---
es5id: 11.13.2-10-s
description: >
ReferenceError is thrown if the LeftHandSideExpression of a Compound
Assignment operator(^=) evaluates to an unresolvable reference
--- |
433 |
11.13.2-11-s.js |
---
es5id: 11.13.2-11-s
description: >
ReferenceError is thrown if the LeftHandSideExpression of a Compound
Assignment operator(|=) evaluates to an unresolvable reference
--- |
433 |
11.13.2-12-s.js |
---
es5id: 11.13.2-12-s
description: >
ReferenceError isn't thrown if the LeftHandSideExpression of a Compound
Assignment operator(*=) evaluates to a resolvable reference
--- |
451 |
11.13.2-13-s.js |
---
es5id: 11.13.2-13-s
description: >
ReferenceError isn't thrown if the LeftHandSideExpression of a Compound
Assignment operator(/=) evaluates to a resolvable reference
--- |
450 |
11.13.2-14-s.js |
---
es5id: 11.13.2-14-s
description: >
ReferenceError isn't thrown if the LeftHandSideExpression of a Compound
Assignment operator(%=) evaluates to a resolvable reference
--- |
450 |
11.13.2-15-s.js |
---
es5id: 11.13.2-15-s
description: >
ReferenceError isn't thrown if the LeftHandSideExpression of a Compound
Assignment operator(>>>=) evaluates to a resolvable reference
--- |
454 |
11.13.2-16-s.js |
---
es5id: 11.13.2-16-s
description: >
ReferenceError isn't thrown if the LeftHandSideExpression of a Compound
Assignment operator(-=) evaluates to a resolvable reference
--- |
450 |
11.13.2-17-s.js |
---
es5id: 11.13.2-17-s
description: >
ReferenceError isn't thrown if the LeftHandSideExpression of a Compound
Assignment operator(<<=) evaluates to a resolvable reference
--- |
453 |
11.13.2-18-s.js |
---
es5id: 11.13.2-18-s
description: >
ReferenceError isn't thrown if the LeftHandSideExpression of a Compound
Assignment operator(>>=) evaluates to a resolvable reference
--- |
452 |
11.13.2-19-s.js |
---
es5id: 11.13.2-19-s
description: >
ReferenceError isn't thrown if the LeftHandSideExpression of a Compound
Assignment operator(+=) evaluates to a resolvable reference
--- |
452 |
11.13.2-20-s.js |
---
es5id: 11.13.2-20-s
description: >
ReferenceError isn't thrown if the LeftHandSideExpression of a Compound
Assignment operator(&=) evaluates to a resolvable reference
--- |
450 |
11.13.2-21-s.js |
---
es5id: 11.13.2-21-s
description: >
ReferenceError isn't thrown if the LeftHandSideExpression of a Compound
Assignment operator(^=) evaluates to a resolvable reference
--- |
450 |
11.13.2-22-s.js |
---
es5id: 11.13.2-22-s
description: >
ReferenceError isn't thrown if the LeftHandSideExpression of a Compound
Assignment operator(|=) evaluates to a resolvable reference
--- |
450 |
11.13.2-23-s-strict.js |
---
es5id: 11.13.2-23-s
description: >
Strict Mode - TypeError is thrown if The LeftHandSide of a
Compound Assignment operator(*=) is a reference to a data property
with the attribute value {[[Writable]]:false}
flags: [onlyStrict]
--- |
730 |
11.13.2-24-s-strict.js |
---
es5id: 11.13.2-24-s
description: >
Strict Mode - TypeError is thrown if The LeftHandSide of a
Compound Assignment operator(/=) is a reference to a data property
with the attribute value {[[Writable]]:false}
flags: [onlyStrict]
--- |
730 |
11.13.2-25-s-strict.js |
---
es5id: 11.13.2-25-s
description: >
Strict Mode - TypeError is thrown if The LeftHandSide of a
Compound Assignment operator(%=) is a reference to a data property
with the attribute value {[[Writable]]:false}
flags: [onlyStrict]
--- |
730 |
11.13.2-26-s-strict.js |
---
es5id: 11.13.2-26-s
description: >
Strict Mode - TypeError is thrown if The LeftHandSide of a
Compound Assignment operator(+=) is a reference to a data property
with the attribute value {[[Writable]]:false}
flags: [onlyStrict]
--- |
730 |
11.13.2-27-s-strict.js |
---
es5id: 11.13.2-27-s
description: >
Strict Mode - TypeError is thrown if The LeftHandSide of a
Compound Assignment operator(-=) is a reference to a data property
with the attribute value {[[Writable]]:false}
flags: [onlyStrict]
--- |
730 |
11.13.2-28-s-strict.js |
---
es5id: 11.13.2-28-s
description: >
Strict Mode - TypeError is thrown if The LeftHandSide of a
Compound Assignment operator(<<=) is a reference to a data
property with the attribute value {[[Writable]]:false}
flags: [onlyStrict]
--- |
732 |
11.13.2-29-s-strict.js |
---
es5id: 11.13.2-29-s
description: >
Strict Mode - TypeError is thrown if The LeftHandSide of a
Compound Assignment operator(>>=) is a reference to a data
property with the attribute value {[[Writable]]:false}
flags: [onlyStrict]
--- |
732 |
11.13.2-30-s-strict.js |
---
es5id: 11.13.2-30-s
description: >
Strict Mode - TypeError is thrown if The LeftHandSide of a
Compound Assignment operator(>>>=) is a reference to a data
property with the attribute value {[[Writable]]:false}
flags: [onlyStrict]
--- |
734 |
11.13.2-31-s-strict.js |
---
es5id: 11.13.2-31-s
description: >
Strict Mode - TypeError is thrown if The LeftHandSide of a
Compound Assignment operator(&=) is a reference to a data property
with the attribute value {[[Writable]]:false}
flags: [onlyStrict]
--- |
730 |
11.13.2-32-s-strict.js |
---
es5id: 11.13.2-32-s
description: >
Strict Mode - TypeError is thrown if The LeftHandSide of a
Compound Assignment operator(^=) is a reference to a data property
with the attribute value {[[Writable]]:false}
flags: [onlyStrict]
--- |
730 |
11.13.2-33-s-strict.js |
---
es5id: 11.13.2-33-s
description: >
Strict Mode - TypeError is thrown if The LeftHandSide of a
Compound Assignment operator(|=) is a reference to a data property
with the attribute value {[[Writable]]:false}
flags: [onlyStrict]
--- |
730 |
11.13.2-34-s-strict.js |
---
es5id: 11.13.2-34-s
description: >
Strict Mode - TypeError is thrown if The LeftHandSide of a
Compound Assignment operator(*=) is a reference to an accessor
property with the attribute value {[[Set]]:undefined}
flags: [onlyStrict]
--- |
783 |
11.13.2-35-s-strict.js |
---
es5id: 11.13.2-35-s
description: >
Strict Mode - TypeError is thrown if The LeftHandSide of a
Compound Assignment operator(/=) is a reference to an accessor
property with the attribute value {[[Set]]:undefined}
flags: [onlyStrict]
--- |
783 |
11.13.2-36-s-strict.js |
---
es5id: 11.13.2-36-s
description: >
Strict Mode - TypeError is thrown if The LeftHandSide of a
Compound Assignment operator(%=) is a reference to an accessor
property with the attribute value {[[Set]]:undefined}
flags: [onlyStrict]
--- |
783 |
11.13.2-37-s-strict.js |
---
es5id: 11.13.2-37-s
description: >
Strict Mode - TypeError is thrown if The LeftHandSide of a
Compound Assignment operator(+=) is a reference to an accessor
property with the attribute value {[[Set]]:undefined}
flags: [onlyStrict]
--- |
783 |
11.13.2-38-s-strict.js |
---
es5id: 11.13.2-38-s
description: >
Strict Mode - TypeError is thrown if The LeftHandSide of a
Compound Assignment operator(-=) is a reference to an accessor
property with the attribute value {[[Set]]:undefined}
flags: [onlyStrict]
--- |
783 |
11.13.2-39-s-strict.js |
---
es5id: 11.13.2-39-s
description: >
Strict Mode - TypeError is thrown if The LeftHandSide of a
Compound Assignment operator(<<=) is a reference to an accessor
property with the attribute value {[[Set]]:undefined}
flags: [onlyStrict]
--- |
785 |
11.13.2-40-s-strict.js |
---
es5id: 11.13.2-40-s
description: >
Strict Mode - TypeError is thrown if The LeftHandSide of a
Compound Assignment operator(>>=) is a reference to an accessor
property with the attribute value {[[Set]]:undefined}
flags: [onlyStrict]
--- |
785 |
11.13.2-41-s-strict.js |
---
es5id: 11.13.2-41-s
description: >
Strict Mode - TypeError is thrown if The LeftHandSide of a
Compound Assignment operator(>>>=) is a reference to an accessor
property with the attribute value {[[Set]]:undefined}
flags: [onlyStrict]
--- |
787 |
11.13.2-42-s-strict.js |
---
es5id: 11.13.2-42-s
description: >
Strict Mode - TypeError is thrown if The LeftHandSide of a
Compound Assignment operator(&=) is a reference to an accessor
property with the attribute value {[[Set]]:undefined}
flags: [onlyStrict]
--- |
783 |
11.13.2-43-s-strict.js |
---
es5id: 11.13.2-43-s
description: >
Strict Mode - TypeError is thrown if The LeftHandSide of a
Compound Assignment operator(^=) is a reference to an accessor
property with the attribute value {[[Set]]:undefined}
flags: [onlyStrict]
--- |
783 |
11.13.2-44-s-strict.js |
---
es5id: 11.13.2-44-s
description: >
Strict Mode - TypeError is thrown if The LeftHandSide of a
Compound Assignment operator(|=) is a reference of to an accessor
property with the attribute value {[[Set]]:undefined}
flags: [onlyStrict]
--- |
786 |
11.13.2-45-s-strict.js |
---
es5id: 11.13.2-45-s
description: >
Strict Mode - TypeError is thrown if The LeftHandSide of a
Compound Assignment operator(*=) is a reference to a non-existent
property of an object whose [[Extensible]] internal property is
false
flags: [onlyStrict]
--- |
581 |
11.13.2-46-s-strict.js |
---
es5id: 11.13.2-46-s
description: >
Strict Mode - TypeError is thrown if The LeftHandSide of a
Compound Assignment operator(/=) is a reference to a non-existent
property of an object whose [[Extensible]] internal property is
false
flags: [onlyStrict]
--- |
581 |
11.13.2-47-s-strict.js |
---
es5id: 11.13.2-47-s
description: >
Strict Mode - TypeError is thrown if The LeftHandSide of a
Compound Assignment operator(%=) is a reference to a non-existent
property of an object whose [[Extensible]] internal property is
false
flags: [onlyStrict]
--- |
581 |
11.13.2-48-s-strict.js |
---
es5id: 11.13.2-48-s
description: >
Strict Mode - TypeError is thrown if The LeftHandSide of a
Compound Assignment operator(+=) is a reference to a non-existent
property of an object whose [[Extensible]] internal property is
false
flags: [onlyStrict]
--- |
581 |
11.13.2-49-s-strict.js |
---
es5id: 11.13.2-49-s
description: >
Strict Mode - TypeError is thrown if The LeftHandSide of a
Compound Assignment operator(-=) is a reference to a non-existent
property of an object whose [[Extensible]] internal property is
false
flags: [onlyStrict]
--- |
581 |
11.13.2-50-s-strict.js |
---
es5id: 11.13.2-50-s
description: >
Strict Mode - TypeError is thrown if The LeftHandSide of a
Compound Assignment operator(<<=) is a reference to a non-existent
property of an object whose [[Extensible]] internal property is
false
flags: [onlyStrict]
--- |
583 |
11.13.2-51-s-strict.js |
---
es5id: 11.13.2-51-s
description: >
Strict Mode - TypeError is thrown if The LeftHandSide of a
Compound Assignment operator(>>=) is a reference to a non-existent
property of an object whose [[Extensible]] internal property is
false
flags: [onlyStrict]
--- |
583 |
11.13.2-52-s-strict.js |
---
es5id: 11.13.2-52-s
description: >
Strict Mode - TypeError is thrown if The LeftHandSide of a
Compound Assignment operator(>>>=) is a reference to a
non-existent property of an object whose [[Extensible]] internal
property if false
flags: [onlyStrict]
--- |
585 |
11.13.2-53-s-strict.js |
---
es5id: 11.13.2-53-s
description: >
Strict Mode - TypeError is thrown if The LeftHandSide of a
Compound Assignment operator(&=) is a reference to a non-existent
property of an object whose [[Extensible]] internal property is
false
flags: [onlyStrict]
--- |
581 |
11.13.2-54-s-strict.js |
---
es5id: 11.13.2-54-s
description: >
Strict Mode - TypeError is thrown if The LeftHandSide of a
Compound Assignment operator(^=) is a reference to a non-existent
property of an object whose [[Extensible]] internal property is
false
flags: [onlyStrict]
--- |
581 |
11.13.2-55-s-strict.js |
---
es5id: 11.13.2-55-s
description: >
Strict Mode - TypeError is thrown if The LeftHandSide of a
Compound Assignment operator(|=) is a reference to a non-existent
property of an object whose [[Extensible]] internal property is
false
flags: [onlyStrict]
--- |
581 |
add-arguments-strict-strict.js |
---
es5id: 11.13.2-6-15-s
esid: sec-assignment-operators
description: >
Strict Mode - SyntaxError is thrown if the identifier arguments
appear as the LeftHandSideExpression of a Compound Assignment
operator(+=)
flags: [onlyStrict]
negative:
phase: parse
type: SyntaxError
--- |
514 |
add-eval-strict-strict.js |
---
es5id: 11.13.2-6-4-s
esid: sec-assignment-operators
description: >
Strict Mode - SyntaxError is thrown if the identifier eval appear
as the LeftHandSideExpression of a Compound Assignment operator(+=)
flags: [onlyStrict]
negative:
phase: parse
type: SyntaxError
--- |
499 |
add-non-simple.js |
---
esid: sec-assignment-operators-static-semantics-early-errors
info: |
It is an early Syntax Error if AssignmentTargetType of
LeftHandSideExpression is invalid or strict.
description: Compound addition assignment with non-simple target
negative:
phase: parse
type: SyntaxError
--- |
491 |
add-whitespace.js |
---
info: |
White Space and Line Terminator between LeftHandSideExpression and "@="
or between "@=" and AssignmentExpression are allowed
es5id: 11.13.2_A1_T4
esid: sec-assignment-operators
description: Checking by using eval, check operator is x += y
--- |
1682 |
and-arguments-strict-strict.js |
---
es5id: 11.13.2-6-20-s
esid: sec-assignment-operators
description: >
Strict Mode - SyntaxError is thrown if the identifier arguments
appear as the LeftHandSideExpression of a Compound Assignment
operator(&=)
flags: [onlyStrict]
negative:
phase: parse
type: SyntaxError
--- |
514 |
and-eval-strict-strict.js |
---
es5id: 11.13.2-6-9-s
esid: sec-assignment-operators
description: >
Strict Mode - SyntaxError is thrown if the identifier eval appear
as the LeftHandSideExpression of a Compound Assignment operator(&=)
flags: [onlyStrict]
negative:
phase: parse
type: SyntaxError
--- |
499 |
and-whitespace.js |
---
info: |
White Space and Line Terminator between LeftHandSideExpression and "@="
or between "@=" and AssignmentExpression are allowed
es5id: 11.13.2_A1_T9
esid: sec-assignment-operators
description: Checking by using eval, check operator is x &= y
--- |
1642 |
browser.js |
|
0 |
btws-and-non-simple.js |
---
esid: sec-assignment-operators-static-semantics-early-errors
info: |
It is an early Syntax Error if AssignmentTargetType of
LeftHandSideExpression is invalid or strict.
description: Compound "bitwise and" assignment with non-simple target
negative:
phase: parse
type: SyntaxError
--- |
496 |
btws-or-non-simple.js |
---
esid: sec-assignment-operators-static-semantics-early-errors
info: |
It is an early Syntax Error if AssignmentTargetType of
LeftHandSideExpression is invalid or strict.
description: Compound "bitwise or" assignment with non-simple target
negative:
phase: parse
type: SyntaxError
--- |
495 |
btws-xor-non-simple.js |
---
esid: sec-assignment-operators-static-semantics-early-errors
info: |
It is an early Syntax Error if AssignmentTargetType of
LeftHandSideExpression is invalid or strict.
description: Compound "bitwise xor" assignment with non-simple target
negative:
phase: parse
type: SyntaxError
--- |
496 |
compound-assignment-operator-calls-putvalue-lref--v--1.js |
---
esid: sec-object-environment-records-setmutablebinding-n-v-s
description: >
Compound Assignment Operator calls PutValue(lref, v) (formerly S11.13.2_A5.10_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]
--- |
1213 |
compound-assignment-operator-calls-putvalue-lref--v--2.js |
---
esid: sec-object-environment-records-setmutablebinding-n-v-s
description: >
Compound Assignment Operator calls PutValue(lref, v) (formerly S11.13.2_A5.11_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]
--- |
1196 |
compound-assignment-operator-calls-putvalue-lref--v--3.js |
---
esid: sec-object-environment-records-setmutablebinding-n-v-s
description: >
Compound Assignment Operator calls PutValue(lref, v) (formerly S11.13.2_A5.11_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]
--- |
1212 |
compound-assignment-operator-calls-putvalue-lref--v--4.js |
---
esid: sec-object-environment-records-setmutablebinding-n-v-s
description: >
Compound Assignment Operator calls PutValue(lref, v) (formerly S11.13.2_A5.1_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]
--- |
1195 |
compound-assignment-operator-calls-putvalue-lref--v--5.js |
---
esid: sec-object-environment-records-setmutablebinding-n-v-s
description: >
Compound Assignment Operator calls PutValue(lref, v) (formerly S11.13.2_A5.1_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]
--- |
1211 |
compound-assignment-operator-calls-putvalue-lref--v--6.js |
---
esid: sec-object-environment-records-setmutablebinding-n-v-s
description: >
Compound Assignment Operator calls PutValue(lref, v) (formerly S11.13.2_A5.2_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]
--- |
1195 |
compound-assignment-operator-calls-putvalue-lref--v--7.js |
---
esid: sec-object-environment-records-setmutablebinding-n-v-s
description: >
Compound Assignment Operator calls PutValue(lref, v) (formerly S11.13.2_A5.2_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]
--- |
1211 |
compound-assignment-operator-calls-putvalue-lref--v--8.js |
---
esid: sec-object-environment-records-setmutablebinding-n-v-s
description: >
Compound Assignment Operator calls PutValue(lref, v) (formerly S11.13.2_A5.3_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]
--- |
1195 |
compound-assignment-operator-calls-putvalue-lref--v--9.js |
---
esid: sec-object-environment-records-setmutablebinding-n-v-s
description: >
Compound Assignment Operator calls PutValue(lref, v) (formerly S11.13.2_A5.3_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]
--- |
1211 |
compound-assignment-operator-calls-putvalue-lref--v--10.js |
---
esid: sec-object-environment-records-setmutablebinding-n-v-s
description: >
Compound Assignment Operator calls PutValue(lref, v) (formerly S11.13.2_A5.4_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]
--- |
1196 |
compound-assignment-operator-calls-putvalue-lref--v--11.js |
---
esid: sec-object-environment-records-setmutablebinding-n-v-s
description: >
Compound Assignment Operator calls PutValue(lref, v) (formerly S11.13.2_A5.4_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]
--- |
1212 |
compound-assignment-operator-calls-putvalue-lref--v--12.js |
---
esid: sec-object-environment-records-setmutablebinding-n-v-s
description: >
Compound Assignment Operator calls PutValue(lref, v) (formerly S11.13.2_A5.5_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]
--- |
1194 |
compound-assignment-operator-calls-putvalue-lref--v--13.js |
---
esid: sec-object-environment-records-setmutablebinding-n-v-s
description: >
Compound Assignment Operator calls PutValue(lref, v) (formerly S11.13.2_A5.5_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]
--- |
1211 |
compound-assignment-operator-calls-putvalue-lref--v--14.js |
---
esid: sec-object-environment-records-setmutablebinding-n-v-s
description: >
Compound Assignment Operator calls PutValue(lref, v) (formerly S11.13.2_A5.6_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]
--- |
1196 |
compound-assignment-operator-calls-putvalue-lref--v--15.js |
---
esid: sec-object-environment-records-setmutablebinding-n-v-s
description: >
Compound Assignment Operator calls PutValue(lref, v) (formerly S11.13.2_A5.6_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]
--- |
1212 |
compound-assignment-operator-calls-putvalue-lref--v--16.js |
---
esid: sec-object-environment-records-setmutablebinding-n-v-s
description: >
Compound Assignment Operator calls PutValue(lref, v) (formerly S11.13.2_A5.7_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]
--- |
1197 |
compound-assignment-operator-calls-putvalue-lref--v--17.js |
---
esid: sec-object-environment-records-setmutablebinding-n-v-s
description: >
Compound Assignment Operator calls PutValue(lref, v) (formerly S11.13.2_A5.7_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]
--- |
1213 |
compound-assignment-operator-calls-putvalue-lref--v--18.js |
---
esid: sec-object-environment-records-setmutablebinding-n-v-s
description: >
Compound Assignment Operator calls PutValue(lref, v) (formerly S11.13.2_A5.8_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]
--- |
1198 |
compound-assignment-operator-calls-putvalue-lref--v--19.js |
---
esid: sec-object-environment-records-setmutablebinding-n-v-s
description: >
Compound Assignment Operator calls PutValue(lref, v) (formerly S11.13.2_A5.8_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]
--- |
1214 |
compound-assignment-operator-calls-putvalue-lref--v--20.js |
---
esid: sec-object-environment-records-setmutablebinding-n-v-s
description: >
Compound Assignment Operator calls PutValue(lref, v) (formerly S11.13.2_A5.9_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]
--- |
1195 |
compound-assignment-operator-calls-putvalue-lref--v--21.js |
---
esid: sec-object-environment-records-setmutablebinding-n-v-s
description: >
Compound Assignment Operator calls PutValue(lref, v) (formerly S11.13.2_A5.9_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]
--- |
1211 |
compound-assignment-operator-calls-putvalue-lref--v-.js |
---
esid: sec-object-environment-records-setmutablebinding-n-v-s
description: >
Compound Assignment Operator calls PutValue(lref, v) (formerly S11.13.2_A5.10_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]
--- |
1196 |
div-arguments-strict-strict.js |
---
es5id: 11.13.2-6-13-s
esid: sec-assignment-operators
description: >
Strict Mode - SyntaxError is thrown if the identifier arguments
appear as the LeftHandSideExpression of a Compound Assignment
operator(/=)
flags: [onlyStrict]
negative:
phase: parse
type: SyntaxError
--- |
514 |
div-eval-strict-strict.js |
---
es5id: 11.13.2-6-2-s
esid: sec-assignment-operators
description: >
Strict Mode - SyntaxError is thrown if the identifier eval appear
as the LeftHandSideExpression of a Compound Assignment operator(/=)
flags: [onlyStrict]
negative:
phase: parse
type: SyntaxError
--- |
499 |
div-non-simple.js |
---
esid: sec-assignment-operators-static-semantics-early-errors
info: |
It is an early Syntax Error if AssignmentTargetType of
LeftHandSideExpression is invalid or strict.
description: Compound division assignment with non-simple target
negative:
phase: parse
type: SyntaxError
--- |
491 |
div-whitespace.js |
---
info: |
White Space and Line Terminator between LeftHandSideExpression and "@="
or between "@=" and AssignmentExpression are allowed
es5id: 11.13.2_A1_T2
esid: sec-assignment-operators
description: Checking by using eval, check operator is x /= y
--- |
1662 |
left-hand-side-private-reference-accessor-property-add.js |
---
description: Compound addition assignment with target being a private reference (to an accessor property with getter and setter)
esid: sec-assignment-operators-runtime-semantics-evaluation
features: [class-fields-private]
flags: [generated]
info: |
sec-assignment-operators-runtime-semantics-evaluation
AssignmentExpression : LeftHandSideExpression AssignmentOperator AssignmentExpression
1. Let _lref_ be the result of evaluating |LeftHandSideExpression|.
2. Let _lval_ be ? GetValue(_lref_).
...
7. Let _r_ be ApplyStringOrNumericBinaryOperator(_lval_, _opText_, _rval_).
8. Perform ? PutValue(_lref_, _r_).
9. Return _r_.
sec-property-accessors-runtime-semantics-evaluation
MemberExpression : MemberExpression `.` PrivateIdentifier
1. Let _baseReference_ be the result of evaluating |MemberExpression|.
2. Let _baseValue_ be ? GetValue(_baseReference_).
3. Let _fieldNameString_ be the StringValue of |PrivateIdentifier|.
4. Return ! MakePrivateReference(_baseValue_, _fieldNameString_).
PutValue (V, W)
...
5.b. If IsPrivateReference(_V_) is *true*, then
i. Return ? PrivateSet(_baseObj_, _V_.[[ReferencedName]], _W_).
PrivateSet (O, P, value)
...
5.a. Assert: _entry_.[[Kind]] is ~accessor~.
...
5.c. Let _setter_ be _entry_.[[Set]].
d. Perform ? Call(_setter_, _O_, « _value_ »).
--- |
2112 |
left-hand-side-private-reference-accessor-property-bitand.js |
---
description: Compound bitwise-and assignment with target being a private reference (to an accessor property with getter and setter)
esid: sec-assignment-operators-runtime-semantics-evaluation
features: [class-fields-private]
flags: [generated]
info: |
sec-assignment-operators-runtime-semantics-evaluation
AssignmentExpression : LeftHandSideExpression AssignmentOperator AssignmentExpression
1. Let _lref_ be the result of evaluating |LeftHandSideExpression|.
2. Let _lval_ be ? GetValue(_lref_).
...
7. Let _r_ be ApplyStringOrNumericBinaryOperator(_lval_, _opText_, _rval_).
8. Perform ? PutValue(_lref_, _r_).
9. Return _r_.
sec-property-accessors-runtime-semantics-evaluation
MemberExpression : MemberExpression `.` PrivateIdentifier
1. Let _baseReference_ be the result of evaluating |MemberExpression|.
2. Let _baseValue_ be ? GetValue(_baseReference_).
3. Let _fieldNameString_ be the StringValue of |PrivateIdentifier|.
4. Return ! MakePrivateReference(_baseValue_, _fieldNameString_).
PutValue (V, W)
...
5.b. If IsPrivateReference(_V_) is *true*, then
i. Return ? PrivateSet(_baseObj_, _V_.[[ReferencedName]], _W_).
PrivateSet (O, P, value)
...
5.a. Assert: _entry_.[[Kind]] is ~accessor~.
...
5.c. Let _setter_ be _entry_.[[Set]].
d. Perform ? Call(_setter_, _O_, « _value_ »).
--- |
2138 |
left-hand-side-private-reference-accessor-property-bitor.js |
---
description: Compound bitwise-or assignment with target being a private reference (to an accessor property with getter and setter)
esid: sec-assignment-operators-runtime-semantics-evaluation
features: [class-fields-private]
flags: [generated]
info: |
sec-assignment-operators-runtime-semantics-evaluation
AssignmentExpression : LeftHandSideExpression AssignmentOperator AssignmentExpression
1. Let _lref_ be the result of evaluating |LeftHandSideExpression|.
2. Let _lval_ be ? GetValue(_lref_).
...
7. Let _r_ be ApplyStringOrNumericBinaryOperator(_lval_, _opText_, _rval_).
8. Perform ? PutValue(_lref_, _r_).
9. Return _r_.
sec-property-accessors-runtime-semantics-evaluation
MemberExpression : MemberExpression `.` PrivateIdentifier
1. Let _baseReference_ be the result of evaluating |MemberExpression|.
2. Let _baseValue_ be ? GetValue(_baseReference_).
3. Let _fieldNameString_ be the StringValue of |PrivateIdentifier|.
4. Return ! MakePrivateReference(_baseValue_, _fieldNameString_).
PutValue (V, W)
...
5.b. If IsPrivateReference(_V_) is *true*, then
i. Return ? PrivateSet(_baseObj_, _V_.[[ReferencedName]], _W_).
PrivateSet (O, P, value)
...
5.a. Assert: _entry_.[[Kind]] is ~accessor~.
...
5.c. Let _setter_ be _entry_.[[Set]].
d. Perform ? Call(_setter_, _O_, « _value_ »).
--- |
2136 |
left-hand-side-private-reference-accessor-property-bitxor.js |
---
description: Compound bitwise-xor assignment with target being a private reference (to an accessor property with getter and setter)
esid: sec-assignment-operators-runtime-semantics-evaluation
features: [class-fields-private]
flags: [generated]
info: |
sec-assignment-operators-runtime-semantics-evaluation
AssignmentExpression : LeftHandSideExpression AssignmentOperator AssignmentExpression
1. Let _lref_ be the result of evaluating |LeftHandSideExpression|.
2. Let _lval_ be ? GetValue(_lref_).
...
7. Let _r_ be ApplyStringOrNumericBinaryOperator(_lval_, _opText_, _rval_).
8. Perform ? PutValue(_lref_, _r_).
9. Return _r_.
sec-property-accessors-runtime-semantics-evaluation
MemberExpression : MemberExpression `.` PrivateIdentifier
1. Let _baseReference_ be the result of evaluating |MemberExpression|.
2. Let _baseValue_ be ? GetValue(_baseReference_).
3. Let _fieldNameString_ be the StringValue of |PrivateIdentifier|.
4. Return ! MakePrivateReference(_baseValue_, _fieldNameString_).
PutValue (V, W)
...
5.b. If IsPrivateReference(_V_) is *true*, then
i. Return ? PrivateSet(_baseObj_, _V_.[[ReferencedName]], _W_).
PrivateSet (O, P, value)
...
5.a. Assert: _entry_.[[Kind]] is ~accessor~.
...
5.c. Let _setter_ be _entry_.[[Set]].
d. Perform ? Call(_setter_, _O_, « _value_ »).
--- |
2138 |
left-hand-side-private-reference-accessor-property-div.js |
---
description: Compound division assignment with target being a private reference (to an accessor property with getter and setter)
esid: sec-assignment-operators-runtime-semantics-evaluation
features: [class-fields-private]
flags: [generated]
info: |
sec-assignment-operators-runtime-semantics-evaluation
AssignmentExpression : LeftHandSideExpression AssignmentOperator AssignmentExpression
1. Let _lref_ be the result of evaluating |LeftHandSideExpression|.
2. Let _lval_ be ? GetValue(_lref_).
...
7. Let _r_ be ApplyStringOrNumericBinaryOperator(_lval_, _opText_, _rval_).
8. Perform ? PutValue(_lref_, _r_).
9. Return _r_.
sec-property-accessors-runtime-semantics-evaluation
MemberExpression : MemberExpression `.` PrivateIdentifier
1. Let _baseReference_ be the result of evaluating |MemberExpression|.
2. Let _baseValue_ be ? GetValue(_baseReference_).
3. Let _fieldNameString_ be the StringValue of |PrivateIdentifier|.
4. Return ! MakePrivateReference(_baseValue_, _fieldNameString_).
PutValue (V, W)
...
5.b. If IsPrivateReference(_V_) is *true*, then
i. Return ? PrivateSet(_baseObj_, _V_.[[ReferencedName]], _W_).
PrivateSet (O, P, value)
...
5.a. Assert: _entry_.[[Kind]] is ~accessor~.
...
5.c. Let _setter_ be _entry_.[[Set]].
d. Perform ? Call(_setter_, _O_, « _value_ »).
--- |
2116 |
left-hand-side-private-reference-accessor-property-exp.js |
---
description: Compound exponentiation assignment with target being a private reference (to an accessor property with getter and setter)
esid: sec-assignment-operators-runtime-semantics-evaluation
features: [exponentiation, class-fields-private]
flags: [generated]
info: |
sec-assignment-operators-runtime-semantics-evaluation
AssignmentExpression : LeftHandSideExpression AssignmentOperator AssignmentExpression
1. Let _lref_ be the result of evaluating |LeftHandSideExpression|.
2. Let _lval_ be ? GetValue(_lref_).
...
7. Let _r_ be ApplyStringOrNumericBinaryOperator(_lval_, _opText_, _rval_).
8. Perform ? PutValue(_lref_, _r_).
9. Return _r_.
sec-property-accessors-runtime-semantics-evaluation
MemberExpression : MemberExpression `.` PrivateIdentifier
1. Let _baseReference_ be the result of evaluating |MemberExpression|.
2. Let _baseValue_ be ? GetValue(_baseReference_).
3. Let _fieldNameString_ be the StringValue of |PrivateIdentifier|.
4. Return ! MakePrivateReference(_baseValue_, _fieldNameString_).
PutValue (V, W)
...
5.b. If IsPrivateReference(_V_) is *true*, then
i. Return ? PrivateSet(_baseObj_, _V_.[[ReferencedName]], _W_).
PrivateSet (O, P, value)
...
5.a. Assert: _entry_.[[Kind]] is ~accessor~.
...
5.c. Let _setter_ be _entry_.[[Set]].
d. Perform ? Call(_setter_, _O_, « _value_ »).
--- |
2142 |
left-hand-side-private-reference-accessor-property-lshift.js |
---
description: Compound left-shift assignment with target being a private reference (to an accessor property with getter and setter)
esid: sec-assignment-operators-runtime-semantics-evaluation
features: [class-fields-private]
flags: [generated]
info: |
sec-assignment-operators-runtime-semantics-evaluation
AssignmentExpression : LeftHandSideExpression AssignmentOperator AssignmentExpression
1. Let _lref_ be the result of evaluating |LeftHandSideExpression|.
2. Let _lval_ be ? GetValue(_lref_).
...
7. Let _r_ be ApplyStringOrNumericBinaryOperator(_lval_, _opText_, _rval_).
8. Perform ? PutValue(_lref_, _r_).
9. Return _r_.
sec-property-accessors-runtime-semantics-evaluation
MemberExpression : MemberExpression `.` PrivateIdentifier
1. Let _baseReference_ be the result of evaluating |MemberExpression|.
2. Let _baseValue_ be ? GetValue(_baseReference_).
3. Let _fieldNameString_ be the StringValue of |PrivateIdentifier|.
4. Return ! MakePrivateReference(_baseValue_, _fieldNameString_).
PutValue (V, W)
...
5.b. If IsPrivateReference(_V_) is *true*, then
i. Return ? PrivateSet(_baseObj_, _V_.[[ReferencedName]], _W_).
PrivateSet (O, P, value)
...
5.a. Assert: _entry_.[[Kind]] is ~accessor~.
...
5.c. Let _setter_ be _entry_.[[Set]].
d. Perform ? Call(_setter_, _O_, « _value_ »).
--- |
2141 |
left-hand-side-private-reference-accessor-property-mod.js |
---
description: Compound modulo assignment with target being a private reference (to an accessor property with getter and setter)
esid: sec-assignment-operators-runtime-semantics-evaluation
features: [class-fields-private]
flags: [generated]
info: |
sec-assignment-operators-runtime-semantics-evaluation
AssignmentExpression : LeftHandSideExpression AssignmentOperator AssignmentExpression
1. Let _lref_ be the result of evaluating |LeftHandSideExpression|.
2. Let _lval_ be ? GetValue(_lref_).
...
7. Let _r_ be ApplyStringOrNumericBinaryOperator(_lval_, _opText_, _rval_).
8. Perform ? PutValue(_lref_, _r_).
9. Return _r_.
sec-property-accessors-runtime-semantics-evaluation
MemberExpression : MemberExpression `.` PrivateIdentifier
1. Let _baseReference_ be the result of evaluating |MemberExpression|.
2. Let _baseValue_ be ? GetValue(_baseReference_).
3. Let _fieldNameString_ be the StringValue of |PrivateIdentifier|.
4. Return ! MakePrivateReference(_baseValue_, _fieldNameString_).
PutValue (V, W)
...
5.b. If IsPrivateReference(_V_) is *true*, then
i. Return ? PrivateSet(_baseObj_, _V_.[[ReferencedName]], _W_).
PrivateSet (O, P, value)
...
5.a. Assert: _entry_.[[Kind]] is ~accessor~.
...
5.c. Let _setter_ be _entry_.[[Set]].
d. Perform ? Call(_setter_, _O_, « _value_ »).
--- |
2110 |
left-hand-side-private-reference-accessor-property-mult.js |
---
description: Compound multiplication assignment with target being a private reference (to an accessor property with getter and setter)
esid: sec-assignment-operators-runtime-semantics-evaluation
features: [class-fields-private]
flags: [generated]
info: |
sec-assignment-operators-runtime-semantics-evaluation
AssignmentExpression : LeftHandSideExpression AssignmentOperator AssignmentExpression
1. Let _lref_ be the result of evaluating |LeftHandSideExpression|.
2. Let _lval_ be ? GetValue(_lref_).
...
7. Let _r_ be ApplyStringOrNumericBinaryOperator(_lval_, _opText_, _rval_).
8. Perform ? PutValue(_lref_, _r_).
9. Return _r_.
sec-property-accessors-runtime-semantics-evaluation
MemberExpression : MemberExpression `.` PrivateIdentifier
1. Let _baseReference_ be the result of evaluating |MemberExpression|.
2. Let _baseValue_ be ? GetValue(_baseReference_).
3. Let _fieldNameString_ be the StringValue of |PrivateIdentifier|.
4. Return ! MakePrivateReference(_baseValue_, _fieldNameString_).
PutValue (V, W)
...
5.b. If IsPrivateReference(_V_) is *true*, then
i. Return ? PrivateSet(_baseObj_, _V_.[[ReferencedName]], _W_).
PrivateSet (O, P, value)
...
5.a. Assert: _entry_.[[Kind]] is ~accessor~.
...
5.c. Let _setter_ be _entry_.[[Set]].
d. Perform ? Call(_setter_, _O_, « _value_ »).
--- |
2119 |
left-hand-side-private-reference-accessor-property-rshift.js |
---
description: Compound right-shift assignment with target being a private reference (to an accessor property with getter and setter)
esid: sec-assignment-operators-runtime-semantics-evaluation
features: [class-fields-private]
flags: [generated]
info: |
sec-assignment-operators-runtime-semantics-evaluation
AssignmentExpression : LeftHandSideExpression AssignmentOperator AssignmentExpression
1. Let _lref_ be the result of evaluating |LeftHandSideExpression|.
2. Let _lval_ be ? GetValue(_lref_).
...
7. Let _r_ be ApplyStringOrNumericBinaryOperator(_lval_, _opText_, _rval_).
8. Perform ? PutValue(_lref_, _r_).
9. Return _r_.
sec-property-accessors-runtime-semantics-evaluation
MemberExpression : MemberExpression `.` PrivateIdentifier
1. Let _baseReference_ be the result of evaluating |MemberExpression|.
2. Let _baseValue_ be ? GetValue(_baseReference_).
3. Let _fieldNameString_ be the StringValue of |PrivateIdentifier|.
4. Return ! MakePrivateReference(_baseValue_, _fieldNameString_).
PutValue (V, W)
...
5.b. If IsPrivateReference(_V_) is *true*, then
i. Return ? PrivateSet(_baseObj_, _V_.[[ReferencedName]], _W_).
PrivateSet (O, P, value)
...
5.a. Assert: _entry_.[[Kind]] is ~accessor~.
...
5.c. Let _setter_ be _entry_.[[Set]].
d. Perform ? Call(_setter_, _O_, « _value_ »).
--- |
2135 |
left-hand-side-private-reference-accessor-property-srshift.js |
---
description: Compound signed-right-shift assignment with target being a private reference (to an accessor property with getter and setter)
esid: sec-assignment-operators-runtime-semantics-evaluation
features: [class-fields-private]
flags: [generated]
info: |
sec-assignment-operators-runtime-semantics-evaluation
AssignmentExpression : LeftHandSideExpression AssignmentOperator AssignmentExpression
1. Let _lref_ be the result of evaluating |LeftHandSideExpression|.
2. Let _lval_ be ? GetValue(_lref_).
...
7. Let _r_ be ApplyStringOrNumericBinaryOperator(_lval_, _opText_, _rval_).
8. Perform ? PutValue(_lref_, _r_).
9. Return _r_.
sec-property-accessors-runtime-semantics-evaluation
MemberExpression : MemberExpression `.` PrivateIdentifier
1. Let _baseReference_ be the result of evaluating |MemberExpression|.
2. Let _baseValue_ be ? GetValue(_baseReference_).
3. Let _fieldNameString_ be the StringValue of |PrivateIdentifier|.
4. Return ! MakePrivateReference(_baseValue_, _fieldNameString_).
PutValue (V, W)
...
5.b. If IsPrivateReference(_V_) is *true*, then
i. Return ? PrivateSet(_baseObj_, _V_.[[ReferencedName]], _W_).
PrivateSet (O, P, value)
...
5.a. Assert: _entry_.[[Kind]] is ~accessor~.
...
5.c. Let _setter_ be _entry_.[[Set]].
d. Perform ? Call(_setter_, _O_, « _value_ »).
--- |
2142 |
left-hand-side-private-reference-accessor-property-sub.js |
---
description: Compound subtraction assignment with target being a private reference (to an accessor property with getter and setter)
esid: sec-assignment-operators-runtime-semantics-evaluation
features: [class-fields-private]
flags: [generated]
info: |
sec-assignment-operators-runtime-semantics-evaluation
AssignmentExpression : LeftHandSideExpression AssignmentOperator AssignmentExpression
1. Let _lref_ be the result of evaluating |LeftHandSideExpression|.
2. Let _lval_ be ? GetValue(_lref_).
...
7. Let _r_ be ApplyStringOrNumericBinaryOperator(_lval_, _opText_, _rval_).
8. Perform ? PutValue(_lref_, _r_).
9. Return _r_.
sec-property-accessors-runtime-semantics-evaluation
MemberExpression : MemberExpression `.` PrivateIdentifier
1. Let _baseReference_ be the result of evaluating |MemberExpression|.
2. Let _baseValue_ be ? GetValue(_baseReference_).
3. Let _fieldNameString_ be the StringValue of |PrivateIdentifier|.
4. Return ! MakePrivateReference(_baseValue_, _fieldNameString_).
PutValue (V, W)
...
5.b. If IsPrivateReference(_V_) is *true*, then
i. Return ? PrivateSet(_baseObj_, _V_.[[ReferencedName]], _W_).
PrivateSet (O, P, value)
...
5.a. Assert: _entry_.[[Kind]] is ~accessor~.
...
5.c. Let _setter_ be _entry_.[[Set]].
d. Perform ? Call(_setter_, _O_, « _value_ »).
--- |
2115 |
left-hand-side-private-reference-data-property-add.js |
---
description: Compound addition assignment with target being a private reference (to a field)
esid: sec-assignment-operators-runtime-semantics-evaluation
features: [class-fields-private]
flags: [generated]
info: |
sec-assignment-operators-runtime-semantics-evaluation
AssignmentExpression : LeftHandSideExpression AssignmentOperator AssignmentExpression
1. Let _lref_ be the result of evaluating |LeftHandSideExpression|.
2. Let _lval_ be ? GetValue(_lref_).
...
7. Let _r_ be ApplyStringOrNumericBinaryOperator(_lval_, _opText_, _rval_).
8. Perform ? PutValue(_lref_, _r_).
9. Return _r_.
sec-property-accessors-runtime-semantics-evaluation
MemberExpression : MemberExpression `.` PrivateIdentifier
1. Let _baseReference_ be the result of evaluating |MemberExpression|.
2. Let _baseValue_ be ? GetValue(_baseReference_).
3. Let _fieldNameString_ be the StringValue of |PrivateIdentifier|.
4. Return ! MakePrivateReference(_baseValue_, _fieldNameString_).
PutValue (V, W)
...
5.b. If IsPrivateReference(_V_) is *true*, then
i. Return ? PrivateSet(_baseObj_, _V_.[[ReferencedName]], _W_).
PrivateSet (O, P, value)
...
3. If _entry_.[[Kind]] is ~field~, then
a. Set _entry_.[[Value]] to _value_.
--- |
1880 |
left-hand-side-private-reference-data-property-bitand.js |
---
description: Compound bitwise-and assignment with target being a private reference (to a field)
esid: sec-assignment-operators-runtime-semantics-evaluation
features: [class-fields-private]
flags: [generated]
info: |
sec-assignment-operators-runtime-semantics-evaluation
AssignmentExpression : LeftHandSideExpression AssignmentOperator AssignmentExpression
1. Let _lref_ be the result of evaluating |LeftHandSideExpression|.
2. Let _lval_ be ? GetValue(_lref_).
...
7. Let _r_ be ApplyStringOrNumericBinaryOperator(_lval_, _opText_, _rval_).
8. Perform ? PutValue(_lref_, _r_).
9. Return _r_.
sec-property-accessors-runtime-semantics-evaluation
MemberExpression : MemberExpression `.` PrivateIdentifier
1. Let _baseReference_ be the result of evaluating |MemberExpression|.
2. Let _baseValue_ be ? GetValue(_baseReference_).
3. Let _fieldNameString_ be the StringValue of |PrivateIdentifier|.
4. Return ! MakePrivateReference(_baseValue_, _fieldNameString_).
PutValue (V, W)
...
5.b. If IsPrivateReference(_V_) is *true*, then
i. Return ? PrivateSet(_baseObj_, _V_.[[ReferencedName]], _W_).
PrivateSet (O, P, value)
...
3. If _entry_.[[Kind]] is ~field~, then
a. Set _entry_.[[Value]] to _value_.
--- |
1906 |
left-hand-side-private-reference-data-property-bitor.js |
---
description: Compound bitwise-or assignment with target being a private reference (to a field)
esid: sec-assignment-operators-runtime-semantics-evaluation
features: [class-fields-private]
flags: [generated]
info: |
sec-assignment-operators-runtime-semantics-evaluation
AssignmentExpression : LeftHandSideExpression AssignmentOperator AssignmentExpression
1. Let _lref_ be the result of evaluating |LeftHandSideExpression|.
2. Let _lval_ be ? GetValue(_lref_).
...
7. Let _r_ be ApplyStringOrNumericBinaryOperator(_lval_, _opText_, _rval_).
8. Perform ? PutValue(_lref_, _r_).
9. Return _r_.
sec-property-accessors-runtime-semantics-evaluation
MemberExpression : MemberExpression `.` PrivateIdentifier
1. Let _baseReference_ be the result of evaluating |MemberExpression|.
2. Let _baseValue_ be ? GetValue(_baseReference_).
3. Let _fieldNameString_ be the StringValue of |PrivateIdentifier|.
4. Return ! MakePrivateReference(_baseValue_, _fieldNameString_).
PutValue (V, W)
...
5.b. If IsPrivateReference(_V_) is *true*, then
i. Return ? PrivateSet(_baseObj_, _V_.[[ReferencedName]], _W_).
PrivateSet (O, P, value)
...
3. If _entry_.[[Kind]] is ~field~, then
a. Set _entry_.[[Value]] to _value_.
--- |
1904 |
left-hand-side-private-reference-data-property-bitxor.js |
---
description: Compound bitwise-xor assignment with target being a private reference (to a field)
esid: sec-assignment-operators-runtime-semantics-evaluation
features: [class-fields-private]
flags: [generated]
info: |
sec-assignment-operators-runtime-semantics-evaluation
AssignmentExpression : LeftHandSideExpression AssignmentOperator AssignmentExpression
1. Let _lref_ be the result of evaluating |LeftHandSideExpression|.
2. Let _lval_ be ? GetValue(_lref_).
...
7. Let _r_ be ApplyStringOrNumericBinaryOperator(_lval_, _opText_, _rval_).
8. Perform ? PutValue(_lref_, _r_).
9. Return _r_.
sec-property-accessors-runtime-semantics-evaluation
MemberExpression : MemberExpression `.` PrivateIdentifier
1. Let _baseReference_ be the result of evaluating |MemberExpression|.
2. Let _baseValue_ be ? GetValue(_baseReference_).
3. Let _fieldNameString_ be the StringValue of |PrivateIdentifier|.
4. Return ! MakePrivateReference(_baseValue_, _fieldNameString_).
PutValue (V, W)
...
5.b. If IsPrivateReference(_V_) is *true*, then
i. Return ? PrivateSet(_baseObj_, _V_.[[ReferencedName]], _W_).
PrivateSet (O, P, value)
...
3. If _entry_.[[Kind]] is ~field~, then
a. Set _entry_.[[Value]] to _value_.
--- |
1906 |
left-hand-side-private-reference-data-property-div.js |
---
description: Compound division assignment with target being a private reference (to a field)
esid: sec-assignment-operators-runtime-semantics-evaluation
features: [class-fields-private]
flags: [generated]
info: |
sec-assignment-operators-runtime-semantics-evaluation
AssignmentExpression : LeftHandSideExpression AssignmentOperator AssignmentExpression
1. Let _lref_ be the result of evaluating |LeftHandSideExpression|.
2. Let _lval_ be ? GetValue(_lref_).
...
7. Let _r_ be ApplyStringOrNumericBinaryOperator(_lval_, _opText_, _rval_).
8. Perform ? PutValue(_lref_, _r_).
9. Return _r_.
sec-property-accessors-runtime-semantics-evaluation
MemberExpression : MemberExpression `.` PrivateIdentifier
1. Let _baseReference_ be the result of evaluating |MemberExpression|.
2. Let _baseValue_ be ? GetValue(_baseReference_).
3. Let _fieldNameString_ be the StringValue of |PrivateIdentifier|.
4. Return ! MakePrivateReference(_baseValue_, _fieldNameString_).
PutValue (V, W)
...
5.b. If IsPrivateReference(_V_) is *true*, then
i. Return ? PrivateSet(_baseObj_, _V_.[[ReferencedName]], _W_).
PrivateSet (O, P, value)
...
3. If _entry_.[[Kind]] is ~field~, then
a. Set _entry_.[[Value]] to _value_.
--- |
1884 |
left-hand-side-private-reference-data-property-exp.js |
---
description: Compound exponentiation assignment with target being a private reference (to a field)
esid: sec-assignment-operators-runtime-semantics-evaluation
features: [exponentiation, class-fields-private]
flags: [generated]
info: |
sec-assignment-operators-runtime-semantics-evaluation
AssignmentExpression : LeftHandSideExpression AssignmentOperator AssignmentExpression
1. Let _lref_ be the result of evaluating |LeftHandSideExpression|.
2. Let _lval_ be ? GetValue(_lref_).
...
7. Let _r_ be ApplyStringOrNumericBinaryOperator(_lval_, _opText_, _rval_).
8. Perform ? PutValue(_lref_, _r_).
9. Return _r_.
sec-property-accessors-runtime-semantics-evaluation
MemberExpression : MemberExpression `.` PrivateIdentifier
1. Let _baseReference_ be the result of evaluating |MemberExpression|.
2. Let _baseValue_ be ? GetValue(_baseReference_).
3. Let _fieldNameString_ be the StringValue of |PrivateIdentifier|.
4. Return ! MakePrivateReference(_baseValue_, _fieldNameString_).
PutValue (V, W)
...
5.b. If IsPrivateReference(_V_) is *true*, then
i. Return ? PrivateSet(_baseObj_, _V_.[[ReferencedName]], _W_).
PrivateSet (O, P, value)
...
3. If _entry_.[[Kind]] is ~field~, then
a. Set _entry_.[[Value]] to _value_.
--- |
1910 |
left-hand-side-private-reference-data-property-lshift.js |
---
description: Compound left-shift assignment with target being a private reference (to a field)
esid: sec-assignment-operators-runtime-semantics-evaluation
features: [class-fields-private]
flags: [generated]
info: |
sec-assignment-operators-runtime-semantics-evaluation
AssignmentExpression : LeftHandSideExpression AssignmentOperator AssignmentExpression
1. Let _lref_ be the result of evaluating |LeftHandSideExpression|.
2. Let _lval_ be ? GetValue(_lref_).
...
7. Let _r_ be ApplyStringOrNumericBinaryOperator(_lval_, _opText_, _rval_).
8. Perform ? PutValue(_lref_, _r_).
9. Return _r_.
sec-property-accessors-runtime-semantics-evaluation
MemberExpression : MemberExpression `.` PrivateIdentifier
1. Let _baseReference_ be the result of evaluating |MemberExpression|.
2. Let _baseValue_ be ? GetValue(_baseReference_).
3. Let _fieldNameString_ be the StringValue of |PrivateIdentifier|.
4. Return ! MakePrivateReference(_baseValue_, _fieldNameString_).
PutValue (V, W)
...
5.b. If IsPrivateReference(_V_) is *true*, then
i. Return ? PrivateSet(_baseObj_, _V_.[[ReferencedName]], _W_).
PrivateSet (O, P, value)
...
3. If _entry_.[[Kind]] is ~field~, then
a. Set _entry_.[[Value]] to _value_.
--- |
1909 |
left-hand-side-private-reference-data-property-mod.js |
---
description: Compound modulo assignment with target being a private reference (to a field)
esid: sec-assignment-operators-runtime-semantics-evaluation
features: [class-fields-private]
flags: [generated]
info: |
sec-assignment-operators-runtime-semantics-evaluation
AssignmentExpression : LeftHandSideExpression AssignmentOperator AssignmentExpression
1. Let _lref_ be the result of evaluating |LeftHandSideExpression|.
2. Let _lval_ be ? GetValue(_lref_).
...
7. Let _r_ be ApplyStringOrNumericBinaryOperator(_lval_, _opText_, _rval_).
8. Perform ? PutValue(_lref_, _r_).
9. Return _r_.
sec-property-accessors-runtime-semantics-evaluation
MemberExpression : MemberExpression `.` PrivateIdentifier
1. Let _baseReference_ be the result of evaluating |MemberExpression|.
2. Let _baseValue_ be ? GetValue(_baseReference_).
3. Let _fieldNameString_ be the StringValue of |PrivateIdentifier|.
4. Return ! MakePrivateReference(_baseValue_, _fieldNameString_).
PutValue (V, W)
...
5.b. If IsPrivateReference(_V_) is *true*, then
i. Return ? PrivateSet(_baseObj_, _V_.[[ReferencedName]], _W_).
PrivateSet (O, P, value)
...
3. If _entry_.[[Kind]] is ~field~, then
a. Set _entry_.[[Value]] to _value_.
--- |
1878 |
left-hand-side-private-reference-data-property-mult.js |
---
description: Compound multiplication assignment with target being a private reference (to a field)
esid: sec-assignment-operators-runtime-semantics-evaluation
features: [class-fields-private]
flags: [generated]
info: |
sec-assignment-operators-runtime-semantics-evaluation
AssignmentExpression : LeftHandSideExpression AssignmentOperator AssignmentExpression
1. Let _lref_ be the result of evaluating |LeftHandSideExpression|.
2. Let _lval_ be ? GetValue(_lref_).
...
7. Let _r_ be ApplyStringOrNumericBinaryOperator(_lval_, _opText_, _rval_).
8. Perform ? PutValue(_lref_, _r_).
9. Return _r_.
sec-property-accessors-runtime-semantics-evaluation
MemberExpression : MemberExpression `.` PrivateIdentifier
1. Let _baseReference_ be the result of evaluating |MemberExpression|.
2. Let _baseValue_ be ? GetValue(_baseReference_).
3. Let _fieldNameString_ be the StringValue of |PrivateIdentifier|.
4. Return ! MakePrivateReference(_baseValue_, _fieldNameString_).
PutValue (V, W)
...
5.b. If IsPrivateReference(_V_) is *true*, then
i. Return ? PrivateSet(_baseObj_, _V_.[[ReferencedName]], _W_).
PrivateSet (O, P, value)
...
3. If _entry_.[[Kind]] is ~field~, then
a. Set _entry_.[[Value]] to _value_.
--- |
1887 |
left-hand-side-private-reference-data-property-rshift.js |
---
description: Compound right-shift assignment with target being a private reference (to a field)
esid: sec-assignment-operators-runtime-semantics-evaluation
features: [class-fields-private]
flags: [generated]
info: |
sec-assignment-operators-runtime-semantics-evaluation
AssignmentExpression : LeftHandSideExpression AssignmentOperator AssignmentExpression
1. Let _lref_ be the result of evaluating |LeftHandSideExpression|.
2. Let _lval_ be ? GetValue(_lref_).
...
7. Let _r_ be ApplyStringOrNumericBinaryOperator(_lval_, _opText_, _rval_).
8. Perform ? PutValue(_lref_, _r_).
9. Return _r_.
sec-property-accessors-runtime-semantics-evaluation
MemberExpression : MemberExpression `.` PrivateIdentifier
1. Let _baseReference_ be the result of evaluating |MemberExpression|.
2. Let _baseValue_ be ? GetValue(_baseReference_).
3. Let _fieldNameString_ be the StringValue of |PrivateIdentifier|.
4. Return ! MakePrivateReference(_baseValue_, _fieldNameString_).
PutValue (V, W)
...
5.b. If IsPrivateReference(_V_) is *true*, then
i. Return ? PrivateSet(_baseObj_, _V_.[[ReferencedName]], _W_).
PrivateSet (O, P, value)
...
3. If _entry_.[[Kind]] is ~field~, then
a. Set _entry_.[[Value]] to _value_.
--- |
1903 |
left-hand-side-private-reference-data-property-srshift.js |
---
description: Compound signed-right-shift assignment with target being a private reference (to a field)
esid: sec-assignment-operators-runtime-semantics-evaluation
features: [class-fields-private]
flags: [generated]
info: |
sec-assignment-operators-runtime-semantics-evaluation
AssignmentExpression : LeftHandSideExpression AssignmentOperator AssignmentExpression
1. Let _lref_ be the result of evaluating |LeftHandSideExpression|.
2. Let _lval_ be ? GetValue(_lref_).
...
7. Let _r_ be ApplyStringOrNumericBinaryOperator(_lval_, _opText_, _rval_).
8. Perform ? PutValue(_lref_, _r_).
9. Return _r_.
sec-property-accessors-runtime-semantics-evaluation
MemberExpression : MemberExpression `.` PrivateIdentifier
1. Let _baseReference_ be the result of evaluating |MemberExpression|.
2. Let _baseValue_ be ? GetValue(_baseReference_).
3. Let _fieldNameString_ be the StringValue of |PrivateIdentifier|.
4. Return ! MakePrivateReference(_baseValue_, _fieldNameString_).
PutValue (V, W)
...
5.b. If IsPrivateReference(_V_) is *true*, then
i. Return ? PrivateSet(_baseObj_, _V_.[[ReferencedName]], _W_).
PrivateSet (O, P, value)
...
3. If _entry_.[[Kind]] is ~field~, then
a. Set _entry_.[[Value]] to _value_.
--- |
1910 |
left-hand-side-private-reference-data-property-sub.js |
---
description: Compound subtraction assignment with target being a private reference (to a field)
esid: sec-assignment-operators-runtime-semantics-evaluation
features: [class-fields-private]
flags: [generated]
info: |
sec-assignment-operators-runtime-semantics-evaluation
AssignmentExpression : LeftHandSideExpression AssignmentOperator AssignmentExpression
1. Let _lref_ be the result of evaluating |LeftHandSideExpression|.
2. Let _lval_ be ? GetValue(_lref_).
...
7. Let _r_ be ApplyStringOrNumericBinaryOperator(_lval_, _opText_, _rval_).
8. Perform ? PutValue(_lref_, _r_).
9. Return _r_.
sec-property-accessors-runtime-semantics-evaluation
MemberExpression : MemberExpression `.` PrivateIdentifier
1. Let _baseReference_ be the result of evaluating |MemberExpression|.
2. Let _baseValue_ be ? GetValue(_baseReference_).
3. Let _fieldNameString_ be the StringValue of |PrivateIdentifier|.
4. Return ! MakePrivateReference(_baseValue_, _fieldNameString_).
PutValue (V, W)
...
5.b. If IsPrivateReference(_V_) is *true*, then
i. Return ? PrivateSet(_baseObj_, _V_.[[ReferencedName]], _W_).
PrivateSet (O, P, value)
...
3. If _entry_.[[Kind]] is ~field~, then
a. Set _entry_.[[Value]] to _value_.
--- |
1883 |
left-hand-side-private-reference-method-add.js |
---
description: Compound addition assignment with target being a private reference (to a private method)
esid: sec-assignment-operators-runtime-semantics-evaluation
features: [class-fields-private]
flags: [generated]
info: |
sec-assignment-operators-runtime-semantics-evaluation
AssignmentExpression : LeftHandSideExpression AssignmentOperator AssignmentExpression
1. Let _lref_ be the result of evaluating |LeftHandSideExpression|.
2. Let _lval_ be ? GetValue(_lref_).
...
7. Let _r_ be ApplyStringOrNumericBinaryOperator(_lval_, _opText_, _rval_).
8. Perform ? PutValue(_lref_, _r_).
9. Return _r_.
sec-property-accessors-runtime-semantics-evaluation
MemberExpression : MemberExpression `.` PrivateIdentifier
1. Let _baseReference_ be the result of evaluating |MemberExpression|.
2. Let _baseValue_ be ? GetValue(_baseReference_).
3. Let _fieldNameString_ be the StringValue of |PrivateIdentifier|.
4. Return ! MakePrivateReference(_baseValue_, _fieldNameString_).
PutValue (V, W)
...
5.b. If IsPrivateReference(_V_) is *true*, then
i. Return ? PrivateSet(_baseObj_, _V_.[[ReferencedName]], _W_).
PrivateSet (O, P, value)
...
4. Else if _entry_.[[Kind]] is ~method~, then
a. Throw a *TypeError* exception.
--- |
1794 |
left-hand-side-private-reference-method-bitand.js |
---
description: Compound bitwise-and assignment with target being a private reference (to a private method)
esid: sec-assignment-operators-runtime-semantics-evaluation
features: [class-fields-private]
flags: [generated]
info: |
sec-assignment-operators-runtime-semantics-evaluation
AssignmentExpression : LeftHandSideExpression AssignmentOperator AssignmentExpression
1. Let _lref_ be the result of evaluating |LeftHandSideExpression|.
2. Let _lval_ be ? GetValue(_lref_).
...
7. Let _r_ be ApplyStringOrNumericBinaryOperator(_lval_, _opText_, _rval_).
8. Perform ? PutValue(_lref_, _r_).
9. Return _r_.
sec-property-accessors-runtime-semantics-evaluation
MemberExpression : MemberExpression `.` PrivateIdentifier
1. Let _baseReference_ be the result of evaluating |MemberExpression|.
2. Let _baseValue_ be ? GetValue(_baseReference_).
3. Let _fieldNameString_ be the StringValue of |PrivateIdentifier|.
4. Return ! MakePrivateReference(_baseValue_, _fieldNameString_).
PutValue (V, W)
...
5.b. If IsPrivateReference(_V_) is *true*, then
i. Return ? PrivateSet(_baseObj_, _V_.[[ReferencedName]], _W_).
PrivateSet (O, P, value)
...
4. Else if _entry_.[[Kind]] is ~method~, then
a. Throw a *TypeError* exception.
--- |
1800 |
left-hand-side-private-reference-method-bitor.js |
---
description: Compound bitwise-or assignment with target being a private reference (to a private method)
esid: sec-assignment-operators-runtime-semantics-evaluation
features: [class-fields-private]
flags: [generated]
info: |
sec-assignment-operators-runtime-semantics-evaluation
AssignmentExpression : LeftHandSideExpression AssignmentOperator AssignmentExpression
1. Let _lref_ be the result of evaluating |LeftHandSideExpression|.
2. Let _lval_ be ? GetValue(_lref_).
...
7. Let _r_ be ApplyStringOrNumericBinaryOperator(_lval_, _opText_, _rval_).
8. Perform ? PutValue(_lref_, _r_).
9. Return _r_.
sec-property-accessors-runtime-semantics-evaluation
MemberExpression : MemberExpression `.` PrivateIdentifier
1. Let _baseReference_ be the result of evaluating |MemberExpression|.
2. Let _baseValue_ be ? GetValue(_baseReference_).
3. Let _fieldNameString_ be the StringValue of |PrivateIdentifier|.
4. Return ! MakePrivateReference(_baseValue_, _fieldNameString_).
PutValue (V, W)
...
5.b. If IsPrivateReference(_V_) is *true*, then
i. Return ? PrivateSet(_baseObj_, _V_.[[ReferencedName]], _W_).
PrivateSet (O, P, value)
...
4. Else if _entry_.[[Kind]] is ~method~, then
a. Throw a *TypeError* exception.
--- |
1798 |
left-hand-side-private-reference-method-bitxor.js |
---
description: Compound bitwise-xor assignment with target being a private reference (to a private method)
esid: sec-assignment-operators-runtime-semantics-evaluation
features: [class-fields-private]
flags: [generated]
info: |
sec-assignment-operators-runtime-semantics-evaluation
AssignmentExpression : LeftHandSideExpression AssignmentOperator AssignmentExpression
1. Let _lref_ be the result of evaluating |LeftHandSideExpression|.
2. Let _lval_ be ? GetValue(_lref_).
...
7. Let _r_ be ApplyStringOrNumericBinaryOperator(_lval_, _opText_, _rval_).
8. Perform ? PutValue(_lref_, _r_).
9. Return _r_.
sec-property-accessors-runtime-semantics-evaluation
MemberExpression : MemberExpression `.` PrivateIdentifier
1. Let _baseReference_ be the result of evaluating |MemberExpression|.
2. Let _baseValue_ be ? GetValue(_baseReference_).
3. Let _fieldNameString_ be the StringValue of |PrivateIdentifier|.
4. Return ! MakePrivateReference(_baseValue_, _fieldNameString_).
PutValue (V, W)
...
5.b. If IsPrivateReference(_V_) is *true*, then
i. Return ? PrivateSet(_baseObj_, _V_.[[ReferencedName]], _W_).
PrivateSet (O, P, value)
...
4. Else if _entry_.[[Kind]] is ~method~, then
a. Throw a *TypeError* exception.
--- |
1800 |
left-hand-side-private-reference-method-div.js |
---
description: Compound division assignment with target being a private reference (to a private method)
esid: sec-assignment-operators-runtime-semantics-evaluation
features: [class-fields-private]
flags: [generated]
info: |
sec-assignment-operators-runtime-semantics-evaluation
AssignmentExpression : LeftHandSideExpression AssignmentOperator AssignmentExpression
1. Let _lref_ be the result of evaluating |LeftHandSideExpression|.
2. Let _lval_ be ? GetValue(_lref_).
...
7. Let _r_ be ApplyStringOrNumericBinaryOperator(_lval_, _opText_, _rval_).
8. Perform ? PutValue(_lref_, _r_).
9. Return _r_.
sec-property-accessors-runtime-semantics-evaluation
MemberExpression : MemberExpression `.` PrivateIdentifier
1. Let _baseReference_ be the result of evaluating |MemberExpression|.
2. Let _baseValue_ be ? GetValue(_baseReference_).
3. Let _fieldNameString_ be the StringValue of |PrivateIdentifier|.
4. Return ! MakePrivateReference(_baseValue_, _fieldNameString_).
PutValue (V, W)
...
5.b. If IsPrivateReference(_V_) is *true*, then
i. Return ? PrivateSet(_baseObj_, _V_.[[ReferencedName]], _W_).
PrivateSet (O, P, value)
...
4. Else if _entry_.[[Kind]] is ~method~, then
a. Throw a *TypeError* exception.
--- |
1794 |
left-hand-side-private-reference-method-exp.js |
---
description: Compound exponentiation assignment with target being a private reference (to a private method)
esid: sec-assignment-operators-runtime-semantics-evaluation
features: [exponentiation, class-fields-private]
flags: [generated]
info: |
sec-assignment-operators-runtime-semantics-evaluation
AssignmentExpression : LeftHandSideExpression AssignmentOperator AssignmentExpression
1. Let _lref_ be the result of evaluating |LeftHandSideExpression|.
2. Let _lval_ be ? GetValue(_lref_).
...
7. Let _r_ be ApplyStringOrNumericBinaryOperator(_lval_, _opText_, _rval_).
8. Perform ? PutValue(_lref_, _r_).
9. Return _r_.
sec-property-accessors-runtime-semantics-evaluation
MemberExpression : MemberExpression `.` PrivateIdentifier
1. Let _baseReference_ be the result of evaluating |MemberExpression|.
2. Let _baseValue_ be ? GetValue(_baseReference_).
3. Let _fieldNameString_ be the StringValue of |PrivateIdentifier|.
4. Return ! MakePrivateReference(_baseValue_, _fieldNameString_).
PutValue (V, W)
...
5.b. If IsPrivateReference(_V_) is *true*, then
i. Return ? PrivateSet(_baseObj_, _V_.[[ReferencedName]], _W_).
PrivateSet (O, P, value)
...
4. Else if _entry_.[[Kind]] is ~method~, then
a. Throw a *TypeError* exception.
--- |
1817 |
left-hand-side-private-reference-method-lshift.js |
---
description: Compound left-shift assignment with target being a private reference (to a private method)
esid: sec-assignment-operators-runtime-semantics-evaluation
features: [class-fields-private]
flags: [generated]
info: |
sec-assignment-operators-runtime-semantics-evaluation
AssignmentExpression : LeftHandSideExpression AssignmentOperator AssignmentExpression
1. Let _lref_ be the result of evaluating |LeftHandSideExpression|.
2. Let _lval_ be ? GetValue(_lref_).
...
7. Let _r_ be ApplyStringOrNumericBinaryOperator(_lval_, _opText_, _rval_).
8. Perform ? PutValue(_lref_, _r_).
9. Return _r_.
sec-property-accessors-runtime-semantics-evaluation
MemberExpression : MemberExpression `.` PrivateIdentifier
1. Let _baseReference_ be the result of evaluating |MemberExpression|.
2. Let _baseValue_ be ? GetValue(_baseReference_).
3. Let _fieldNameString_ be the StringValue of |PrivateIdentifier|.
4. Return ! MakePrivateReference(_baseValue_, _fieldNameString_).
PutValue (V, W)
...
5.b. If IsPrivateReference(_V_) is *true*, then
i. Return ? PrivateSet(_baseObj_, _V_.[[ReferencedName]], _W_).
PrivateSet (O, P, value)
...
4. Else if _entry_.[[Kind]] is ~method~, then
a. Throw a *TypeError* exception.
--- |
1800 |
left-hand-side-private-reference-method-mod.js |
---
description: Compound modulo assignment with target being a private reference (to a private method)
esid: sec-assignment-operators-runtime-semantics-evaluation
features: [class-fields-private]
flags: [generated]
info: |
sec-assignment-operators-runtime-semantics-evaluation
AssignmentExpression : LeftHandSideExpression AssignmentOperator AssignmentExpression
1. Let _lref_ be the result of evaluating |LeftHandSideExpression|.
2. Let _lval_ be ? GetValue(_lref_).
...
7. Let _r_ be ApplyStringOrNumericBinaryOperator(_lval_, _opText_, _rval_).
8. Perform ? PutValue(_lref_, _r_).
9. Return _r_.
sec-property-accessors-runtime-semantics-evaluation
MemberExpression : MemberExpression `.` PrivateIdentifier
1. Let _baseReference_ be the result of evaluating |MemberExpression|.
2. Let _baseValue_ be ? GetValue(_baseReference_).
3. Let _fieldNameString_ be the StringValue of |PrivateIdentifier|.
4. Return ! MakePrivateReference(_baseValue_, _fieldNameString_).
PutValue (V, W)
...
5.b. If IsPrivateReference(_V_) is *true*, then
i. Return ? PrivateSet(_baseObj_, _V_.[[ReferencedName]], _W_).
PrivateSet (O, P, value)
...
4. Else if _entry_.[[Kind]] is ~method~, then
a. Throw a *TypeError* exception.
--- |
1792 |
left-hand-side-private-reference-method-mult.js |
---
description: Compound multiplication assignment with target being a private reference (to a private method)
esid: sec-assignment-operators-runtime-semantics-evaluation
features: [class-fields-private]
flags: [generated]
info: |
sec-assignment-operators-runtime-semantics-evaluation
AssignmentExpression : LeftHandSideExpression AssignmentOperator AssignmentExpression
1. Let _lref_ be the result of evaluating |LeftHandSideExpression|.
2. Let _lval_ be ? GetValue(_lref_).
...
7. Let _r_ be ApplyStringOrNumericBinaryOperator(_lval_, _opText_, _rval_).
8. Perform ? PutValue(_lref_, _r_).
9. Return _r_.
sec-property-accessors-runtime-semantics-evaluation
MemberExpression : MemberExpression `.` PrivateIdentifier
1. Let _baseReference_ be the result of evaluating |MemberExpression|.
2. Let _baseValue_ be ? GetValue(_baseReference_).
3. Let _fieldNameString_ be the StringValue of |PrivateIdentifier|.
4. Return ! MakePrivateReference(_baseValue_, _fieldNameString_).
PutValue (V, W)
...
5.b. If IsPrivateReference(_V_) is *true*, then
i. Return ? PrivateSet(_baseObj_, _V_.[[ReferencedName]], _W_).
PrivateSet (O, P, value)
...
4. Else if _entry_.[[Kind]] is ~method~, then
a. Throw a *TypeError* exception.
--- |
1801 |
left-hand-side-private-reference-method-rshift.js |
---
description: Compound right-shift assignment with target being a private reference (to a private method)
esid: sec-assignment-operators-runtime-semantics-evaluation
features: [class-fields-private]
flags: [generated]
info: |
sec-assignment-operators-runtime-semantics-evaluation
AssignmentExpression : LeftHandSideExpression AssignmentOperator AssignmentExpression
1. Let _lref_ be the result of evaluating |LeftHandSideExpression|.
2. Let _lval_ be ? GetValue(_lref_).
...
7. Let _r_ be ApplyStringOrNumericBinaryOperator(_lval_, _opText_, _rval_).
8. Perform ? PutValue(_lref_, _r_).
9. Return _r_.
sec-property-accessors-runtime-semantics-evaluation
MemberExpression : MemberExpression `.` PrivateIdentifier
1. Let _baseReference_ be the result of evaluating |MemberExpression|.
2. Let _baseValue_ be ? GetValue(_baseReference_).
3. Let _fieldNameString_ be the StringValue of |PrivateIdentifier|.
4. Return ! MakePrivateReference(_baseValue_, _fieldNameString_).
PutValue (V, W)
...
5.b. If IsPrivateReference(_V_) is *true*, then
i. Return ? PrivateSet(_baseObj_, _V_.[[ReferencedName]], _W_).
PrivateSet (O, P, value)
...
4. Else if _entry_.[[Kind]] is ~method~, then
a. Throw a *TypeError* exception.
--- |
1802 |
left-hand-side-private-reference-method-srshift.js |
---
description: Compound signed-right-shift assignment with target being a private reference (to a private method)
esid: sec-assignment-operators-runtime-semantics-evaluation
features: [class-fields-private]
flags: [generated]
info: |
sec-assignment-operators-runtime-semantics-evaluation
AssignmentExpression : LeftHandSideExpression AssignmentOperator AssignmentExpression
1. Let _lref_ be the result of evaluating |LeftHandSideExpression|.
2. Let _lval_ be ? GetValue(_lref_).
...
7. Let _r_ be ApplyStringOrNumericBinaryOperator(_lval_, _opText_, _rval_).
8. Perform ? PutValue(_lref_, _r_).
9. Return _r_.
sec-property-accessors-runtime-semantics-evaluation
MemberExpression : MemberExpression `.` PrivateIdentifier
1. Let _baseReference_ be the result of evaluating |MemberExpression|.
2. Let _baseValue_ be ? GetValue(_baseReference_).
3. Let _fieldNameString_ be the StringValue of |PrivateIdentifier|.
4. Return ! MakePrivateReference(_baseValue_, _fieldNameString_).
PutValue (V, W)
...
5.b. If IsPrivateReference(_V_) is *true*, then
i. Return ? PrivateSet(_baseObj_, _V_.[[ReferencedName]], _W_).
PrivateSet (O, P, value)
...
4. Else if _entry_.[[Kind]] is ~method~, then
a. Throw a *TypeError* exception.
--- |
1809 |
left-hand-side-private-reference-method-sub.js |
---
description: Compound subtraction assignment with target being a private reference (to a private method)
esid: sec-assignment-operators-runtime-semantics-evaluation
features: [class-fields-private]
flags: [generated]
info: |
sec-assignment-operators-runtime-semantics-evaluation
AssignmentExpression : LeftHandSideExpression AssignmentOperator AssignmentExpression
1. Let _lref_ be the result of evaluating |LeftHandSideExpression|.
2. Let _lval_ be ? GetValue(_lref_).
...
7. Let _r_ be ApplyStringOrNumericBinaryOperator(_lval_, _opText_, _rval_).
8. Perform ? PutValue(_lref_, _r_).
9. Return _r_.
sec-property-accessors-runtime-semantics-evaluation
MemberExpression : MemberExpression `.` PrivateIdentifier
1. Let _baseReference_ be the result of evaluating |MemberExpression|.
2. Let _baseValue_ be ? GetValue(_baseReference_).
3. Let _fieldNameString_ be the StringValue of |PrivateIdentifier|.
4. Return ! MakePrivateReference(_baseValue_, _fieldNameString_).
PutValue (V, W)
...
5.b. If IsPrivateReference(_V_) is *true*, then
i. Return ? PrivateSet(_baseObj_, _V_.[[ReferencedName]], _W_).
PrivateSet (O, P, value)
...
4. Else if _entry_.[[Kind]] is ~method~, then
a. Throw a *TypeError* exception.
--- |
1797 |
left-hand-side-private-reference-readonly-accessor-property-add.js |
---
description: Compound addition assignment with target being a private reference (to an accessor property with getter)
esid: sec-assignment-operators-runtime-semantics-evaluation
features: [class-fields-private]
flags: [generated]
info: |
sec-assignment-operators-runtime-semantics-evaluation
AssignmentExpression : LeftHandSideExpression AssignmentOperator AssignmentExpression
1. Let _lref_ be the result of evaluating |LeftHandSideExpression|.
2. Let _lval_ be ? GetValue(_lref_).
...
7. Let _r_ be ApplyStringOrNumericBinaryOperator(_lval_, _opText_, _rval_).
8. Perform ? PutValue(_lref_, _r_).
9. Return _r_.
sec-property-accessors-runtime-semantics-evaluation
MemberExpression : MemberExpression `.` PrivateIdentifier
1. Let _baseReference_ be the result of evaluating |MemberExpression|.
2. Let _baseValue_ be ? GetValue(_baseReference_).
3. Let _fieldNameString_ be the StringValue of |PrivateIdentifier|.
4. Return ! MakePrivateReference(_baseValue_, _fieldNameString_).
PutValue (V, W)
...
5.b. If IsPrivateReference(_V_) is *true*, then
i. Return ? PrivateSet(_baseObj_, _V_.[[ReferencedName]], _W_).
PrivateSet (O, P, value)
...
5.a. Assert: _entry_.[[Kind]] is ~accessor~.
b. If _entry_.[[Set]] is *undefined*, throw a *TypeError* exception.
--- |
1830 |
left-hand-side-private-reference-readonly-accessor-property-bitand.js |
---
description: Compound bitwise-and assignment with target being a private reference (to an accessor property with getter)
esid: sec-assignment-operators-runtime-semantics-evaluation
features: [class-fields-private]
flags: [generated]
info: |
sec-assignment-operators-runtime-semantics-evaluation
AssignmentExpression : LeftHandSideExpression AssignmentOperator AssignmentExpression
1. Let _lref_ be the result of evaluating |LeftHandSideExpression|.
2. Let _lval_ be ? GetValue(_lref_).
...
7. Let _r_ be ApplyStringOrNumericBinaryOperator(_lval_, _opText_, _rval_).
8. Perform ? PutValue(_lref_, _r_).
9. Return _r_.
sec-property-accessors-runtime-semantics-evaluation
MemberExpression : MemberExpression `.` PrivateIdentifier
1. Let _baseReference_ be the result of evaluating |MemberExpression|.
2. Let _baseValue_ be ? GetValue(_baseReference_).
3. Let _fieldNameString_ be the StringValue of |PrivateIdentifier|.
4. Return ! MakePrivateReference(_baseValue_, _fieldNameString_).
PutValue (V, W)
...
5.b. If IsPrivateReference(_V_) is *true*, then
i. Return ? PrivateSet(_baseObj_, _V_.[[ReferencedName]], _W_).
PrivateSet (O, P, value)
...
5.a. Assert: _entry_.[[Kind]] is ~accessor~.
b. If _entry_.[[Set]] is *undefined*, throw a *TypeError* exception.
--- |
1836 |
left-hand-side-private-reference-readonly-accessor-property-bitor.js |
---
description: Compound bitwise-or assignment with target being a private reference (to an accessor property with getter)
esid: sec-assignment-operators-runtime-semantics-evaluation
features: [class-fields-private]
flags: [generated]
info: |
sec-assignment-operators-runtime-semantics-evaluation
AssignmentExpression : LeftHandSideExpression AssignmentOperator AssignmentExpression
1. Let _lref_ be the result of evaluating |LeftHandSideExpression|.
2. Let _lval_ be ? GetValue(_lref_).
...
7. Let _r_ be ApplyStringOrNumericBinaryOperator(_lval_, _opText_, _rval_).
8. Perform ? PutValue(_lref_, _r_).
9. Return _r_.
sec-property-accessors-runtime-semantics-evaluation
MemberExpression : MemberExpression `.` PrivateIdentifier
1. Let _baseReference_ be the result of evaluating |MemberExpression|.
2. Let _baseValue_ be ? GetValue(_baseReference_).
3. Let _fieldNameString_ be the StringValue of |PrivateIdentifier|.
4. Return ! MakePrivateReference(_baseValue_, _fieldNameString_).
PutValue (V, W)
...
5.b. If IsPrivateReference(_V_) is *true*, then
i. Return ? PrivateSet(_baseObj_, _V_.[[ReferencedName]], _W_).
PrivateSet (O, P, value)
...
5.a. Assert: _entry_.[[Kind]] is ~accessor~.
b. If _entry_.[[Set]] is *undefined*, throw a *TypeError* exception.
--- |
1834 |
left-hand-side-private-reference-readonly-accessor-property-bitxor.js |
---
description: Compound bitwise-xor assignment with target being a private reference (to an accessor property with getter)
esid: sec-assignment-operators-runtime-semantics-evaluation
features: [class-fields-private]
flags: [generated]
info: |
sec-assignment-operators-runtime-semantics-evaluation
AssignmentExpression : LeftHandSideExpression AssignmentOperator AssignmentExpression
1. Let _lref_ be the result of evaluating |LeftHandSideExpression|.
2. Let _lval_ be ? GetValue(_lref_).
...
7. Let _r_ be ApplyStringOrNumericBinaryOperator(_lval_, _opText_, _rval_).
8. Perform ? PutValue(_lref_, _r_).
9. Return _r_.
sec-property-accessors-runtime-semantics-evaluation
MemberExpression : MemberExpression `.` PrivateIdentifier
1. Let _baseReference_ be the result of evaluating |MemberExpression|.
2. Let _baseValue_ be ? GetValue(_baseReference_).
3. Let _fieldNameString_ be the StringValue of |PrivateIdentifier|.
4. Return ! MakePrivateReference(_baseValue_, _fieldNameString_).
PutValue (V, W)
...
5.b. If IsPrivateReference(_V_) is *true*, then
i. Return ? PrivateSet(_baseObj_, _V_.[[ReferencedName]], _W_).
PrivateSet (O, P, value)
...
5.a. Assert: _entry_.[[Kind]] is ~accessor~.
b. If _entry_.[[Set]] is *undefined*, throw a *TypeError* exception.
--- |
1836 |
left-hand-side-private-reference-readonly-accessor-property-div.js |
---
description: Compound division assignment with target being a private reference (to an accessor property with getter)
esid: sec-assignment-operators-runtime-semantics-evaluation
features: [class-fields-private]
flags: [generated]
info: |
sec-assignment-operators-runtime-semantics-evaluation
AssignmentExpression : LeftHandSideExpression AssignmentOperator AssignmentExpression
1. Let _lref_ be the result of evaluating |LeftHandSideExpression|.
2. Let _lval_ be ? GetValue(_lref_).
...
7. Let _r_ be ApplyStringOrNumericBinaryOperator(_lval_, _opText_, _rval_).
8. Perform ? PutValue(_lref_, _r_).
9. Return _r_.
sec-property-accessors-runtime-semantics-evaluation
MemberExpression : MemberExpression `.` PrivateIdentifier
1. Let _baseReference_ be the result of evaluating |MemberExpression|.
2. Let _baseValue_ be ? GetValue(_baseReference_).
3. Let _fieldNameString_ be the StringValue of |PrivateIdentifier|.
4. Return ! MakePrivateReference(_baseValue_, _fieldNameString_).
PutValue (V, W)
...
5.b. If IsPrivateReference(_V_) is *true*, then
i. Return ? PrivateSet(_baseObj_, _V_.[[ReferencedName]], _W_).
PrivateSet (O, P, value)
...
5.a. Assert: _entry_.[[Kind]] is ~accessor~.
b. If _entry_.[[Set]] is *undefined*, throw a *TypeError* exception.
--- |
1830 |
left-hand-side-private-reference-readonly-accessor-property-exp.js |
---
description: Compound exponentiation assignment with target being a private reference (to an accessor property with getter)
esid: sec-assignment-operators-runtime-semantics-evaluation
features: [exponentiation, class-fields-private]
flags: [generated]
info: |
sec-assignment-operators-runtime-semantics-evaluation
AssignmentExpression : LeftHandSideExpression AssignmentOperator AssignmentExpression
1. Let _lref_ be the result of evaluating |LeftHandSideExpression|.
2. Let _lval_ be ? GetValue(_lref_).
...
7. Let _r_ be ApplyStringOrNumericBinaryOperator(_lval_, _opText_, _rval_).
8. Perform ? PutValue(_lref_, _r_).
9. Return _r_.
sec-property-accessors-runtime-semantics-evaluation
MemberExpression : MemberExpression `.` PrivateIdentifier
1. Let _baseReference_ be the result of evaluating |MemberExpression|.
2. Let _baseValue_ be ? GetValue(_baseReference_).
3. Let _fieldNameString_ be the StringValue of |PrivateIdentifier|.
4. Return ! MakePrivateReference(_baseValue_, _fieldNameString_).
PutValue (V, W)
...
5.b. If IsPrivateReference(_V_) is *true*, then
i. Return ? PrivateSet(_baseObj_, _V_.[[ReferencedName]], _W_).
PrivateSet (O, P, value)
...
5.a. Assert: _entry_.[[Kind]] is ~accessor~.
b. If _entry_.[[Set]] is *undefined*, throw a *TypeError* exception.
--- |
1853 |
left-hand-side-private-reference-readonly-accessor-property-lshift.js |
---
description: Compound left-shift assignment with target being a private reference (to an accessor property with getter)
esid: sec-assignment-operators-runtime-semantics-evaluation
features: [class-fields-private]
flags: [generated]
info: |
sec-assignment-operators-runtime-semantics-evaluation
AssignmentExpression : LeftHandSideExpression AssignmentOperator AssignmentExpression
1. Let _lref_ be the result of evaluating |LeftHandSideExpression|.
2. Let _lval_ be ? GetValue(_lref_).
...
7. Let _r_ be ApplyStringOrNumericBinaryOperator(_lval_, _opText_, _rval_).
8. Perform ? PutValue(_lref_, _r_).
9. Return _r_.
sec-property-accessors-runtime-semantics-evaluation
MemberExpression : MemberExpression `.` PrivateIdentifier
1. Let _baseReference_ be the result of evaluating |MemberExpression|.
2. Let _baseValue_ be ? GetValue(_baseReference_).
3. Let _fieldNameString_ be the StringValue of |PrivateIdentifier|.
4. Return ! MakePrivateReference(_baseValue_, _fieldNameString_).
PutValue (V, W)
...
5.b. If IsPrivateReference(_V_) is *true*, then
i. Return ? PrivateSet(_baseObj_, _V_.[[ReferencedName]], _W_).
PrivateSet (O, P, value)
...
5.a. Assert: _entry_.[[Kind]] is ~accessor~.
b. If _entry_.[[Set]] is *undefined*, throw a *TypeError* exception.
--- |
1836 |
left-hand-side-private-reference-readonly-accessor-property-mod.js |
---
description: Compound modulo assignment with target being a private reference (to an accessor property with getter)
esid: sec-assignment-operators-runtime-semantics-evaluation
features: [class-fields-private]
flags: [generated]
info: |
sec-assignment-operators-runtime-semantics-evaluation
AssignmentExpression : LeftHandSideExpression AssignmentOperator AssignmentExpression
1. Let _lref_ be the result of evaluating |LeftHandSideExpression|.
2. Let _lval_ be ? GetValue(_lref_).
...
7. Let _r_ be ApplyStringOrNumericBinaryOperator(_lval_, _opText_, _rval_).
8. Perform ? PutValue(_lref_, _r_).
9. Return _r_.
sec-property-accessors-runtime-semantics-evaluation
MemberExpression : MemberExpression `.` PrivateIdentifier
1. Let _baseReference_ be the result of evaluating |MemberExpression|.
2. Let _baseValue_ be ? GetValue(_baseReference_).
3. Let _fieldNameString_ be the StringValue of |PrivateIdentifier|.
4. Return ! MakePrivateReference(_baseValue_, _fieldNameString_).
PutValue (V, W)
...
5.b. If IsPrivateReference(_V_) is *true*, then
i. Return ? PrivateSet(_baseObj_, _V_.[[ReferencedName]], _W_).
PrivateSet (O, P, value)
...
5.a. Assert: _entry_.[[Kind]] is ~accessor~.
b. If _entry_.[[Set]] is *undefined*, throw a *TypeError* exception.
--- |
1828 |
left-hand-side-private-reference-readonly-accessor-property-mult.js |
---
description: Compound multiplication assignment with target being a private reference (to an accessor property with getter)
esid: sec-assignment-operators-runtime-semantics-evaluation
features: [class-fields-private]
flags: [generated]
info: |
sec-assignment-operators-runtime-semantics-evaluation
AssignmentExpression : LeftHandSideExpression AssignmentOperator AssignmentExpression
1. Let _lref_ be the result of evaluating |LeftHandSideExpression|.
2. Let _lval_ be ? GetValue(_lref_).
...
7. Let _r_ be ApplyStringOrNumericBinaryOperator(_lval_, _opText_, _rval_).
8. Perform ? PutValue(_lref_, _r_).
9. Return _r_.
sec-property-accessors-runtime-semantics-evaluation
MemberExpression : MemberExpression `.` PrivateIdentifier
1. Let _baseReference_ be the result of evaluating |MemberExpression|.
2. Let _baseValue_ be ? GetValue(_baseReference_).
3. Let _fieldNameString_ be the StringValue of |PrivateIdentifier|.
4. Return ! MakePrivateReference(_baseValue_, _fieldNameString_).
PutValue (V, W)
...
5.b. If IsPrivateReference(_V_) is *true*, then
i. Return ? PrivateSet(_baseObj_, _V_.[[ReferencedName]], _W_).
PrivateSet (O, P, value)
...
5.a. Assert: _entry_.[[Kind]] is ~accessor~.
b. If _entry_.[[Set]] is *undefined*, throw a *TypeError* exception.
--- |
1837 |
left-hand-side-private-reference-readonly-accessor-property-rshift.js |
---
description: Compound right-shift assignment with target being a private reference (to an accessor property with getter)
esid: sec-assignment-operators-runtime-semantics-evaluation
features: [class-fields-private]
flags: [generated]
info: |
sec-assignment-operators-runtime-semantics-evaluation
AssignmentExpression : LeftHandSideExpression AssignmentOperator AssignmentExpression
1. Let _lref_ be the result of evaluating |LeftHandSideExpression|.
2. Let _lval_ be ? GetValue(_lref_).
...
7. Let _r_ be ApplyStringOrNumericBinaryOperator(_lval_, _opText_, _rval_).
8. Perform ? PutValue(_lref_, _r_).
9. Return _r_.
sec-property-accessors-runtime-semantics-evaluation
MemberExpression : MemberExpression `.` PrivateIdentifier
1. Let _baseReference_ be the result of evaluating |MemberExpression|.
2. Let _baseValue_ be ? GetValue(_baseReference_).
3. Let _fieldNameString_ be the StringValue of |PrivateIdentifier|.
4. Return ! MakePrivateReference(_baseValue_, _fieldNameString_).
PutValue (V, W)
...
5.b. If IsPrivateReference(_V_) is *true*, then
i. Return ? PrivateSet(_baseObj_, _V_.[[ReferencedName]], _W_).
PrivateSet (O, P, value)
...
5.a. Assert: _entry_.[[Kind]] is ~accessor~.
b. If _entry_.[[Set]] is *undefined*, throw a *TypeError* exception.
--- |
1838 |
left-hand-side-private-reference-readonly-accessor-property-srshift.js |
---
description: Compound signed-right-shift assignment with target being a private reference (to an accessor property with getter)
esid: sec-assignment-operators-runtime-semantics-evaluation
features: [class-fields-private]
flags: [generated]
info: |
sec-assignment-operators-runtime-semantics-evaluation
AssignmentExpression : LeftHandSideExpression AssignmentOperator AssignmentExpression
1. Let _lref_ be the result of evaluating |LeftHandSideExpression|.
2. Let _lval_ be ? GetValue(_lref_).
...
7. Let _r_ be ApplyStringOrNumericBinaryOperator(_lval_, _opText_, _rval_).
8. Perform ? PutValue(_lref_, _r_).
9. Return _r_.
sec-property-accessors-runtime-semantics-evaluation
MemberExpression : MemberExpression `.` PrivateIdentifier
1. Let _baseReference_ be the result of evaluating |MemberExpression|.
2. Let _baseValue_ be ? GetValue(_baseReference_).
3. Let _fieldNameString_ be the StringValue of |PrivateIdentifier|.
4. Return ! MakePrivateReference(_baseValue_, _fieldNameString_).
PutValue (V, W)
...
5.b. If IsPrivateReference(_V_) is *true*, then
i. Return ? PrivateSet(_baseObj_, _V_.[[ReferencedName]], _W_).
PrivateSet (O, P, value)
...
5.a. Assert: _entry_.[[Kind]] is ~accessor~.
b. If _entry_.[[Set]] is *undefined*, throw a *TypeError* exception.
--- |
1845 |
left-hand-side-private-reference-readonly-accessor-property-sub.js |
---
description: Compound subtraction assignment with target being a private reference (to an accessor property with getter)
esid: sec-assignment-operators-runtime-semantics-evaluation
features: [class-fields-private]
flags: [generated]
info: |
sec-assignment-operators-runtime-semantics-evaluation
AssignmentExpression : LeftHandSideExpression AssignmentOperator AssignmentExpression
1. Let _lref_ be the result of evaluating |LeftHandSideExpression|.
2. Let _lval_ be ? GetValue(_lref_).
...
7. Let _r_ be ApplyStringOrNumericBinaryOperator(_lval_, _opText_, _rval_).
8. Perform ? PutValue(_lref_, _r_).
9. Return _r_.
sec-property-accessors-runtime-semantics-evaluation
MemberExpression : MemberExpression `.` PrivateIdentifier
1. Let _baseReference_ be the result of evaluating |MemberExpression|.
2. Let _baseValue_ be ? GetValue(_baseReference_).
3. Let _fieldNameString_ be the StringValue of |PrivateIdentifier|.
4. Return ! MakePrivateReference(_baseValue_, _fieldNameString_).
PutValue (V, W)
...
5.b. If IsPrivateReference(_V_) is *true*, then
i. Return ? PrivateSet(_baseObj_, _V_.[[ReferencedName]], _W_).
PrivateSet (O, P, value)
...
5.a. Assert: _entry_.[[Kind]] is ~accessor~.
b. If _entry_.[[Set]] is *undefined*, throw a *TypeError* exception.
--- |
1833 |
left-shift-non-simple.js |
---
esid: sec-assignment-operators-static-semantics-early-errors
info: |
It is an early Syntax Error if AssignmentTargetType of
LeftHandSideExpression is invalid or strict.
description: Compound "left shift" assignment with non-simple target
negative:
phase: parse
type: SyntaxError
--- |
496 |
lshift-arguments-strict-strict.js |
---
es5id: 11.13.2-6-17-s
esid: sec-assignment-operators
description: >
Strict Mode - SyntaxError is thrown if the identifier arguments
appear as the LeftHandSideExpression of a Compound Assignment
operator(<<=)
flags: [onlyStrict]
negative:
phase: parse
type: SyntaxError
--- |
516 |
lshift-eval-strict-strict.js |
---
es5id: 11.13.2-6-6-s
esid: sec-assignment-operators
description: >
Strict Mode - SyntaxError is thrown if the identifier eval appear
as the LeftHandSideExpression of a Compound Assignment
operator(<<=)
flags: [onlyStrict]
negative:
phase: parse
type: SyntaxError
--- |
505 |
lshift-whitespace.js |
---
info: |
White Space and Line Terminator between LeftHandSideExpression and "@="
or between "@=" and AssignmentExpression are allowed
es5id: 11.13.2_A1_T6
esid: sec-assignment-operators
description: Checking by using eval, check operator is x <<= y
--- |
1653 |
mod-arguments-strict-strict.js |
---
es5id: 11.13.2-6-14-s
esid: sec-assignment-operators
description: >
Strict Mode - SyntaxError is thrown if the identifier arguments
appear as the LeftHandSideExpression of a Compound Assignment
operator(%=)
flags: [onlyStrict]
negative:
phase: parse
type: SyntaxError
--- |
514 |
mod-div-non-simple.js |
---
esid: sec-assignment-operators-static-semantics-early-errors
info: |
It is an early Syntax Error if AssignmentTargetType of
LeftHandSideExpression is invalid or strict.
description: Compound "modular division" assignment with non-simple target
negative:
phase: parse
type: SyntaxError
--- |
501 |
mod-eval-strict-strict.js |
---
es5id: 11.13.2-6-3-s
esid: sec-assignment-operators
description: >
Strict Mode - SyntaxError is thrown if the identifier eval appear
as the LeftHandSideExpression of a Compound Assignment operator(%=)
flags: [onlyStrict]
negative:
phase: parse
type: SyntaxError
--- |
499 |
mod-whitespace.js |
---
info: |
White Space and Line Terminator between LeftHandSideExpression and "@="
or between "@=" and AssignmentExpression are allowed
es5id: 11.13.2_A1_T3
esid: sec-assignment-operators
description: Checking by using eval, check operator is x %= y
--- |
1682 |
mult-arguments-strict-strict.js |
---
es5id: 11.13.2-6-12-s
esid: sec-assignment-operators
description: >
Strict Mode - SyntaxError is thrown if the identifier arguments
appear as the LeftHandSideExpression of a Compound Assignment
operator(*=)
flags: [onlyStrict]
negative:
phase: parse
type: SyntaxError
--- |
514 |
mult-eval-strict-strict.js |
---
es5id: 11.13.2-6-1-s
esid: sec-assignment-operators
description: >
Strict Mode - SyntaxError is thrown if the identifier eval appear
as the LeftHandSideExpression of a Compound Assignment operator(*=)
flags: [onlyStrict]
negative:
phase: parse
type: SyntaxError
--- |
499 |
mult-non-simple.js |
---
esid: sec-assignment-operators-static-semantics-early-errors
info: |
It is an early Syntax Error if AssignmentTargetType of
LeftHandSideExpression is invalid or strict.
description: Compound multiplication assignment with non-simple target
negative:
phase: parse
type: SyntaxError
--- |
497 |
mult-whitespace.js |
---
info: |
White Space and Line Terminator between LeftHandSideExpression and "@="
or between "@=" and AssignmentExpression are allowed
es5id: 11.13.2_A1_T1
esid: sec-assignment-operators
description: Checking by using eval, check operator is x *= y
--- |
1662 |
or-arguments-strict-strict.js |
---
es5id: 11.13.2-6-22-s
esid: sec-assignment-operators
description: >
Strict Mode - SyntaxError is thrown if the identifier arguments
appear as the LeftHandSideExpression of a Compound Assignment
operator(|=)
flags: [onlyStrict]
negative:
phase: parse
type: SyntaxError
--- |
514 |
or-eval-strict-strict.js |
---
es5id: 11.13.2-6-11-s
esid: sec-assignment-operators
description: >
Strict Mode - SyntaxError is thrown if the identifier eval appear
as the LeftHandSideExpression of a Compound Assignment operator(|=)
flags: [onlyStrict]
negative:
phase: parse
type: SyntaxError
--- |
500 |
or-whitespace.js |
---
info: |
White Space and Line Terminator between LeftHandSideExpression and "@="
or between "@=" and AssignmentExpression are allowed
es5id: 11.13.2_A1_T11
esid: sec-assignment-operators
description: Checking by using eval, check operator is x |= y
--- |
1643 |
right-shift-non-simple.js |
---
esid: sec-assignment-operators-static-semantics-early-errors
info: |
It is an early Syntax Error if AssignmentTargetType of
LeftHandSideExpression is invalid or strict.
description: Compound "right shift" assignment with non-simple target
negative:
phase: parse
type: SyntaxError
--- |
497 |
S11.13.2_A2.1_T1.1.js |
---
info: Operator uses GetValue
es5id: 11.13.2_A2.1_T1.1
description: >
Either Type is not Reference or GetBase is not null, check
opeartor is "x *= y"
--- |
640 |
S11.13.2_A2.1_T1.2.js |
---
info: Operator uses GetValue
es5id: 11.13.2_A2.1_T1.2
description: >
Either Type is not Reference or GetBase is not null, check
opeartor is "x /= y"
--- |
640 |
S11.13.2_A2.1_T1.3.js |
---
info: Operator uses GetValue
es5id: 11.13.2_A2.1_T1.3
description: >
Either Type is not Reference or GetBase is not null, check
opeartor is "x %= y"
--- |
640 |
S11.13.2_A2.1_T1.4.js |
---
info: Operator uses GetValue
es5id: 11.13.2_A2.1_T1.4
description: >
Either Type is not Reference or GetBase is not null, check
opeartor is "x += y"
--- |
632 |
S11.13.2_A2.1_T1.5.js |
---
info: Operator uses GetValue
es5id: 11.13.2_A2.1_T1.5
description: >
Either Type is not Reference or GetBase is not null, check
opeartor is "x -= y"
--- |
632 |
S11.13.2_A2.1_T1.6.js |
---
info: Operator uses GetValue
es5id: 11.13.2_A2.1_T1.6
description: >
Either Type is not Reference or GetBase is not null, check
opeartor is "x <<= y"
--- |
637 |
S11.13.2_A2.1_T1.7.js |
---
info: Operator uses GetValue
es5id: 11.13.2_A2.1_T1.7
description: >
Either Type is not Reference or GetBase is not null, check
opeartor is "x >>= y"
--- |
637 |
S11.13.2_A2.1_T1.8.js |
---
info: Operator uses GetValue
es5id: 11.13.2_A2.1_T1.8
description: >
Either Type is not Reference or GetBase is not null, check
opeartor is "x >>>= y"
--- |
642 |
S11.13.2_A2.1_T1.9.js |
---
info: Operator uses GetValue
es5id: 11.13.2_A2.1_T1.9
description: >
Either Type is not Reference or GetBase is not null, check
opeartor is "x &= y"
--- |
632 |
S11.13.2_A2.1_T1.10.js |
---
info: Operator uses GetValue
es5id: 11.13.2_A2.1_T1.10
description: >
Either Type is not Reference or GetBase is not null, check
opeartor is "x ^= y"
--- |
633 |
S11.13.2_A2.1_T1.11.js |
---
info: Operator uses GetValue
es5id: 11.13.2_A2.1_T1.11
description: >
Either Type is not Reference or GetBase is not null, check
opeartor is "x |= y"
--- |
633 |
S11.13.2_A2.1_T2.1.js |
---
info: Operator uses GetValue
es5id: 11.13.2_A2.1_T2.1
description: >
If GetBase(AssigmentExpression) is null, throw ReferenceError.
Check operator is "x *= y"
--- |
638 |
S11.13.2_A2.1_T2.2.js |
---
info: Operator uses GetValue
es5id: 11.13.2_A2.1_T2.2
description: >
If GetBase(AssigmentExpression) is null, throw ReferenceError.
Check operator is "x /= y"
--- |
638 |
S11.13.2_A2.1_T2.3.js |
---
info: Operator uses GetValue
es5id: 11.13.2_A2.1_T2.3
description: >
If GetBase(AssigmentExpression) is null, throw ReferenceError.
Check operator is "x %= y"
--- |
638 |
S11.13.2_A2.1_T2.4.js |
---
info: Operator uses GetValue
es5id: 11.13.2_A2.1_T2.4
description: >
If GetBase(AssigmentExpression) is null, throw ReferenceError.
Check operator is "x += y"
--- |
638 |
S11.13.2_A2.1_T2.5.js |
---
info: Operator uses GetValue
es5id: 11.13.2_A2.1_T2.5
description: >
If GetBase(AssigmentExpression) is null, throw ReferenceError.
Check operator is "x -= y"
--- |
638 |
S11.13.2_A2.1_T2.6.js |
---
info: Operator uses GetValue
es5id: 11.13.2_A2.1_T2.6
description: >
If GetBase(AssigmentExpression) is null, throw ReferenceError.
Check operator is "x <<= y"
--- |
642 |
S11.13.2_A2.1_T2.7.js |
---
info: Operator uses GetValue
es5id: 11.13.2_A2.1_T2.7
description: >
If GetBase(AssigmentExpression) is null, throw ReferenceError.
Check operator is "x >>= y"
--- |
642 |
S11.13.2_A2.1_T2.8.js |
---
info: Operator uses GetValue
es5id: 11.13.2_A2.1_T2.8
description: >
If GetBase(AssigmentExpression) is null, throw ReferenceError.
Check operator is "x >>>= y"
--- |
646 |
S11.13.2_A2.1_T2.9.js |
---
info: Operator uses GetValue
es5id: 11.13.2_A2.1_T2.9
description: >
If GetBase(AssigmentExpression) is null, throw ReferenceError.
Check operator is "x &= y"
--- |
638 |
S11.13.2_A2.1_T2.10.js |
---
info: Operator uses GetValue
es5id: 11.13.2_A2.1_T2.10
description: >
If GetBase(AssigmentExpression) is null, throw ReferenceError.
Check operator is "x ^= y"
--- |
639 |
S11.13.2_A2.1_T2.11.js |
---
info: Operator uses GetValue
es5id: 11.13.2_A2.1_T2.11
description: >
If GetBase(AssigmentExpression) is null, throw ReferenceError.
Check operator is "x |= y"
--- |
639 |
S11.13.2_A2.1_T3.1.js |
---
info: Operator uses GetValue
es5id: 11.13.2_A2.1_T3.1
description: >
If GetBase(LeftHandSideExpression) is null, throw ReferenceError.
Check operator is "x *= y"
--- |
606 |
S11.13.2_A2.1_T3.2.js |
---
info: Operator uses GetValue
es5id: 11.13.2_A2.1_T3.2
description: >
If GetBase(LeftHandSideExpression) is null, throw ReferenceError.
Check operator is "x /= y"
--- |
606 |
S11.13.2_A2.1_T3.3.js |
---
info: Operator uses GetValue
es5id: 11.13.2_A2.1_T3.3
description: >
If GetBase(LeftHandSideExpression) is null, throw ReferenceError.
Check operator is "x %= y"
--- |
606 |
S11.13.2_A2.1_T3.4.js |
---
info: Operator uses GetValue
es5id: 11.13.2_A2.1_T3.4
description: >
If GetBase(LeftHandSideExpression) is null, throw ReferenceError.
Check operator is "x += y"
--- |
606 |
S11.13.2_A2.1_T3.5.js |
---
info: Operator uses GetValue
es5id: 11.13.2_A2.1_T3.5
description: >
If GetBase(LeftHandSideExpression) is null, throw ReferenceError.
Check operator is "x -= y"
--- |
606 |
S11.13.2_A2.1_T3.6.js |
---
info: Operator uses GetValue
es5id: 11.13.2_A2.1_T3.6
description: >
If GetBase(LeftHandSideExpression) is null, throw ReferenceError.
Check operator is "x <<= y"
--- |
610 |
S11.13.2_A2.1_T3.7.js |
---
info: Operator uses GetValue
es5id: 11.13.2_A2.1_T3.7
description: >
If GetBase(LeftHandSideExpression) is null, throw ReferenceError.
Check operator is "x >>= y"
--- |
610 |
S11.13.2_A2.1_T3.8.js |
---
info: Operator uses GetValue
es5id: 11.13.2_A2.1_T3.8
description: >
If GetBase(LeftHandSideExpression) is null, throw ReferenceError.
Check operator is "x >>>= y"
--- |
614 |
S11.13.2_A2.1_T3.9.js |
---
info: Operator uses GetValue
es5id: 11.13.2_A2.1_T3.9
description: >
If GetBase(LeftHandSideExpression) is null, throw ReferenceError.
Check operator is "x &= y"
--- |
606 |
S11.13.2_A2.1_T3.10.js |
---
info: Operator uses GetValue
es5id: 11.13.2_A2.1_T3.10
description: >
If GetBase(LeftHandSideExpression) is null, throw ReferenceError.
Check operator is "x ^= y"
--- |
607 |
S11.13.2_A2.1_T3.11.js |
---
info: Operator uses GetValue
es5id: 11.13.2_A2.1_T3.11
description: >
If GetBase(LeftHandSideExpression) is null, throw ReferenceError.
Check operator is "x |= y"
--- |
607 |
S11.13.2_A3.1_T1.js |
---
info: Operator x @= y uses PutValue(x, x @ y)
es5id: 11.13.2_A3.1_T1
description: Checking Expression and Variable statements for x *= y
--- |
558 |
S11.13.2_A3.1_T2.js |
---
info: Operator x @= y uses PutValue(x, x @ y)
es5id: 11.13.2_A3.1_T2
description: Checking Expression and Variable statements for x /= y
--- |
558 |
S11.13.2_A3.1_T3.js |
---
info: Operator x @= y uses PutValue(x, x @ y)
es5id: 11.13.2_A3.1_T3
description: Checking Expression and Variable statements for x %= y
--- |
558 |
S11.13.2_A3.1_T4.js |
---
info: Operator x @= y uses PutValue(x, x @ y)
es5id: 11.13.2_A3.1_T4
description: Checking Expression and Variable statements for x += y
--- |
550 |
S11.13.2_A3.1_T5.js |
---
info: Operator x @= y uses PutValue(x, x @ y)
es5id: 11.13.2_A3.1_T5
description: Checking Expression and Variable statements for x -= y
--- |
558 |
S11.13.2_A3.1_T6.js |
---
info: Operator x @= y uses PutValue(x, x @ y)
es5id: 11.13.2_A3.1_T6
description: Checking Expression and Variable statements for x <<= y
--- |
555 |
S11.13.2_A3.1_T7.js |
---
info: Operator x @= y uses PutValue(x, x @ y)
es5id: 11.13.2_A3.1_T7
description: Checking Expression and Variable statements for x >>= y
--- |
555 |
S11.13.2_A3.1_T8.js |
---
info: Operator x @= y uses PutValue(x, x @ y)
es5id: 11.13.2_A3.1_T8
description: Checking Expression and Variable statements for x >>>= y
--- |
560 |
S11.13.2_A3.1_T9.js |
---
info: Operator x @= y uses PutValue(x, x @ y)
es5id: 11.13.2_A3.1_T9
description: Checking Expression and Variable statements for x &= y
--- |
550 |
S11.13.2_A3.1_T10.js |
---
info: Operator x @= y uses PutValue(x, x @ y)
es5id: 11.13.2_A3.1_T10
description: Checking Expression and Variable statements for x ^= y
--- |
551 |
S11.13.2_A3.1_T11.js |
---
info: Operator x @= y uses PutValue(x, x @ y)
es5id: 11.13.2_A3.1_T11
description: Checking Expression and Variable statements for x |= y
--- |
551 |
S11.13.2_A3.2_T1.js |
---
info: Operator x @= y returns x @ y
es5id: 11.13.2_A3.2_T1
description: Checking Expression and Variable statements for x *= y
--- |
597 |
S11.13.2_A3.2_T2.js |
---
info: Operator x @= y returns x @ y
es5id: 11.13.2_A3.2_T2
description: Checking Expression and Variable statements for x /= y
--- |
597 |
S11.13.2_A3.2_T3.js |
---
info: Operator x @= y returns x @ y
es5id: 11.13.2_A3.2_T3
description: Checking Expression and Variable statements for x %= y
--- |
597 |
S11.13.2_A3.2_T4.js |
---
info: Operator x @= y returns x @ y
es5id: 11.13.2_A3.2_T4
description: Checking Expression and Variable statements for x += y
--- |
589 |
S11.13.2_A3.2_T5.js |
---
info: Operator x @= y returns x @ y
es5id: 11.13.2_A3.2_T5
description: Checking Expression and Variable statements for x -= y
--- |
597 |
S11.13.2_A3.2_T6.js |
---
info: Operator x @= y returns x @ y
es5id: 11.13.2_A3.2_T6
description: Checking Expression and Variable statements for x <<= y
--- |
594 |
S11.13.2_A3.2_T7.js |
---
info: Operator x @= y returns x @ y
es5id: 11.13.2_A3.2_T7
description: Checking Expression and Variable statements for x >>= y
--- |
594 |
S11.13.2_A3.2_T8.js |
---
info: Operator x @= y returns x @ y
es5id: 11.13.2_A3.2_T8
description: Checking Expression and Variable statements for x >>>= y
--- |
599 |
S11.13.2_A3.2_T9.js |
---
info: Operator x @= y returns x @ y
es5id: 11.13.2_A3.2_T9
description: Checking Expression and Variable statements for x &= y
--- |
589 |
S11.13.2_A3.2_T10.js |
---
info: Operator x @= y returns x @ y
es5id: 11.13.2_A3.2_T10
description: Checking Expression and Variable statements for x ^= y
--- |
590 |
S11.13.2_A3.2_T11.js |
---
info: Operator x @= y returns x @ y
es5id: 11.13.2_A3.2_T11
description: Checking Expression and Variable statements for x |= y
--- |
590 |
S11.13.2_A4.1_T1.1.js |
---
info: The production x *= y is the same as the production x = x * y
es5id: 11.13.2_A4.1_T1.1
description: >
Type(x) and Type(y) vary between primitive boolean and Boolean
object
--- |
973 |
S11.13.2_A4.1_T1.2.js |
---
info: The production x *= y is the same as the production x = x * y
es5id: 11.13.2_A4.1_T1.2
description: Type(x) and Type(y) vary between primitive number and Number object
--- |
905 |
S11.13.2_A4.1_T1.3.js |
---
info: The production x *= y is the same as the production x = x * y
es5id: 11.13.2_A4.1_T1.3
description: Type(x) and Type(y) vary between primitive string and String object
--- |
1225 |
S11.13.2_A4.1_T1.4.js |
---
info: The production x *= y is the same as the production x = x * y
es5id: 11.13.2_A4.1_T1.4
description: Type(x) and Type(y) vary between Null and Undefined
--- |
944 |
S11.13.2_A4.1_T2.1.js |
---
info: The production x *= y is the same as the production x = x * y
es5id: 11.13.2_A4.1_T2.1
description: >
Type(x) is different from Type(y) and both types vary between
Boolean (primitive or object) and Number (primitive and object)
--- |
1585 |
S11.13.2_A4.1_T2.2.js |
---
info: The production x *= y is the same as the production x = x * y
es5id: 11.13.2_A4.1_T2.2
description: >
Type(x) is different from Type(y) and both types vary between
Number (primitive or object) and String (primitive and object)
--- |
1842 |
S11.13.2_A4.1_T2.3.js |
---
info: The production x *= y is the same as the production x = x * y
es5id: 11.13.2_A4.1_T2.3
description: >
Type(x) is different from Type(y) and both types vary between
Number (primitive or object) and Null
--- |
923 |
S11.13.2_A4.1_T2.4.js |
---
info: The production x *= y is the same as the production x = x * y
es5id: 11.13.2_A4.1_T2.4
description: >
Type(x) is different from Type(y) and both types vary between
Number (primitive or object) and Undefined
--- |
1052 |
S11.13.2_A4.1_T2.5.js |
---
info: The production x *= y is the same as the production x = x * y
es5id: 11.13.2_A4.1_T2.5
description: >
Type(x) is different from Type(y) and both types vary between
String (primitive or object) amd Boolean (primitive and object)
--- |
1617 |
S11.13.2_A4.1_T2.6.js |
---
info: The production x *= y is the same as the production x = x * y
es5id: 11.13.2_A4.1_T2.6
description: >
Type(x) is different from Type(y) and both types vary between
primitive String (primitive or object) and Undefined
--- |
1078 |
S11.13.2_A4.1_T2.7.js |
---
info: The production x *= y is the same as the production x = x * y
es5id: 11.13.2_A4.1_T2.7
description: >
Type(x) is different from Type(y) and both types vary between
String (primitive or object) and Null
--- |
939 |
S11.13.2_A4.1_T2.8.js |
---
info: The production x *= y is the same as the production x = x * y
es5id: 11.13.2_A4.1_T2.8
description: >
Type(x) is different from Type(y) and both types vary between
Boolean (primitive or object) and Undefined
--- |
1081 |
S11.13.2_A4.1_T2.9.js |
---
info: The production x *= y is the same as the production x = x * y
es5id: 11.13.2_A4.1_T2.9
description: >
Type(x) is different from Type(y) and both types vary between
Boolean (primitive or object) and Null
--- |
952 |
S11.13.2_A4.2_T1.1.js |
---
info: The production x /= y is the same as x = x / y
es5id: 11.13.2_A4.2_T1.1
description: >
Type(x) and Type(y) vary between primitive boolean and Boolean
object
--- |
958 |
S11.13.2_A4.2_T1.2.js |
---
info: The production x /= y is the same as x = x / y
es5id: 11.13.2_A4.2_T1.2
description: Type(x) and Type(y) vary between primitive number and Number object
--- |
890 |
S11.13.2_A4.2_T1.3.js |
---
info: The production x /= y is the same as x = x / y
es5id: 11.13.2_A4.2_T1.3
description: Type(x) and Type(y) vary between primitive string and String object
--- |
1210 |
S11.13.2_A4.2_T1.4.js |
---
info: The production x /= y is the same as x = x / y
es5id: 11.13.2_A4.2_T1.4
description: Type(x) and Type(y) vary between Null and Undefined
--- |
950 |
S11.13.2_A4.2_T2.1.js |
---
info: The production x /= y is the same as x = x / y
es5id: 11.13.2_A4.2_T2.1
description: >
Type(x) is different from Type(y) and both types vary between
Number (primitive or object) and Boolean (primitive and object)
--- |
1570 |
S11.13.2_A4.2_T2.2.js |
---
info: The production x /= y is the same as x = x / y
es5id: 11.13.2_A4.2_T2.2
description: >
Type(x) is different from Type(y) and both types vary between
Number (primitive or object) and String (primitive and object)
--- |
1827 |
S11.13.2_A4.2_T2.3.js |
---
info: The production x /= y is the same as x = x / y
es5id: 11.13.2_A4.2_T2.3
description: >
Type(x) is different from Type(y) and both types vary between
Number (primitive or object) and Null
--- |
970 |
S11.13.2_A4.2_T2.4.js |
---
info: The production x /= y is the same as x = x / y
es5id: 11.13.2_A4.2_T2.4
description: >
Type(x) is different from Type(y) and both types vary between
Number (primitive or object) and Undefined
--- |
1037 |
S11.13.2_A4.2_T2.5.js |
---
info: The production x /= y is the same as x = x / y
es5id: 11.13.2_A4.2_T2.5
description: >
Type(x) is different from Type(y) and both types vary between
String (primitive or object) and Boolean (primitive and object)
--- |
1602 |
S11.13.2_A4.2_T2.6.js |
---
info: The production x /= y is the same as x = x / y
es5id: 11.13.2_A4.2_T2.6
description: >
Type(x) is different from Type(y) and both types vary between
String (primitive or object) and Undefined
--- |
1053 |
S11.13.2_A4.2_T2.7.js |
---
info: The production x /= y is the same as x = x / y
es5id: 11.13.2_A4.2_T2.7
description: >
Type(x) is different from Type(y) and both types vary between
String (primitive or object) and Null
--- |
986 |
S11.13.2_A4.2_T2.8.js |
---
info: The production x /= y is the same as x = x / y
es5id: 11.13.2_A4.2_T2.8
description: >
Type(x) is different from Type(y) and both types vary between
Boolean (primitive or object) and Undefined
--- |
1066 |
S11.13.2_A4.2_T2.9.js |
---
info: The production x /= y is the same as x = x / y
es5id: 11.13.2_A4.2_T2.9
description: >
Type(x) is different from Type(y) and both types vary between
Boolean (primitive or object) and Null
--- |
999 |
S11.13.2_A4.3_T1.1.js |
---
info: The production x %= y is the same as x = x % y
es5id: 11.13.2_A4.3_T1.1
description: >
Type(x) and Type(y) vary between primitive boolean and Boolean
object
--- |
958 |
S11.13.2_A4.3_T1.2.js |
---
info: The production x %= y is the same as x = x % y
es5id: 11.13.2_A4.3_T1.2
description: Type(x) and Type(y) vary between primitive number and Number object
--- |
890 |
S11.13.2_A4.3_T1.3.js |
---
info: The production x %= y is the same as x = x % y
es5id: 11.13.2_A4.3_T1.3
description: Type(x) and Type(y) vary between primitive string and String object
--- |
1210 |
S11.13.2_A4.3_T1.4.js |
---
info: The production x %= y is the same as x = x % y
es5id: 11.13.2_A4.3_T1.4
description: Type(x) and Type(y) vary between Null and Undefined
--- |
950 |
S11.13.2_A4.3_T2.1.js |
---
info: The production x %= y is the same as x = x % y
es5id: 11.13.2_A4.3_T2.1
description: >
Type(x) is different from Type(y) and both types vary between
Number (primitive or object) and Boolean (primitive and object)
--- |
1570 |
S11.13.2_A4.3_T2.2.js |
---
info: The production x %= y is the same as x = x % y
es5id: 11.13.2_A4.3_T2.2
description: >
Type(x) is different from Type(y) and both types vary between
Number (primitive or object) and String (primitive and object)
--- |
1827 |
S11.13.2_A4.3_T2.3.js |
---
info: The production x %= y is the same as x = x % y
es5id: 11.13.2_A4.3_T2.3
description: >
Type(x) is different from Type(y) and both types vary between
Number (primitive or object) and Null
--- |
950 |
S11.13.2_A4.3_T2.4.js |
---
info: The production x %= y is the same as x = x % y
es5id: 11.13.2_A4.3_T2.4
description: >
Type(x) is different from Type(y) and both types vary between
Number (primitive or object) and Undefined
--- |
1037 |
S11.13.2_A4.3_T2.5.js |
---
info: The production x %= y is the same as x = x % y
es5id: 11.13.2_A4.3_T2.5
description: >
Type(x) is different from Type(y) and both types vary between
String (primitive or object) and Boolean (primitive and object)
--- |
1602 |
S11.13.2_A4.3_T2.6.js |
---
info: The production x %= y is the same as x = x % y
es5id: 11.13.2_A4.3_T2.6
description: >
Type(x) is different from Type(y) and both types vary between
String (primitive or object) and Undefined
--- |
1053 |
S11.13.2_A4.3_T2.7.js |
---
info: The production x %= y is the same as x = x % y
es5id: 11.13.2_A4.3_T2.7
description: >
Type(x) is different from Type(y) and both types vary between
String (primitive or object) and Null
--- |
966 |
S11.13.2_A4.3_T2.8.js |
---
info: The production x %= y is the same as x = x % y
es5id: 11.13.2_A4.3_T2.8
description: >
Type(x) is different from Type(y) and both types vary between
Boolean (primitive or object) and Undefined
--- |
1066 |
S11.13.2_A4.3_T2.9.js |
---
info: The production x %= y is the same as x = x % y
es5id: 11.13.2_A4.3_T2.9
description: >
Type(x) is different from Type(y) and both types vary between
Boolean (primitive or object) and Null
--- |
979 |
S11.13.2_A4.4_T1.1.js |
---
info: The production x += y is the same as x = x + y
es5id: 11.13.2_A4.4_T1.1
description: >
Type(x) and Type(y) vary between primitive boolean and Boolean
object
--- |
958 |
S11.13.2_A4.4_T1.2.js |
---
info: The production x += y is the same as x = x + y
es5id: 11.13.2_A4.4_T1.2
description: Type(x) and Type(y) vary between primitive number and Number object
--- |
890 |
S11.13.2_A4.4_T1.3.js |
---
info: The production x += y is the same as x = x + y
es5id: 11.13.2_A4.4_T1.3
description: Type(x) and Type(y) vary between Null and Undefined
--- |
929 |
S11.13.2_A4.4_T1.4.js |
---
info: The production x += y is the same as x = x + y
es5id: 11.13.2_A4.4_T1.4
description: Type(x) and Type(y) vary between primitive string and String object
--- |
1192 |
S11.13.2_A4.4_T2.1.js |
---
info: The production x += y is the same as x = x + y
es5id: 11.13.2_A4.4_T2.1
description: >
Type(x) is different from Type(y) and both types vary between
Number (primitive or object) and Boolean (primitive and object)
--- |
1570 |
S11.13.2_A4.4_T2.2.js |
---
info: The production x += y is the same as x = x + y
es5id: 11.13.2_A4.4_T2.2
description: >
Type(x) is different from Type(y) and both types vary between
Number (primitive or object) and Null
--- |
908 |
S11.13.2_A4.4_T2.3.js |
---
info: The production x += y is the same as x = x + y
es5id: 11.13.2_A4.4_T2.3
description: >
Type(x) is different from Type(y) and both types vary between
Number (primitive or object) and Undefined
--- |
1037 |
S11.13.2_A4.4_T2.4.js |
---
info: The production x += y is the same as x = x + y
es5id: 11.13.2_A4.4_T2.4
description: >
Type(x) is different from Type(y) and both types vary between
Boolean (primitive or object) and Undefined
--- |
1066 |
S11.13.2_A4.4_T2.5.js |
---
info: The production x += y is the same as x = x + y
es5id: 11.13.2_A4.4_T2.5
description: >
Type(x) is different from Type(y) and both types vary between
Boolean (primitive or object) and Null
--- |
937 |
S11.13.2_A4.4_T2.6.js |
---
info: The production x += y is the same as x = x + y
es5id: 11.13.2_A4.4_T2.6
description: >
Type(x) is different from Type(y) and both types vary between
Number (primitive or object) and String (primitive and object)
--- |
1833 |
S11.13.2_A4.4_T2.7.js |
---
info: The production x += y is the same as x = x + y
es5id: 11.13.2_A4.4_T2.7
description: >
Type(x) is different from Type(y) and both types vary between
String (primitive or object) and Boolean (primitive and object)
--- |
1698 |
S11.13.2_A4.4_T2.8.js |
---
info: The production x += y is the same as x = x + y
es5id: 11.13.2_A4.4_T2.8
description: >
Type(x) is different from Type(y) and both types vary between
String (primitive or object) and Undefined
--- |
1057 |
S11.13.2_A4.4_T2.9.js |
---
info: The production x += y is the same as x = x + y
es5id: 11.13.2_A4.4_T2.9
description: >
Type(x) is different from Type(y) and both types vary between
String (primitive or object) and Null
--- |
972 |
S11.13.2_A4.5_T1.1.js |
---
info: The production x -= y is the same as x = x - y
es5id: 11.13.2_A4.5_T1.1
description: >
Type(x) and Type(y) vary between primitive boolean and Boolean
object
--- |
958 |
S11.13.2_A4.5_T1.2.js |
---
info: The production x -= y is the same as x = x - y
es5id: 11.13.2_A4.5_T1.2
description: Type(x) and Type(y) vary between primitive number and Number object
--- |
890 |
S11.13.2_A4.5_T1.3.js |
---
info: The production x -= y is the same as x = x - y
es5id: 11.13.2_A4.5_T1.3
description: Type(x) and Type(y) vary between primitive string and String object
--- |
1210 |
S11.13.2_A4.5_T1.4.js |
---
info: The production x -= y is the same as x = x - y
es5id: 11.13.2_A4.5_T1.4
description: Type(x) and Type(y) vary between Null and Undefined
--- |
929 |
S11.13.2_A4.5_T2.1.js |
---
info: The production x -= y is the same as x = x - y
es5id: 11.13.2_A4.5_T2.1
description: >
Type(x) is different from Type(y) and both types vary between
Number (primitive or object) and Boolean (primitive and object)
--- |
1570 |
S11.13.2_A4.5_T2.2.js |
---
info: The production x -= y is the same as x = x - y
es5id: 11.13.2_A4.5_T2.2
description: >
Type(x) is different from Type(y) and both types vary between
Number (primitive or object) and String (primitive and object)
--- |
1827 |
S11.13.2_A4.5_T2.3.js |
---
info: The production x -= y is the same as x = x - y
es5id: 11.13.2_A4.5_T2.3
description: >
Type(x) is different from Type(y) and both types vary between
Number (primitive or object) and Null
--- |
912 |
S11.13.2_A4.5_T2.4.js |
---
info: The production x -= y is the same as x = x - y
es5id: 11.13.2_A4.5_T2.4
description: >
Type(x) is different from Type(y) and both types vary between
Number (primitive or object) and Undefined
--- |
1037 |
S11.13.2_A4.5_T2.5.js |
---
info: The production x -= y is the same as x = x - y
es5id: 11.13.2_A4.5_T2.5
description: >
Type(x) is different from Type(y) and both types vary between
String (primitive or object) and Boolean (primitive and object)
--- |
1602 |
S11.13.2_A4.5_T2.6.js |
---
info: The production x -= y is the same as x = x - y
es5id: 11.13.2_A4.5_T2.6
description: >
Type(x) is different from Type(y) and both types vary between
String (primitive or object) and Undefined
--- |
1053 |
S11.13.2_A4.5_T2.7.js |
---
info: The production x -= y is the same as x = x - y
es5id: 11.13.2_A4.5_T2.7
description: >
Type(x) is different from Type(y) and both types vary between
String (primitive or object) and Null
--- |
928 |
S11.13.2_A4.5_T2.8.js |
---
info: The production x -= y is the same as x = x - y
es5id: 11.13.2_A4.5_T2.8
description: >
Type(x) is different from Type(y) and both types vary between
Boolean (primitive or object) and Undefined
--- |
1066 |
S11.13.2_A4.5_T2.9.js |
---
info: The production x -= y is the same as x = x - y
es5id: 11.13.2_A4.5_T2.9
description: >
Type(x) is different from Type(y) and both types vary between
Boolean (primitive or object) and Null
--- |
941 |
S11.13.2_A4.6_T1.1.js |
---
info: The production x <<= y is the same as x = x << y
es5id: 11.13.2_A4.6_T1.1
description: >
Type(x) and Type(y) vary between primitive boolean and Boolean
object
--- |
968 |
S11.13.2_A4.6_T1.2.js |
---
info: The production x <<= y is the same as x = x << y
es5id: 11.13.2_A4.6_T1.2
description: Type(x) and Type(y) vary between primitive number and Number object
--- |
900 |
S11.13.2_A4.6_T1.3.js |
---
info: The production x <<= y is the same as x = x << y
es5id: 11.13.2_A4.6_T1.3
description: Type(x) and Type(y) vary between primitive string and String object
--- |
1182 |
S11.13.2_A4.6_T1.4.js |
---
info: The production x <<= y is the same as x = x << y
es5id: 11.13.2_A4.6_T1.4
description: Type(x) and Type(y) vary between Null and Undefined
--- |
876 |
S11.13.2_A4.6_T2.1.js |
---
info: The production x <<= y is the same as x = x << y
es5id: 11.13.2_A4.6_T2.1
description: >
Type(x) is different from Type(y) and both types vary between
Number (primitive or object) and Boolean (primitive and object)
--- |
1588 |
S11.13.2_A4.6_T2.2.js |
---
info: The production x <<= y is the same as x = x << y
es5id: 11.13.2_A4.6_T2.2
description: >
Type(x) is different from Type(y) and both types vary between
Number (primitive or object) and String (primitive and object)
--- |
1807 |
S11.13.2_A4.6_T2.3.js |
---
info: The production x <<= y is the same as x = x << y
es5id: 11.13.2_A4.6_T2.3
description: >
Type(x) is different from Type(y) and both types vary between
Number (primitive or object) and Null
--- |
918 |
S11.13.2_A4.6_T2.4.js |
---
info: The production x <<= y is the same as x = x << y
es5id: 11.13.2_A4.6_T2.4
description: >
Type(x) is different from Type(y) and both types vary between
Number (primitive or object) and Undefined
--- |
963 |
S11.13.2_A4.6_T2.5.js |
---
info: The production x <<= y is the same as x = x << y
es5id: 11.13.2_A4.6_T2.5
description: >
Type(x) is different from Type(y) and both types vary between
String (primitive or object) and Boolean (primitive and object)
--- |
1620 |
S11.13.2_A4.6_T2.6.js |
---
info: The production x <<= y is the same as x = x << y
es5id: 11.13.2_A4.6_T2.6
description: >
Type(x) is different from Type(y) and both types vary between
String (primitive or object) and Undefined
--- |
979 |
S11.13.2_A4.6_T2.7.js |
---
info: The production x <<= y is the same as x = x << y
es5id: 11.13.2_A4.6_T2.7
description: >
Type(x) is different from Type(y) and both types vary between
String (primitive or object) and Null
--- |
934 |
S11.13.2_A4.6_T2.8.js |
---
info: The production x <<= y is the same as x = x << y
es5id: 11.13.2_A4.6_T2.8
description: >
Type(x) is different from Type(y) and both types vary between
Boolean (primitive or object) and Undefined
--- |
992 |
S11.13.2_A4.6_T2.9.js |
---
info: The production x <<= y is the same as x = x << y
es5id: 11.13.2_A4.6_T2.9
description: >
Type(x) is different from Type(y) and both types vary between
Boolean (primitive or object) and Null
--- |
947 |
S11.13.2_A4.7_T1.1.js |
---
info: The production x >>= y is the same as x = x >> y
es5id: 11.13.2_A4.7_T1.1
description: >
Type(x) and Type(y) vary between primitive boolean and Boolean
object
--- |
968 |
S11.13.2_A4.7_T1.2.js |
---
info: The production x >>= y is the same as x = x >> y
es5id: 11.13.2_A4.7_T1.2
description: Type(x) and Type(y) vary between primitive number and Number object
--- |
900 |
S11.13.2_A4.7_T1.3.js |
---
info: The production x >>= y is the same as x = x >> y
es5id: 11.13.2_A4.7_T1.3
description: Type(x) and Type(y) vary between primitive string and String object
--- |
1182 |
S11.13.2_A4.7_T1.4.js |
---
info: The production x >>= y is the same as x = x >> y
es5id: 11.13.2_A4.7_T1.4
description: Type(x) and Type(y) vary between Null and Undefined
--- |
876 |
S11.13.2_A4.7_T2.1.js |
---
info: The production x >>= y is the same as x = x >> y
es5id: 11.13.2_A4.7_T2.1
description: >
Type(x) is different from Type(y) and both types vary between
Number (primitive or object) and Boolean (primitive and object)
--- |
1588 |
S11.13.2_A4.7_T2.2.js |
---
info: The production x >>= y is the same as x = x >> y
es5id: 11.13.2_A4.7_T2.2
description: >
Type(x) is different from Type(y) and both types vary between
Number (primitive or object) and String (primitive and object)
--- |
1807 |
S11.13.2_A4.7_T2.3.js |
---
info: The production x >>= y is the same as x = x >> y
es5id: 11.13.2_A4.7_T2.3
description: >
Type(x) is different from Type(y) and both types vary between
Number (primitive or object) and Null
--- |
918 |
S11.13.2_A4.7_T2.4.js |
---
info: The production x >>= y is the same as x = x >> y
es5id: 11.13.2_A4.7_T2.4
description: >
Type(x) is different from Type(y) and both types vary between
Number (primitive or object) and Undefined
--- |
963 |
S11.13.2_A4.7_T2.5.js |
---
info: The production x >>= y is the same as x = x >> y
es5id: 11.13.2_A4.7_T2.5
description: >
Type(x) is different from Type(y) and both types vary between
String (primitive or object) and Boolean (primitive and object)
--- |
1620 |
S11.13.2_A4.7_T2.6.js |
---
info: The production x >>= y is the same as x = x >> y
es5id: 11.13.2_A4.7_T2.6
description: >
Type(x) is different from Type(y) and both types vary between
String (primitive or object) and Undefined
--- |
979 |
S11.13.2_A4.7_T2.7.js |
---
info: The production x >>= y is the same as x = x >> y
es5id: 11.13.2_A4.7_T2.7
description: >
Type(x) is different from Type(y) and both types vary between
String (primitive or object) and Null
--- |
934 |
S11.13.2_A4.7_T2.8.js |
---
info: The production x >>= y is the same as x = x >> y
es5id: 11.13.2_A4.7_T2.8
description: >
Type(x) is different from Type(y) and both types vary between
Boolean (primitive or object) and Undefined
--- |
992 |
S11.13.2_A4.7_T2.9.js |
---
info: The production x >>= y is the same as x = x >> y
es5id: 11.13.2_A4.7_T2.9
description: >
Type(x) is different from Type(y) and both types vary between
Boolean (primitive or object) and Null
--- |
947 |
S11.13.2_A4.8_T1.1.js |
---
info: The production x >>>= y is the same as x = x >>> y
es5id: 11.13.2_A4.8_T1.1
description: >
Type(x) and Type(y) vary between primitive boolean and Boolean
object
--- |
978 |
S11.13.2_A4.8_T1.2.js |
---
info: The production x >>>= y is the same as x = x >>> y
es5id: 11.13.2_A4.8_T1.2
description: Type(x) and Type(y) vary between primitive number and Number object
--- |
910 |
S11.13.2_A4.8_T1.3.js |
---
info: The production x >>>= y is the same as x = x >>> y
es5id: 11.13.2_A4.8_T1.3
description: Type(x) and Type(y) vary between primitive string and String object
--- |
1196 |
S11.13.2_A4.8_T1.4.js |
---
info: The production x >>>= y is the same as x = x >>> y
es5id: 11.13.2_A4.8_T1.4
description: Type(x) and Type(y) vary between Null and Undefined
--- |
886 |
S11.13.2_A4.8_T2.1.js |
---
info: The production x >>>= y is the same as x = x >>> y
es5id: 11.13.2_A4.8_T2.1
description: >
Type(x) is different from Type(y) and both types vary between
Number (primitive or object) and Boolean (primitive and object)
--- |
1606 |
S11.13.2_A4.8_T2.2.js |
---
info: The production x >>>= y is the same as x = x >>> y
es5id: 11.13.2_A4.8_T2.2
description: >
Type(x) is different from Type(y) and both types vary between
Number (primitive or object) and String (primitive and object)
--- |
1829 |
S11.13.2_A4.8_T2.3.js |
---
info: The production x >>>= y is the same as x = x >>> y
es5id: 11.13.2_A4.8_T2.3
description: >
Type(x) is different from Type(y) and both types vary between
Number (primitive or object) and Null
--- |
928 |
S11.13.2_A4.8_T2.4.js |
---
info: The production x >>>= y is the same as x = x >>> y
es5id: 11.13.2_A4.8_T2.4
description: >
Type(x) is different from Type(y) and both types vary between
Number (primitive or object) and Undefined
--- |
973 |
S11.13.2_A4.8_T2.5.js |
---
info: The production x >>>= y is the same as x = x >>> y
es5id: 11.13.2_A4.8_T2.5
description: >
Type(x) is different from Type(y) and both types vary between
String (primitive or object) and Boolean (primitive and object)
--- |
1638 |
S11.13.2_A4.8_T2.6.js |
---
info: The production x >>>= y is the same as x = x >>> y
es5id: 11.13.2_A4.8_T2.6
description: >
Type(x) is different from Type(y) and both types vary between
String (primitive or object) and Undefined
--- |
989 |
S11.13.2_A4.8_T2.7.js |
---
info: The production x >>>= y is the same as x = x >>> y
es5id: 11.13.2_A4.8_T2.7
description: >
Type(x) is different from Type(y) and both types vary between
String (primitive or object) and Null
--- |
944 |
S11.13.2_A4.8_T2.8.js |
---
info: The production x >>>= y is the same as x = x >>> y
es5id: 11.13.2_A4.8_T2.8
description: >
Type(x) is different from Type(y) and both types vary between
Boolean (primitive or object) and Undefined
--- |
1002 |
S11.13.2_A4.8_T2.9.js |
---
info: The production x >>>= y is the same as x = x >>> y
es5id: 11.13.2_A4.8_T2.9
description: >
Type(x) is different from Type(y) and both types vary between
Boolean (primitive or object) and Null
--- |
957 |
S11.13.2_A4.9_T1.1.js |
---
info: The production x &= y is the same as x = x & y
es5id: 11.13.2_A4.9_T1.1
description: >
Type(x) and Type(y) vary between primitive boolean and Boolean
object
--- |
958 |
S11.13.2_A4.9_T1.2.js |
---
info: The production x &= y is the same as x = x & y
es5id: 11.13.2_A4.9_T1.2
description: Type(x) and Type(y) vary between primitive number and Number object
--- |
890 |
S11.13.2_A4.9_T1.3.js |
---
info: The production x &= y is the same as x = x & y
es5id: 11.13.2_A4.9_T1.3
description: Type(x) and Type(y) vary between primitive string and String object
--- |
1168 |
S11.13.2_A4.9_T1.4.js |
---
info: The production x &= y is the same as x = x & y
es5id: 11.13.2_A4.9_T1.4
description: Type(x) and Type(y) vary between Null and Undefined
--- |
866 |
S11.13.2_A4.9_T2.1.js |
---
info: The production x &= y is the same as x = x & y
es5id: 11.13.2_A4.9_T2.1
description: >
Type(x) is different from Type(y) and both types vary between
Number (primitive or object) and Boolean (primitive and object)
--- |
1570 |
S11.13.2_A4.9_T2.2.js |
---
info: The production x &= y is the same as x = x & y
es5id: 11.13.2_A4.9_T2.2
description: >
Type(x) is different from Type(y) and both types vary between
Number (primitive or object) and String (primitive and object)
--- |
1785 |
S11.13.2_A4.9_T2.3.js |
---
info: The production x &= y is the same as x = x & y
es5id: 11.13.2_A4.9_T2.3
description: >
Type(x) is different from Type(y) and both types vary between
Number (primitive or object) and Null
--- |
908 |
S11.13.2_A4.9_T2.4.js |
---
info: The production x &= y is the same as x = x & y
es5id: 11.13.2_A4.9_T2.4
description: >
Type(x) is different from Type(y) and both types vary between
Number (primitive or object) and Undefined
--- |
953 |
S11.13.2_A4.9_T2.5.js |
---
info: The production x &= y is the same as x = x & y
es5id: 11.13.2_A4.9_T2.5
description: >
Type(x) is different from Type(y) and both types vary between
String (primitive or object) and Boolean (primitive and object)
--- |
1602 |
S11.13.2_A4.9_T2.6.js |
---
info: The production x &= y is the same as x = x & y
es5id: 11.13.2_A4.9_T2.6
description: >
Type(x) is different from Type(y) and both types vary between
String (primitive or object) and Undefined
--- |
969 |
S11.13.2_A4.9_T2.7.js |
---
info: The production x &= y is the same as x = x & y
es5id: 11.13.2_A4.9_T2.7
description: >
Type(x) is different from Type(y) and both types vary between
String (primitive or object) and Null
--- |
924 |
S11.13.2_A4.9_T2.8.js |
---
info: The production x &= y is the same as x = x & y
es5id: 11.13.2_A4.9_T2.8
description: >
Type(x) is different from Type(y) and both types vary between
Boolean (primitive or object) and Undefined
--- |
982 |
S11.13.2_A4.9_T2.9.js |
---
info: The production x &= y is the same as x = x & y
es5id: 11.13.2_A4.9_T2.9
description: >
Type(x) is different from Type(y) and both types vary between
Boolean (primitive or object) and Null
--- |
937 |
S11.13.2_A4.10_T1.1.js |
---
info: The production x ^= y is the same as x = x ^ y
es5id: 11.13.2_A4.10_T1.1
description: >
Type(x) and Type(y) vary between primitive boolean and Boolean
object
--- |
959 |
S11.13.2_A4.10_T1.2.js |
---
info: The production x ^= y is the same as x = x ^ y
es5id: 11.13.2_A4.10_T1.2
description: Type(x) and Type(y) vary between primitive number and Number object
--- |
891 |
S11.13.2_A4.10_T1.3.js |
---
info: The production x ^= y is the same as x = x ^ y
es5id: 11.13.2_A4.10_T1.3
description: Type(x) and Type(y) vary between primitive string and String object
--- |
1169 |
S11.13.2_A4.10_T1.4.js |
---
info: The production x ^= y is the same as x = x ^ y
es5id: 11.13.2_A4.10_T1.4
description: Type(x) and Type(y) vary between Null and Undefined
--- |
867 |
S11.13.2_A4.10_T2.1.js |
---
info: The production x ^= y is the same as x = x ^ y
es5id: 11.13.2_A4.10_T2.1
description: >
Type(x) is different from Type(y) and both types vary between
Number (primitive or object) and Boolean (primitive and object)
--- |
1571 |
S11.13.2_A4.10_T2.2.js |
---
info: The production x ^= y is the same as x = x ^ y
es5id: 11.13.2_A4.10_T2.2
description: >
Type(x) is different from Type(y) and both types vary between
Number (primitive or object) and String (primitive and object)
--- |
1786 |
S11.13.2_A4.10_T2.3.js |
---
info: The production x ^= y is the same as x = x ^ y
es5id: 11.13.2_A4.10_T2.3
description: >
Type(x) is different from Type(y) and both types vary between
Number (primitive or object) and Null
--- |
909 |
S11.13.2_A4.10_T2.4.js |
---
info: The production x ^= y is the same as x = x ^ y
es5id: 11.13.2_A4.10_T2.4
description: >
Type(x) is different from Type(y) and both types vary between
Number (primitive or object) and Undefined
--- |
954 |
S11.13.2_A4.10_T2.5.js |
---
info: The production x ^= y is the same as x = x ^ y
es5id: 11.13.2_A4.10_T2.5
description: >
Type(x) is different from Type(y) and both types vary between
String (primitive or object) and Boolean (primitive and object)
--- |
1603 |
S11.13.2_A4.10_T2.6.js |
---
info: The production x ^= y is the same as x = x ^ y
es5id: 11.13.2_A4.10_T2.6
description: >
Type(x) is different from Type(y) and both types vary between
String (primitive or object) and Undefined
--- |
970 |
S11.13.2_A4.10_T2.7.js |
---
info: The production x ^= y is the same as x = x ^ y
es5id: 11.13.2_A4.10_T2.7
description: >
Type(x) is different from Type(y) and both types vary between
String (primitive or object) and Null
--- |
925 |
S11.13.2_A4.10_T2.8.js |
---
info: The production x ^= y is the same as x = x ^ y
es5id: 11.13.2_A4.10_T2.8
description: >
Type(x) is different from Type(y) and both types vary between
Boolean (primitive or object) and Undefined
--- |
983 |
S11.13.2_A4.10_T2.9.js |
---
info: The production x ^= y is the same as x = x ^ y
es5id: 11.13.2_A4.10_T2.9
description: >
Type(x) is different from Type(y) and both types vary between
Boolean (primitive or object) and Null
--- |
938 |
S11.13.2_A4.11_T1.1.js |
---
info: The production x |= y is the same as x = x | y
es5id: 11.13.2_A4.11_T1.1
description: >
Type(x) and Type(y) vary between primitive boolean and Boolean
object
--- |
959 |
S11.13.2_A4.11_T1.2.js |
---
info: The production x |= y is the same as x = x | y
es5id: 11.13.2_A4.11_T1.2
description: Type(x) and Type(y) vary between primitive number and Number object
--- |
891 |
S11.13.2_A4.11_T1.3.js |
---
info: The production x |= y is the same as x = x | y
es5id: 11.13.2_A4.11_T1.3
description: Type(x) and Type(y) vary between primitive string and String object
--- |
1169 |
S11.13.2_A4.11_T1.4.js |
---
info: The production x |= y is the same as x = x | y
es5id: 11.13.2_A4.11_T1.4
description: Type(x) and Type(y) vary between Null and Undefined
--- |
867 |
S11.13.2_A4.11_T2.1.js |
---
info: The production x |= y is the same as x = x | y
es5id: 11.13.2_A4.11_T2.1
description: >
Type(x) is different from Type(y) and both types vary between
Number (primitive or object) and Boolean (primitive and object)
--- |
1571 |
S11.13.2_A4.11_T2.2.js |
---
info: The production x |= y is the same as x = x | y
es5id: 11.13.2_A4.11_T2.2
description: >
Type(x) is different from Type(y) and both types vary between
Number (primitive or object) and String (primitive and object)
--- |
1786 |
S11.13.2_A4.11_T2.3.js |
---
info: The production x |= y is the same as x = x | y
es5id: 11.13.2_A4.11_T2.3
description: >
Type(x) is different from Type(y) and both types vary between
Number (primitive or object) and Null
--- |
909 |
S11.13.2_A4.11_T2.4.js |
---
info: The production x |= y is the same as x = x | y
es5id: 11.13.2_A4.11_T2.4
description: >
Type(x) is different from Type(y) and both types vary between
Number (primitive or object) and Undefined
--- |
954 |
S11.13.2_A4.11_T2.5.js |
---
info: The production x |= y is the same as x = x | y
es5id: 11.13.2_A4.11_T2.5
description: >
Type(x) is different from Type(y) and both types vary between
String (primitive or object) and Boolean (primitive and object)
--- |
1603 |
S11.13.2_A4.11_T2.6.js |
---
info: The production x |= y is the same as x = x | y
es5id: 11.13.2_A4.11_T2.6
description: >
Type(x) is different from Type(y) and both types vary between
String (primitive or object) and Undefined
--- |
970 |
S11.13.2_A4.11_T2.7.js |
---
info: The production x |= y is the same as x = x | y
es5id: 11.13.2_A4.11_T2.7
description: >
Type(x) is different from Type(y) and both types vary between
String (primitive or object) and Null
--- |
925 |
S11.13.2_A4.11_T2.8.js |
---
info: The production x |= y is the same as x = x | y
es5id: 11.13.2_A4.11_T2.8
description: >
Type(x) is different from Type(y) and both types vary between
Boolean (primitive or object) and Undefined
--- |
983 |
S11.13.2_A4.11_T2.9.js |
---
info: The production x |= y is the same as x = x | y
es5id: 11.13.2_A4.11_T2.9
description: >
Type(x) is different from Type(y) and both types vary between
Boolean (primitive or object) and Null
--- |
938 |
S11.13.2_A5.1_T1.js |
---
info: Compound Assignment Operator calls PutValue(lref, v)
es5id: S11.13.2_A5.1_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, v) uses the initially
created Reference even if the environment binding is no longer present.
Binding in surrounding function environment record is not changed.
Check operator is "x *= y".
flags: [noStrict]
--- |
1025 |
S11.13.2_A5.1_T2.js |
---
info: Compound Assignment Operator calls PutValue(lref, v)
es5id: S11.13.2_A5.1_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, v) uses the initially
created Reference even if the environment binding is no longer present.
Binding in surrounding global environment record is not changed.
Check operator is "x *= y".
flags: [noStrict]
--- |
947 |
S11.13.2_A5.1_T3.js |
---
info: Compound Assignment Operator calls PutValue(lref, v)
es5id: S11.13.2_A5.1_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, v) uses the initially
created Reference even if the environment binding is no longer present.
Binding in surrounding object environment record is not changed.
Check operator is "x *= y".
flags: [noStrict]
--- |
1051 |
S11.13.2_A5.2_T1.js |
---
info: Compound Assignment Operator calls PutValue(lref, v)
es5id: S11.13.2_A5.2_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, v) uses the initially
created Reference even if the environment binding is no longer present.
Binding in surrounding function environment record is not changed.
Check operator is "x /= y".
flags: [noStrict]
--- |
1025 |
S11.13.2_A5.2_T2.js |
---
info: Compound Assignment Operator calls PutValue(lref, v)
es5id: S11.13.2_A5.2_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, v) uses the initially
created Reference even if the environment binding is no longer present.
Binding in surrounding global environment record is not changed.
Check operator is "x /= y".
flags: [noStrict]
--- |
947 |
S11.13.2_A5.2_T3.js |
---
info: Compound Assignment Operator calls PutValue(lref, v)
es5id: S11.13.2_A5.2_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, v) uses the initially
created Reference even if the environment binding is no longer present.
Binding in surrounding object environment record is not changed.
Check operator is "x /= y".
flags: [noStrict]
--- |
1051 |
S11.13.2_A5.3_T1.js |
---
info: Compound Assignment Operator calls PutValue(lref, v)
es5id: S11.13.2_A5.3_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, v) uses the initially
created Reference even if the environment binding is no longer present.
Binding in surrounding function environment record is not changed.
Check operator is "x %= y".
flags: [noStrict]
--- |
1025 |
S11.13.2_A5.3_T2.js |
---
info: Compound Assignment Operator calls PutValue(lref, v)
es5id: S11.13.2_A5.3_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, v) uses the initially
created Reference even if the environment binding is no longer present.
Binding in surrounding global environment record is not changed.
Check operator is "x %= y".
flags: [noStrict]
--- |
947 |
S11.13.2_A5.3_T3.js |
---
info: Compound Assignment Operator calls PutValue(lref, v)
es5id: S11.13.2_A5.3_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, v) uses the initially
created Reference even if the environment binding is no longer present.
Binding in surrounding object environment record is not changed.
Check operator is "x %= y".
flags: [noStrict]
--- |
1051 |
S11.13.2_A5.4_T1.js |
---
info: Compound Assignment Operator calls PutValue(lref, v)
es5id: S11.13.2_A5.4_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, v) uses the initially
created Reference even if the environment binding is no longer present.
Binding in surrounding function environment record is not changed.
Check operator is "x += y".
flags: [noStrict]
--- |
1025 |
S11.13.2_A5.4_T2.js |
---
info: Compound Assignment Operator calls PutValue(lref, v)
es5id: S11.13.2_A5.4_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, v) uses the initially
created Reference even if the environment binding is no longer present.
Binding in surrounding global environment record is not changed.
Check operator is "x += y".
flags: [noStrict]
--- |
947 |
S11.13.2_A5.4_T3.js |
---
info: Compound Assignment Operator calls PutValue(lref, v)
es5id: S11.13.2_A5.4_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, v) uses the initially
created Reference even if the environment binding is no longer present.
Binding in surrounding object environment record is not changed.
Check operator is "x += y".
flags: [noStrict]
--- |
1051 |
S11.13.2_A5.5_T1.js |
---
info: Compound Assignment Operator calls PutValue(lref, v)
es5id: S11.13.2_A5.5_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, v) uses the initially
created Reference even if the environment binding is no longer present.
Binding in surrounding function environment record is not changed.
Check operator is "x -= y".
flags: [noStrict]
--- |
1025 |
S11.13.2_A5.5_T2.js |
---
info: Compound Assignment Operator calls PutValue(lref, v)
es5id: S11.13.2_A5.5_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, v) uses the initially
created Reference even if the environment binding is no longer present.
Binding in surrounding global environment record is not changed.
Check operator is "x -= y".
flags: [noStrict]
--- |
947 |
S11.13.2_A5.5_T3.js |
---
info: Compound Assignment Operator calls PutValue(lref, v)
es5id: S11.13.2_A5.5_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, v) uses the initially
created Reference even if the environment binding is no longer present.
Binding in surrounding object environment record is not changed.
Check operator is "x -= y".
flags: [noStrict]
--- |
1051 |
S11.13.2_A5.6_T1.js |
---
info: Compound Assignment Operator calls PutValue(lref, v)
es5id: S11.13.2_A5.6_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, v) uses the initially
created Reference even if the environment binding is no longer present.
Binding in surrounding function environment record is not changed.
Check operator is "x <<= y".
flags: [noStrict]
--- |
1029 |
S11.13.2_A5.6_T2.js |
---
info: Compound Assignment Operator calls PutValue(lref, v)
es5id: S11.13.2_A5.6_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, v) uses the initially
created Reference even if the environment binding is no longer present.
Binding in surrounding global environment record is not changed.
Check operator is "x <<= y".
flags: [noStrict]
--- |
951 |
S11.13.2_A5.6_T3.js |
---
info: Compound Assignment Operator calls PutValue(lref, v)
es5id: S11.13.2_A5.6_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, v) uses the initially
created Reference even if the environment binding is no longer present.
Binding in surrounding object environment record is not changed.
Check operator is "x <<= y".
flags: [noStrict]
--- |
1055 |
S11.13.2_A5.7_T1.js |
---
info: Compound Assignment Operator calls PutValue(lref, v)
es5id: S11.13.2_A5.7_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, v) uses the initially
created Reference even if the environment binding is no longer present.
Binding in surrounding function environment record is not changed.
Check operator is "x >>= y".
flags: [noStrict]
--- |
1028 |
S11.13.2_A5.7_T2.js |
---
info: Compound Assignment Operator calls PutValue(lref, v)
es5id: S11.13.2_A5.7_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, v) uses the initially
created Reference even if the environment binding is no longer present.
Binding in surrounding global environment record is not changed.
Check operator is "x >>= y".
flags: [noStrict]
--- |
950 |
S11.13.2_A5.7_T3.js |
---
info: Compound Assignment Operator calls PutValue(lref, v)
es5id: S11.13.2_A5.7_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, v) uses the initially
created Reference even if the environment binding is no longer present.
Binding in surrounding object environment record is not changed.
Check operator is "x >>= y".
flags: [noStrict]
--- |
1054 |
S11.13.2_A5.8_T1.js |
---
info: Compound Assignment Operator calls PutValue(lref, v)
es5id: S11.13.2_A5.8_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, v) uses the initially
created Reference even if the environment binding is no longer present.
Binding in surrounding function environment record is not changed.
Check operator is "x >>>= y".
flags: [noStrict]
--- |
1030 |
S11.13.2_A5.8_T2.js |
---
info: Compound Assignment Operator calls PutValue(lref, v)
es5id: S11.13.2_A5.8_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, v) uses the initially
created Reference even if the environment binding is no longer present.
Binding in surrounding global environment record is not changed.
Check operator is "x >>>= y".
flags: [noStrict]
--- |
952 |
S11.13.2_A5.8_T3.js |
---
info: Compound Assignment Operator calls PutValue(lref, v)
es5id: S11.13.2_A5.8_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, v) uses the initially
created Reference even if the environment binding is no longer present.
Binding in surrounding object environment record is not changed.
Check operator is "x >>>= y".
flags: [noStrict]
--- |
1056 |
S11.13.2_A5.9_T1.js |
---
info: Compound Assignment Operator calls PutValue(lref, v)
es5id: S11.13.2_A5.9_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, v) uses the initially
created Reference even if the environment binding is no longer present.
Binding in surrounding function environment record is not changed.
Check operator is "x &= y".
flags: [noStrict]
--- |
1025 |
S11.13.2_A5.9_T2.js |
---
info: Compound Assignment Operator calls PutValue(lref, v)
es5id: S11.13.2_A5.9_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, v) uses the initially
created Reference even if the environment binding is no longer present.
Binding in surrounding global environment record is not changed.
Check operator is "x &= y".
flags: [noStrict]
--- |
947 |
S11.13.2_A5.9_T3.js |
---
info: Compound Assignment Operator calls PutValue(lref, v)
es5id: S11.13.2_A5.9_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, v) uses the initially
created Reference even if the environment binding is no longer present.
Binding in surrounding object environment record is not changed.
Check operator is "x &= y".
flags: [noStrict]
--- |
1051 |
S11.13.2_A5.10_T1.js |
---
info: Compound Assignment Operator calls PutValue(lref, v)
es5id: S11.13.2_A5.10_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, v) uses the initially
created Reference even if the environment binding is no longer present.
Binding in surrounding function environment record is not changed.
Check operator is "x ^= y".
flags: [noStrict]
--- |
1026 |
S11.13.2_A5.10_T2.js |
---
info: Compound Assignment Operator calls PutValue(lref, v)
es5id: S11.13.2_A5.10_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, v) uses the initially
created Reference even if the environment binding is no longer present.
Binding in surrounding global environment record is not changed.
Check operator is "x ^= y".
flags: [noStrict]
--- |
948 |
S11.13.2_A5.10_T3.js |
---
info: Compound Assignment Operator calls PutValue(lref, v)
es5id: S11.13.2_A5.10_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, v) uses the initially
created Reference even if the environment binding is no longer present.
Binding in surrounding object environment record is not changed.
Check operator is "x ^= y".
flags: [noStrict]
--- |
1052 |
S11.13.2_A5.11_T1.js |
---
info: Compound Assignment Operator calls PutValue(lref, v)
es5id: S11.13.2_A5.11_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, v) uses the initially
created Reference even if the environment binding is no longer present.
Binding in surrounding function environment record is not changed.
Check operator is "x |= y".
flags: [noStrict]
--- |
1026 |
S11.13.2_A5.11_T2.js |
---
info: Compound Assignment Operator calls PutValue(lref, v)
es5id: S11.13.2_A5.11_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, v) uses the initially
created Reference even if the environment binding is no longer present.
Binding in surrounding global environment record is not changed.
Check operator is "x |= y".
flags: [noStrict]
--- |
948 |
S11.13.2_A5.11_T3.js |
---
info: Compound Assignment Operator calls PutValue(lref, v)
es5id: S11.13.2_A5.11_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, v) uses the initially
created Reference even if the environment binding is no longer present.
Binding in surrounding object environment record is not changed.
Check operator is "x |= y".
flags: [noStrict]
--- |
1052 |
S11.13.2_A6.1_T1.js |
---
info: Compound Assignment Operator calls PutValue(lref, v)
es5id: S11.13.2_A6.1_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, v) uses the initially
created Reference even if a more local binding is available.
Check operator is "x *= y".
flags: [noStrict]
--- |
940 |
S11.13.2_A6.2_T1.js |
---
info: Compound Assignment Operator calls PutValue(lref, v)
es5id: S11.13.2_A6.2_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, v) uses the initially
created Reference even if a more local binding is available.
Check operator is "x /= y".
flags: [noStrict]
--- |
939 |
S11.13.2_A6.3_T1.js |
---
info: Compound Assignment Operator calls PutValue(lref, v)
es5id: S11.13.2_A6.3_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, v) uses the initially
created Reference even if a more local binding is available.
Check operator is "x %= y".
flags: [noStrict]
--- |
938 |
S11.13.2_A6.4_T1.js |
---
info: Compound Assignment Operator calls PutValue(lref, v)
es5id: S11.13.2_A6.4_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, v) uses the initially
created Reference even if a more local binding is available.
Check operator is "x += y".
flags: [noStrict]
--- |
938 |
S11.13.2_A6.5_T1.js |
---
info: Compound Assignment Operator calls PutValue(lref, v)
es5id: S11.13.2_A6.5_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, v) uses the initially
created Reference even if a more local binding is available.
Check operator is "x -= y".
flags: [noStrict]
--- |
938 |
S11.13.2_A6.6_T1.js |
---
info: Compound Assignment Operator calls PutValue(lref, v)
es5id: S11.13.2_A6.6_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, v) uses the initially
created Reference even if a more local binding is available.
Check operator is "x <<= y".
flags: [noStrict]
--- |
940 |
S11.13.2_A6.7_T1.js |
---
info: Compound Assignment Operator calls PutValue(lref, v)
es5id: S11.13.2_A6.7_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, v) uses the initially
created Reference even if a more local binding is available.
Check operator is "x >>= y".
flags: [noStrict]
--- |
940 |
S11.13.2_A6.8_T1.js |
---
info: Compound Assignment Operator calls PutValue(lref, v)
es5id: S11.13.2_A6.8_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, v) uses the initially
created Reference even if a more local binding is available.
Check operator is "x >>>= y".
flags: [noStrict]
--- |
942 |
S11.13.2_A6.9_T1.js |
---
info: Compound Assignment Operator calls PutValue(lref, v)
es5id: S11.13.2_A6.9_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, v) uses the initially
created Reference even if a more local binding is available.
Check operator is "x &= y".
flags: [noStrict]
--- |
938 |
S11.13.2_A6.10_T1.js |
---
info: Compound Assignment Operator calls PutValue(lref, v)
es5id: S11.13.2_A6.10_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, v) uses the initially
created Reference even if a more local binding is available.
Check operator is "x ^= y".
flags: [noStrict]
--- |
939 |
S11.13.2_A6.11_T1.js |
---
info: Compound Assignment Operator calls PutValue(lref, v)
es5id: S11.13.2_A6.11_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, v) uses the initially
created Reference even if a more local binding is available.
Check operator is "x |= y".
flags: [noStrict]
--- |
939 |
S11.13.2_A7.1_T1.js |
---
info: Compound 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]. base is the
null value.
Check operator is "x *= y".
--- |
1026 |
S11.13.2_A7.1_T2.js |
---
info: Compound 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]. base is the
undefined value.
Check operator is "x *= y".
--- |
1041 |
S11.13.2_A7.1_T3.js |
---
info: Compound 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]. Evaluating
ToPropertyKey(prop) throws an error.
Check operator is "x *= y".
--- |
775 |
S11.13.2_A7.1_T4.js |
---
info: Compound 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.
Check operator is "x *= y".
--- |
701 |
S11.13.2_A7.2_T1.js |
---
info: Compound 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]. base is the
null value.
Check operator is "x /= y".
--- |
1026 |
S11.13.2_A7.2_T2.js |
---
info: Compound 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]. base is the
undefined value.
Check operator is "x /= y".
--- |
1041 |
S11.13.2_A7.2_T3.js |
---
info: Compound 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]. Evaluating
ToPropertyKey(prop) throws an error.
Check operator is "x /= y".
--- |
775 |
S11.13.2_A7.2_T4.js |
---
info: Compound 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.
Check operator is "x /= y".
--- |
701 |
S11.13.2_A7.3_T1.js |
---
info: Compound 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]. base is the
null value.
Check operator is "x %= y".
--- |
1026 |
S11.13.2_A7.3_T2.js |
---
info: Compound 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]. base is the
undefined value.
Check operator is "x %= y".
--- |
1041 |
S11.13.2_A7.3_T3.js |
---
info: Compound 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]. Evaluating
ToPropertyKey(prop) throws an error.
Check operator is "x %= y".
--- |
775 |
S11.13.2_A7.3_T4.js |
---
info: Compound 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.
Check operator is "x %= y".
--- |
701 |
S11.13.2_A7.4_T1.js |
---
info: Compound 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]. base is the
null value.
Check operator is "x += y".
--- |
1026 |
S11.13.2_A7.4_T2.js |
---
info: Compound 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]. base is the
undefined value.
Check operator is "x += y".
--- |
1041 |
S11.13.2_A7.4_T3.js |
---
info: Compound 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]. Evaluating
ToPropertyKey(prop) throws an error.
Check operator is "x += y".
--- |
775 |
S11.13.2_A7.4_T4.js |
---
info: Compound 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.
Check operator is "x += y".
--- |
701 |
S11.13.2_A7.5_T1.js |
---
info: Compound 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]. base is the
null value.
Check operator is "x -= y".
--- |
1026 |
S11.13.2_A7.5_T2.js |
---
info: Compound 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]. base is the
undefined value.
Check operator is "x -= y".
--- |
1041 |
S11.13.2_A7.5_T3.js |
---
info: Compound 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]. Evaluating
ToPropertyKey(prop) throws an error.
Check operator is "x -= y".
--- |
775 |
S11.13.2_A7.5_T4.js |
---
info: Compound 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.
Check operator is "x -= y".
--- |
701 |
S11.13.2_A7.6_T1.js |
---
info: Compound 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]. base is the
null value.
Check operator is "x <<= y".
--- |
1029 |
S11.13.2_A7.6_T2.js |
---
info: Compound 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]. base is the
undefined value.
Check operator is "x <<= y".
--- |
1044 |
S11.13.2_A7.6_T3.js |
---
info: Compound 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]. Evaluating
ToPropertyKey(prop) throws an error.
Check operator is "x <<= y".
--- |
777 |
S11.13.2_A7.6_T4.js |
---
info: Compound 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.
Check operator is "x <<= y".
--- |
703 |
S11.13.2_A7.7_T1.js |
---
info: Compound 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]. base is the
null value.
Check operator is "x >>= y".
--- |
1029 |
S11.13.2_A7.7_T2.js |
---
info: Compound 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]. base is the
undefined value.
Check operator is "x >>= y".
--- |
1044 |
S11.13.2_A7.7_T3.js |
---
info: Compound 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]. Evaluating
ToPropertyKey(prop) throws an error.
Check operator is "x >>= y".
--- |
777 |
S11.13.2_A7.7_T4.js |
---
info: Compound 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.
Check operator is "x >>= y".
--- |
703 |
S11.13.2_A7.8_T1.js |
---
info: Compound 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]. base is the
null value.
Check operator is "x >>>= y".
--- |
1032 |
S11.13.2_A7.8_T2.js |
---
info: Compound 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]. base is the
undefined value.
Check operator is "x >>>= y".
--- |
1047 |
S11.13.2_A7.8_T3.js |
---
info: Compound 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]. Evaluating
ToPropertyKey(prop) throws an error.
Check operator is "x >>>= y".
--- |
779 |
S11.13.2_A7.8_T4.js |
---
info: Compound 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.
Check operator is "x >>>= y".
--- |
705 |
S11.13.2_A7.9_T1.js |
---
info: Compound 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]. base is the
null value.
Check operator is "x &= y".
--- |
1026 |
S11.13.2_A7.9_T2.js |
---
info: Compound 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]. base is the
undefined value.
Check operator is "x &= y".
--- |
1041 |
S11.13.2_A7.9_T3.js |
---
info: Compound 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]. Evaluating
ToPropertyKey(prop) throws an error.
Check operator is "x &= y".
--- |
775 |
S11.13.2_A7.9_T4.js |
---
info: Compound 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.
Check operator is "x &= y".
--- |
701 |
S11.13.2_A7.10_T1.js |
---
info: Compound 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]. base is the
null value.
Check operator is "x ^= y".
--- |
1026 |
S11.13.2_A7.10_T2.js |
---
info: Compound 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]. base is the
undefined value.
Check operator is "x ^= y".
--- |
1041 |
S11.13.2_A7.10_T3.js |
---
info: Compound 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]. Evaluating
ToPropertyKey(prop) throws an error.
Check operator is "x ^= y".
--- |
775 |
S11.13.2_A7.10_T4.js |
---
info: Compound 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.
Check operator is "x ^= y".
--- |
701 |
S11.13.2_A7.11_T1.js |
---
info: Compound 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]. base is the
null value.
Check operator is "x |= y".
--- |
1026 |
S11.13.2_A7.11_T2.js |
---
info: Compound 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]. base is the
undefined value.
Check operator is "x |= y".
--- |
1041 |
S11.13.2_A7.11_T3.js |
---
info: Compound 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]. Evaluating
ToPropertyKey(prop) throws an error.
Check operator is "x |= y".
--- |
775 |
S11.13.2_A7.11_T4.js |
---
info: Compound 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.
Check operator is "x |= y".
--- |
701 |
shell.js |
|
0 |
srshift-arguments-strict-strict.js |
---
es5id: 11.13.2-6-18-s
esid: sec-assignment-operators
description: >
Strict Mode - SyntaxError is thrown if the identifier arguments
appear as the LeftHandSideExpression of a Compound Assignment
operator(>>=)
flags: [onlyStrict]
negative:
phase: parse
type: SyntaxError
--- |
516 |
srshift-eval-strict-strict.js |
---
es5id: 11.13.2-6-7-s
esid: sec-assignment-operators
description: >
Strict Mode - SyntaxError is thrown if the identifier eval appear
as the LeftHandSideExpression of a Compound Assignment
operator(>>=)
flags: [onlyStrict]
negative:
phase: parse
type: SyntaxError
--- |
505 |
srshift-whitespace.js |
---
info: |
White Space and Line Terminator between LeftHandSideExpression and "@="
or between "@=" and AssignmentExpression are allowed
es5id: 11.13.2_A1_T7
esid: sec-assignment-operators
description: Checking by using eval, check operator is x >>= y
--- |
1653 |
sub-arguments-strict-strict.js |
---
es5id: 11.13.2-6-16-s
esid: sec-assignment-operators
description: >
Strict Mode - SyntaxError is thrown if the identifier arguments
appear as the LeftHandSideExpression of a Compound Assignment
operator(-=)
flags: [onlyStrict]
negative:
phase: parse
type: SyntaxError
--- |
514 |
sub-eval-strict-strict.js |
---
es5id: 11.13.2-6-5-s
esid: sec-assignment-operators
description: >
Strict Mode - SyntaxError is thrown if the identifier eval appear
as the LeftHandSideExpression of a Compound Assignment operator(-=)
flags: [onlyStrict]
negative:
phase: parse
type: SyntaxError
--- |
499 |
sub-whitespace.js |
---
info: |
White Space and Line Terminator between LeftHandSideExpression and "@="
or between "@=" and AssignmentExpression are allowed
es5id: 11.13.2_A1_T5
esid: sec-assignment-operators
description: Checking by using eval, check operator is x -= y
--- |
1672 |
subtract-non-simple.js |
---
esid: sec-assignment-operators-static-semantics-early-errors
info: |
It is an early Syntax Error if AssignmentTargetType of
LeftHandSideExpression is invalid or strict.
description: Compound subtraction assignment with non-simple target
negative:
phase: parse
type: SyntaxError
--- |
494 |
u-right-shift-non-simple.js |
---
esid: sec-assignment-operators-static-semantics-early-errors
info: |
It is an early Syntax Error if AssignmentTargetType of
LeftHandSideExpression is invalid or strict.
description: Compound "unsigned right shift" assignment with non-simple target
negative:
phase: parse
type: SyntaxError
--- |
507 |
urshift-arguments-strict-strict.js |
---
es5id: 11.13.2-6-19-s
esid: sec-assignment-operators
description: >
Strict Mode - SyntaxError is thrown if the identifier arguments
appear as the LeftHandSideExpression of a Compound Assignment
operator(>>>=)
flags: [onlyStrict]
negative:
phase: parse
type: SyntaxError
--- |
518 |
urshift-eval-strict-strict.js |
---
es5id: 11.13.2-6-8-s
esid: sec-assignment-operators
description: >
Strict Mode - SyntaxError is thrown if the identifier eval appear
as the LeftHandSideExpression of a Compound Assignment
operator(>>>=)
flags: [onlyStrict]
negative:
phase: parse
type: SyntaxError
--- |
507 |
urshift-whitespace.js |
---
info: |
White Space and Line Terminator between LeftHandSideExpression and "@="
or between "@=" and AssignmentExpression are allowed
es5id: 11.13.2_A1_T8
esid: sec-assignment-operators
description: Checking by using eval, check operator is x >>>= y
--- |
1664 |
xor-arguments-strict-strict.js |
---
es5id: 11.13.2-6-21-s
esid: sec-assignment-operators
description: >
Strict Mode - SyntaxError is thrown if the identifier arguments
appear as the LeftHandSideExpression of a Compound Assignment
operator(^=)
flags: [onlyStrict]
negative:
phase: parse
type: SyntaxError
--- |
514 |
xor-eval-strict-strict.js |
---
es5id: 11.13.2-6-10-s
esid: sec-assignment-operators
description: >
Strict Mode - SyntaxError is thrown if the identifier eval appear
as the LeftHandSideExpression of a Compound Assignment operator(^=)
flags: [onlyStrict]
negative:
phase: parse
type: SyntaxError
--- |
500 |
xor-whitespace.js |
---
info: |
White Space and Line Terminator between LeftHandSideExpression and "@="
or between "@=" and AssignmentExpression are allowed
es5id: 11.13.2_A1_T10
esid: sec-assignment-operators
description: Checking by using eval, check operator is x ^= y
--- |
1643 |