diff --git a/spec.html b/spec.html
index 201e93044ac..9e00f585c6c 100644
--- a/spec.html
+++ b/spec.html
@@ -11171,6 +11171,7 @@
Syntax
BinaryIntegerLiteral
OctalIntegerLiteral
HexIntegerLiteral
+ LegacyOctalIntegerLiteral
BigIntLiteralSuffix ::
`n`
@@ -11183,6 +11184,7 @@ Syntax
DecimalIntegerLiteral ::
`0`
NonZeroDigit DecimalDigits?
+ NonOctalDecimalIntegerLiteral
DecimalDigits ::
DecimalDigit
@@ -11216,6 +11218,19 @@ Syntax
BinaryDigit :: one of
`0` `1`
+ NonOctalDecimalIntegerLiteral ::
+ `0` NonOctalDigit
+ LegacyOctalLikeDecimalIntegerLiteral NonOctalDigit
+ NonOctalDecimalIntegerLiteral DecimalDigit
+
+ LegacyOctalLikeDecimalIntegerLiteral ::
+ `0` OctalDigit
+ LegacyOctalLikeDecimalIntegerLiteral OctalDigit
+
+ LegacyOctalIntegerLiteral ::
+ `0` OctalDigit
+ LegacyOctalIntegerLiteral OctalDigit
+
OctalIntegerLiteral ::
`0o` OctalDigits
`0O` OctalDigits
@@ -11227,6 +11242,9 @@ Syntax
OctalDigit :: one of
`0` `1` `2` `3` `4` `5` `6` `7`
+ NonOctalDigit :: one of
+ `8` `9`
+
HexIntegerLiteral ::
`0x` HexDigits
`0X` HexDigits
@@ -11242,9 +11260,21 @@ Syntax
For example: `3in` is an error and not the two input elements `3` and `in`.
- A conforming implementation, when processing strict mode code, must not extend, as described in , the syntax of |NumericLiteral| to include , nor extend the syntax of |DecimalIntegerLiteral| to include .
-
+
+ Static Semantics: Early Errors
+
+ NonDecimalIntegerLiteral :: LegacyOctalIntegerLiteral
+
+ DecimalIntegerLiteral :: NonOctalDecimalIntegerLiteral
+
+
+ - It is a Syntax Error if the source code matching this production is strict mode code.
+
+ In non-strict code, this syntax is allowed, but deprecated.
+
+
+
Static Semantics: MV
A numeric literal stands for a value of the Number type or the BigInt type.