summaryrefslogtreecommitdiff
path: root/test/language/literals
diff options
context:
space:
mode:
Diffstat (limited to 'test/language/literals')
-rw-r--r--test/language/literals/regexp/unicode-escape-nls-err.js73
-rw-r--r--test/language/literals/string/unicode-escape-nls-err-double.js49
-rw-r--r--test/language/literals/string/unicode-escape-nls-err-single.js49
3 files changed, 171 insertions, 0 deletions
diff --git a/test/language/literals/regexp/unicode-escape-nls-err.js b/test/language/literals/regexp/unicode-escape-nls-err.js
new file mode 100644
index 000000000..24b4ad5d6
--- /dev/null
+++ b/test/language/literals/regexp/unicode-escape-nls-err.js
@@ -0,0 +1,73 @@
+// Copyright (C) 2017 Valerie Young. All rights reserved.
+// This code is governed by the BSD license found in the LICENSE file.
+
+/*---
+esid: prod-Pattern
+description: NumericLiteralSeperator disallowed in unicode CodePoint sequence
+info: |
+ Pattern[U, N]::
+ Disjunction[?U, ?N]
+
+ Disjunction[U, N]::
+ Alternative[?U, ?N]
+ Alternative[?U, ?N]|Disjunction[?U, ?N]
+
+ Alternative[U, N]::
+ [empty]
+ Alternative[?U, ?N]Term[?U, ?N]
+
+ Term[U, N]::
+ Assertion[?U, ?N]
+ Atom[?U, ?N]
+ Atom[?U, ?N]Quantifier
+
+ Atom[U, N]::
+ PatternCharacter
+ .
+ \AtomEscape[?U, ?N]
+ CharacterClass[?U]
+ (GroupSpecifier[?U]Disjunction[?U, ?N])
+ (?:Disjunction[?U, ?N])
+
+ AtomEscape[U, N]::
+ DecimalEscape
+ CharacterClassEscape[?U]
+ CharacterEscape[?U]
+ [+N]kGroupName[?U]
+
+ CharacterEscape[U]::
+ ControlEscape
+ cControlLetter
+ 0[lookahead ∉ DecimalDigit]
+ HexEscapeSequence
+ RegExpUnicodeEscapeSequence[?U]
+ IdentityEscape[?U]
+
+ RegExpUnicodeEscapeSequence[U]::
+ [+U]uLeadSurrogate\uTrailSurrogate
+ [+U]uLeadSurrogate
+ [+U]uTrailSurrogate
+ [+U]uNonSurrogate
+ [~U]uHex4Digits
+ [+U]u{CodePoint}
+
+ CodePoint ::
+ HexDigit but only if MV of HexDigits ≤ 0x10FFFF
+ CodePointDigits but only if MV of HexDigits ≤ 0x10FFFF
+
+ CodePointDigits ::
+ HexDigit
+ CodePointDigitsHexDigit
+
+ HexDigit :: one of
+ 0 1 2 3 4 5 6 7 8 9 a b c d e f A B C D E F
+
+features: [numeric-separator-literal]
+negative:
+ phase: parse
+ type: SyntaxError
+---*/
+
+throw "Test262: This statement should not be evaluated.";
+
+/\u{1F_639}/u;
diff --git a/test/language/literals/string/unicode-escape-nls-err-double.js b/test/language/literals/string/unicode-escape-nls-err-double.js
new file mode 100644
index 000000000..d33d4f95f
--- /dev/null
+++ b/test/language/literals/string/unicode-escape-nls-err-double.js
@@ -0,0 +1,49 @@
+// Copyright (C) 2017 Valerie Young. All rights reserved.
+// This code is governed by the BSD license found in the LICENSE file.
+
+/*---
+esid: prod-StringLiteral
+description: NumericLiteralSeperator disallowed in unicode CodePoint sequence (DoubleStringCharacters)
+info: |
+ StringLiteral::
+ "DoubleStringCharacters opt"
+ 'SingleStringCharacters opt'
+
+ DoubleStringCharacters::
+ DoubleStringCharacter DoubleStringCharacters opt
+
+ DoubleStringCharacter::
+ SourceCharacter but not one of " or \ or LineTerminator
+ \ EscapeSequence
+ LineContinuation
+
+ EscapeSequence::
+ CharacterEscapeSequence
+ 0 [lookahead ∉ DecimalDigit]
+ HexEscapeSequence
+ UnicodeEscapeSequence
+
+ UnicodeEscapeSequence ::
+ uHex4Digits
+ u{CodePoint}
+
+ CodePoint ::
+ HexDigit but only if MV of HexDigits ≤ 0x10FFFF
+ CodePointDigits but only if MV of HexDigits ≤ 0x10FFFF
+
+ CodePointDigits ::
+ HexDigit
+ CodePointDigitsHexDigit
+
+ HexDigit :: one of
+ 0 1 2 3 4 5 6 7 8 9 a b c d e f A B C D E F
+
+features: [numeric-separator-literal]
+negative:
+ phase: parse
+ type: SyntaxError
+---*/
+
+throw "Test262: This statement should not be evaluated.";
+
+"\u{1F_639}"
diff --git a/test/language/literals/string/unicode-escape-nls-err-single.js b/test/language/literals/string/unicode-escape-nls-err-single.js
new file mode 100644
index 000000000..a2d7c559b
--- /dev/null
+++ b/test/language/literals/string/unicode-escape-nls-err-single.js
@@ -0,0 +1,49 @@
+// Copyright (C) 2017 Valerie Young. All rights reserved.
+// This code is governed by the BSD license found in the LICENSE file.
+
+/*---
+esid: prod-StringLiteral
+description: NumericLiteralSeperator disallowed in unicode CodePoint sequence (DoubleStringCharacters)
+info: |
+ StringLiteral::
+ "DoubleStringCharacters opt"
+ 'SingleStringCharacters opt'
+
+ SingleStringCharacters::
+ SingleStringCharacterSingleStringCharactersopt
+
+ SingleStringCharacter::
+ SourceCharacterbut not one of ' or \ or LineTerminator
+ \ EscapeSequence
+ LineContinuation
+
+ EscapeSequence::
+ CharacterEscapeSequence
+ 0 [lookahead ∉ DecimalDigit]
+ HexEscapeSequence
+ UnicodeEscapeSequence
+
+ UnicodeEscapeSequence ::
+ uHex4Digits
+ u{CodePoint}
+
+ CodePoint ::
+ HexDigit but only if MV of HexDigits ≤ 0x10FFFF
+ CodePointDigits but only if MV of HexDigits ≤ 0x10FFFF
+
+ CodePointDigits ::
+ HexDigit
+ CodePointDigitsHexDigit
+
+ HexDigit :: one of
+ 0 1 2 3 4 5 6 7 8 9 a b c d e f A B C D E F
+
+features: [numeric-separator-literal]
+negative:
+ phase: parse
+ type: SyntaxError
+---*/
+
+throw "Test262: This statement should not be evaluated.";
+
+'\u{1F_639}';