browser.js |
|
0 |
continue.js |
---
esid: sec-labelled-statements-static-semantics-containsundefinedcontinuetarget
es6id: 13.13.4
description: Does not modify `iterationSet`
info: |
With arguments iterationSet and labelSet.
LabelledStatement : LabelIdentifier : LabelledItem
1. Let label be the StringValue of LabelIdentifier.
2. Let newLabelSet be a copy of labelSet with label appended.
3. Return ContainsUndefinedContinueTarget of LabelledItem with arguments
iterationSet and newLabelSet.
negative:
phase: parse
type: SyntaxError
--- |
779 |
cptn-break.js |
---
esid: sec-labelled-statements-runtime-semantics-labelledevaluation
es6id: 13.13.14
description: Completion value when LabelledItem returns a "break" completion
info: |
LabelledStatement : LabelIdentifier : LabelledItem
1. Let label be the StringValue of LabelIdentifier.
2. Append label as an element of labelSet.
3. Let stmtResult be LabelledEvaluation of LabelledItem with argument
labelSet.
4. If stmtResult.[[Type]] is break and SameValue(stmtResult.[[Target]],
label) is true, then
a. Let stmtResult be NormalCompletion(stmtResult.[[Value]]).
--- |
815 |
cptn-nrml.js |
---
esid: sec-labelled-statements-runtime-semantics-labelledevaluation
es6id: 13.13.14
description: Completion value when LabelledItem returns normally
info: |
LabelledStatement : LabelIdentifier : LabelledItem
1. Let label be the StringValue of LabelIdentifier.
2. Append label as an element of labelSet.
3. Let stmtResult be LabelledEvaluation of LabelledItem with argument
labelSet.
4. If stmtResult.[[Type]] is break and SameValue(stmtResult.[[Target]],
label) is true, then
[...]
5. Return Completion(stmtResult).
--- |
760 |
decl-async-function.js |
---
esid: sec-labelled-statements
description: >
AsyncFunctionDeclaration is not allowed in statement position
info: |
ExpressionStatement[Yield, Await] :
[lookahead ∉ { {, function, async [no LineTerminator here] function, class, let [ }]
Expression[+In, ?Yield, ?Await] ;
negative:
phase: parse
type: SyntaxError
features: [async-functions]
--- |
580 |
decl-async-generator.js |
---
esid: sec-labelled-statements
description: >
AsyncGeneratorDeclaration is not allowed in statement position
info: |
ExpressionStatement[Yield, Await] :
[lookahead ∉ { {, function, async [no LineTerminator here] function, class, let [ }]
Expression[+In, ?Yield, ?Await] ;
negative:
phase: parse
type: SyntaxError
features: [async-iteration]
--- |
582 |
decl-cls.js |
---
description: Class declaration not allowed in statement position
esid: sec-labelled-statements
es6id: 13.13
negative:
phase: parse
type: SyntaxError
--- |
372 |
decl-const.js |
---
description: Lexical declaration (const) not allowed in statement position
esid: sec-labelled-statements
es6id: 13.13
negative:
phase: parse
type: SyntaxError
--- |
387 |
decl-fun-strict-strict.js |
---
esid: sec-labelled-statements
es6id: 13.13
description: >
function declarations in statement position in strict mode:
label: Statement
flags: [onlyStrict]
negative:
phase: parse
type: SyntaxError
--- |
446 |
decl-gen.js |
---
description: Generator declaration not allowed in statement position
esid: sec-labelled-statements
es6id: 13.13
negative:
phase: parse
type: SyntaxError
features: [generators]
--- |
405 |
decl-let.js |
---
description: Lexical declaration (let) not allowed in statement position
esid: sec-labelled-statements
es6id: 13.13
negative:
phase: parse
type: SyntaxError
--- |
376 |
let-array-with-newline.js |
---
esid: sec-labelled-statements
description: >
ExpressionStatement has a lookahead restriction for `let [`.
info: |
ExpressionStatement[Yield, Await] :
[lookahead ∉ { {, function, async [no LineTerminator here] function, class, let [ }]
Expression[+In, ?Yield, ?Await] ;
negative:
phase: parse
type: SyntaxError
flags: [noStrict]
--- |
647 |
let-block-with-newline.js |
---
esid: sec-labelled-statements
description: >
ExpressionStatement doesn't have a lookahead restriction for `let {`.
info: |
ExpressionStatement[Yield, Await] :
[lookahead ∉ { {, function, async [no LineTerminator here] function, class, let [ }]
Expression[+In, ?Yield, ?Await] ;
flags: [noStrict]
--- |
584 |
let-identifier-with-newline.js |
---
esid: sec-labelled-statements
description: >
ExpressionStatement doesn't have a lookahead restriction for `let <binding-identifier>`.
info: |
ExpressionStatement[Yield, Await] :
[lookahead ∉ { {, function, async [no LineTerminator here] function, class, let [ }]
Expression[+In, ?Yield, ?Await] ;
flags: [noStrict]
--- |
607 |
S12.12_A1_T1.js |
---
info: |
Labelled statements are only used in conjunction with labelled
break and continue statements
es5id: 12.12_A1_T1
description: Checking if labelled break works. See continue and break sections
--- |
607 |
shell.js |
---
description: |
This defines the number of consecutive recursive function calls that must be
made in order to prove that stack frames are properly destroyed according to
ES2015 tail call optimization semantics.
defines: [$MAX_ITERATIONS]
--- |
481 |
static-init-invalid-await.js |
---
esid: sec-class-definitions-static-semantics-early-errors
description: Restriction on `await`
info: |
LabelIdentifier : Identifier
- It is a Syntax Error if the code matched by this production is nested,
directly or indirectly (but not crossing function or static initialization
block boundaries), within a ClassStaticBlock and the StringValue of
Identifier is "await".
negative:
phase: parse
type: SyntaxError
features: [class-static-block]
--- |
705 |
tco-strict.js |
---
description: Statement within statement is a candidate for tail-call optimization.
esid: sec-static-semantics-hascallintailposition
flags: [onlyStrict]
features: [tail-call-optimization]
includes: [tcoHelper.js]
--- |
629 |
value-await-module-escaped.js |
---
esid: sec-identifiers-static-semantics-early-errors
description: >
`await` is a reserved identifier in module code and may not be used as a label.
info: |
Identifier : IdentifierName but not ReservedWord
It is a Syntax Error if the goal symbol of the syntactic grammar is Module and
the StringValue of IdentifierName is "await".
negative:
phase: parse
type: SyntaxError
flags: [module]
--- |
615 |
value-await-module.js |
---
esid: sec-identifiers-static-semantics-early-errors
description: >
`await` is a reserved identifier in module code and may not be used as a label.
info: |
LabelIdentifier : await
It is a Syntax Error if the goal symbol of the syntactic grammar is Module.
negative:
phase: parse
type: SyntaxError
flags: [module]
--- |
534 |
value-await-non-module-escaped.js |
---
esid: sec-identifiers-static-semantics-early-errors
description: >
`await` is not a reserved identifier in non-module code and may be used as a label.
info: |
Identifier : IdentifierName but not ReservedWord
It is a Syntax Error if the goal symbol of the syntactic grammar is Module and
the StringValue of IdentifierName is "await".
--- |
523 |
value-await-non-module.js |
---
esid: sec-identifiers-static-semantics-early-errors
description: >
`await` is not a reserved identifier in non-module code and may be used as a label.
info: |
LabelIdentifier : await
It is a Syntax Error if the goal symbol of the syntactic grammar is Module.
--- |
442 |
value-yield-non-strict-escaped.js |
---
esid: sec-identifiers-static-semantics-early-errors
description: >
`yield` is not a reserved identifier in non-strict mode code and may be used as a label.
flags: [noStrict]
--- |
357 |
value-yield-non-strict.js |
---
description: >
`yield` is not a reserved identifier in non-strict mode code and may be
used as a label.
es6id: 12.1.1
flags: [noStrict]
--- |
328 |
value-yield-strict-escaped-strict.js |
---
esid: sec-identifiers-static-semantics-early-errors
description: >
`yield` is a reserved identifier in strict mode code and may not be used as a label.
info: |
Identifier : IdentifierName but not ReservedWord
It is a Syntax Error if this phrase is contained in strict mode code and the
StringValue of IdentifierName is: "implements", "interface", "let", "package",
"private", "protected", "public", "static", or "yield".
negative:
phase: parse
type: SyntaxError
flags: [onlyStrict]
--- |
720 |
value-yield-strict-strict.js |
---
description: >
`yield` is a reserved identifier in strict mode code and may not be used
as a label.
es6id: 12.1.1
negative:
phase: parse
type: SyntaxError
flags: [onlyStrict]
--- |
413 |