summaryrefslogtreecommitdiffstats
path: root/js/src/tests/non262/PrivateName/parse-utf8-non-ascii-identifier.js
diff options
context:
space:
mode:
Diffstat (limited to 'js/src/tests/non262/PrivateName/parse-utf8-non-ascii-identifier.js')
-rw-r--r--js/src/tests/non262/PrivateName/parse-utf8-non-ascii-identifier.js22
1 files changed, 22 insertions, 0 deletions
diff --git a/js/src/tests/non262/PrivateName/parse-utf8-non-ascii-identifier.js b/js/src/tests/non262/PrivateName/parse-utf8-non-ascii-identifier.js
new file mode 100644
index 0000000000..7f4b15f2dc
--- /dev/null
+++ b/js/src/tests/non262/PrivateName/parse-utf8-non-ascii-identifier.js
@@ -0,0 +1,22 @@
+// Test that non-ASCII identifier names are correctly parsed in the Utf-8 parser.
+
+// Utf-8 encoding for U+05EF is (0xD7 0xAF), the first code unit isn't a valid
+// Ascii ID_START code unit.
+class NonAscii {
+ // U+05EF HEBREW YOD TRIANGLE
+ #ׯ;
+}
+
+// Also check using Unicode escapes works.
+class NonAsciiUnicodeEscape1 {
+ // U+05EF HEBREW YOD TRIANGLE
+ #\u05ef;
+}
+
+class NonAsciiUnicodeEscape2 {
+ // U+05EF HEBREW YOD TRIANGLE
+ #\u{5ef};
+}
+
+if (typeof reportCompare === "function")
+ reportCompare(0, 0);