JsModule {
bom_token: missing (optional),
interpreter_token: missing (optional),
directives: JsDirectiveList [],
items: JsModuleItemList [
JsExpressionStatement {
expression: JsSequenceExpression {
left: JsSequenceExpression {
left: JsSequenceExpression {
left: JsSequenceExpression {
left: JsNumberLiteralExpression {
value_token: JS_NUMBER_LITERAL@0..2 "00" [] [],
},
comma_token: COMMA@2..4 "," [] [Whitespace(" ")],
right: JsNumberLiteralExpression {
value_token: JS_NUMBER_LITERAL@4..7 "012" [] [],
},
},
comma_token: COMMA@7..9 "," [] [Whitespace(" ")],
right: JsNumberLiteralExpression {
value_token: JS_NUMBER_LITERAL@9..11 "08" [] [],
},
},
comma_token: COMMA@11..13 "," [] [Whitespace(" ")],
right: JsNumberLiteralExpression {
value_token: JS_NUMBER_LITERAL@13..16 "091" [] [],
},
},
comma_token: COMMA@16..18 "," [] [Whitespace(" ")],
right: JsNumberLiteralExpression {
value_token: JS_NUMBER_LITERAL@18..39 "0789" [] [Whitespace(" "), Comments("// parser errors")],
},
},
semicolon_token: missing (optional),
},
JsExpressionStatement {
expression: JsSequenceExpression {
left: JsSequenceExpression {
left: JsBigintLiteralExpression {
value_token: JS_BIGINT_LITERAL@39..43 "01n" [Newline("\n")] [],
},
comma_token: COMMA@43..45 "," [] [Whitespace(" ")],
right: JsNumberLiteralExpression {
value_token: JS_NUMBER_LITERAL@45..48 "0_0" [] [],
},
},
comma_token: COMMA@48..50 "," [] [Whitespace(" ")],
right: JsNumberLiteralExpression {
value_token: JS_NUMBER_LITERAL@50..70 "01.2" [] [Whitespace(" "), Comments("// lexer errors")],
},
},
semicolon_token: missing (optional),
},
JsBogusStatement {
items: [
ERROR_TOKEN@70..76 "\"test" [Newline("\n")] [],
IDENT@76..86 "continues" [Newline("\n")] [],
ERROR_TOKEN@86..118 "\" // unterminated string literal" [] [],
],
},
],
eof_token: EOF@118..119 "" [Newline("\n")] [],
}
0: JS_MODULE@0..119
0: (empty)
1: (empty)
2: JS_DIRECTIVE_LIST@0..0
3: JS_MODULE_ITEM_LIST@0..118
0: JS_EXPRESSION_STATEMENT@0..39
0: JS_SEQUENCE_EXPRESSION@0..39
0: JS_SEQUENCE_EXPRESSION@0..16
0: JS_SEQUENCE_EXPRESSION@0..11
0: JS_SEQUENCE_EXPRESSION@0..7
0: JS_NUMBER_LITERAL_EXPRESSION@0..2
0: JS_NUMBER_LITERAL@0..2 "00" [] []
1: COMMA@2..4 "," [] [Whitespace(" ")]
2: JS_NUMBER_LITERAL_EXPRESSION@4..7
0: JS_NUMBER_LITERAL@4..7 "012" [] []
1: COMMA@7..9 "," [] [Whitespace(" ")]
2: JS_NUMBER_LITERAL_EXPRESSION@9..11
0: JS_NUMBER_LITERAL@9..11 "08" [] []
1: COMMA@11..13 "," [] [Whitespace(" ")]
2: JS_NUMBER_LITERAL_EXPRESSION@13..16
0: JS_NUMBER_LITERAL@13..16 "091" [] []
1: COMMA@16..18 "," [] [Whitespace(" ")]
2: JS_NUMBER_LITERAL_EXPRESSION@18..39
0: JS_NUMBER_LITERAL@18..39 "0789" [] [Whitespace(" "), Comments("// parser errors")]
1: (empty)
1: JS_EXPRESSION_STATEMENT@39..70
0: JS_SEQUENCE_EXPRESSION@39..70
0: JS_SEQUENCE_EXPRESSION@39..48
0: JS_BIGINT_LITERAL_EXPRESSION@39..43
0: JS_BIGINT_LITERAL@39..43 "01n" [Newline("\n")] []
1: COMMA@43..45 "," [] [Whitespace(" ")]
2: JS_NUMBER_LITERAL_EXPRESSION@45..48
0: JS_NUMBER_LITERAL@45..48 "0_0" [] []
1: COMMA@48..50 "," [] [Whitespace(" ")]
2: JS_NUMBER_LITERAL_EXPRESSION@50..70
0: JS_NUMBER_LITERAL@50..70 "01.2" [] [Whitespace(" "), Comments("// lexer errors")]
1: (empty)
2: JS_BOGUS_STATEMENT@70..118
0: ERROR_TOKEN@70..76 "\"test" [Newline("\n")] []
1: IDENT@76..86 "continues" [Newline("\n")] []
2: ERROR_TOKEN@86..118 "\" // unterminated string literal" [] []
4: EOF@118..119 "" [Newline("\n")] []
--
literals.js:1:1 parse ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
× "0"-prefixed octal literals are deprecated; use the "0o" prefix instead.
> 1 │ 00, 012, 08, 091, 0789 // parser errors
│ ^^
2 │ 01n, 0_0, 01.2 // lexer errors
3 │ "test
--
literals.js:1:5 parse ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
× "0"-prefixed octal literals are deprecated; use the "0o" prefix instead.
> 1 │ 00, 012, 08, 091, 0789 // parser errors
│ ^^^
2 │ 01n, 0_0, 01.2 // lexer errors
3 │ "test
--
literals.js:1:10 parse ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
× Decimals with leading zeros are not allowed in strict mode.
> 1 │ 00, 012, 08, 091, 0789 // parser errors
│ ^^
2 │ 01n, 0_0, 01.2 // lexer errors
3 │ "test
--
literals.js:1:14 parse ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
× Decimals with leading zeros are not allowed in strict mode.
> 1 │ 00, 012, 08, 091, 0789 // parser errors
│ ^^^
2 │ 01n, 0_0, 01.2 // lexer errors
3 │ "test
--
literals.js:1:19 parse ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
× Decimals with leading zeros are not allowed in strict mode.
> 1 │ 00, 012, 08, 091, 0789 // parser errors
│ ^^^^
2 │ 01n, 0_0, 01.2 // lexer errors
3 │ "test
--
literals.js:2:1 parse ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
× Octal literals are not allowed for BigInts.
1 │ 00, 012, 08, 091, 0789 // parser errors
> 2 │ 01n, 0_0, 01.2 // lexer errors
│ ^^^
3 │ "test
4 │ continues" // unterminated string literal
--
literals.js:2:7 parse ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
× numeric separator can not be used after leading 0
1 │ 00, 012, 08, 091, 0789 // parser errors
> 2 │ 01n, 0_0, 01.2 // lexer errors
│
3 │ "test
4 │ continues" // unterminated string literal
--
literals.js:2:11 parse ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
× unexpected number
1 │ 00, 012, 08, 091, 0789 // parser errors
> 2 │ 01n, 0_0, 01.2 // lexer errors
│ ^^^
3 │ "test
4 │ continues" // unterminated string literal
--
literals.js:3:1 parse ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
× unterminated string literal
1 │ 00, 012, 08, 091, 0789 // parser errors
2 │ 01n, 0_0, 01.2 // lexer errors
> 3 │ "test
│ ^^^^^
4 │ continues" // unterminated string literal
5 │
i
1 │ 00, 012, 08, 091, 0789 // parser errors
2 │ 01n, 0_0, 01.2 // lexer errors
> 3 │ "test
│ ^^^^^
4 │ continues" // unterminated string literal
5 │
i line breaks here
1 │ 00, 012, 08, 091, 0789 // parser errors
2 │ 01n, 0_0, 01.2 // lexer errors
> 3 │ "test
│
> 4 │ continues" // unterminated string literal
│ ^
5 │
--
literals.js:4:10 parse ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
× unterminated string literal
2 │ 01n, 0_0, 01.2 // lexer errors
3 │ "test
> 4 │ continues" // unterminated string literal
│ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
5 │
i
2 │ 01n, 0_0, 01.2 // lexer errors
3 │ "test
> 4 │ continues" // unterminated string literal
│ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
5 │
i line breaks here
2 │ 01n, 0_0, 01.2 // lexer errors
3 │ "test
> 4 │ continues" // unterminated string literal
│
> 5 │
│
--
00, 012, 08, 091, 0789 // parser errors
01n, 0_0, 01.2 // lexer errors
"test
continues" // unterminated string literal