Name Description Size
11.3.2-2-3-s.js --- es5id: 11.3.2-2-3-s description: > SyntaxError is not thrown if the identifier 'arguments[...]' appears as a PostfixExpression(arguments--) --- 468
arguments-nostrict.js --- esid: sec-update-expressions-static-semantics-early-errors description: > In non-strict code, "arguments--" does not produce an early error. info: | sec-identifiers-static-semantics-assignmenttargettype 1. If this IdentifierReference is contained in strict mode code and StringValue of Identifier is "eval" or "arguments", return strict. 2. Return simple. sec-update-expressions-static-semantics-early-errors UpdateExpression : LeftHandSideExpression -- It is an early Reference Error if AssignmentTargetType of LeftHandSideExpression is invalid. It is an early Syntax Error if AssignmentTargetType of LeftHandSideExpression is strict. flags: [noStrict] --- 880
arguments-strict.js --- esid: sec-update-expressions description: > It is an early Syntax Error if AssignmentTargetType of LeftHandSideExpression is strict. (arguments) info: | sec-identifiers-static-semantics-assignmenttargettype If this IdentifierReference is contained in strict mode code and StringValue of Identifier is "eval" or "arguments", return strict. sec-update-expressions-static-semantics-early-errors UpdateExpression: LeftHandSideExpression -- It is an early Syntax Error if AssignmentTargetType of LeftHandSideExpression is strict. flags: [onlyStrict] negative: phase: parse type: SyntaxError --- 839
bigint.js --- description: Postfix decrement for references to BigInt values esid: sec-postfix-decrement-operator-runtime-semantics-evaluation info: | 1. Let expr be the result of evaluating UnaryExpression. 2. Let oldValue be ? ToNumeric(? GetValue(expr)). 3. Let newValue be ? Type(oldvalue)::subtract(oldValue, Type(oldValue)::unit). 4. Perform ? PutValue(expr, newValue). 5. Return oldValue. features: [BigInt] --- 2605
browser.js 0
eval-nostrict.js --- esid: sec-update-expressions description: > In non-strict code, "eval--" does not produce an early error. info: | sec-identifiers-static-semantics-assignmenttargettype If this IdentifierReference is contained in strict mode code and StringValue of Identifier is "eval" or "arguments", return strict. Return simple. sec-update-expressions-static-semantics-early-errors UpdateExpression : LeftHandSideExpression -- It is an early Reference Error if AssignmentTargetType of LeftHandSideExpression is invalid. It is an early Syntax Error if AssignmentTargetType of LeftHandSideExpression is strict. flags: [noStrict] --- 817
eval-strict.js --- esid: sec-update-expressions description: > It is an early Syntax Error if AssignmentTargetType of LeftHandSideExpression is strict. (eval) info: | sec-identifiers-static-semantics-assignmenttargettype If this IdentifierReference is contained in strict mode code and StringValue of Identifier is "eval" or "arguments", return strict. sec-update-expressions-static-semantics-early-errors UpdateExpression: LeftHandSideExpression -- It is an early Syntax Error if AssignmentTargetType of LeftHandSideExpression is strict. flags: [onlyStrict] negative: phase: parse type: SyntaxError --- 829
line-terminator-carriage-return.js --- info: Line Terminator between LeftHandSideExpression and "--" is not allowed es5id: 11.3.2_A1.1_T2 esid: sec-postfix-decrement-operator description: Checking Carriage Return negative: phase: parse type: SyntaxError --- 502
line-terminator-line-feed.js --- info: Line Terminator (LINE FEED) between LeftHandSideExpression and "--" is not allowed es5id: 11.3.2_A1.1_T1 esid: sec-postfix-decrement-operator description: Checking Line Feed negative: phase: parse type: SyntaxError --- 427
line-terminator-line-separator.js --- info: Line Terminator between LeftHandSideExpression and "--" is not allowed es5id: 11.3.2_A1.1_T3 esid: sec-postfix-decrement-operator description: Checking Line separator negative: phase: parse type: SyntaxError --- 502
line-terminator-paragraph-separator.js --- info: Line Terminator between LeftHandSideExpression and "--" is not allowed es5id: 11.3.2_A1.1_T4 esid: sec-postfix-decrement-operator description: Checking Paragraph separator negative: phase: parse type: SyntaxError --- 515
operator-x-postfix-decrement-calls-putvalue-lhs-newvalue--1.js --- esid: sec-object-environment-records-setmutablebinding-n-v-s description: > Operator x-- calls PutValue(lhs, newValue) (formerly S11.3.2_A5_T5) info: | The concrete Environment Record method SetMutableBinding for object Environment Records attempts to set the value of the Environment Record's associated binding object's property whose name is the value of the argument N to the value of argument V. A property named N normally already exists but if it does not or is not currently writable, error handling is determined by the value of the Boolean argument S. Let stillExists be ? HasProperty(bindings, N). If stillExists is false and S is true, throw a ReferenceError exception. flags: [noStrict] --- 1195
operator-x-postfix-decrement-calls-putvalue-lhs-newvalue-.js --- esid: sec-object-environment-records-setmutablebinding-n-v-s description: > Operator x-- calls PutValue(lhs, newValue) (formerly S11.3.2_A5_T4) info: | The concrete Environment Record method SetMutableBinding for object Environment Records attempts to set the value of the Environment Record's associated binding object's property whose name is the value of the argument N to the value of argument V. A property named N normally already exists but if it does not or is not currently writable, error handling is determined by the value of the Boolean argument S. Let stillExists be ? HasProperty(bindings, N). If stillExists is false and S is true, throw a ReferenceError exception. flags: [noStrict] --- 1179
S11.3.2_A2.1_T1.js --- info: Operator x-- uses GetValue and PutValue es5id: 11.3.2_A2.1_T1 description: Type(x) is Reference and GetBase(x) is not null --- 1179
S11.3.2_A2.1_T2.js --- info: Operator x-- uses GetValue and PutValue es5id: 11.3.2_A2.1_T2 description: If GetBase(x) is null, throw ReferenceError --- 544
S11.3.2_A2.2_T1.js --- info: Operator x-- uses [[Default Value]] es5id: 11.3.2_A2.2_T1 description: If Type(value) is Object, evaluate ToPrimitive(value, Number) --- 4413
S11.3.2_A3_T1.js --- info: Operator x-- returns x = ToNumber(x) - 1 es5id: 11.3.2_A3_T1 description: Type(x) is boolean primitive or Boolean object --- 578
S11.3.2_A3_T2.js --- info: Operator x-- returns x = ToNumber(x) - 1 es5id: 11.3.2_A3_T2 description: Type(x) is number primitive or Number object --- 589
S11.3.2_A3_T3.js --- info: Operator x-- returns x = ToNumber(x) - 1 es5id: 11.3.2_A3_T3 description: Type(x) is string primitive or String object --- 725
S11.3.2_A3_T4.js --- info: Operator x-- returns x = ToNumber(x) - 1 es5id: 11.3.2_A3_T4 description: Type(x) is undefined or null --- 533
S11.3.2_A3_T5.js --- info: Operator x-- returns x = ToNumber(x) - 1 es5id: 11.3.2_A3_T5 description: Type(x) is Object object or Function object --- 611
S11.3.2_A4_T1.js --- info: Operator x-- returns ToNumber(x) es5id: 11.3.2_A4_T1 description: Type(x) is boolean primitive or Boolean object --- 593
S11.3.2_A4_T2.js --- info: Operator x-- returns ToNumber(x) es5id: 11.3.2_A4_T2 description: Type(x) is number primitive or Number object --- 594
S11.3.2_A4_T3.js --- info: Operator x-- returns ToNumber(x) es5id: 11.3.2_A4_T3 description: Type(x) is string primitive or String object --- 745
S11.3.2_A4_T4.js --- info: Operator x-- returns ToNumber(x) es5id: 11.3.2_A4_T4 description: If Type(x) is undefined or null --- 557
S11.3.2_A4_T5.js --- info: Operator x-- returns ToNumber(x) es5id: 11.3.2_A4_T5 description: Type(x) is Object object or Function object --- 633
S11.3.2_A5_T1.js --- info: Operator x-- calls PutValue(lhs, newValue) es5id: S11.3.2_A5_T1 description: > Evaluating LeftHandSideExpression lhs returns Reference type; Reference base value is an environment record and environment record kind is object environment record. PutValue(lhs, newValue) uses the initially created Reference even if the environment binding is no longer present. Binding in surrounding function environment record is not changed. flags: [noStrict] --- 982
S11.3.2_A5_T2.js --- info: Operator x-- calls PutValue(lhs, newValue) es5id: S11.3.2_A5_T2 description: > Evaluating LeftHandSideExpression lhs returns Reference type; Reference base value is an environment record and environment record kind is object environment record. PutValue(lhs, newValue) uses the initially created Reference even if the environment binding is no longer present. Binding in surrounding global environment record is not changed. flags: [noStrict] --- 904
S11.3.2_A5_T3.js --- info: Operator x-- calls PutValue(lhs, newValue) es5id: S11.3.2_A5_T3 description: > Evaluating LeftHandSideExpression lhs returns Reference type; Reference base value is an environment record and environment record kind is object environment record. PutValue(lhs, newValue) uses the initially created Reference even if the environment binding is no longer present. Binding in surrounding object environment record is not changed. flags: [noStrict] --- 1008
S11.3.2_A6_T1.js --- info: Operator x-- evaluates its reference expression once. description: > The operand expression is evaluated exactly once. Operand expression is MemberExpression: base[prop]. base is the null value. --- 730
S11.3.2_A6_T2.js --- info: Operator x-- evaluates its reference expression once. description: > The operand expression is evaluated exactly once. Operand expression is MemberExpression: base[prop]. base is the undefined value. --- 745
S11.3.2_A6_T3.js --- info: Operator x-- evaluates its reference expression once. description: > The operand expression is evaluated exactly once. Operand expression is MemberExpression: base[prop]. ToPropertyKey(prop) is not called multiple times. --- 584
shell.js 0
target-cover-id.js --- esid: sec-postfix-expressions-static-semantics-early-errors es6id: 12.4.1 es5id: 11.1.6_A3_T5 description: Applied to a "covered" IdentifierReference info: | PostfixExpression : LeftHandSideExpression ++ LeftHandSideExpression -- - It is an early Reference Error if IsValidSimpleAssignmentTarget of LeftHandSideExpression is false. Static Semantics: IsValidSimpleAssignmentTarget IdentifierReference : Identifier 1. If this IdentifierReference is contained in strict mode code and StringValue of Identifier is "eval" or "arguments", return false. 2. Return true. --- 840
target-cover-newtarget.js --- esid: sec-update-expressions-static-semantics-early-errors description: Applied to a "covered" new.target info: | UpdateExpression : LeftHandSideExpression ++ LeftHandSideExpression -- - It is an early Syntax Error if AssignmentTargetType of LeftHandSideExpression is invalid or strict. 12.3.1.6 Static Semantics: AssignmentTargetType NewTarget: new.target 1. Return invalid. negative: phase: parse type: SyntaxError features: [new.target] --- 709
target-cover-yieldexpr.js --- esid: sec-update-expressions-static-semantics-early-errors description: Applied to a "covered" YieldExpression info: | UpdateExpression : LeftHandSideExpression ++ LeftHandSideExpression -- - It is an early Syntax Error if AssignmentTargetType of LeftHandSideExpression is invalid or strict. 12.15.3 Static Semantics: AssignmentTargetType AssignmentExpression: YieldExpression ArrowFunction AsyncArrowFunction LeftHandSideExpression = AssignmentExpression LeftHandSideExpression AssignmentOperator AssignmentExpression 1. Return invalid. features: [generators] negative: phase: parse type: SyntaxError --- 884
target-newtarget.js --- esid: sec-update-expressions-static-semantics-early-errors description: Applied to new.target info: | UpdateExpression : LeftHandSideExpression ++ LeftHandSideExpression -- - It is an early Syntax Error if AssignmentTargetType of LeftHandSideExpression is invalid or strict. 12.3.1.6 Static Semantics: AssignmentTargetType NewTarget: new.target 1. Return invalid. negative: phase: parse type: SyntaxError features: [new.target] --- 695
this.js --- esid: sec-update-expressions-static-semantics-early-errors description: > It is an early Syntax Error if AssignmentTargetType of LeftHandSideExpression is not simple. (this) info: | sec-static-semantics-assignmenttargettype PrimaryExpression: this Return invalid. sec-update-expressions-static-semantics-early-errors UpdateExpression: LeftHandSideExpression -- It is an early Syntax Error if AssignmentTargetType of LeftHandSideExpression is not simple. negative: phase: parse type: SyntaxError --- 730
whitespace.js --- description: White Space between LeftHandSideExpression and "--" are allowed es5id: 11.3.2_A1.2_T1 esid: sec-postfix-decrement-operator --- 974