Name Description Size Coverage
do-while-same-line.js --- esid: sec-rules-of-automatic-semicolon-insertion description: ASI at the end of a do-while statement without a new line terminator info: | 1. When, as the source text is parsed from left to right, a token (called the offending token) is encountered that is not allowed by any production of the grammar, then a semicolon is automatically inserted before the offending token if one or more of the following conditions is true: ... - The previous token is ) and the inserted semicolon would then be parsed as the terminating semicolon of a do-while statement (13.7.2). --- 866 -
S7.9.2_A1_T1.js --- info: Check examples for automatic semicolon insertion from the standard es5id: 7.9.2_A1_T1 description: "{ 1 2 } 3 is not a valid sentence in the ECMAScript grammar" negative: phase: parse type: SyntaxError --- 397 -
S7.9.2_A1_T2.js --- info: Check examples for automatic semicolon insertion from the standard es5id: 7.9.2_A1_T2 description: > { 1 \n 2 } 3 is a valid sentence in the ECMAScript grammar with automatic semicolon insertion --- 375 -
S7.9.2_A1_T3.js --- info: Check examples for automatic semicolon insertion from the standard es5id: 7.9.2_A1_T3 description: for( a ; b \n ) is not a valid sentence in the ECMAScript grammar negative: phase: parse type: SyntaxError --- 404 -
S7.9.2_A1_T4.js --- info: Check examples for automatic semicolon insertion from the standard es5id: 7.9.2_A1_T4 description: > return \n a+b is a valid sentence in the ECMAScript grammar with automatic semicolon insertion, but returned undefined --- 551 -
S7.9.2_A1_T5.js --- info: Check examples for automatic semicolon insertion from the standard es5id: 7.9.2_A1_T5 description: > a=b \n ++c is a valid sentence in the ECMAScript grammar with automatic semicolon insertion, but a!==b++c --- 493 -
S7.9.2_A1_T6.js --- info: Check examples for automatic semicolon insertion from the standard es5id: 7.9.2_A1_T6 description: > if(a>b) \n else c=d is not a valid sentence in the ECMAScript grammar negative: phase: parse type: SyntaxError --- 441 -
S7.9.2_A1_T7.js --- info: Check examples for automatic semicolon insertion from the standard es5id: 7.9.2_A1_T7 description: > a=b+c \n (d+e).print() is a valid sentence in the ECMAScript grammar, and automatic semicolon insertion not run --- 537 -
S7.9_A1.js --- info: Check Continue Statement for automatic semicolon insertion es5id: 7.9_A1 description: Try use continue \n Label construction --- 837 -
S7.9_A2.js --- info: Check Break Statement for automatic semicolon insertion es5id: 7.9_A2 description: Try use break \n Label construction --- 729 -
S7.9_A3.js --- info: Check Return Statement for automatic semicolon insertion es5id: 7.9_A3 description: Try use return \n Expression construction --- 589 -
S7.9_A4.js --- info: Check Throw Statement for automatic semicolon insertion es5id: 7.9_A4 description: Try use Throw \n Expression construction negative: phase: parse type: SyntaxError --- 384 -
S7.9_A5.1_T1.js --- info: Check Postfix Increment Operator for automatic semicolon insertion es5id: 7.9_A5.1_T1 description: Try use Variable \n ++ construction negative: phase: parse type: SyntaxError --- 368 -
S7.9_A5.2_T1.js --- info: Check Prefix Increment Operator for automatic semicolon insertion es5id: 7.9_A5.2_T1 description: Try use Variable1 \n ++Variable2 construction --- 581 -
S7.9_A5.3_T1.js --- info: Check Postfix Decrement Operator for automatic semicolon insertion es5id: 7.9_A5.3_T1 description: Try use Variable \n -- construction negative: phase: parse type: SyntaxError --- 378 -
S7.9_A5.4_T1.js --- info: Check Prefix Decrement Operator for automatic semicolon insertion es5id: 7.9_A5.4_T1 description: Try use Variable1 \n --Variable2 construction --- 581 -
S7.9_A5.5_T1.js --- info: Check Function Expression for automatic semicolon insertion es5id: 7.9_A5.5_T1 description: Try use 1 + function_name\n(2 + 3) construction --- 464 -
S7.9_A5.5_T2.js --- info: Check Function Expression for automatic semicolon insertion es5id: 7.9_A5.5_T2 description: > Try use function f(o) {o.x = 1; return o;}; \n (new Object()).x; construction --- 540 -
S7.9_A5.5_T3.js --- info: Check Function Expression for automatic semicolon insertion es5id: 7.9_A5.5_T3 description: > Try use function f(o) {o.x = 1; return o;} \n (new Object()).x; construction --- 522 -
S7.9_A5.5_T4.js --- info: Check Function Expression for automatic semicolon insertion es5id: 7.9_A5.5_T4 description: Insert some LineTerminators into function body --- 466 -
S7.9_A5.5_T5.js --- info: Check Function Expression for automatic semicolon insertion es5id: 7.9_A5.5_T5 description: Insert some LineTerminators into rerutn expression; --- 505 -
S7.9_A5.6_T1.js --- info: | Since LineTerminator between Postfix Increment/Decrement Operator(I/DO) and operand is not allowed but between Prefix I/DO and operand admitted, Postfix I/DO in combination with prefix I/DO after automatic semicolon insertion gives valid result es5id: 7.9_A5.6_T1 description: Try use Variable1 \n ++ \n Variable2 construction --- 1110 -
S7.9_A5.6_T2.js --- info: | Since LineTerminator between Postfix Increment/Decrement Operator(I/DO) and operand is not allowed but between Prefix I/DO and operand admitted, Postfix I/DO in combination with prefix I/DO after automatic semicolon insertion gives valid result es5id: 7.9_A5.6_T2 description: Try use Variable1 \n -- \n Variable2 construction --- 1110 -
S7.9_A5.7_T1.js --- info: | Since LineTerminator(LT) between Postfix Increment/Decrement Operator(I/DO) and operand is not allowed, two IO(just as two DO and their combination) between two references separated by [LT] after automatic semicolon insertion lead to syntax error es5id: 7.9_A5.7_T1 description: Try use Variable1 \n ++ \n ++ \n Variable2 construction negative: phase: parse type: SyntaxError --- 601 -
S7.9_A5.8_T1.js --- info: | Since LineTerminator(LT) between Postfix Increment/Decrement Operator(I/DO) and operand is admitted, Additive/Substract Operator(A/SO) in combination with I/DO separated by LT or white spaces after automatic semicolon insertion gives valid result es5id: 7.9_A5.8_T1 description: Try use Variable1 \n + \n ++ \n Variable2 construction --- 1267 -
S7.9_A5.9_T1.js --- info: | Additive/Substract Operator(A/SO) in combination with itself separated by LT or white spaces after automatic semicolon insertion gives valid result es5id: 7.9_A5.9_T1 description: > Try use Variable1 (different combinations of three +) Variable2 construction --- 1208 -
S7.9_A6.1_T1.js --- info: Check For Statement for automatic semicolon insertion es5id: 7.9_A6.1_T1 description: for( Empty two semicolons and \n) --- 304 -
S7.9_A6.1_T2.js --- info: Check For Statement for automatic semicolon insertion es5id: 7.9_A6.1_T2 description: for (semicolon \n semicolon \n) --- 305 -
S7.9_A6.1_T3.js --- info: Check For Statement for automatic semicolon insertion es5id: 7.9_A6.1_T3 description: for (\n two semicolons \n) --- 302 -
S7.9_A6.1_T4.js --- info: Check For Statement for automatic semicolon insertion es5id: 7.9_A6.1_T4 description: for( \n semicolon \n semicolon \n) --- 315 -
S7.9_A6.1_T5.js --- info: Check For Statement for automatic semicolon insertion es5id: 7.9_A6.1_T5 description: for ( \n semicolon \n\n semicolon \n) --- 323 -
S7.9_A6.1_T6.js --- info: Check For Statement for automatic semicolon insertion es5id: 7.9_A6.1_T6 description: for(false semicolon false semicolon false \n) --- 331 -
S7.9_A6.1_T7.js --- info: Check For Statement for automatic semicolon insertion es5id: 7.9_A6.1_T7 description: for (false semicolon false \n semicolon \n) --- 327 -
S7.9_A6.1_T8.js --- info: Check For Statement for automatic semicolon insertion es5id: 7.9_A6.1_T8 description: for (false semicolon false \n semicolon false \n) --- 338 -
S7.9_A6.1_T9.js --- info: Check For Statement for automatic semicolon insertion es5id: 7.9_A6.1_T9 description: for (false \n two semicolons \n) --- 313 -
S7.9_A6.1_T10.js --- info: Check For Statement for automatic semicolon insertion es5id: 7.9_A6.1_T10 description: for (false \n two semicolons false \n) --- 325 -
S7.9_A6.1_T11.js --- info: Check For Statement for automatic semicolon insertion es5id: 7.9_A6.1_T11 description: for (false \n semicolon \n semicolon \n) --- 327 -
S7.9_A6.1_T12.js --- info: Check For Statement for automatic semicolon insertion es5id: 7.9_A6.1_T12 description: for (false \n semicolon false \n semicolon \n) --- 338 -
S7.9_A6.1_T13.js --- info: Check For Statement for automatic semicolon insertion es5id: 7.9_A6.1_T13 description: for (false \n semicolon false \n semicolon false \n) --- 349 -
S7.9_A6.2_T1.js --- info: | Check For Statement for automatic semicolon insertion. If automatic insertion semicolon would become one of the two semicolons in the header of a For Statement. Use one semicolon es5id: 7.9_A6.2_T1 description: For header is (semicolon \n) negative: phase: parse type: SyntaxError --- 501 -
S7.9_A6.2_T2.js --- info: | Check For Statement for automatic semicolon insertion. If automatic insertion semicolon would become one of the two semicolons in the header of a For Statement. Use one semicolon es5id: 7.9_A6.2_T2 description: For header is (\n semicolon \n) negative: phase: parse type: SyntaxError --- 509 -
S7.9_A6.2_T3.js --- info: | Check For Statement for automatic semicolon insertion. If automatic insertion semicolon would become one of the two semicolons in the header of a For Statement. Use one semicolon es5id: 7.9_A6.2_T3 description: For header is (\n semicolon) negative: phase: parse type: SyntaxError --- 501 -
S7.9_A6.2_T4.js --- info: | Check For Statement for automatic semicolon insertion. If automatic insertion semicolon would become one of the two semicolons in the header of a For Statement. Use one semicolon es5id: 7.9_A6.2_T4 description: For header is (\n \n semicolon) negative: phase: parse type: SyntaxError --- 505 -
S7.9_A6.2_T5.js --- info: | Check For Statement for automatic semicolon insertion. If automatic insertion semicolon would become one of the two semicolons in the header of a For Statement. Use one semicolon es5id: 7.9_A6.2_T5 description: For header is (false semicolon false\n) negative: phase: parse type: SyntaxError --- 522 -
S7.9_A6.2_T6.js --- info: | Check For Statement for automatic semicolon insertion. If automatic insertion semicolon would become one of the two semicolons in the header of a For Statement. Use one semicolon es5id: 7.9_A6.2_T6 description: For header is (false semicolon \n false) negative: phase: parse type: SyntaxError --- 524 -
S7.9_A6.2_T7.js --- info: | Check For Statement for automatic semicolon insertion. If automatic insertion semicolon would become one of the two semicolons in the header of a For Statement. Use one semicolon es5id: 7.9_A6.2_T7 description: For header is (false \n semicolon \n) negative: phase: parse type: SyntaxError --- 520 -
S7.9_A6.2_T8.js --- info: | Check For Statement for automatic semicolon insertion. If automatic insertion semicolon would become one of the two semicolons in the header of a For Statement. Use one semicolon es5id: 7.9_A6.2_T8 description: For header is (false \n semicolon false \n) negative: phase: parse type: SyntaxError --- 531 -
S7.9_A6.2_T9.js --- info: | Check For Statement for automatic semicolon insertion. If automatic insertion semicolon would become one of the two semicolons in the header of a For Statement. Use one semicolon es5id: 7.9_A6.2_T9 description: For header is (\n semicolon false) negative: phase: parse type: SyntaxError --- 512 -
S7.9_A6.2_T10.js --- info: | Check For Statement for automatic semicolon insertion. If automatic insertion semicolon would become one of the two semicolons in the header of a For Statement. Use one semicolon es5id: 7.9_A6.2_T10 description: For header is (\n false \n semicolon) negative: phase: parse type: SyntaxError --- 521 -
S7.9_A6.3_T1.js --- info: | Check For Statement for automatic semicolon insertion. If automatic insertion semicolon would become one of the two semicolons in the header of a For Statement. Don`t use semicolons es5id: 7.9_A6.3_T1 description: For header is (\n) negative: phase: parse type: SyntaxError --- 493 -
S7.9_A6.3_T2.js --- info: | Check For Statement for automatic semicolon insertion. If automatic insertion semicolon would become one of the two semicolons in the header of a For Statement. Don`t use semicolons es5id: 7.9_A6.3_T2 description: For header is (\n \n) negative: phase: parse type: SyntaxError --- 497 -
S7.9_A6.3_T3.js --- info: | Check For Statement for automatic semicolon insertion. If automatic insertion semicolon would become one of the two semicolons in the header of a For Statement. Don`t use semicolons es5id: 7.9_A6.3_T3 description: For header is (\n \n \n) negative: phase: parse type: SyntaxError --- 501 -
S7.9_A6.3_T4.js --- info: | Check For Statement for automatic semicolon insertion. If automatic insertion semicolon would become one of the two semicolons in the header of a For Statement. Don`t use semicolons es5id: 7.9_A6.3_T4 description: For header is (\n false \n) negative: phase: parse type: SyntaxError --- 512 -
S7.9_A6.3_T5.js --- info: | Check For Statement for automatic semicolon insertion. If automatic insertion semicolon would become one of the two semicolons in the header of a For Statement. Don`t use semicolons es5id: 7.9_A6.3_T5 description: For header is (false \n false \n) negative: phase: parse type: SyntaxError --- 523 -
S7.9_A6.3_T6.js --- info: | Check For Statement for automatic semicolon insertion. If automatic insertion semicolon would become one of the two semicolons in the header of a For Statement. Don`t use semicolons es5id: 7.9_A6.3_T6 description: For header is (\n false \n false \n) negative: phase: parse type: SyntaxError --- 531 -
S7.9_A6.3_T7.js --- info: | Check For Statement for automatic semicolon insertion. If automatic insertion semicolon would become one of the two semicolons in the header of a For Statement. Don`t use semicolons es5id: 7.9_A6.3_T7 description: For header is (\n false \n false \n false \n) negative: phase: parse type: SyntaxError --- 550 -
S7.9_A6.4_T1.js --- info: Check For Statement for automatic semicolon insertion es5id: 7.9_A6.4_T1 description: > Three semicolons. For header is (false semicolon false semicolon false semicolon) negative: phase: parse type: SyntaxError --- 441 -
S7.9_A6.4_T2.js --- info: Check For Statement for automatic semicolon insertion es5id: 7.9_A6.4_T2 description: > Three semicolons. For header is (false semicolon false two semicolons false) negative: phase: parse type: SyntaxError --- 436 -
S7.9_A7_T1.js --- info: Check Var Statement for automatic semicolon insertion es5id: 7.9_A7_T1 description: Checking if execution of "var x \n = 1" passes --- 303 -
S7.9_A7_T2.js --- info: Check Var Statement for automatic semicolon insertion es5id: 7.9_A7_T2 description: Checking if execution of "var x = \n 1" passes --- 304 -
S7.9_A7_T3.js --- info: Check Var Statement for automatic semicolon insertion es5id: 7.9_A7_T3 description: Checking if execution of "var x \n x = 1" passes --- 307 -
S7.9_A7_T4.js --- info: Check Var Statement for automatic semicolon insertion es5id: 7.9_A7_T4 description: Checking if execution of "var \n x" passes --- 295 -
S7.9_A7_T5.js --- info: Check Var Statement for automatic semicolon insertion es5id: 7.9_A7_T5 description: Checking if execution of "var \n x \n = \n 1" passes --- 311 -
S7.9_A7_T6.js --- info: Check Var Statement for automatic semicolon insertion es5id: 7.9_A7_T6 description: Checking if execution of "var x, \n y" passes --- 302 -
S7.9_A7_T7.js --- info: Check Var Statement for automatic semicolon insertion es5id: 7.9_A7_T7 description: Checking if execution of "var x \n y" passes --- 337 -
S7.9_A7_T8.js --- info: Check Var Statement for automatic semicolon insertion es5id: 7.9_A7_T8 description: Checking if execution of "var x \n ,y" passes --- 302 -
S7.9_A7_T9.js --- info: Check Var Statement for automatic semicolon insertion es5id: 7.9_A7_T9 description: Checking if execution of "var x \n ,y = 1" passes --- 311 -
S7.9_A8_T1.js --- info: Check Empty Statement for automatic semicolon insertion es5id: 7.9_A8_T1 description: Checking if execution of one semicolon passes --- 296 -
S7.9_A8_T2.js --- info: Check Empty Statement for automatic semicolon insertion es5id: 7.9_A8_T2 description: Checking if execution of some semicolons with LineTerminators pases --- 324 -
S7.9_A8_T3.js --- info: Check Empty Statement for automatic semicolon insertion es5id: 7.9_A8_T3 description: > Checking if execution of some semicolons without LineTerminators passes --- 335 -
S7.9_A8_T4.js --- info: Check Empty Statement for automatic semicolon insertion es5id: 7.9_A8_T4 description: > Checking if execution of some semicolons with LineTerminators and numbers passes --- 353 -
S7.9_A8_T5.js --- info: Check Empty Statement for automatic semicolon insertion es5id: 7.9_A8_T5 description: > Checking if execution of some semicolons without LineTerminators but with numbers passes --- 357 -
S7.9_A9_T1.js --- info: Check Do-While Statement for automatic semicolon insertion es5id: 7.9_A9_T1 description: Execute do { \n }while(false) --- 304 -
S7.9_A9_T2.js --- info: Check Do-While Statement for automatic semicolon insertion es5id: 7.9_A9_T2 description: Execute do; while(false) \n true --- 308 -
S7.9_A9_T5.js --- info: Check Do-While Statement for automatic semicolon insertion es5id: 7.9_A9_T5 description: Execute do { \n ; \n }while((false) \n ) --- 321 -
S7.9_A9_T6.js --- info: Check Do-While Statement for automatic semicolon insertion es5id: 7.9_A9_T6 description: Execute do \n while(false) negative: phase: parse type: SyntaxError --- 359 -
S7.9_A9_T7.js --- info: Check Do-While Statement for automatic semicolon insertion es5id: 7.9_A9_T7 description: Execute do \n\n while(false) negative: phase: parse type: SyntaxError --- 362 -
S7.9_A9_T8.js --- info: Check Do-While Statement for automatic semicolon insertion es5id: 7.9_A9_T8 description: Execute do {}; \n while(false) negative: phase: parse type: SyntaxError --- 367 -
S7.9_A9_T9.js --- info: Check Do-While Statement for automatic semicolon insertion es5id: 7.9_A9_T9 description: Execute do {} \n while(false) --- 302 -
S7.9_A10_T1.js --- info: Check {} for automatic semicolon insertion es5id: 7.9_A10_T1 description: Checking if execution of "1 * {}" passes --- 284 -
S7.9_A10_T2.js --- info: Check {} for automatic semicolon insertion es5id: 7.9_A10_T2 description: Checking if execution of "{}*1" fails negative: phase: parse type: SyntaxError --- 345 -
S7.9_A10_T3.js --- info: Check {} for automatic semicolon insertion es5id: 7.9_A10_T3 description: Checking if execution of "({}) * 1" passes --- 288 -
S7.9_A10_T4.js --- info: Check {} for automatic semicolon insertion es5id: 7.9_A10_T4 description: Checking if execution of "({};)*1" fails negative: phase: parse type: SyntaxError --- 351 -
S7.9_A10_T5.js --- info: Check {} for automatic semicolon insertion es5id: 7.9_A10_T5 description: Checking if execution of "( \n {} \n ) * 1" passes --- 302 -
S7.9_A10_T6.js --- info: Check {} for automatic semicolon insertion es5id: 7.9_A10_T6 description: Checking if execution of "{} \n * 1" fails negative: phase: parse type: SyntaxError --- 351 -
S7.9_A10_T7.js --- info: Check {} for automatic semicolon insertion es5id: 7.9_A10_T7 description: Checking if execution of "{1} 2" passes --- 282 -
S7.9_A10_T8.js --- info: Check {} for automatic semicolon insertion es5id: 7.9_A10_T8 description: Checking if execution of "{1 2} 3" fails negative: phase: parse type: SyntaxError --- 349 -
S7.9_A10_T9.js --- info: Check {} for automatic semicolon insertion es5id: 7.9_A10_T9 description: Checking if execution of "{1 \n 2} 3" passes --- 290 -
S7.9_A10_T10.js --- info: Check {} for automatic semicolon insertion es5id: 7.9_A10_T10 description: "Checking if execution of \"{a:1 \\n} 3\" passes" --- 296 -
S7.9_A10_T11.js --- info: Check {} for automatic semicolon insertion es5id: 7.9_A10_T11 description: "Checking if execution of \"{a:1 \\n} \\n 3\" passes" --- 302 -
S7.9_A10_T12.js --- info: Check {} for automatic semicolon insertion es5id: 7.9_A10_T12 description: "Checking if execution of \"{ \\n a: \\n 1 \\n } \\n 3\" passes" --- 315 -
S7.9_A11_T1.js --- info: Check If Statement for automatic semicolon insertion es5id: 7.9_A11_T1 description: Use if (false) x = 1 (without semicolon) and check x --- 430 -
S7.9_A11_T2.js --- info: Check If Statement for automatic semicolon insertion es5id: 7.9_A11_T2 description: Use if (false) \n x = 1 and check x --- 413 -
S7.9_A11_T3.js --- info: Check If Statement for automatic semicolon insertion es5id: 7.9_A11_T3 description: Use if (false);\n x = 1 and check x --- 414 -
S7.9_A11_T4.js --- info: Check If Statement for automatic semicolon insertion es5id: 7.9_A11_T4 description: Checking if execution of "if (false) x = 1 else x = -1" fails negative: phase: parse type: SyntaxError --- 412 -
S7.9_A11_T5.js --- info: Check If Statement for automatic semicolon insertion es5id: 7.9_A11_T5 description: Use if (false) x = 1; else x=-1 and check x --- 435 -
S7.9_A11_T6.js --- info: Check If Statement for automatic semicolon insertion es5id: 7.9_A11_T6 description: Use if (false) x = 1 \n else x=-1 and check x --- 436 -
S7.9_A11_T7.js --- info: Check If Statement for automatic semicolon insertion es5id: 7.9_A11_T7 description: Use if (false) x = 1; \n else x=-1 and check x --- 438 -
S7.9_A11_T8.js --- info: Check If Statement for automatic semicolon insertion es5id: 7.9_A11_T8 description: Use if (false) {x = 1}; \n else x=-1 and check x negative: phase: parse type: SyntaxError --- 372 -
S7.9_A11_T9.js --- info: Check If Statement for automatic semicolon insertion es5id: 7.9_A11_T9 description: Use if (false) {x = 1} \n else x=-1 and check x --- 440 -
S7.9_A11_T10.js --- info: Check If Statement for automatic semicolon insertion es5id: 7.9_A11_T10 description: Use if (false) {x = 1} else {x=-1} and check x --- 442 -
S7.9_A11_T11.js --- info: Check If Statement for automatic semicolon insertion es5id: 7.9_A11_T11 description: Use if (false) {{x = 1};} \n else x=-1 and check x --- 447 -