[parser] Disallow numeric separators in legacy octal like inte… (#10493)
* Disallow numeric separators in lols * Update whitelist * Rename test * Better syntax when checking
This commit is contained in:
parent
eaa1474541
commit
490798a26d
@ -1035,8 +1035,8 @@ export default class Tokenizer extends LocationParser {
|
||||
next = this.input.charCodeAt(this.state.pos);
|
||||
}
|
||||
|
||||
// disallow numeric separators in non octal decimals
|
||||
if (this.hasPlugin("numericSeparator") && isNonOctalDecimalInt) {
|
||||
// disallow numeric separators in non octal decimals and legacy octal likes
|
||||
if (this.hasPlugin("numericSeparator") && (octal || isNonOctalDecimalInt)) {
|
||||
const underscorePos = this.input
|
||||
.slice(start, this.state.pos)
|
||||
.indexOf("_");
|
||||
|
||||
@ -0,0 +1 @@
|
||||
00_0
|
||||
@ -0,0 +1 @@
|
||||
{ "throws": "Numeric separator can not be used after leading 0 (1:2)" }
|
||||
@ -104,12 +104,6 @@ language/expressions/object/method-definition/private-name-early-error-gen-insid
|
||||
language/expressions/object/method-definition/private-name-early-error-gen-inside-class.js(strict mode)
|
||||
language/expressions/object/method-definition/private-name-early-error-method-inside-class.js(default)
|
||||
language/expressions/object/method-definition/private-name-early-error-method-inside-class.js(strict mode)
|
||||
language/literals/numeric/numeric-separators/numeric-separator-literal-lol-00-err.js(default)
|
||||
language/literals/numeric/numeric-separators/numeric-separator-literal-lol-01-err.js(default)
|
||||
language/literals/numeric/numeric-separators/numeric-separator-literal-lol-07-err.js(default)
|
||||
language/literals/numeric/numeric-separators/numeric-separator-literal-lol-0_0-err.js(default)
|
||||
language/literals/numeric/numeric-separators/numeric-separator-literal-lol-0_1-err.js(default)
|
||||
language/literals/numeric/numeric-separators/numeric-separator-literal-lol-0_7-err.js(default)
|
||||
language/module-code/privatename-not-valid-earlyerr-module-1.js(default)
|
||||
language/module-code/privatename-not-valid-earlyerr-module-1.js(strict mode)
|
||||
language/module-code/privatename-not-valid-earlyerr-module-2.js(default)
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user