Name Description Size Coverage
browser.js 0 -
cptn-else-false-abrupt-empty.js --- esid: sec-if-statement-runtime-semantics-evaluation description: > Completion value when expression is false with an `else` clause and body returns an empty abrupt completion info: | IfStatement : if ( Expression ) Statement else Statement 3. If exprValue is true, then [...] 4. Else, a. Let stmtCompletion be the result of evaluating the second Statement. 5. Return Completion(UpdateEmpty(stmtCompletion, undefined)). --- 1459 -
cptn-else-false-nrml.js --- es6id: 13.6.7 description: > Completion value when expression is false with an `else` clause and body returns a normal completion info: | IfStatement : if ( Expression ) Statement else Statement 4. If exprValue is true, then [...] 5. Else, a. Let stmtCompletion be the result of evaluating the second Statement. 6. ReturnIfAbrupt(stmtCompletion). 7. If stmtCompletion.[[value]] is not empty, return stmtCompletion. 8. Return NormalCompletion(undefined). --- 930 -
cptn-else-true-abrupt-empty.js --- esid: sec-if-statement-runtime-semantics-evaluation description: > Completion value when expression is true with an `else` clause and body returns an abrupt completion info: | IfStatement : if ( Expression ) Statement else Statement 3. If exprValue is true, then a. Let stmtCompletion be the result of evaluating the first Statement. 4. Else, [...] 5. Return Completion(UpdateEmpty(stmtCompletion, undefined)). --- 1432 -
cptn-else-true-nrml.js --- es6id: 13.6.7 description: > Completion value when expression is true with an `else` clause and body returns a normal completion info: | IfStatement : if ( Expression ) Statement else Statement 4. If exprValue is true, then a. Let stmtCompletion be the result of evaluating the first Statement. 5. Else, [...] 6. ReturnIfAbrupt(stmtCompletion). 7. If stmtCompletion.[[value]] is not empty, return stmtCompletion. 8. Return NormalCompletion(undefined). --- 924 -
cptn-empty-statement.js --- info: | In the "if" statement empty statement is allowed and is evaluated to "undefined" es5id: 12.5_A7 description: Checking by using eval "eval("if(1);"))" --- 483 -
cptn-no-else-false.js --- es6id: 13.6.7 description: Completion value when expression is false without an `else` clause info: | IfStatement : if ( Expression ) Statement [...] 4. If exprValue is false, then a. Return NormalCompletion(undefined). --- 528 -
cptn-no-else-true-abrupt-empty.js --- esid: sec-if-statement-runtime-semantics-evaluation description: > Completion value when expression is true without an `else` clause and body returns an empty abrupt completion info: | IfStatement : if ( Expression ) Statement 3. If exprValue is false, then [...] 4. Else, a. Let stmtCompletion be the result of evaluating Statement. b. Return Completion(UpdateEmpty(stmtCompletion, undefined)). --- 986 -
cptn-no-else-true-nrml.js --- es6id: 13.6.7 description: > Completion value when expression is true without an `else` clause and body returns a normal completion. info: | IfStatement : if ( Expression ) Statement [...] 4. If exprValue is false, then [...] 5. Else, a. Let stmtCompletion be the result of evaluating Statement. b. ReturnIfAbrupt(stmtCompletion). c. If stmtCompletion.[[value]] is not empty, return stmtCompletion. d. Return NormalCompletion(undefined). --- 776 -
empty-statement.js --- description: In the "if" statement empty statement is allowed. es5id: 12.5_A7 --- 246 -
if-async-fun-else-async-fun.js --- esid: sec-if-statement 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] --- 606 -
if-async-fun-else-stmt.js --- esid: sec-if-statement 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] --- 585 -
if-async-fun-no-else.js --- esid: sec-if-statement 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] --- 578 -
if-async-gen-else-async-gen.js --- esid: sec-if-statement 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] --- 609 -
if-async-gen-else-stmt.js --- esid: sec-if-statement 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] --- 587 -
if-async-gen-no-else.js --- esid: sec-if-statement 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] --- 580 -
if-cls-else-cls.js --- description: Class declaration not allowed in statement position esid: sec-if-statement es6id: 13.6 negative: phase: parse type: SyntaxError --- 383 -
if-cls-else-stmt.js --- description: Class declaration not allowed in statement position esid: sec-if-statement es6id: 13.6 negative: phase: parse type: SyntaxError --- 374 -
if-cls-no-else.js --- description: Class declaration not allowed in statement position esid: sec-if-statement es6id: 13.6 negative: phase: parse type: SyntaxError --- 367 -
if-const-else-const.js --- description: Lexical declaration (const) not allowed in statement position esid: sec-if-statement es6id: 13.6 negative: phase: parse type: SyntaxError --- 403 -
if-const-else-stmt.js --- description: Lexical declaration (const) not allowed in statement position esid: sec-if-statement es6id: 13.6 negative: phase: parse type: SyntaxError --- 389 -
if-const-no-else.js --- description: Lexical declaration (const) not allowed in statement position esid: sec-if-statement es6id: 13.6 negative: phase: parse type: SyntaxError --- 382 -
if-decl-else-decl-strict-strict.js --- description: AnnexB extension not honored in strict mode (IfStatement with a declaration in both statement positions in the global scope) es6id: B.3.4 flags: [onlyStrict] negative: phase: parse type: SyntaxError info: | The following rules for IfStatement augment those in 13.6: IfStatement[Yield, Return]: if ( Expression[In, ?Yield] ) FunctionDeclaration[?Yield] else Statement[?Yield, ?Return] if ( Expression[In, ?Yield] ) Statement[?Yield, ?Return] else FunctionDeclaration[?Yield] if ( Expression[In, ?Yield] ) FunctionDeclaration[?Yield] else FunctionDeclaration[?Yield] if ( Expression[In, ?Yield] ) FunctionDeclaration[?Yield] The above rules are only applied when parsing code that is not strict mode code. --- 1032 -
if-decl-else-stmt-strict-strict.js --- description: AnnexB extension not honored in strict mode (IfStatement with a declaration in the first statement position in the global scope) es6id: B.3.4 flags: [onlyStrict] negative: phase: parse type: SyntaxError info: | The following rules for IfStatement augment those in 13.6: IfStatement[Yield, Return]: if ( Expression[In, ?Yield] ) FunctionDeclaration[?Yield] else Statement[?Yield, ?Return] if ( Expression[In, ?Yield] ) Statement[?Yield, ?Return] else FunctionDeclaration[?Yield] if ( Expression[In, ?Yield] ) FunctionDeclaration[?Yield] else FunctionDeclaration[?Yield] if ( Expression[In, ?Yield] ) FunctionDeclaration[?Yield] The above rules are only applied when parsing code that is not strict mode code. --- 1021 -
if-decl-no-else-strict-strict.js --- description: AnnexB extension not honored in strict mode (IfStatement without an else clause in the global scope) es6id: B.3.4 flags: [onlyStrict] negative: phase: parse type: SyntaxError info: | The following rules for IfStatement augment those in 13.6: IfStatement[Yield, Return]: if ( Expression[In, ?Yield] ) FunctionDeclaration[?Yield] else Statement[?Yield, ?Return] if ( Expression[In, ?Yield] ) Statement[?Yield, ?Return] else FunctionDeclaration[?Yield] if ( Expression[In, ?Yield] ) FunctionDeclaration[?Yield] else FunctionDeclaration[?Yield] if ( Expression[In, ?Yield] ) FunctionDeclaration[?Yield] The above rules are only applied when parsing code that is not strict mode code. --- 986 -
if-fun-else-fun-strict-strict.js --- description: AnnexB extension not honored in strict mode (IfStatement with a declaration in both statement positions in the global scope) esid: sec-if-statement es6id: 13.6 flags: [onlyStrict] negative: phase: parse type: SyntaxError info: | The following rules for IfStatement augment those in 13.6: IfStatement[Yield, Return]: if ( Expression[In, ?Yield] ) FunctionDeclaration[?Yield] else Statement[?Yield, ?Return] if ( Expression[In, ?Yield] ) Statement[?Yield, ?Return] else FunctionDeclaration[?Yield] if ( Expression[In, ?Yield] ) FunctionDeclaration[?Yield] else FunctionDeclaration[?Yield] if ( Expression[In, ?Yield] ) FunctionDeclaration[?Yield] The above rules are only applied when parsing code that is not strict mode code. --- 1052 -
if-fun-else-stmt-strict-strict.js --- description: AnnexB extension not honored in strict mode (IfStatement with a declaration in the first statement position in the global scope) esid: sec-if-statement es6id: 13.6 flags: [onlyStrict] negative: phase: parse type: SyntaxError info: | The following rules for IfStatement augment those in 13.6: IfStatement[Yield, Return]: if ( Expression[In, ?Yield] ) FunctionDeclaration[?Yield] else Statement[?Yield, ?Return] if ( Expression[In, ?Yield] ) Statement[?Yield, ?Return] else FunctionDeclaration[?Yield] if ( Expression[In, ?Yield] ) FunctionDeclaration[?Yield] else FunctionDeclaration[?Yield] if ( Expression[In, ?Yield] ) FunctionDeclaration[?Yield] The above rules are only applied when parsing code that is not strict mode code. --- 1041 -
if-fun-no-else-strict-strict.js --- description: AnnexB extension not honored in strict mode (IfStatement without an else clause in the global scope) esid: sec-if-statement es6id: 13.6 flags: [onlyStrict] negative: phase: parse type: SyntaxError info: | The following rules for IfStatement augment those in 13.6: IfStatement[Yield, Return]: if ( Expression[In, ?Yield] ) FunctionDeclaration[?Yield] else Statement[?Yield, ?Return] if ( Expression[In, ?Yield] ) Statement[?Yield, ?Return] else FunctionDeclaration[?Yield] if ( Expression[In, ?Yield] ) FunctionDeclaration[?Yield] else FunctionDeclaration[?Yield] if ( Expression[In, ?Yield] ) FunctionDeclaration[?Yield] The above rules are only applied when parsing code that is not strict mode code. --- 1006 -
if-gen-else-gen.js --- description: Generator declaration not allowed in statement position esid: sec-if-statement es6id: 13.6 negative: phase: parse type: SyntaxError features: [generators] --- 425 -
if-gen-else-stmt.js --- description: Generator declaration not allowed in statement position esid: sec-if-statement es6id: 13.6 negative: phase: parse type: SyntaxError features: [generators] --- 409 -
if-gen-no-else.js --- description: Generator declaration not allowed in statement position esid: sec-if-statement es6id: 13.6 negative: phase: parse type: SyntaxError features: [generators] --- 402 -
if-let-else-let.js --- description: Lexical declaration (let) not allowed in statement position esid: sec-if-statement es6id: 13.6 negative: phase: parse type: SyntaxError --- 383 -
if-let-else-stmt.js --- description: Lexical declaration (let) not allowed in statement position esid: sec-if-statement es6id: 13.6 negative: phase: parse type: SyntaxError --- 378 -
if-let-no-else.js --- description: Lexical declaration (let) not allowed in statement position esid: sec-if-statement es6id: 13.6 negative: phase: parse type: SyntaxError --- 371 -
if-stmt-else-async-fun.js --- esid: sec-if-statement 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] --- 586 -
if-stmt-else-async-gen.js --- esid: sec-if-statement 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] --- 588 -
if-stmt-else-cls.js --- description: Class declaration not allowed in statement position esid: sec-if-statement es6id: 13.6 negative: phase: parse type: SyntaxError --- 375 -
if-stmt-else-const.js --- description: Lexical declaration (const) not allowed in statement position esid: sec-if-statement es6id: 13.6 negative: phase: parse type: SyntaxError --- 390 -
if-stmt-else-decl-strict-strict.js --- description: AnnexB extension not honored in strict mode (IfStatement with a declaration in the second statement position in the global scope) es6id: B.3.4 flags: [onlyStrict] negative: phase: parse type: SyntaxError info: | The following rules for IfStatement augment those in 13.6: IfStatement[Yield, Return]: if ( Expression[In, ?Yield] ) FunctionDeclaration[?Yield] else Statement[?Yield, ?Return] if ( Expression[In, ?Yield] ) Statement[?Yield, ?Return] else FunctionDeclaration[?Yield] if ( Expression[In, ?Yield] ) FunctionDeclaration[?Yield] else FunctionDeclaration[?Yield] if ( Expression[In, ?Yield] ) FunctionDeclaration[?Yield] B.3.3.2 Changes to GlobalDeclarationInstantiation 1. 1. Let strict be IsStrict of script 2. If strict is *false*, then [...] --- 1083 -
if-stmt-else-fun-strict-strict.js --- description: AnnexB extension not honored in strict mode (IfStatement with a declaration in the second statement position in the global scope) esid: sec-if-statement es6id: 13.6 flags: [onlyStrict] negative: phase: parse type: SyntaxError info: | The following rules for IfStatement augment those in 13.6: IfStatement[Yield, Return]: if ( Expression[In, ?Yield] ) FunctionDeclaration[?Yield] else Statement[?Yield, ?Return] if ( Expression[In, ?Yield] ) Statement[?Yield, ?Return] else FunctionDeclaration[?Yield] if ( Expression[In, ?Yield] ) FunctionDeclaration[?Yield] else FunctionDeclaration[?Yield] if ( Expression[In, ?Yield] ) FunctionDeclaration[?Yield] B.3.3.2 Changes to GlobalDeclarationInstantiation 1. 1. Let strict be IsStrict of script 2. If strict is *false*, then [...] --- 1103 -
if-stmt-else-gen.js --- description: Generator declaration not allowed in statement position esid: sec-if-statement es6id: 13.6 negative: phase: parse type: SyntaxError features: [generators] --- 410 -
if-stmt-else-let.js --- description: Lexical declaration (let) not allowed in statement position esid: sec-if-statement es6id: 13.6 negative: phase: parse type: SyntaxError --- 379 -
labelled-fn-stmt-first.js --- esid: sec-if-statement-static-semantics-early-errors es6id: 13.6.1 description: > A labelled function declaration is never permitted in the first of two Statement positions info: | IfStatement : if ( Expression ) Statement else Statement if ( Expression ) Statement - It is a Syntax Error if IsLabelledFunction(Statement) is true. NOTE It is only necessary to apply this rule if the extension specified in B.3.2 is implemented. In the absence of Annex B.3.2, a SyntaxError should be produced due to the labelled function declaration itself. negative: phase: parse type: SyntaxError --- 876 -
labelled-fn-stmt-lone.js --- esid: sec-if-statement-static-semantics-early-errors es6id: 13.6.1 description: > A labelled function declaration is never permitted in the sole Statement position info: | IfStatement : if ( Expression ) Statement else Statement if ( Expression ) Statement - It is a Syntax Error if IsLabelledFunction(Statement) is true. NOTE It is only necessary to apply this rule if the extension specified in B.3.2 is implemented. In the absence of Annex B.3.2, a SyntaxError should be produced due to the labelled function declaration itself. negative: phase: parse type: SyntaxError --- 860 -
labelled-fn-stmt-second.js --- esid: sec-if-statement-static-semantics-early-errors es6id: 13.6.1 description: > A labelled function declaration is never permitted in the second of two Statement positions info: | IfStatement : if ( Expression ) Statement else Statement if ( Expression ) Statement - It is a Syntax Error if IsLabelledFunction(Statement) is true. NOTE It is only necessary to apply this rule if the extension specified in B.3.2 is implemented. In the absence of Annex B.3.2, a SyntaxError should be produced due to the labelled function declaration itself. negative: phase: parse type: SyntaxError --- 876 -
let-array-with-newline.js --- esid: sec-if-statement 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] --- 557 -
let-block-with-newline.js --- esid: sec-if-statement 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] --- 494 -
let-identifier-with-newline.js --- esid: sec-if-statement 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] --- 517 -
S12.5_A1.1_T1.js --- info: | 0, null, undefined, false, empty string, NaN in expression is evaluated to false es5id: 12.5_A1.1_T1 description: Using "if" without "else" construction --- 1886 -
S12.5_A1.1_T2.js --- info: | 0, null, undefined, false, empty string, NaN in expression is evaluated to false es5id: 12.5_A1.1_T2 description: Using "if/else" construction --- 2382 -
S12.5_A1.2_T1.js --- info: | 1, true, non-empty string and others in expression is evaluated to true when using operator "new" es5id: 12.5_A1.2_T1 description: Using "if" without "else" construction --- 2825 -
S12.5_A1.2_T2.js --- info: | 1, true, non-empty string and others in expression is evaluated to true when using operator "new" es5id: 12.5_A1.2_T2 description: Using "if/else" construction --- 3571 -
S12.5_A1_T1.js --- info: 1, true, non-empty string in expression is evaluated to true es5id: 12.5_A1_T1 description: Using "if" without "else" construction --- 1318 -
S12.5_A1_T2.js --- info: 1, true, non-empty string in expression is evaluated to true es5id: 12.5_A1_T2 description: Using "if/else" construction --- 1649 -
S12.5_A2.js --- info: In the "if" Statement eval in Expression is admitted es5id: 12.5_A2 description: Checking by using eval "eval("true")" --- 413 -
S12.5_A3.js --- info: | When the production "IfStatement: if ( Expression ) Statement else Statement" is evaluated, Expression is evaluated first es5id: 12.5_A3 description: The Expression is "(function(){throw 1})()" --- 1057 -
S12.5_A4.js --- info: | When the production "IfStatement: if ( Expression ) Statement else Statement" is evaluated, Statement(s) is(are) evaluated second es5id: 12.5_A4 description: The first statement is "(function(){throw "instatement"})()" --- 1232 -
S12.5_A5.js --- info: | FunctionDeclaration inside the "if" Expression is evaluated as true and function will not be declarated es5id: 12.5_A5 description: > The "if" Expression is "function __func(){throw "FunctionExpression";}" --- 1407 -
S12.5_A6_T1.js --- info: In the If statement expression must be enclosed in braces es5id: 12.5_A6_T1 description: Checking if execution of "if true" fails negative: phase: parse type: SyntaxError --- 557 -
S12.5_A6_T2.js --- info: In the If statement expression must be enclosed in braces es5id: 12.5_A6_T2 description: Checking if execution of "if false" fails negative: phase: parse type: SyntaxError --- 559 -
S12.5_A8.js --- info: In the "if" Statement empty expression is not allowed es5id: 12.5_A8 description: Checking if execution of "if()" fails negative: phase: parse type: SyntaxError --- 544 -
S12.5_A10_T1.js --- info: Function expession inside the "if" expression is allowed es5id: 12.5_A10_T1 description: > Using function expession(function __func(){return 0;}) inside the "if" expression --- 667 -
S12.5_A10_T2.js --- info: Function expession inside the "if" expression is allowed es5id: 12.5_A10_T2 description: > Using function expession "function __func(){return 0;}()" within "if" expression --- 666 -
S12.5_A11.js --- info: "{} within the \"if\" expression is not allowed" es5id: 12.5_A11 description: Checking if execution of "if({1})" fails negative: phase: parse type: SyntaxError --- 576 -
S12.5_A12_T1.js --- info: Embedded "if/else" constructions are allowed es5id: 12.5_A12_T1 description: Using embedded "if/else" into "if/else" constructions --- 1876 -
S12.5_A12_T2.js --- info: Embedded "if/else" constructions are allowed es5id: 12.5_A12_T2 description: Using embedded "if" into "if/else" constructions --- 1185 -
S12.5_A12_T3.js --- info: Embedded "if/else" constructions are allowed es5id: 12.5_A12_T3 description: Using embedded "if/else" into "if" without "else" constructions --- 1131 -
S12.5_A12_T4.js --- info: Embedded "if/else" constructions are allowed es5id: 12.5_A12_T4 description: Using embedded "if" into "if" constructions --- 884 -
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 -
tco-else-body-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] --- 644 -
tco-if-body-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] --- 634 -