diff --git a/rendered_spec.html b/rendered_spec.html index 864ab88a216..1bc39b21484 100644 --- a/rendered_spec.html +++ b/rendered_spec.html @@ -47,7 +47,7 @@
-

Draft ECMA-262 / July 31, 2019

+

Draft ECMA-262 / August 02, 2019

ECMAScript® 2020 Language Specification

@@ -12484,12 +12484,11 @@

Syntax

EscapeSequence::CharacterEscapeSequence - 0[lookahead ∉ DecimalDigit] + LegacyOctalEscapeSequence HexEscapeSequence UnicodeEscapeSequence - -

A conforming implementation, when processing strict mode code, must not extend the syntax of EscapeSequence to include LegacyOctalEscapeSequence as described in B.1.2.

- + + CharacterEscapeSequence::SingleEscapeCharacter NonEscapeCharacter @@ -12505,6 +12504,18 @@

Syntax

x u + + LegacyOctalEscapeSequence::OctalDigit[lookahead ∉ OctalDigit] + ZeroToThreeOctalDigit[lookahead ∉ OctalDigit] + FourToSevenOctalDigit + ZeroToThreeOctalDigitOctalDigit + + + ZeroToThree::one of0123 + + + FourToSeven::one of4567 + HexEscapeSequence::xHexDigitHexDigit @@ -12520,8 +12531,26 @@

Syntax

<LF> and <CR> cannot appear in a string literal, except as part of a LineContinuation to produce the empty code points sequence. The proper way to include either in the String value of a string literal is to use an escape sequence such as \n or \u000A.

+

Supplemental Syntax

+

When processing an instance of the production + LegacyOctalEscapeSequence::OctalDigit + the following production is used to refine the interpretation of LegacyOctalEscapeSequence.

+ + StrictZeroEscapeSequence::0[lookahead ∉ DecimalDigit] + + + +

11.8.4.1Static Semantics: Early Errors

+ + EscapeSequence::LegacyOctalEscapeSequence + + +
+ -

11.8.4.1Static Semantics: StringValue

+

11.8.4.2Static Semantics: StringValue

StringLiteral::"DoubleStringCharactersopt" @@ -12533,8 +12562,8 @@

11.8.4.1Static Semantics: StringValue

- -

11.8.4.2Static Semantics: SV

+ +

11.8.4.3Static Semantics: SV

A string literal stands for a value of the String type. The String value (SV) of the literal is described in terms of code unit values contributed by the various parts of the string literal. As part of this process, some Unicode code points within the string literal are interpreted as having a mathematical value (MV), as described below or in 11.8.3.

+ + +

11.8.4.4Static Semantics: MV

+ +
@@ -13045,13 +13152,24 @@

Syntax

CodePoint::HexDigitsbut only if MV of |HexDigits| ≤ 0x10FFFF -

A conforming implementation must not use the extended definition of EscapeSequence described in B.1.2 when parsing a TemplateCharacter.

Note

TemplateSubstitutionTail is used by the InputElementTemplateTail alternative lexical goal.

+ +

11.8.6.1Early Errors

+ + TemplateCharacter::\EscapeSequence + + +
+ -

11.8.6.1Static Semantics: TV and TRV

+

11.8.6.2Static Semantics: TV and TRV

A template literal component is interpreted as a sequence of Unicode code points. The Template Value (TV) of a literal component is described in terms of code unit values (SV, 11.8.4) contributed by the various parts of the template literal component. As part of this process, some Unicode code points within the template component are interpreted as having a mathematical value (MV, 11.8.3). In determining a TV, escape sequences are replaced by the UTF-16 code unit(s) of the Unicode code point represented by the escape sequence. The Template Raw Value (TRV) is similar to a Template Value with the difference that in TRVs escape sequences are interpreted literally.