aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--jerry-core/include/jerryscript-snapshot.h2
-rw-r--r--jerry-core/parser/js/byte-code.c2
-rw-r--r--jerry-core/parser/js/byte-code.h2
-rw-r--r--jerry-core/parser/js/js-lexer.c84
-rw-r--r--jerry-core/parser/js/js-parser-expr.c9
-rw-r--r--jerry-core/parser/js/js-parser.c10
-rw-r--r--jerry-core/vm/vm.c8
-rw-r--r--jerry-core/vm/vm.h2
-rw-r--r--tests/jerry/es.next/regression-test-issue-2058.js2
-rw-r--r--tests/jerry/es.next/regression-test-issue-4408.js4
-rw-r--r--tests/test262-esnext-excludelist.xml423
11 files changed, 12 insertions, 536 deletions
diff --git a/jerry-core/include/jerryscript-snapshot.h b/jerry-core/include/jerryscript-snapshot.h
index a0db21ab..831bb492 100644
--- a/jerry-core/include/jerryscript-snapshot.h
+++ b/jerry-core/include/jerryscript-snapshot.h
@@ -30,7 +30,7 @@ extern "C"
/**
* Jerry snapshot format version.
*/
-#define JERRY_SNAPSHOT_VERSION (62u)
+#define JERRY_SNAPSHOT_VERSION (63u)
/**
* Flags for jerry_generate_snapshot and jerry_generate_function_snapshot.
diff --git a/jerry-core/parser/js/byte-code.c b/jerry-core/parser/js/byte-code.c
index 101be4e1..ef63c3d5 100644
--- a/jerry-core/parser/js/byte-code.c
+++ b/jerry-core/parser/js/byte-code.c
@@ -27,7 +27,7 @@ JERRY_STATIC_ASSERT ((sizeof (cbc_uint16_arguments_t) % sizeof (jmem_cpointer_t)
*/
JERRY_STATIC_ASSERT (CBC_END == 238,
number_of_cbc_opcodes_changed);
-JERRY_STATIC_ASSERT (CBC_EXT_END == 149,
+JERRY_STATIC_ASSERT (CBC_EXT_END == 148,
number_of_cbc_ext_opcodes_changed);
#if ENABLED (JERRY_PARSER) || ENABLED (JERRY_PARSER_DUMP_BYTE_CODE)
diff --git a/jerry-core/parser/js/byte-code.h b/jerry-core/parser/js/byte-code.h
index dfe7a292..91e2489f 100644
--- a/jerry-core/parser/js/byte-code.h
+++ b/jerry-core/parser/js/byte-code.h
@@ -610,8 +610,6 @@
VM_OC_LINE) \
CBC_OPCODE (CBC_EXT_THROW_REFERENCE_ERROR, CBC_NO_FLAG, 1, \
VM_OC_THROW_REFERENCE_ERROR) \
- CBC_OPCODE (CBC_EXT_THROW_SYNTAX_ERROR, CBC_HAS_LITERAL_ARG, 1, \
- VM_OC_THROW_SYNTAX_ERROR | VM_OC_GET_LITERAL) \
CBC_OPCODE (CBC_EXT_THROW_ASSIGN_CONST_ERROR, CBC_NO_FLAG, 0, \
VM_OC_THROW_CONST_ERROR) \
CBC_OPCODE (CBC_EXT_REQUIRE_OBJECT_COERCIBLE, CBC_NO_FLAG, 0, \
diff --git a/jerry-core/parser/js/js-lexer.c b/jerry-core/parser/js/js-lexer.c
index b64ba70e..2e6f9084 100644
--- a/jerry-core/parser/js/js-lexer.c
+++ b/jerry-core/parser/js/js-lexer.c
@@ -96,42 +96,6 @@ lexer_hex_to_code_point (const uint8_t *source_p, /**< current source position *
#if ENABLED (JERRY_ESNEXT)
/**
- * Find a string literal in the literal pool matching with the given buffer's content
- *
- * @return PARSER_INVALID_LITERAL_INDEX - if the literal is not present in the literal pool
- * literal's index in the pool - otherwise
- */
-static uint16_t
-parser_find_string_literal (parser_context_t *context_p, /**< context */
- lexer_literal_t **out_literal_p, /**< [out] found literal */
- uint8_t *buffer_p, /**< character buffer */
- lit_utf8_size_t size) /**< buffer's size */
-{
- JERRY_ASSERT (out_literal_p != NULL);
- JERRY_ASSERT (buffer_p != NULL);
-
- uint16_t literal_index = 0;
- lexer_literal_t *literal_p;
- parser_list_iterator_t literal_iterator;
- parser_list_iterator_init (&context_p->literal_pool, &literal_iterator);
-
- while ((literal_p = (lexer_literal_t *) parser_list_iterator_next (&literal_iterator)) != NULL)
- {
- if (literal_p->type == LEXER_STRING_LITERAL
- && literal_p->prop.length == size
- && memcmp (literal_p->u.char_p, buffer_p, size) == 0)
- {
- *out_literal_p = literal_p;
- return literal_index;
- }
-
- literal_index++;
- }
-
- return PARSER_INVALID_LITERAL_INDEX;
-} /* parser_find_string_literal */
-
-/**
* Parse hexadecimal character sequence enclosed in braces
*
* @return character value or UINT32_MAX on error
@@ -3104,56 +3068,14 @@ lexer_construct_regexp_object (parser_context_t *context_p, /**< context */
re_compiled_code_t *re_bytecode_p = re_compile_bytecode (pattern_str_p, current_flags);
ecma_deref_ecma_string (pattern_str_p);
- lexer_literal_t *literal_p = NULL;
- uint8_t literal_type = LEXER_REGEXP_LITERAL;
-
if (JERRY_UNLIKELY (re_bytecode_p == NULL))
{
-#if ENABLED (JERRY_ESNEXT)
- ecma_value_t error = jcontext_take_exception ();
- ecma_property_t *prop_p = ecma_find_named_property (ecma_get_object_from_value (error),
- ecma_get_magic_string (LIT_MAGIC_STRING_MESSAGE));
- const char default_msg[] = "Invalid regular expression";
- lit_utf8_byte_t *buffer_p = (lit_utf8_byte_t *) default_msg;
- lit_utf8_size_t size = sizeof (buffer_p) - 1;
-
- if (prop_p != NULL)
- {
- ecma_string_t *message_p = ecma_get_string_from_value (ECMA_PROPERTY_VALUE_PTR (prop_p)->value);
- JERRY_ASSERT (!ECMA_IS_DIRECT_STRING (message_p));
- JERRY_ASSERT (ECMA_STRING_GET_CONTAINER (message_p) == ECMA_STRING_CONTAINER_HEAP_ASCII_STRING);
- buffer_p = ECMA_ASCII_STRING_GET_BUFFER (message_p);
- size = ECMA_ASCII_STRING_GET_SIZE (message_p);
- }
-
- uint16_t literal_index = parser_find_string_literal (context_p, &literal_p, buffer_p, size);
-
- if (literal_index != PARSER_INVALID_LITERAL_INDEX)
- {
- ecma_free_value (error);
- context_p->lit_object.literal_p = literal_p;
- context_p->lit_object.index = literal_index;
- return;
- }
-
- literal_p = (lexer_literal_t *) parser_list_append (context_p, &context_p->literal_pool);
- literal_p->u.char_p = (uint8_t *) jmem_heap_alloc_block (size);
- memcpy ((uint8_t *) literal_p->u.char_p, buffer_p, size);
- literal_type = LEXER_STRING_LITERAL;
- length = size;
-
- ecma_free_value (error);
-#else /* !ENABLED (JERRY_ESNEXT) */
parser_raise_error (context_p, PARSER_ERR_INVALID_REGEXP);
-#endif /* ENABLED (JERRY_ESNEXT) */
- }
- else
- {
- literal_p = (lexer_literal_t *) parser_list_append (context_p, &context_p->literal_pool);
- literal_p->u.bytecode_p = (ecma_compiled_code_t *) re_bytecode_p;
}
- literal_p->type = literal_type;
+ lexer_literal_t *literal_p = (lexer_literal_t *) parser_list_append (context_p, &context_p->literal_pool);
+ literal_p->u.bytecode_p = (ecma_compiled_code_t *) re_bytecode_p;
+ literal_p->type = LEXER_REGEXP_LITERAL;
literal_p->prop.length = (prop_length_t) length;
literal_p->status_flags = 0;
diff --git a/jerry-core/parser/js/js-parser-expr.c b/jerry-core/parser/js/js-parser-expr.c
index 3f40c120..7f5f9f74 100644
--- a/jerry-core/parser/js/js-parser-expr.c
+++ b/jerry-core/parser/js/js-parser-expr.c
@@ -2177,15 +2177,6 @@ parser_parse_unary_expression (parser_context_t *context_p, /**< context */
case LEXER_ASSIGN_DIVIDE:
{
lexer_construct_regexp_object (context_p, false);
-
-#if ENABLED (JERRY_ESNEXT)
- if (JERRY_UNLIKELY (context_p->lit_object.literal_p->type == LEXER_STRING_LITERAL))
- {
- parser_emit_cbc_ext_literal (context_p, CBC_EXT_THROW_SYNTAX_ERROR, context_p->lit_object.index);
- break;
- }
-#endif /* ENABLED (JERRY_ESNEXT) */
-
uint16_t literal_index = (uint16_t) (context_p->literal_count - 1);
if (context_p->last_cbc_opcode == CBC_PUSH_LITERAL)
diff --git a/jerry-core/parser/js/js-parser.c b/jerry-core/parser/js/js-parser.c
index a64a37aa..94b26e3f 100644
--- a/jerry-core/parser/js/js-parser.c
+++ b/jerry-core/parser/js/js-parser.c
@@ -2832,7 +2832,6 @@ parser_parse_script (const uint8_t *arg_list_p, /**< function argument list */
#if ENABLED (JERRY_ERROR_MESSAGES)
ecma_string_t *err_str_p;
-#if !ENABLED (JERRY_ESNEXT)
if (parser_error.error == PARSER_ERR_INVALID_REGEXP)
{
ecma_value_t error = jcontext_take_exception ();
@@ -2844,7 +2843,6 @@ parser_parse_script (const uint8_t *arg_list_p, /**< function argument list */
ecma_ref_ecma_string (err_str_p);
}
else
-#endif /* !ENABLED (JERRY_ESNEXT) */
{
const lit_utf8_byte_t *err_bytes_p = (const lit_utf8_byte_t *) parser_error_to_string (parser_error.error);
lit_utf8_size_t err_bytes_size = lit_zt_utf8_string_size (err_bytes_p);
@@ -2865,12 +2863,12 @@ parser_parse_script (const uint8_t *arg_list_p, /**< function argument list */
ecma_free_value (line_str_val);
ecma_deref_ecma_string (err_str_p);
#else /* !ENABLED (JERRY_ERROR_MESSAGES) */
-#if !ENABLED (JERRY_ESNEXT)
- if (parser_error.error != PARSER_ERR_INVALID_REGEXP)
-#endif /* !ENABLED (JERRY_ESNEXT) */
+ if (parser_error.error == PARSER_ERR_INVALID_REGEXP)
{
- ecma_raise_syntax_error ("");
+ jcontext_release_exception ();
}
+
+ ecma_raise_syntax_error ("");
#endif /* ENABLED (JERRY_ERROR_MESSAGES) */
return NULL;
diff --git a/jerry-core/vm/vm.c b/jerry-core/vm/vm.c
index 77f722ca..9a382055 100644
--- a/jerry-core/vm/vm.c
+++ b/jerry-core/vm/vm.c
@@ -1740,14 +1740,6 @@ vm_loop (vm_frame_ctx_t *frame_ctx_p) /**< frame context */
result = ecma_raise_type_error (ECMA_ERR_MSG ("Constant bindings cannot be reassigned."));
goto error;
}
- case VM_OC_THROW_SYNTAX_ERROR:
- {
- ecma_string_t *msg_p = ecma_get_string_from_value (left_value);
- ecma_object_t *error_obj_p = ecma_new_standard_error (ECMA_ERROR_SYNTAX, msg_p);
- jcontext_raise_exception (ecma_make_object_value (error_obj_p));
- result = ECMA_VALUE_ERROR;
- goto error;
- }
case VM_OC_COPY_TO_GLOBAL:
{
uint32_t literal_index;
diff --git a/jerry-core/vm/vm.h b/jerry-core/vm/vm.h
index 4a519e5b..b567789d 100644
--- a/jerry-core/vm/vm.h
+++ b/jerry-core/vm/vm.h
@@ -243,7 +243,6 @@ typedef enum
VM_OC_ASSIGN_LET_CONST, /**< assign values to let/const declarations */
VM_OC_INIT_BINDING, /**< create and intialize a binding */
VM_OC_THROW_CONST_ERROR, /**< throw invalid assignment to const variable error */
- VM_OC_THROW_SYNTAX_ERROR, /**< throw syntax error */
VM_OC_COPY_TO_GLOBAL, /**< copy value to global lex env */
VM_OC_COPY_FROM_ARG, /**< copy value from arg lex env */
VM_OC_CLONE_CONTEXT, /**< clone lexical environment with let/const declarations */
@@ -331,7 +330,6 @@ typedef enum
VM_OC_ASSIGN_LET_CONST = VM_OC_NONE, /**< assign values to let/const declarations */
VM_OC_INIT_BINDING = VM_OC_NONE, /**< create and intialize a binding */
VM_OC_THROW_CONST_ERROR = VM_OC_NONE, /**< throw invalid assignment to const variable error */
- VM_OC_THROW_SYNTAX_ERROR = VM_OC_NONE, /**< throw syntax error */
VM_OC_COPY_TO_GLOBAL = VM_OC_NONE, /**< copy value to global lex env */
VM_OC_COPY_FROM_ARG = VM_OC_NONE, /**< copy value from arg lex env */
VM_OC_CLONE_CONTEXT = VM_OC_NONE, /**< clone lexical environment with let/const declarations */
diff --git a/tests/jerry/es.next/regression-test-issue-2058.js b/tests/jerry/es.next/regression-test-issue-2058.js
index 7906b606..7074974f 100644
--- a/tests/jerry/es.next/regression-test-issue-2058.js
+++ b/tests/jerry/es.next/regression-test-issue-2058.js
@@ -13,7 +13,7 @@
// limitations under the License.
try {
- /?:/
+ eval('/?:/');
assert(false);
} catch (e) {
assert(e instanceof SyntaxError);
diff --git a/tests/jerry/es.next/regression-test-issue-4408.js b/tests/jerry/es.next/regression-test-issue-4408.js
index 4af6e919..4951667d 100644
--- a/tests/jerry/es.next/regression-test-issue-4408.js
+++ b/tests/jerry/es.next/regression-test-issue-4408.js
@@ -13,13 +13,13 @@
// limitations under the License.
try {
- /(?<=^abc)def/;
+ eval('/(?<=^abc)def/');
} catch(e) {
assert(e instanceof SyntaxError);
}
try {
- /(?a)/;
+ eval('/(?a)/;')
} catch(e) {
assert(e instanceof SyntaxError);
}
diff --git a/tests/test262-esnext-excludelist.xml b/tests/test262-esnext-excludelist.xml
index bc584442..6a153dbe 100644
--- a/tests/test262-esnext-excludelist.xml
+++ b/tests/test262-esnext-excludelist.xml
@@ -388,7 +388,6 @@
<test id="language/identifiers/start-unicode-8.0.0.js"><reason></reason></test>
<test id="language/identifiers/start-unicode-9.0.0-escaped.js"><reason></reason></test>
<test id="language/identifiers/start-unicode-9.0.0.js"><reason></reason></test>
- <test id="language/literals/regexp/unicode-escape-nls-err.js"><reason></reason></test>
<test id="language/literals/string/legacy-octal-escape-sequence-prologue-strict.js"><reason></reason></test>
<test id="language/module-code/eval-export-cls-semi.js"><reason></reason></test>
<test id="language/module-code/eval-export-dflt-cls-anon-semi.js"><reason></reason></test>
@@ -667,232 +666,6 @@
<test id="language/statements/with/let-identifier-with-newline.js"><reason></reason></test>
<!-- END - Uncategorized failing tests -->
- <!-- regression caused by: Invalid regexp patterns should not throw syntax error during parsing (#4038) -->
- <test id="built-ins/RegExp/property-escapes/binary-property-with-value-ASCII_-_F-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/binary-property-with-value-ASCII_-_F.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/binary-property-with-value-ASCII_-_Invalid-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/binary-property-with-value-ASCII_-_Invalid.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/binary-property-with-value-ASCII_-_N-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/binary-property-with-value-ASCII_-_N.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/binary-property-with-value-ASCII_-_No-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/binary-property-with-value-ASCII_-_No.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/binary-property-with-value-ASCII_-_T-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/binary-property-with-value-ASCII_-_T.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/binary-property-with-value-ASCII_-_Y-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/binary-property-with-value-ASCII_-_Y.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/binary-property-with-value-ASCII_-_Yes-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/binary-property-with-value-ASCII_-_Yes.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/character-class-range-end.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/character-class-range-no-dash-end.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/character-class-range-no-dash-start.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/character-class-range-start.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/grammar-extension-In-prefix-Block-implicit-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/grammar-extension-In-prefix-Block-implicit.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/grammar-extension-In-prefix-Script-implicit-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/grammar-extension-In-prefix-Script-implicit.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/grammar-extension-In-prefix-Script-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/grammar-extension-In-prefix-Script.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/grammar-extension-Is-prefix-Script-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/grammar-extension-Is-prefix-Script.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/grammar-extension-circumflex-negation-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/grammar-extension-circumflex-negation.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/grammar-extension-empty-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/grammar-extension-empty.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/grammar-extension-invalid-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/grammar-extension-invalid.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/grammar-extension-no-braces-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/grammar-extension-no-braces-value-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/grammar-extension-no-braces-value.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/grammar-extension-no-braces.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/grammar-extension-separator-and-value-only-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/grammar-extension-separator-and-value-only.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/grammar-extension-separator-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/grammar-extension-separator-only-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/grammar-extension-separator-only.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/grammar-extension-separator.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/grammar-extension-unclosed-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/grammar-extension-unclosed.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/grammar-extension-unopened-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/grammar-extension-unopened.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/loose-matching-01-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/loose-matching-01.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/loose-matching-02-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/loose-matching-02.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/loose-matching-03-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/loose-matching-03.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/loose-matching-04-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/loose-matching-04.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/loose-matching-05-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/loose-matching-05.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/loose-matching-06-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/loose-matching-06.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/loose-matching-07-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/loose-matching-07.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/loose-matching-08-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/loose-matching-08.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/loose-matching-09-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/loose-matching-09.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/loose-matching-10-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/loose-matching-10.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/loose-matching-11-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/loose-matching-11.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/loose-matching-12-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/loose-matching-12.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/loose-matching-13-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/loose-matching-13.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/loose-matching-14-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/loose-matching-14.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/non-binary-property-without-value-General_Category-equals-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/non-binary-property-without-value-General_Category-equals.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/non-binary-property-without-value-General_Category-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/non-binary-property-without-value-General_Category.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/non-binary-property-without-value-Script-equals-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/non-binary-property-without-value-Script-equals.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/non-binary-property-without-value-Script-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/non-binary-property-without-value-Script.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/non-binary-property-without-value-Script_Extensions-equals-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/non-binary-property-without-value-Script_Extensions-equals.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/non-binary-property-without-value-Script_Extensions-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/non-binary-property-without-value-Script_Extensions.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/non-existent-binary-property-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/non-existent-binary-property.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/non-existent-property-and-value-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/non-existent-property-and-value.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/non-existent-property-existing-value-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/non-existent-property-existing-value.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/non-existent-property-value-General_Category-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/non-existent-property-value-Script-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/non-existent-property-value-Script.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/non-existent-property-value-Script_Extensions-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/non-existent-property-value-Script_Extensions.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/non-existent-property-value-general-category.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/unsupported-binary-property-Composition_Exclusion-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/unsupported-binary-property-Composition_Exclusion.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/unsupported-binary-property-Expands_On_NFC-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/unsupported-binary-property-Expands_On_NFC.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/unsupported-binary-property-Expands_On_NFD-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/unsupported-binary-property-Expands_On_NFD.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/unsupported-binary-property-Expands_On_NFKC-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/unsupported-binary-property-Expands_On_NFKC.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/unsupported-binary-property-Expands_On_NFKD-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/unsupported-binary-property-Expands_On_NFKD.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/unsupported-binary-property-FC_NFKC_Closure-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/unsupported-binary-property-FC_NFKC_Closure.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/unsupported-binary-property-Full_Composition_Exclusion-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/unsupported-binary-property-Full_Composition_Exclusion.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/unsupported-binary-property-Grapheme_Link-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/unsupported-binary-property-Grapheme_Link.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/unsupported-binary-property-Hyphen-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/unsupported-binary-property-Hyphen.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/unsupported-binary-property-Other_Alphabetic-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/unsupported-binary-property-Other_Alphabetic.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/unsupported-binary-property-Other_Default_Ignorable_Code_Point-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/unsupported-binary-property-Other_Default_Ignorable_Code_Point.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/unsupported-binary-property-Other_Grapheme_Extend-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/unsupported-binary-property-Other_Grapheme_Extend.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/unsupported-binary-property-Other_ID_Continue-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/unsupported-binary-property-Other_ID_Continue.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/unsupported-binary-property-Other_ID_Start-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/unsupported-binary-property-Other_ID_Start.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/unsupported-binary-property-Other_Lowercase-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/unsupported-binary-property-Other_Lowercase.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/unsupported-binary-property-Other_Math-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/unsupported-binary-property-Other_Math.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/unsupported-binary-property-Other_Uppercase-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/unsupported-binary-property-Other_Uppercase.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/unsupported-binary-property-Prepended_Concatenation_Mark-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/unsupported-binary-property-Prepended_Concatenation_Mark.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/unsupported-property-Block-with-value-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/unsupported-property-Block-with-value.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/unsupported-property-FC_NFKC_Closure-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/unsupported-property-FC_NFKC_Closure.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/unsupported-property-Line_Break-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/unsupported-property-Line_Break-with-value-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/unsupported-property-Line_Break-with-value.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/unsupported-property-Line_Break.js"><reason></reason></test>
- <test id="language/literals/regexp/early-err-pattern.js"><reason></reason></test>
- <test id="language/literals/regexp/invalid-braced-quantifier-exact.js"><reason></reason></test>
- <test id="language/literals/regexp/invalid-braced-quantifier-lower.js"><reason></reason></test>
- <test id="language/literals/regexp/invalid-braced-quantifier-range.js"><reason></reason></test>
- <test id="language/literals/regexp/invalid-optional-lookbehind.js"><reason></reason></test>
- <test id="language/literals/regexp/invalid-optional-negative-lookbehind.js"><reason></reason></test>
- <test id="language/literals/regexp/invalid-range-lookbehind.js"><reason></reason></test>
- <test id="language/literals/regexp/invalid-range-negative-lookbehind.js"><reason></reason></test>
- <test id="language/literals/regexp/named-groups/invalid-dangling-groupname-2-u.js"><reason></reason></test>
- <test id="language/literals/regexp/named-groups/invalid-dangling-groupname-2.js"><reason></reason></test>
- <test id="language/literals/regexp/named-groups/invalid-dangling-groupname-3-u.js"><reason></reason></test>
- <test id="language/literals/regexp/named-groups/invalid-dangling-groupname-3.js"><reason></reason></test>
- <test id="language/literals/regexp/named-groups/invalid-dangling-groupname-4-u.js"><reason></reason></test>
- <test id="language/literals/regexp/named-groups/invalid-dangling-groupname-4.js"><reason></reason></test>
- <test id="language/literals/regexp/named-groups/invalid-dangling-groupname-5.js"><reason></reason></test>
- <test id="language/literals/regexp/named-groups/invalid-dangling-groupname-u.js"><reason></reason></test>
- <test id="language/literals/regexp/named-groups/invalid-dangling-groupname-without-group-u.js"><reason></reason></test>
- <test id="language/literals/regexp/named-groups/invalid-dangling-groupname.js"><reason></reason></test>
- <test id="language/literals/regexp/named-groups/invalid-duplicate-groupspecifier-2-u.js"><reason></reason></test>
- <test id="language/literals/regexp/named-groups/invalid-duplicate-groupspecifier-2.js"><reason></reason></test>
- <test id="language/literals/regexp/named-groups/invalid-duplicate-groupspecifier-u.js"><reason></reason></test>
- <test id="language/literals/regexp/named-groups/invalid-duplicate-groupspecifier.js"><reason></reason></test>
- <test id="language/literals/regexp/named-groups/invalid-empty-groupspecifier-u.js"><reason></reason></test>
- <test id="language/literals/regexp/named-groups/invalid-empty-groupspecifier.js"><reason></reason></test>
- <test id="language/literals/regexp/named-groups/invalid-identity-escape-in-capture-u.js"><reason></reason></test>
- <test id="language/literals/regexp/named-groups/invalid-incomplete-groupname-2-u.js"><reason></reason></test>
- <test id="language/literals/regexp/named-groups/invalid-incomplete-groupname-2.js"><reason></reason></test>
- <test id="language/literals/regexp/named-groups/invalid-incomplete-groupname-3-u.js"><reason></reason></test>
- <test id="language/literals/regexp/named-groups/invalid-incomplete-groupname-3.js"><reason></reason></test>
- <test id="language/literals/regexp/named-groups/invalid-incomplete-groupname-4.js"><reason></reason></test>
- <test id="language/literals/regexp/named-groups/invalid-incomplete-groupname-5.js"><reason></reason></test>
- <test id="language/literals/regexp/named-groups/invalid-incomplete-groupname-6.js"><reason></reason></test>
- <test id="language/literals/regexp/named-groups/invalid-incomplete-groupname-u.js"><reason></reason></test>
- <test id="language/literals/regexp/named-groups/invalid-incomplete-groupname-without-group-2-u.js"><reason></reason></test>
- <test id="language/literals/regexp/named-groups/invalid-incomplete-groupname-without-group-3-u.js"><reason></reason></test>
- <test id="language/literals/regexp/named-groups/invalid-incomplete-groupname-without-group-u.js"><reason></reason></test>
- <test id="language/literals/regexp/named-groups/invalid-incomplete-groupname.js"><reason></reason></test>
- <test id="language/literals/regexp/named-groups/invalid-non-id-continue-groupspecifier-4-u.js"><reason></reason></test>
- <test id="language/literals/regexp/named-groups/invalid-non-id-continue-groupspecifier-4.js"><reason></reason></test>
- <test id="language/literals/regexp/named-groups/invalid-non-id-continue-groupspecifier.js"><reason></reason></test>
- <test id="language/literals/regexp/named-groups/invalid-non-id-start-groupspecifier-2-u.js"><reason></reason></test>
- <test id="language/literals/regexp/named-groups/invalid-non-id-start-groupspecifier-2.js"><reason></reason></test>
- <test id="language/literals/regexp/named-groups/invalid-non-id-start-groupspecifier-3.js"><reason></reason></test>
- <test id="language/literals/regexp/named-groups/invalid-non-id-start-groupspecifier-4-u.js"><reason></reason></test>
- <test id="language/literals/regexp/named-groups/invalid-non-id-start-groupspecifier-4.js"><reason></reason></test>
- <test id="language/literals/regexp/named-groups/invalid-non-id-start-groupspecifier-5-u.js"><reason></reason></test>
- <test id="language/literals/regexp/named-groups/invalid-non-id-start-groupspecifier-5.js"><reason></reason></test>
- <test id="language/literals/regexp/named-groups/invalid-non-id-start-groupspecifier-6.js"><reason></reason></test>
- <test id="language/literals/regexp/named-groups/invalid-non-id-start-groupspecifier-7.js"><reason></reason></test>
- <test id="language/literals/regexp/named-groups/invalid-non-id-start-groupspecifier-8-u.js"><reason></reason></test>
- <test id="language/literals/regexp/named-groups/invalid-non-id-start-groupspecifier-8.js"><reason></reason></test>
- <test id="language/literals/regexp/named-groups/invalid-non-id-start-groupspecifier-9-u.js"><reason></reason></test>
- <test id="language/literals/regexp/named-groups/invalid-non-id-start-groupspecifier-u.js"><reason></reason></test>
- <test id="language/literals/regexp/named-groups/invalid-non-id-start-groupspecifier.js"><reason></reason></test>
- <test id="language/literals/regexp/named-groups/invalid-numeric-groupspecifier-u.js"><reason></reason></test>
- <test id="language/literals/regexp/named-groups/invalid-numeric-groupspecifier.js"><reason></reason></test>
- <test id="language/literals/regexp/named-groups/invalid-punctuator-starting-groupspecifier-u.js"><reason></reason></test>
- <test id="language/literals/regexp/named-groups/invalid-punctuator-starting-groupspecifier.js"><reason></reason></test>
- <test id="language/literals/regexp/named-groups/invalid-punctuator-within-groupspecifier-u.js"><reason></reason></test>
- <test id="language/literals/regexp/named-groups/invalid-punctuator-within-groupspecifier.js"><reason></reason></test>
- <test id="language/literals/regexp/named-groups/invalid-unterminated-groupspecifier-u.js"><reason></reason></test>
- <test id="language/literals/regexp/named-groups/invalid-unterminated-groupspecifier.js"><reason></reason></test>
- <test id="language/literals/regexp/u-invalid-class-escape.js"><reason></reason></test>
- <test id="language/literals/regexp/u-invalid-extended-pattern-char.js"><reason></reason></test>
- <test id="language/literals/regexp/u-invalid-identity-escape.js"><reason></reason></test>
- <test id="language/literals/regexp/u-invalid-legacy-octal-escape.js"><reason></reason></test>
- <test id="language/literals/regexp/u-invalid-non-empty-class-ranges-no-dash-a.js"><reason></reason></test>
- <test id="language/literals/regexp/u-invalid-non-empty-class-ranges-no-dash-ab.js"><reason></reason></test>
- <test id="language/literals/regexp/u-invalid-non-empty-class-ranges-no-dash-b.js"><reason></reason></test>
- <test id="language/literals/regexp/u-invalid-non-empty-class-ranges.js"><reason></reason></test>
- <test id="language/literals/regexp/u-invalid-oob-decimal-escape.js"><reason></reason></test>
- <test id="language/literals/regexp/u-invalid-optional-lookahead.js"><reason></reason></test>
- <test id="language/literals/regexp/u-invalid-optional-lookbehind.js"><reason></reason></test>
- <test id="language/literals/regexp/u-invalid-optional-negative-lookahead.js"><reason></reason></test>
- <test id="language/literals/regexp/u-invalid-optional-negative-lookbehind.js"><reason></reason></test>
- <test id="language/literals/regexp/u-invalid-range-lookahead.js"><reason></reason></test>
- <test id="language/literals/regexp/u-invalid-range-lookbehind.js"><reason></reason></test>
- <test id="language/literals/regexp/u-invalid-range-negative-lookahead.js"><reason></reason></test>
- <test id="language/literals/regexp/u-invalid-range-negative-lookbehind.js"><reason></reason></test>
- <test id="language/literals/regexp/u-unicode-esc-bounds.js"><reason></reason></test>
- <test id="language/literals/regexp/u-unicode-esc-non-hex.js"><reason></reason></test>
- <!-- END - regression caused by: Invalid regexp patterns should not throw syntax error during parsing (#4038) -->
-
<!-- AnnexB - Additional ECMAScript Features for Web Browsers
https://www.ecma-international.org/ecma-262/11.0/#sec-additional-ecmascript-features-for-web-browsers
-->
@@ -6575,84 +6348,12 @@
<test id="built-ins/RegExp/prototype/Symbol.replace/result-get-groups-err.js"><reason></reason></test>
<test id="built-ins/RegExp/prototype/Symbol.replace/result-get-groups-prop-err.js"><reason></reason></test>
<test id="language/literals/regexp/named-groups/forward-reference.js"><reason></reason></test>
- <test id="language/literals/regexp/named-groups/invalid-dangling-groupname-2-u.js"><reason></reason></test>
- <test id="language/literals/regexp/named-groups/invalid-dangling-groupname-2.js"><reason></reason></test>
- <test id="language/literals/regexp/named-groups/invalid-dangling-groupname-3-u.js"><reason></reason></test>
- <test id="language/literals/regexp/named-groups/invalid-dangling-groupname-3.js"><reason></reason></test>
- <test id="language/literals/regexp/named-groups/invalid-dangling-groupname-4-u.js"><reason></reason></test>
- <test id="language/literals/regexp/named-groups/invalid-dangling-groupname-4.js"><reason></reason></test>
- <test id="language/literals/regexp/named-groups/invalid-dangling-groupname-5.js"><reason></reason></test>
- <test id="language/literals/regexp/named-groups/invalid-dangling-groupname-u.js"><reason></reason></test>
- <test id="language/literals/regexp/named-groups/invalid-dangling-groupname-without-group-u.js"><reason></reason></test>
- <test id="language/literals/regexp/named-groups/invalid-dangling-groupname.js"><reason></reason></test>
- <test id="language/literals/regexp/named-groups/invalid-duplicate-groupspecifier-2-u.js"><reason></reason></test>
- <test id="language/literals/regexp/named-groups/invalid-duplicate-groupspecifier-2.js"><reason></reason></test>
- <test id="language/literals/regexp/named-groups/invalid-duplicate-groupspecifier-u.js"><reason></reason></test>
- <test id="language/literals/regexp/named-groups/invalid-duplicate-groupspecifier.js"><reason></reason></test>
- <test id="language/literals/regexp/named-groups/invalid-empty-groupspecifier-u.js"><reason></reason></test>
- <test id="language/literals/regexp/named-groups/invalid-empty-groupspecifier.js"><reason></reason></test>
- <test id="language/literals/regexp/named-groups/invalid-identity-escape-in-capture-u.js"><reason></reason></test>
- <test id="language/literals/regexp/named-groups/invalid-incomplete-groupname-2-u.js"><reason></reason></test>
- <test id="language/literals/regexp/named-groups/invalid-incomplete-groupname-2.js"><reason></reason></test>
- <test id="language/literals/regexp/named-groups/invalid-incomplete-groupname-3-u.js"><reason></reason></test>
- <test id="language/literals/regexp/named-groups/invalid-incomplete-groupname-3.js"><reason></reason></test>
- <test id="language/literals/regexp/named-groups/invalid-incomplete-groupname-4.js"><reason></reason></test>
- <test id="language/literals/regexp/named-groups/invalid-incomplete-groupname-5.js"><reason></reason></test>
- <test id="language/literals/regexp/named-groups/invalid-incomplete-groupname-6.js"><reason></reason></test>
- <test id="language/literals/regexp/named-groups/invalid-incomplete-groupname-u.js"><reason></reason></test>
- <test id="language/literals/regexp/named-groups/invalid-incomplete-groupname-without-group-2-u.js"><reason></reason></test>
- <test id="language/literals/regexp/named-groups/invalid-incomplete-groupname-without-group-3-u.js"><reason></reason></test>
- <test id="language/literals/regexp/named-groups/invalid-incomplete-groupname-without-group-u.js"><reason></reason></test>
- <test id="language/literals/regexp/named-groups/invalid-incomplete-groupname.js"><reason></reason></test>
- <test id="language/literals/regexp/named-groups/invalid-non-id-continue-groupspecifier-4-u.js"><reason></reason></test>
- <test id="language/literals/regexp/named-groups/invalid-non-id-continue-groupspecifier-4.js"><reason></reason></test>
- <test id="language/literals/regexp/named-groups/invalid-non-id-continue-groupspecifier.js"><reason></reason></test>
- <test id="language/literals/regexp/named-groups/invalid-non-id-start-groupspecifier-2-u.js"><reason></reason></test>
- <test id="language/literals/regexp/named-groups/invalid-non-id-start-groupspecifier-2.js"><reason></reason></test>
- <test id="language/literals/regexp/named-groups/invalid-non-id-start-groupspecifier-3.js"><reason></reason></test>
- <test id="language/literals/regexp/named-groups/invalid-non-id-start-groupspecifier-4-u.js"><reason></reason></test>
- <test id="language/literals/regexp/named-groups/invalid-non-id-start-groupspecifier-4.js"><reason></reason></test>
- <test id="language/literals/regexp/named-groups/invalid-non-id-start-groupspecifier-5-u.js"><reason></reason></test>
- <test id="language/literals/regexp/named-groups/invalid-non-id-start-groupspecifier-5.js"><reason></reason></test>
- <test id="language/literals/regexp/named-groups/invalid-non-id-start-groupspecifier-6.js"><reason></reason></test>
- <test id="language/literals/regexp/named-groups/invalid-non-id-start-groupspecifier-7.js"><reason></reason></test>
- <test id="language/literals/regexp/named-groups/invalid-non-id-start-groupspecifier-8-u.js"><reason></reason></test>
- <test id="language/literals/regexp/named-groups/invalid-non-id-start-groupspecifier-8.js"><reason></reason></test>
- <test id="language/literals/regexp/named-groups/invalid-non-id-start-groupspecifier-9-u.js"><reason></reason></test>
- <test id="language/literals/regexp/named-groups/invalid-non-id-start-groupspecifier-u.js"><reason></reason></test>
- <test id="language/literals/regexp/named-groups/invalid-non-id-start-groupspecifier.js"><reason></reason></test>
- <test id="language/literals/regexp/named-groups/invalid-numeric-groupspecifier-u.js"><reason></reason></test>
- <test id="language/literals/regexp/named-groups/invalid-numeric-groupspecifier.js"><reason></reason></test>
- <test id="language/literals/regexp/named-groups/invalid-punctuator-starting-groupspecifier-u.js"><reason></reason></test>
- <test id="language/literals/regexp/named-groups/invalid-punctuator-starting-groupspecifier.js"><reason></reason></test>
- <test id="language/literals/regexp/named-groups/invalid-punctuator-within-groupspecifier-u.js"><reason></reason></test>
- <test id="language/literals/regexp/named-groups/invalid-punctuator-within-groupspecifier.js"><reason></reason></test>
- <test id="language/literals/regexp/named-groups/invalid-unterminated-groupspecifier-u.js"><reason></reason></test>
- <test id="language/literals/regexp/named-groups/invalid-unterminated-groupspecifier.js"><reason></reason></test>
<!-- END - ES2018: RegExp named capture groups -->
<!-- ES2018 - RegExp Unicode Property Escapes
features: [regexp-unicode-property-escapes]
https://github.com/tc39/proposal-regexp-unicode-property-escapes
-->
- <test id="built-ins/RegExp/property-escapes/binary-property-with-value-ASCII_-_F-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/binary-property-with-value-ASCII_-_F.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/binary-property-with-value-ASCII_-_Invalid-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/binary-property-with-value-ASCII_-_Invalid.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/binary-property-with-value-ASCII_-_N-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/binary-property-with-value-ASCII_-_N.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/binary-property-with-value-ASCII_-_No-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/binary-property-with-value-ASCII_-_No.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/binary-property-with-value-ASCII_-_T-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/binary-property-with-value-ASCII_-_T.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/binary-property-with-value-ASCII_-_Y-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/binary-property-with-value-ASCII_-_Y.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/binary-property-with-value-ASCII_-_Yes-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/binary-property-with-value-ASCII_-_Yes.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/character-class-range-end.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/character-class-range-no-dash-end.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/character-class-range-no-dash-start.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/character-class-range-start.js"><reason></reason></test>
<test id="built-ins/RegExp/property-escapes/character-class.js"><reason></reason></test>
<test id="built-ins/RegExp/property-escapes/generated/ASCII.js"><reason></reason></test>
<test id="built-ins/RegExp/property-escapes/generated/ASCII_Hex_Digit.js"><reason></reason></test>
@@ -7057,130 +6758,6 @@
<test id="built-ins/RegExp/property-escapes/generated/White_Space.js"><reason></reason></test>
<test id="built-ins/RegExp/property-escapes/generated/XID_Continue.js"><reason></reason></test>
<test id="built-ins/RegExp/property-escapes/generated/XID_Start.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/grammar-extension-In-prefix-Block-implicit-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/grammar-extension-In-prefix-Block-implicit.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/grammar-extension-In-prefix-Script-implicit-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/grammar-extension-In-prefix-Script-implicit.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/grammar-extension-In-prefix-Script-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/grammar-extension-In-prefix-Script.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/grammar-extension-Is-prefix-Script-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/grammar-extension-Is-prefix-Script.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/grammar-extension-circumflex-negation-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/grammar-extension-circumflex-negation.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/grammar-extension-empty-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/grammar-extension-empty.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/grammar-extension-invalid-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/grammar-extension-invalid.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/grammar-extension-no-braces-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/grammar-extension-no-braces-value-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/grammar-extension-no-braces-value.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/grammar-extension-no-braces.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/grammar-extension-separator-and-value-only-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/grammar-extension-separator-and-value-only.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/grammar-extension-separator-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/grammar-extension-separator-only-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/grammar-extension-separator-only.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/grammar-extension-separator.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/grammar-extension-unclosed-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/grammar-extension-unclosed.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/grammar-extension-unopened-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/grammar-extension-unopened.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/loose-matching-01-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/loose-matching-01.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/loose-matching-02-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/loose-matching-02.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/loose-matching-03-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/loose-matching-03.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/loose-matching-04-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/loose-matching-04.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/loose-matching-05-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/loose-matching-05.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/loose-matching-06-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/loose-matching-06.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/loose-matching-07-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/loose-matching-07.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/loose-matching-08-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/loose-matching-08.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/loose-matching-09-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/loose-matching-09.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/loose-matching-10-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/loose-matching-10.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/loose-matching-11-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/loose-matching-11.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/loose-matching-12-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/loose-matching-12.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/loose-matching-13-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/loose-matching-13.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/loose-matching-14-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/loose-matching-14.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/non-binary-property-without-value-General_Category-equals-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/non-binary-property-without-value-General_Category-equals.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/non-binary-property-without-value-General_Category-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/non-binary-property-without-value-General_Category.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/non-binary-property-without-value-Script-equals-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/non-binary-property-without-value-Script-equals.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/non-binary-property-without-value-Script-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/non-binary-property-without-value-Script.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/non-binary-property-without-value-Script_Extensions-equals-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/non-binary-property-without-value-Script_Extensions-equals.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/non-binary-property-without-value-Script_Extensions-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/non-binary-property-without-value-Script_Extensions.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/non-existent-binary-property-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/non-existent-binary-property.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/non-existent-property-and-value-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/non-existent-property-and-value.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/non-existent-property-existing-value-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/non-existent-property-existing-value.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/non-existent-property-value-General_Category-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/non-existent-property-value-Script-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/non-existent-property-value-Script.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/non-existent-property-value-Script_Extensions-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/non-existent-property-value-Script_Extensions.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/non-existent-property-value-general-category.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/unsupported-binary-property-Composition_Exclusion-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/unsupported-binary-property-Composition_Exclusion.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/unsupported-binary-property-Expands_On_NFC-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/unsupported-binary-property-Expands_On_NFC.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/unsupported-binary-property-Expands_On_NFD-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/unsupported-binary-property-Expands_On_NFD.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/unsupported-binary-property-Expands_On_NFKC-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/unsupported-binary-property-Expands_On_NFKC.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/unsupported-binary-property-Expands_On_NFKD-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/unsupported-binary-property-Expands_On_NFKD.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/unsupported-binary-property-FC_NFKC_Closure-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/unsupported-binary-property-FC_NFKC_Closure.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/unsupported-binary-property-Full_Composition_Exclusion-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/unsupported-binary-property-Full_Composition_Exclusion.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/unsupported-binary-property-Grapheme_Link-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/unsupported-binary-property-Grapheme_Link.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/unsupported-binary-property-Hyphen-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/unsupported-binary-property-Hyphen.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/unsupported-binary-property-Other_Alphabetic-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/unsupported-binary-property-Other_Alphabetic.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/unsupported-binary-property-Other_Default_Ignorable_Code_Point-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/unsupported-binary-property-Other_Default_Ignorable_Code_Point.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/unsupported-binary-property-Other_Grapheme_Extend-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/unsupported-binary-property-Other_Grapheme_Extend.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/unsupported-binary-property-Other_ID_Continue-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/unsupported-binary-property-Other_ID_Continue.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/unsupported-binary-property-Other_ID_Start-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/unsupported-binary-property-Other_ID_Start.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/unsupported-binary-property-Other_Lowercase-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/unsupported-binary-property-Other_Lowercase.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/unsupported-binary-property-Other_Math-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/unsupported-binary-property-Other_Math.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/unsupported-binary-property-Other_Uppercase-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/unsupported-binary-property-Other_Uppercase.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/unsupported-binary-property-Prepended_Concatenation_Mark-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/unsupported-binary-property-Prepended_Concatenation_Mark.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/unsupported-property-Block-with-value-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/unsupported-property-Block-with-value.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/unsupported-property-FC_NFKC_Closure-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/unsupported-property-FC_NFKC_Closure.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/unsupported-property-Line_Break-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/unsupported-property-Line_Break-with-value-negated.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/unsupported-property-Line_Break-with-value.js"><reason></reason></test>
- <test id="built-ins/RegExp/property-escapes/unsupported-property-Line_Break.js"><reason></reason></test>
<!-- END - ES2018 - RegExp Unicode Property Escapes -->
<!-- ES2018: Rest/Spread Properties