Name Description Size
browser.js 0
call-expression-super-no-base.js --- esid: prod-OptionalExpression description: > should not suppress error if super called on class with no base info: | Left-Hand-Side Expressions OptionalExpression: SuperCall OptionalChain features: [optional-chaining] negative: phase: parse type: SyntaxError --- 515
call-expression.js --- esid: prod-OptionalExpression description: > optional chain on call expression info: | Left-Hand-Side Expressions OptionalExpression: CallExpression OptionalChain features: [optional-chaining] --- 1445
early-errors-tail-position-null-op-template-string-esi.js --- esid: prod-OptionalExpression description: > template string passed to tail position of optional chain info: | Static Semantics: Early Errors OptionalChain: ?.TemplateLiteral OptionalChain TemplateLiteral It is a Syntax Error if any code matches this production. features: [optional-chaining] negative: phase: parse type: SyntaxError --- 658
early-errors-tail-position-null-op-template-string.js --- esid: prod-OptionalExpression description: > template string passed to tail position of optional chain info: | Static Semantics: Early Errors OptionalChain: ?.TemplateLiteral OptionalChain TemplateLiteral It is a Syntax Error if any code matches this production. features: [optional-chaining] negative: phase: parse type: SyntaxError --- 570
early-errors-tail-position-null-optchain-template-string-esi.js --- esid: prod-OptionalExpression description: > template string passed to tail position of optional chain info: | Static Semantics: Early Errors OptionalChain: ?.TemplateLiteral OptionalChain TemplateLiteral It is a Syntax Error if any code matches this production. features: [optional-chaining] negative: phase: parse type: SyntaxError --- 660
early-errors-tail-position-null-optchain-template-string.js --- esid: prod-OptionalExpression description: > template string passed to tail position of optional chain info: | Static Semantics: Early Errors OptionalChain: ?.TemplateLiteral OptionalChain TemplateLiteral It is a Syntax Error if any code matches this production. features: [optional-chaining] negative: phase: parse type: SyntaxError --- 572
early-errors-tail-position-op-template-string-esi.js --- esid: prod-OptionalExpression description: > template string passed to tail position of optional chain info: | Static Semantics: Early Errors OptionalChain: ?.TemplateLiteral OptionalChain TemplateLiteral It is a Syntax Error if any code matches this production. features: [optional-chaining] negative: phase: parse type: SyntaxError --- 681
early-errors-tail-position-op-template-string.js --- esid: prod-OptionalExpression description: > template string passed to tail position of optional chain info: | Static Semantics: Early Errors OptionalChain: ?.TemplateLiteral OptionalChain TemplateLiteral It is a Syntax Error if any code matches this production. features: [optional-chaining] negative: phase: parse type: SyntaxError --- 593
early-errors-tail-position-optchain-template-string-esi.js --- esid: prod-OptionalExpression description: > template string passed to tail position of optional chain info: | Static Semantics: Early Errors OptionalChain: ?.TemplateLiteral OptionalChain TemplateLiteral It is a Syntax Error if any code matches this production. features: [optional-chaining] negative: phase: parse type: SyntaxError --- 672
early-errors-tail-position-optchain-template-string.js --- esid: prod-OptionalExpression description: > template string passed to tail position of optional chain info: | Static Semantics: Early Errors OptionalChain: ?.TemplateLiteral OptionalChain TemplateLiteral It is a Syntax Error if any code matches this production. features: [optional-chaining] negative: phase: parse type: SyntaxError --- 584
eval-optional-call.js --- esid: sec-optional-chaining-chain-evaluation description: optional call invoked on eval function should be indirect eval. info: | Runtime Semantics: ChainEvaluation OptionalChain: ?. Arguments 1. Let thisChain be this OptionalChain. 2. Let tailCall be IsInTailPosition(thisChain). 3. Return ? EvaluateCall(baseValue, baseReference, Arguments, tailCall). Runtime Semantics: EvaluateCall ( func, ref, arguments, tailPosition ) ... 7. Let result be Call(func, thisValue, argList). ... eval ( x ) ... 4. Return ? PerformEval(x, callerRealm, false, false). Runtime Semantics: PerformEval ( x, callerRealm, strictCaller, direct ) features: [optional-chaining] --- 1161
iteration-statement-do.js --- esid: prod-OptionalExpression description: > optional chain in test portion of do while statement info: | IterationStatement do Statement while (OptionalExpression) features: [optional-chaining] --- 470
iteration-statement-for-await-of.js --- esid: prod-OptionalExpression description: > optional chain RHS of for await statement info: | IterationStatement for await (LeftHandSideExpression of AssignmentExpression) Statement features: [optional-chaining] flags: [async] includes: [asyncHelpers.js] --- 893
iteration-statement-for-in.js --- esid: prod-OptionalExpression description: > optional chain in test portion of do while statement info: | IterationStatement for (LeftHandSideExpression in Expression) Statement features: [optional-chaining] --- 516
iteration-statement-for-of-type-error.js --- esid: prod-OptionalExpression description: > optional chain returning undefined in RHS of for of statement info: | IterationStatement for (LeftHandSideExpression of Expression) Statement features: [optional-chaining] --- 697
iteration-statement-for.js --- esid: prod-OptionalExpression description: > optional chain in init/test/update of for statement info: | IterationStatement for (Expression; Expression; Expression) Statement features: [optional-chaining] --- 1028
iteration-statement-while.js --- esid: prod-OptionalExpression description: > optional chain in test portion of while statement info: | IterationStatement while (Expression) Statement features: [optional-chaining] --- 452
member-expression-async-identifier.js --- esid: prod-OptionalExpression description: > optional chain on member expression in async context info: | Left-Hand-Side Expressions OptionalExpression MemberExpression [PrimaryExpression identifier] OptionalChain features: [optional-chaining] flags: [async] includes: [asyncHelpers.js] --- 1162
member-expression-async-literal.js --- esid: prod-OptionalExpression description: > optional chain on member expression in async context info: | Left-Hand-Side Expressions OptionalExpression: MemberExpression [PrimaryExpression literal] OptionalChain features: [optional-chaining] flags: [async] includes: [asyncHelpers.js] --- 611
member-expression-async-this.js --- esid: prod-OptionalExpression description: > optional chain on member expression in async context info: | Left-Hand-Side Expressions OptionalExpression: MemberExpression [PrimaryExpression this] OptionalChain features: [optional-chaining] flags: [async] --- 586
member-expression.js --- esid: prod-OptionalExpression description: > optional chain on member expression info: | Left-Hand-Side Expressions OptionalExpression: MemberExpression OptionalChain features: [optional-chaining] --- 2556
new-target-optional-call.js --- esid: prod-OptionalExpression description: > optional call invoked on new.target should be equivalent to call info: | OptionalExpression MemberExpression OptionalChain NewTarget OptionalChain features: [optional-chaining] --- 797
optional-call-preserves-this.js --- esid: sec-optional-chaining-chain-evaluation description: > optional call must preserve this context, as with a non-optional call info: | OptionalChain : ?. Arguments 1. Let thisChain be this OptionalChain. 2. Let tailCall be IsInTailPosition(thisChain). 3. Return ? EvaluateCall(baseValue, baseReference, Arguments, tailCall). features: [optional-chaining] --- 828
optional-chain-async-optional-chain-square-brackets.js --- esid: prod-OptionalExpression description: > optional chain expansions in an async context info: | Left-Hand-Side Expressions OptionalExpression MemberExpression [PrimaryExpression Identifier] OptionalChain OptionalChain OptionalChain ?.[Expression] features: [optional-chaining] flags: [async] includes: [asyncHelpers.js] --- 910
optional-chain-async-square-brackets.js --- esid: prod-OptionalExpression description: > optional chain expansions in an async context info: | Left-Hand-Side Expressions OptionalExpression MemberExpression [PrimaryExpression Identifier] OptionalChain OptionalChain ?.[Expression] features: [optional-chaining] flags: [async] includes: [asyncHelpers.js] --- 817
optional-chain-expression-optional-expression.js --- esid: prod-OptionalExpression description: > optional chain bracket notation containing optional expresion info: | OptionalChain: ?. [OptionalExpression] features: [optional-chaining] --- 545
optional-chain-prod-arguments.js --- esid: prod-OptionalExpression description: > Productions for ?. Arguments info: | OptionalChain[Yield, Await]: ?. Arguments features: [optional-chaining] --- 550
optional-chain-prod-expression.js --- esid: prod-OptionalExpression description: > Productions for ?. [Expression] info: | OptionalChain: ?.[ Expression ] features: [optional-chaining] --- 1147
optional-chain-prod-identifiername.js --- esid: prod-OptionalExpression description: > Productions for ?. IdentifierName info: | OptionalChain[Yield, Await]: ?. IdentifierName features: [optional-chaining] --- 879
optional-chain.js --- esid: prod-OptionalExpression description: > various optional chain expansions info: | OptionalChain[Yield, Await]: ?.[Expression] ?.IdentifierName ?.Arguments ?.TemplateLiteral OptionalChain [Expression] OptionalChain .IdentifierName OptionalChain Arguments[?Yield, ?Await] OptionalChain TemplateLiteral features: [optional-chaining] --- 1172
optional-expression.js --- esid: prod-OptionalExpression description: > optional chain on recursive optional expression info: | Left-Hand-Side Expressions OptionalExpression: OptionalExpression OptionalChain features: [optional-chaining] --- 666
punctuator-decimal-lookahead.js --- esid: prod-OptionalExpression description: > ternary operation with decimal does not evaluate as optional chain info: | Punctuators OptionalChainingPunctuator:: ?.[lookahead ∉ DecimalDigit] features: [optional-chaining] --- 459
runtime-semantics-evaluation.js --- esid: prod-OptionalExpression description: > accessing optional value on undefined or null returns undefined. info: | If baseValue is undefined or null, then Return undefined. features: [optional-chaining] --- 571
shell.js --- description: | A collection of assertion and wrapper functions for testing asynchronous built-ins. defines: [asyncTest, assert.throwsAsync] --- 3603
short-circuiting.js --- esid: prod-OptionalExpression description: > demonstrate syntax-based short-circuiting. info: | If the expression on the LHS of ?. evaluates to null/undefined, the RHS is not evaluated features: [optional-chaining] --- 597
static-semantics-simple-assignment.js --- esid: prod-OptionalExpression description: > an optional expression cannot be target of assignment info: | Static Semantics: IsValidSimpleAssignmentTarget LeftHandSideExpression: OptionalExpression Return false. features: [optional-chaining] negative: phase: parse type: SyntaxError --- 523
super-property-optional-call.js --- esid: prod-OptionalExpression description: > optional call invoked on super method should be equivalent to call info: | OptionalExpression MemberExpression OptionalChain SuperProperty OptionalChain features: [optional-chaining] --- 679
update-expression-postfix.js --- esid: prod-OptionalExpression description: > optional chaining is forbidden in write contexts info: | UpdateExpression[Yield, Await]: LeftHandSideExpression++ LeftHandSideExpression-- ++UnaryExpression --UnaryExpression features: [optional-chaining] negative: phase: parse type: SyntaxError --- 553
update-expression-prefix.js --- esid: prod-OptionalExpression description: > optional chaining is forbidden in write contexts info: | UpdateExpression[Yield, Await]: LeftHandSideExpression++ LeftHandSideExpression-- ++UnaryExpression --UnaryExpression features: [optional-chaining] negative: phase: parse type: SyntaxError --- 545