7.8.5-1.js |
---
esid: prod-RegularExpressionBackslashSequence
info: |
RegularExpressionBackslashSequence ::
\ RegularExpressionNonTerminator
RegularExpressionNonTerminator ::
SourceCharacter but not LineTerminator
SyntaxError exception is thrown if the RegularExpressionNonTerminator position of a
RegularExpressionBackslashSequence is a LineTerminator.
description: >
A RegularExpressionBackslashSequence may not contain a LineTerminator.
--- |
731 |
7.8.5-1gs.js |
---
esid: prod-RegularExpressionNonTerminator
info: |
RegularExpressionLiteral ::
/ RegularExpressionBody / RegularExpressionFlags
RegularExpressionBody ::
RegularExpressionFirstChar RegularExpressionChars
RegularExpressionChars ::
[empty]
RegularExpressionChars RegularExpressionChar
RegularExpressionFirstChar ::
RegularExpressionNonTerminator but not one of * or \ or / or [
SourceCharacter ::
any Unicode code point
RegularExpressionNonTerminator::
SourceCharacter but not LineTerminator
description: >
RegularExpressionBody will never be empty, because RegularExpressionFirstChar must always be _something_. // is a comment.
--- |
915 |
7.8.5-2gs.js |
---
es5id: 7.8.5-2gs
description: Empty dynamic RegExp should not result in a SyntaxError
--- |
282 |
browser.js |
|
0 |
early-err-arithmetic-modifiers-add-remove-i.js |
---
description: It is a Syntax Error if the any code point in the source text matched by the first RegularExpressionFlags is also contained in the source text matched by the second RegularExpressionFlags. (arithmetic regular expression flags)
esid: sec-patterns-static-semantics-early-errors
features: [regexp-modifiers]
negative:
phase: parse
type: SyntaxError
info: |
Atom :: ( ? RegularExpressionFlags - RegularExpressionFlags : Disjunction )
...
--- |
835 |
early-err-arithmetic-modifiers-add-remove-m.js |
---
description: It is a Syntax Error if the any code point in the source text matched by the first RegularExpressionFlags is also contained in the source text matched by the second RegularExpressionFlags. (arithmetic regular expression flags)
esid: sec-patterns-static-semantics-early-errors
features: [regexp-modifiers]
negative:
phase: parse
type: SyntaxError
info: |
Atom :: ( ? RegularExpressionFlags - RegularExpressionFlags : Disjunction )
...
--- |
835 |
early-err-arithmetic-modifiers-add-remove-multi-duplicate.js |
---
description: It is a Syntax Error if the any code point in the source text matched by the first RegularExpressionFlags is also contained in the source text matched by the second RegularExpressionFlags. (arithmetic regular expression flags)
esid: sec-patterns-static-semantics-early-errors
features: [regexp-modifiers]
negative:
phase: parse
type: SyntaxError
info: |
Atom :: ( ? RegularExpressionFlags - RegularExpressionFlags : Disjunction )
...
--- |
837 |
early-err-arithmetic-modifiers-add-remove-s-escape.js |
---
description: It is a Syntax Error if the any code point in the source text matched by the first RegularExpressionFlags is also contained in the source text matched by the second RegularExpressionFlags. (arithmetic regular expression flags)
esid: sec-patterns-static-semantics-early-errors
features: [regexp-modifiers]
negative:
phase: parse
type: SyntaxError
info: |
Atom :: ( ? RegularExpressionFlags - RegularExpressionFlags : Disjunction )
...
--- |
842 |
early-err-arithmetic-modifiers-add-remove-s.js |
---
description: It is a Syntax Error if the any code point in the source text matched by the first RegularExpressionFlags is also contained in the source text matched by the second RegularExpressionFlags. (arithmetic regular expression flags)
esid: sec-patterns-static-semantics-early-errors
features: [regexp-modifiers]
negative:
phase: parse
type: SyntaxError
info: |
Atom :: ( ? RegularExpressionFlags - RegularExpressionFlags : Disjunction )
...
--- |
835 |
early-err-arithmetic-modifiers-both-empty.js |
---
description: It is a Syntax Error if the source text matched by the first RegularExpressionFlags and the source text matched by the second RegularExpressionFlags are both empty. (arithmetic regular expression flags)
esid: sec-patterns-static-semantics-early-errors
features: [regexp-modifiers]
negative:
phase: parse
type: SyntaxError
info: |
Atom :: ( ? RegularExpressionFlags - RegularExpressionFlags : Disjunction )
...
--- |
809 |
early-err-arithmetic-modifiers-code-point-repeat-i-1.js |
---
description: It is a Syntax Error if the source text matched by RegularExpressionFlags contains any code point other than i, m, or s, or if it contains the same code point more than once. (arithmetic regular expression flags)
esid: sec-patterns-static-semantics-early-errors
features: [regexp-modifiers]
negative:
phase: parse
type: SyntaxError
info: |
Atom :: ( ? RegularExpressionFlags - RegularExpressionFlags : Disjunction )
...
--- |
821 |
early-err-arithmetic-modifiers-code-point-repeat-i-2.js |
---
description: It is a Syntax Error if the source text matched by RegularExpressionFlags contains any code point other than i, m, or s, or if it contains the same code point more than once. (arithmetic regular expression flags)
esid: sec-patterns-static-semantics-early-errors
features: [regexp-modifiers]
negative:
phase: parse
type: SyntaxError
info: |
Atom :: ( ? RegularExpressionFlags - RegularExpressionFlags : Disjunction )
...
--- |
823 |
early-err-arithmetic-modifiers-no-colon-1.js |
---
description: Regular expression modifiers should not parse without the colon.
esid: sec-patterns-static-semantics-early-errors
features: [regexp-modifiers]
negative:
phase: parse
type: SyntaxError
info: |
Atom :: ( ? RegularExpressionFlags - RegularExpressionFlags : Disjunction )
...
--- |
647 |
early-err-arithmetic-modifiers-no-colon-2.js |
---
description: Regular expression modifiers should not parse without the colon.
esid: sec-patterns-static-semantics-early-errors
features: [regexp-modifiers]
negative:
phase: parse
type: SyntaxError
info: |
Atom :: ( ? RegularExpressionFlags - RegularExpressionFlags : Disjunction )
...
--- |
645 |
early-err-arithmetic-modifiers-no-colon-3.js |
---
description: Regular expression modifiers should not parse without the colon.
esid: sec-patterns-static-semantics-early-errors
features: [regexp-modifiers]
negative:
phase: parse
type: SyntaxError
info: |
Atom :: ( ? RegularExpressionFlags - RegularExpressionFlags : Disjunction )
...
--- |
645 |
early-err-arithmetic-modifiers-other-code-point-arbitrary.js |
---
description: It is a Syntax Error if the source text matched by RegularExpressionFlags contains any code point other than i, m, or s, or if it contains the same code point more than once. (arithmetic regular expression flags)
esid: sec-patterns-static-semantics-early-errors
features: [regexp-modifiers]
negative:
phase: parse
type: SyntaxError
info: |
Atom :: ( ? RegularExpressionFlags - RegularExpressionFlags : Disjunction )
...
--- |
820 |
early-err-arithmetic-modifiers-other-code-point-combining-i.js |
---
description: It is a Syntax Error if the source text matched by RegularExpressionFlags contains any code point other than i, m, or s, or if it contains the same code point more than once. (arithmetic regular expression flags)
esid: sec-patterns-static-semantics-early-errors
features: [regexp-modifiers]
negative:
phase: parse
type: SyntaxError
info: |
Atom :: ( ? RegularExpressionFlags - RegularExpressionFlags : Disjunction )
...
--- |
822 |
early-err-arithmetic-modifiers-other-code-point-combining-m.js |
---
description: It is a Syntax Error if the source text matched by RegularExpressionFlags contains any code point other than i, m, or s, or if it contains the same code point more than once. (arithmetic regular expression flags)
esid: sec-patterns-static-semantics-early-errors
features: [regexp-modifiers]
negative:
phase: parse
type: SyntaxError
info: |
Atom :: ( ? RegularExpressionFlags - RegularExpressionFlags : Disjunction )
...
--- |
822 |
early-err-arithmetic-modifiers-other-code-point-combining-s.js |
---
description: It is a Syntax Error if the source text matched by RegularExpressionFlags contains any code point other than i, m, or s, or if it contains the same code point more than once. (arithmetic regular expression flags)
esid: sec-patterns-static-semantics-early-errors
features: [regexp-modifiers]
negative:
phase: parse
type: SyntaxError
info: |
Atom :: ( ? RegularExpressionFlags - RegularExpressionFlags : Disjunction )
...
--- |
822 |
early-err-arithmetic-modifiers-other-code-point-d.js |
---
description: It is a Syntax Error if the source text matched by RegularExpressionFlags contains any code point other than i, m, or s, or if it contains the same code point more than once. (arithmetic regular expression flags)
esid: sec-patterns-static-semantics-early-errors
features: [regexp-modifiers]
negative:
phase: parse
type: SyntaxError
info: |
Atom :: ( ? RegularExpressionFlags - RegularExpressionFlags : Disjunction )
...
--- |
820 |
early-err-arithmetic-modifiers-other-code-point-g.js |
---
description: It is a Syntax Error if the source text matched by RegularExpressionFlags contains any code point other than i, m, or s, or if it contains the same code point more than once. (arithmetic regular expression flags)
esid: sec-patterns-static-semantics-early-errors
features: [regexp-modifiers]
negative:
phase: parse
type: SyntaxError
info: |
Atom :: ( ? RegularExpressionFlags - RegularExpressionFlags : Disjunction )
...
--- |
820 |
early-err-arithmetic-modifiers-other-code-point-non-display-1.js |
---
description: It is a Syntax Error if the source text matched by RegularExpressionFlags contains any code point other than i, m, or s, or if it contains the same code point more than once. (arithmetic regular expression flags)
esid: sec-patterns-static-semantics-early-errors
features: [regexp-modifiers]
negative:
phase: parse
type: SyntaxError
info: |
Atom :: ( ? RegularExpressionFlags - RegularExpressionFlags : Disjunction )
...
--- |
821 |
early-err-arithmetic-modifiers-other-code-point-non-display-2.js |
---
description: It is a Syntax Error if the source text matched by RegularExpressionFlags contains any code point other than i, m, or s, or if it contains the same code point more than once. (arithmetic regular expression flags)
esid: sec-patterns-static-semantics-early-errors
features: [regexp-modifiers]
negative:
phase: parse
type: SyntaxError
info: |
Atom :: ( ? RegularExpressionFlags - RegularExpressionFlags : Disjunction )
...
--- |
823 |
early-err-arithmetic-modifiers-other-code-point-non-flag.js |
---
description: It is a Syntax Error if the source text matched by RegularExpressionFlags contains any code point other than i, m, or s, or if it contains the same code point more than once. (arithmetic regular expression flags)
esid: sec-patterns-static-semantics-early-errors
features: [regexp-modifiers]
negative:
phase: parse
type: SyntaxError
info: |
Atom :: ( ? RegularExpressionFlags - RegularExpressionFlags : Disjunction )
...
--- |
820 |
early-err-arithmetic-modifiers-other-code-point-u.js |
---
description: It is a Syntax Error if the source text matched by RegularExpressionFlags contains any code point other than i, m, or s, or if it contains the same code point more than once. (arithmetic regular expression flags)
esid: sec-patterns-static-semantics-early-errors
features: [regexp-modifiers]
negative:
phase: parse
type: SyntaxError
info: |
Atom :: ( ? RegularExpressionFlags - RegularExpressionFlags : Disjunction )
...
--- |
820 |
early-err-arithmetic-modifiers-other-code-point-uppercase-I.js |
---
description: It is a Syntax Error if the source text matched by RegularExpressionFlags contains any code point other than i, m, or s, or if it contains the same code point more than once. (arithmetic regular expression flags)
esid: sec-patterns-static-semantics-early-errors
features: [regexp-modifiers]
negative:
phase: parse
type: SyntaxError
info: |
Atom :: ( ? RegularExpressionFlags - RegularExpressionFlags : Disjunction )
...
--- |
820 |
early-err-arithmetic-modifiers-other-code-point-y.js |
---
description: It is a Syntax Error if the source text matched by RegularExpressionFlags contains any code point other than i, m, or s, or if it contains the same code point more than once. (arithmetic regular expression flags)
esid: sec-patterns-static-semantics-early-errors
features: [regexp-modifiers]
negative:
phase: parse
type: SyntaxError
info: |
Atom :: ( ? RegularExpressionFlags - RegularExpressionFlags : Disjunction )
...
--- |
820 |
early-err-arithmetic-modifiers-other-code-point-zwj.js |
---
description: It is a Syntax Error if the source text matched by RegularExpressionFlags contains any code point other than i, m, or s, or if it contains the same code point more than once. (arithmetic regular expression flags)
esid: sec-patterns-static-semantics-early-errors
features: [regexp-modifiers]
negative:
phase: parse
type: SyntaxError
info: |
Atom :: ( ? RegularExpressionFlags - RegularExpressionFlags : Disjunction )
...
--- |
823 |
early-err-arithmetic-modifiers-other-code-point-zwnbsp.js |
---
description: It is a Syntax Error if the source text matched by RegularExpressionFlags contains any code point other than i, m, or s, or if it contains the same code point more than once. (arithmetic regular expression flags)
esid: sec-patterns-static-semantics-early-errors
features: [regexp-modifiers]
negative:
phase: parse
type: SyntaxError
info: |
Atom :: ( ? RegularExpressionFlags - RegularExpressionFlags : Disjunction )
...
--- |
823 |
early-err-arithmetic-modifiers-other-code-point-zwnj.js |
---
description: It is a Syntax Error if the source text matched by RegularExpressionFlags contains any code point other than i, m, or s, or if it contains the same code point more than once. (arithmetic regular expression flags)
esid: sec-patterns-static-semantics-early-errors
features: [regexp-modifiers]
negative:
phase: parse
type: SyntaxError
info: |
Atom :: ( ? RegularExpressionFlags - RegularExpressionFlags : Disjunction )
...
--- |
823 |
early-err-arithmetic-modifiers-reverse-add-remove-i.js |
---
description: It is a Syntax Error if the any code point in the source text matched by the first RegularExpressionFlags is also contained in the source text matched by the second RegularExpressionFlags. (arithmetic regular expression flags)
esid: sec-patterns-static-semantics-early-errors
features: [regexp-modifiers]
negative:
phase: parse
type: SyntaxError
info: |
Atom :: ( ? RegularExpressionFlags - RegularExpressionFlags : Disjunction )
...
--- |
835 |
early-err-arithmetic-modifiers-reverse-add-remove-m.js |
---
description: It is a Syntax Error if the any code point in the source text matched by the first RegularExpressionFlags is also contained in the source text matched by the second RegularExpressionFlags. (arithmetic regular expression flags)
esid: sec-patterns-static-semantics-early-errors
features: [regexp-modifiers]
negative:
phase: parse
type: SyntaxError
info: |
Atom :: ( ? RegularExpressionFlags - RegularExpressionFlags : Disjunction )
...
--- |
835 |
early-err-arithmetic-modifiers-reverse-add-remove-multi-duplicate.js |
---
description: It is a Syntax Error if the any code point in the source text matched by the first RegularExpressionFlags is also contained in the source text matched by the second RegularExpressionFlags. (arithmetic regular expression flags)
esid: sec-patterns-static-semantics-early-errors
features: [regexp-modifiers]
negative:
phase: parse
type: SyntaxError
info: |
Atom :: ( ? RegularExpressionFlags - RegularExpressionFlags : Disjunction )
...
--- |
837 |
early-err-arithmetic-modifiers-reverse-add-remove-s-escape.js |
---
description: It is a Syntax Error if the any code point in the source text matched by the first RegularExpressionFlags is also contained in the source text matched by the second RegularExpressionFlags. (arithmetic regular expression flags)
esid: sec-patterns-static-semantics-early-errors
features: [regexp-modifiers]
negative:
phase: parse
type: SyntaxError
info: |
Atom :: ( ? RegularExpressionFlags - RegularExpressionFlags : Disjunction )
...
--- |
842 |
early-err-arithmetic-modifiers-reverse-add-remove-s.js |
---
description: It is a Syntax Error if the any code point in the source text matched by the first RegularExpressionFlags is also contained in the source text matched by the second RegularExpressionFlags. (arithmetic regular expression flags)
esid: sec-patterns-static-semantics-early-errors
features: [regexp-modifiers]
negative:
phase: parse
type: SyntaxError
info: |
Atom :: ( ? RegularExpressionFlags - RegularExpressionFlags : Disjunction )
...
--- |
835 |
early-err-arithmetic-modifiers-reverse-code-point-repeat-i-1.js |
---
description: It is a Syntax Error if the source text matched by RegularExpressionFlags contains any code point other than i, m, or s, or if it contains the same code point more than once. (arithmetic regular expression flags)
esid: sec-patterns-static-semantics-early-errors
features: [regexp-modifiers]
negative:
phase: parse
type: SyntaxError
info: |
Atom :: ( ? RegularExpressionFlags - RegularExpressionFlags : Disjunction )
...
--- |
821 |
early-err-arithmetic-modifiers-reverse-code-point-repeat-i-2.js |
---
description: It is a Syntax Error if the source text matched by RegularExpressionFlags contains any code point other than i, m, or s, or if it contains the same code point more than once. (arithmetic regular expression flags)
esid: sec-patterns-static-semantics-early-errors
features: [regexp-modifiers]
negative:
phase: parse
type: SyntaxError
info: |
Atom :: ( ? RegularExpressionFlags - RegularExpressionFlags : Disjunction )
...
--- |
823 |
early-err-arithmetic-modifiers-reverse-other-code-point-arbitrary.js |
---
description: It is a Syntax Error if the source text matched by RegularExpressionFlags contains any code point other than i, m, or s, or if it contains the same code point more than once. (arithmetic regular expression flags)
esid: sec-patterns-static-semantics-early-errors
features: [regexp-modifiers]
negative:
phase: parse
type: SyntaxError
info: |
Atom :: ( ? RegularExpressionFlags - RegularExpressionFlags : Disjunction )
...
--- |
820 |
early-err-arithmetic-modifiers-reverse-other-code-point-combining-i.js |
---
description: It is a Syntax Error if the source text matched by RegularExpressionFlags contains any code point other than i, m, or s, or if it contains the same code point more than once. (arithmetic regular expression flags)
esid: sec-patterns-static-semantics-early-errors
features: [regexp-modifiers]
negative:
phase: parse
type: SyntaxError
info: |
Atom :: ( ? RegularExpressionFlags - RegularExpressionFlags : Disjunction )
...
--- |
822 |
early-err-arithmetic-modifiers-reverse-other-code-point-combining-m.js |
---
description: It is a Syntax Error if the source text matched by RegularExpressionFlags contains any code point other than i, m, or s, or if it contains the same code point more than once. (arithmetic regular expression flags)
esid: sec-patterns-static-semantics-early-errors
features: [regexp-modifiers]
negative:
phase: parse
type: SyntaxError
info: |
Atom :: ( ? RegularExpressionFlags - RegularExpressionFlags : Disjunction )
...
--- |
822 |
early-err-arithmetic-modifiers-reverse-other-code-point-combining-s.js |
---
description: It is a Syntax Error if the source text matched by RegularExpressionFlags contains any code point other than i, m, or s, or if it contains the same code point more than once. (arithmetic regular expression flags)
esid: sec-patterns-static-semantics-early-errors
features: [regexp-modifiers]
negative:
phase: parse
type: SyntaxError
info: |
Atom :: ( ? RegularExpressionFlags - RegularExpressionFlags : Disjunction )
...
--- |
822 |
early-err-arithmetic-modifiers-reverse-other-code-point-d.js |
---
description: It is a Syntax Error if the source text matched by RegularExpressionFlags contains any code point other than i, m, or s, or if it contains the same code point more than once. (arithmetic regular expression flags)
esid: sec-patterns-static-semantics-early-errors
features: [regexp-modifiers]
negative:
phase: parse
type: SyntaxError
info: |
Atom :: ( ? RegularExpressionFlags - RegularExpressionFlags : Disjunction )
...
--- |
820 |
early-err-arithmetic-modifiers-reverse-other-code-point-g.js |
---
description: It is a Syntax Error if the source text matched by RegularExpressionFlags contains any code point other than i, m, or s, or if it contains the same code point more than once. (arithmetic regular expression flags)
esid: sec-patterns-static-semantics-early-errors
features: [regexp-modifiers]
negative:
phase: parse
type: SyntaxError
info: |
Atom :: ( ? RegularExpressionFlags - RegularExpressionFlags : Disjunction )
...
--- |
820 |
early-err-arithmetic-modifiers-reverse-other-code-point-non-display-1.js |
---
description: It is a Syntax Error if the source text matched by RegularExpressionFlags contains any code point other than i, m, or s, or if it contains the same code point more than once. (arithmetic regular expression flags)
esid: sec-patterns-static-semantics-early-errors
features: [regexp-modifiers]
negative:
phase: parse
type: SyntaxError
info: |
Atom :: ( ? RegularExpressionFlags - RegularExpressionFlags : Disjunction )
...
--- |
821 |
early-err-arithmetic-modifiers-reverse-other-code-point-non-display-2.js |
---
description: It is a Syntax Error if the source text matched by RegularExpressionFlags contains any code point other than i, m, or s, or if it contains the same code point more than once. (arithmetic regular expression flags)
esid: sec-patterns-static-semantics-early-errors
features: [regexp-modifiers]
negative:
phase: parse
type: SyntaxError
info: |
Atom :: ( ? RegularExpressionFlags - RegularExpressionFlags : Disjunction )
...
--- |
823 |
early-err-arithmetic-modifiers-reverse-other-code-point-non-flag.js |
---
description: It is a Syntax Error if the source text matched by RegularExpressionFlags contains any code point other than i, m, or s, or if it contains the same code point more than once. (arithmetic regular expression flags)
esid: sec-patterns-static-semantics-early-errors
features: [regexp-modifiers]
negative:
phase: parse
type: SyntaxError
info: |
Atom :: ( ? RegularExpressionFlags - RegularExpressionFlags : Disjunction )
...
--- |
820 |
early-err-arithmetic-modifiers-reverse-other-code-point-u.js |
---
description: It is a Syntax Error if the source text matched by RegularExpressionFlags contains any code point other than i, m, or s, or if it contains the same code point more than once. (arithmetic regular expression flags)
esid: sec-patterns-static-semantics-early-errors
features: [regexp-modifiers]
negative:
phase: parse
type: SyntaxError
info: |
Atom :: ( ? RegularExpressionFlags - RegularExpressionFlags : Disjunction )
...
--- |
820 |
early-err-arithmetic-modifiers-reverse-other-code-point-uppercase-I.js |
---
description: It is a Syntax Error if the source text matched by RegularExpressionFlags contains any code point other than i, m, or s, or if it contains the same code point more than once. (arithmetic regular expression flags)
esid: sec-patterns-static-semantics-early-errors
features: [regexp-modifiers]
negative:
phase: parse
type: SyntaxError
info: |
Atom :: ( ? RegularExpressionFlags - RegularExpressionFlags : Disjunction )
...
--- |
820 |
early-err-arithmetic-modifiers-reverse-other-code-point-y.js |
---
description: It is a Syntax Error if the source text matched by RegularExpressionFlags contains any code point other than i, m, or s, or if it contains the same code point more than once. (arithmetic regular expression flags)
esid: sec-patterns-static-semantics-early-errors
features: [regexp-modifiers]
negative:
phase: parse
type: SyntaxError
info: |
Atom :: ( ? RegularExpressionFlags - RegularExpressionFlags : Disjunction )
...
--- |
820 |
early-err-arithmetic-modifiers-reverse-other-code-point-zwj.js |
---
description: It is a Syntax Error if the source text matched by RegularExpressionFlags contains any code point other than i, m, or s, or if it contains the same code point more than once. (arithmetic regular expression flags)
esid: sec-patterns-static-semantics-early-errors
features: [regexp-modifiers]
negative:
phase: parse
type: SyntaxError
info: |
Atom :: ( ? RegularExpressionFlags - RegularExpressionFlags : Disjunction )
...
--- |
823 |
early-err-arithmetic-modifiers-reverse-other-code-point-zwnbsp.js |
---
description: It is a Syntax Error if the source text matched by RegularExpressionFlags contains any code point other than i, m, or s, or if it contains the same code point more than once. (arithmetic regular expression flags)
esid: sec-patterns-static-semantics-early-errors
features: [regexp-modifiers]
negative:
phase: parse
type: SyntaxError
info: |
Atom :: ( ? RegularExpressionFlags - RegularExpressionFlags : Disjunction )
...
--- |
823 |
early-err-arithmetic-modifiers-reverse-other-code-point-zwnj.js |
---
description: It is a Syntax Error if the source text matched by RegularExpressionFlags contains any code point other than i, m, or s, or if it contains the same code point more than once. (arithmetic regular expression flags)
esid: sec-patterns-static-semantics-early-errors
features: [regexp-modifiers]
negative:
phase: parse
type: SyntaxError
info: |
Atom :: ( ? RegularExpressionFlags - RegularExpressionFlags : Disjunction )
...
--- |
823 |
early-err-arithmetic-modifiers-reverse-should-not-case-fold-i.js |
---
description: Code points other than "i", "m", "s" should not be case folded to "i", "m", or "s" (arithmetic regular expression flags)
esid: sec-patterns-static-semantics-early-errors
features: [regexp-modifiers]
negative:
phase: parse
type: SyntaxError
info: |
Atom :: ( ? RegularExpressionFlags - RegularExpressionFlags : Disjunction )
...
--- |
728 |
early-err-arithmetic-modifiers-reverse-should-not-case-fold-m.js |
---
description: Code points other than "i", "m", "s" should not be case folded to "i", "m", or "s" (arithmetic regular expression flags)
esid: sec-patterns-static-semantics-early-errors
features: [regexp-modifiers]
negative:
phase: parse
type: SyntaxError
info: |
Atom :: ( ? RegularExpressionFlags - RegularExpressionFlags : Disjunction )
...
--- |
728 |
early-err-arithmetic-modifiers-reverse-should-not-case-fold-s.js |
---
description: Code points other than "i", "m", "s" should not be case folded to "i", "m", or "s" (arithmetic regular expression flags)
esid: sec-patterns-static-semantics-early-errors
features: [regexp-modifiers]
negative:
phase: parse
type: SyntaxError
info: |
Atom :: ( ? RegularExpressionFlags - RegularExpressionFlags : Disjunction )
...
--- |
728 |
early-err-arithmetic-modifiers-reverse-should-not-unicode-case-fold-i.js |
---
description: Code points other than "i", "m", "s" should not be case-folded to "i", "m", or "s" (arithmetic regular expression flags)
esid: sec-patterns-static-semantics-early-errors
features: [regexp-modifiers]
negative:
phase: parse
type: SyntaxError
info: |
Atom :: ( ? RegularExpressionFlags - RegularExpressionFlags : Disjunction )
...
--- |
729 |
early-err-arithmetic-modifiers-reverse-should-not-unicode-case-fold-s.js |
---
description: Code points other than "i", "m", "s" should not be case-folded to "i", "m", or "s" (arithmetic regular expression flags)
esid: sec-patterns-static-semantics-early-errors
features: [regexp-modifiers]
negative:
phase: parse
type: SyntaxError
info: |
Atom :: ( ? RegularExpressionFlags - RegularExpressionFlags : Disjunction )
...
--- |
729 |
early-err-arithmetic-modifiers-should-not-case-fold-i.js |
---
description: Code points other than "i", "m", "s" should not be case folded to "i", "m", or "s" (arithmetic regular expression flags)
esid: sec-patterns-static-semantics-early-errors
features: [regexp-modifiers]
negative:
phase: parse
type: SyntaxError
info: |
Atom :: ( ? RegularExpressionFlags - RegularExpressionFlags : Disjunction )
...
--- |
728 |
early-err-arithmetic-modifiers-should-not-case-fold-m.js |
---
description: Code points other than "i", "m", "s" should not be case folded to "i", "m", or "s" (arithmetic regular expression flags)
esid: sec-patterns-static-semantics-early-errors
features: [regexp-modifiers]
negative:
phase: parse
type: SyntaxError
info: |
Atom :: ( ? RegularExpressionFlags - RegularExpressionFlags : Disjunction )
...
--- |
728 |
early-err-arithmetic-modifiers-should-not-case-fold-s.js |
---
description: Code points other than "i", "m", "s" should not be case folded to "i", "m", or "s" (arithmetic regular expression flags)
esid: sec-patterns-static-semantics-early-errors
features: [regexp-modifiers]
negative:
phase: parse
type: SyntaxError
info: |
Atom :: ( ? RegularExpressionFlags - RegularExpressionFlags : Disjunction )
...
--- |
728 |
early-err-arithmetic-modifiers-should-not-unicode-case-fold-i.js |
---
description: Code points other than "i", "m", "s" should not be case-folded to "i", "m", or "s" (arithmetic regular expression flags)
esid: sec-patterns-static-semantics-early-errors
features: [regexp-modifiers]
negative:
phase: parse
type: SyntaxError
info: |
Atom :: ( ? RegularExpressionFlags - RegularExpressionFlags : Disjunction )
...
--- |
729 |
early-err-arithmetic-modifiers-should-not-unicode-case-fold-s.js |
---
description: Code points other than "i", "m", "s" should not be case-folded to "i", "m", or "s" (arithmetic regular expression flags)
esid: sec-patterns-static-semantics-early-errors
features: [regexp-modifiers]
negative:
phase: parse
type: SyntaxError
info: |
Atom :: ( ? RegularExpressionFlags - RegularExpressionFlags : Disjunction )
...
--- |
729 |
early-err-bad-flag.js |
---
esid: sec-primary-expression-regular-expression-literals-static-semantics-early-errors
info: |
PrimaryExpression : RegularExpressionLiteral
description: >
It is a Syntax Error if FlagText of RegularExpressionLiteral contains any code points other than "g", "i", "m", "u", or "y", ...
negative:
phase: parse
type: SyntaxError
--- |
542 |
early-err-dup-flag.js |
---
esid: sec-primary-expression-regular-expression-literals-static-semantics-early-errors
info: |
PrimaryExpression : RegularExpressionLiteral
description: >
It is a Syntax Error if FlagText of RegularExpressionLiteral contains ... the same code point more than once.
negative:
phase: parse
type: SyntaxError
--- |
525 |
early-err-flags-unicode-escape.js |
---
esid: sec-literals-regular-expression-literals-static-semantics-early-errors
info: |
RegularExpressionFlags ::
RegularExpressionFlags IdentifierPart
description: >
It is a Syntax Error if IdentifierPart contains a Unicode escape sequence.
negative:
phase: parse
type: SyntaxError
--- |
505 |
early-err-modifiers-code-point-repeat-i-1.js |
---
description: It is a Syntax Error if the source text matched by RegularExpressionFlags contains any code point other than i, m, or s, or if it contains the same code point more than once. (regular expression flags)
esid: sec-patterns-static-semantics-early-errors
features: [regexp-modifiers]
negative:
phase: parse
type: SyntaxError
info: |
Atom :: ( ? RegularExpresisonFlags : Disjunction )
It is a Syntax Error if the source text matched by RegularExpressionFlags contains any code points other than "i", "m", "s", or if it contains the same code point more than once.
--- |
959 |
early-err-modifiers-code-point-repeat-i-2.js |
---
description: It is a Syntax Error if the source text matched by RegularExpressionFlags contains any code point other than i, m, or s, or if it contains the same code point more than once. (regular expression flags)
esid: sec-patterns-static-semantics-early-errors
features: [regexp-modifiers]
negative:
phase: parse
type: SyntaxError
info: |
Atom :: ( ? RegularExpresisonFlags : Disjunction )
It is a Syntax Error if the source text matched by RegularExpressionFlags contains any code points other than "i", "m", "s", or if it contains the same code point more than once.
--- |
961 |
early-err-modifiers-other-code-point-arbitrary.js |
---
description: It is a Syntax Error if the source text matched by RegularExpressionFlags contains any code point other than i, m, or s, or if it contains the same code point more than once. (regular expression flags)
esid: sec-patterns-static-semantics-early-errors
features: [regexp-modifiers]
negative:
phase: parse
type: SyntaxError
info: |
Atom :: ( ? RegularExpresisonFlags : Disjunction )
It is a Syntax Error if the source text matched by RegularExpressionFlags contains any code points other than "i", "m", "s", or if it contains the same code point more than once.
--- |
958 |
early-err-modifiers-other-code-point-combining-i.js |
---
description: It is a Syntax Error if the source text matched by RegularExpressionFlags contains any code point other than i, m, or s, or if it contains the same code point more than once. (regular expression flags)
esid: sec-patterns-static-semantics-early-errors
features: [regexp-modifiers]
negative:
phase: parse
type: SyntaxError
info: |
Atom :: ( ? RegularExpresisonFlags : Disjunction )
It is a Syntax Error if the source text matched by RegularExpressionFlags contains any code points other than "i", "m", "s", or if it contains the same code point more than once.
--- |
960 |
early-err-modifiers-other-code-point-combining-m.js |
---
description: It is a Syntax Error if the source text matched by RegularExpressionFlags contains any code point other than i, m, or s, or if it contains the same code point more than once. (regular expression flags)
esid: sec-patterns-static-semantics-early-errors
features: [regexp-modifiers]
negative:
phase: parse
type: SyntaxError
info: |
Atom :: ( ? RegularExpresisonFlags : Disjunction )
It is a Syntax Error if the source text matched by RegularExpressionFlags contains any code points other than "i", "m", "s", or if it contains the same code point more than once.
--- |
960 |
early-err-modifiers-other-code-point-combining-s.js |
---
description: It is a Syntax Error if the source text matched by RegularExpressionFlags contains any code point other than i, m, or s, or if it contains the same code point more than once. (regular expression flags)
esid: sec-patterns-static-semantics-early-errors
features: [regexp-modifiers]
negative:
phase: parse
type: SyntaxError
info: |
Atom :: ( ? RegularExpresisonFlags : Disjunction )
It is a Syntax Error if the source text matched by RegularExpressionFlags contains any code points other than "i", "m", "s", or if it contains the same code point more than once.
--- |
960 |
early-err-modifiers-other-code-point-d.js |
---
description: It is a Syntax Error if the source text matched by RegularExpressionFlags contains any code point other than i, m, or s, or if it contains the same code point more than once. (regular expression flags)
esid: sec-patterns-static-semantics-early-errors
features: [regexp-modifiers]
negative:
phase: parse
type: SyntaxError
info: |
Atom :: ( ? RegularExpresisonFlags : Disjunction )
It is a Syntax Error if the source text matched by RegularExpressionFlags contains any code points other than "i", "m", "s", or if it contains the same code point more than once.
--- |
958 |
early-err-modifiers-other-code-point-g.js |
---
description: It is a Syntax Error if the source text matched by RegularExpressionFlags contains any code point other than i, m, or s, or if it contains the same code point more than once. (regular expression flags)
esid: sec-patterns-static-semantics-early-errors
features: [regexp-modifiers]
negative:
phase: parse
type: SyntaxError
info: |
Atom :: ( ? RegularExpresisonFlags : Disjunction )
It is a Syntax Error if the source text matched by RegularExpressionFlags contains any code points other than "i", "m", "s", or if it contains the same code point more than once.
--- |
958 |
early-err-modifiers-other-code-point-non-display-1.js |
---
description: It is a Syntax Error if the source text matched by RegularExpressionFlags contains any code point other than i, m, or s, or if it contains the same code point more than once. (regular expression flags)
esid: sec-patterns-static-semantics-early-errors
features: [regexp-modifiers]
negative:
phase: parse
type: SyntaxError
info: |
Atom :: ( ? RegularExpresisonFlags : Disjunction )
It is a Syntax Error if the source text matched by RegularExpressionFlags contains any code points other than "i", "m", "s", or if it contains the same code point more than once.
--- |
959 |
early-err-modifiers-other-code-point-non-display-2.js |
---
description: It is a Syntax Error if the source text matched by RegularExpressionFlags contains any code point other than i, m, or s, or if it contains the same code point more than once. (regular expression flags)
esid: sec-patterns-static-semantics-early-errors
features: [regexp-modifiers]
negative:
phase: parse
type: SyntaxError
info: |
Atom :: ( ? RegularExpresisonFlags : Disjunction )
It is a Syntax Error if the source text matched by RegularExpressionFlags contains any code points other than "i", "m", "s", or if it contains the same code point more than once.
--- |
961 |
early-err-modifiers-other-code-point-non-flag.js |
---
description: It is a Syntax Error if the source text matched by RegularExpressionFlags contains any code point other than i, m, or s, or if it contains the same code point more than once. (regular expression flags)
esid: sec-patterns-static-semantics-early-errors
features: [regexp-modifiers]
negative:
phase: parse
type: SyntaxError
info: |
Atom :: ( ? RegularExpresisonFlags : Disjunction )
It is a Syntax Error if the source text matched by RegularExpressionFlags contains any code points other than "i", "m", "s", or if it contains the same code point more than once.
--- |
958 |
early-err-modifiers-other-code-point-u.js |
---
description: It is a Syntax Error if the source text matched by RegularExpressionFlags contains any code point other than i, m, or s, or if it contains the same code point more than once. (regular expression flags)
esid: sec-patterns-static-semantics-early-errors
features: [regexp-modifiers]
negative:
phase: parse
type: SyntaxError
info: |
Atom :: ( ? RegularExpresisonFlags : Disjunction )
It is a Syntax Error if the source text matched by RegularExpressionFlags contains any code points other than "i", "m", "s", or if it contains the same code point more than once.
--- |
958 |
early-err-modifiers-other-code-point-uppercase-I.js |
---
description: It is a Syntax Error if the source text matched by RegularExpressionFlags contains any code point other than i, m, or s, or if it contains the same code point more than once. (regular expression flags)
esid: sec-patterns-static-semantics-early-errors
features: [regexp-modifiers]
negative:
phase: parse
type: SyntaxError
info: |
Atom :: ( ? RegularExpresisonFlags : Disjunction )
It is a Syntax Error if the source text matched by RegularExpressionFlags contains any code points other than "i", "m", "s", or if it contains the same code point more than once.
--- |
958 |
early-err-modifiers-other-code-point-y.js |
---
description: It is a Syntax Error if the source text matched by RegularExpressionFlags contains any code point other than i, m, or s, or if it contains the same code point more than once. (regular expression flags)
esid: sec-patterns-static-semantics-early-errors
features: [regexp-modifiers]
negative:
phase: parse
type: SyntaxError
info: |
Atom :: ( ? RegularExpresisonFlags : Disjunction )
It is a Syntax Error if the source text matched by RegularExpressionFlags contains any code points other than "i", "m", "s", or if it contains the same code point more than once.
--- |
958 |
early-err-modifiers-other-code-point-zwj.js |
---
description: It is a Syntax Error if the source text matched by RegularExpressionFlags contains any code point other than i, m, or s, or if it contains the same code point more than once. (regular expression flags)
esid: sec-patterns-static-semantics-early-errors
features: [regexp-modifiers]
negative:
phase: parse
type: SyntaxError
info: |
Atom :: ( ? RegularExpresisonFlags : Disjunction )
It is a Syntax Error if the source text matched by RegularExpressionFlags contains any code points other than "i", "m", "s", or if it contains the same code point more than once.
--- |
961 |
early-err-modifiers-other-code-point-zwnbsp.js |
---
description: It is a Syntax Error if the source text matched by RegularExpressionFlags contains any code point other than i, m, or s, or if it contains the same code point more than once. (regular expression flags)
esid: sec-patterns-static-semantics-early-errors
features: [regexp-modifiers]
negative:
phase: parse
type: SyntaxError
info: |
Atom :: ( ? RegularExpresisonFlags : Disjunction )
It is a Syntax Error if the source text matched by RegularExpressionFlags contains any code points other than "i", "m", "s", or if it contains the same code point more than once.
--- |
961 |
early-err-modifiers-other-code-point-zwnj.js |
---
description: It is a Syntax Error if the source text matched by RegularExpressionFlags contains any code point other than i, m, or s, or if it contains the same code point more than once. (regular expression flags)
esid: sec-patterns-static-semantics-early-errors
features: [regexp-modifiers]
negative:
phase: parse
type: SyntaxError
info: |
Atom :: ( ? RegularExpresisonFlags : Disjunction )
It is a Syntax Error if the source text matched by RegularExpressionFlags contains any code points other than "i", "m", "s", or if it contains the same code point more than once.
--- |
961 |
early-err-modifiers-should-not-case-fold-i.js |
---
description: Code points other than "i", "m", "s" should not be case folded to "i", "m", or "s" (regular expression flags)
esid: sec-patterns-static-semantics-early-errors
features: [regexp-modifiers]
negative:
phase: parse
type: SyntaxError
info: |
Atom :: ( ? RegularExpresisonFlags : Disjunction )
It is a Syntax Error if the source text matched by RegularExpressionFlags contains any code points other than "i", "m", "s", or if it contains the same code point more than once.
--- |
866 |
early-err-modifiers-should-not-case-fold-m.js |
---
description: Code points other than "i", "m", "s" should not be case folded to "i", "m", or "s" (regular expression flags)
esid: sec-patterns-static-semantics-early-errors
features: [regexp-modifiers]
negative:
phase: parse
type: SyntaxError
info: |
Atom :: ( ? RegularExpresisonFlags : Disjunction )
It is a Syntax Error if the source text matched by RegularExpressionFlags contains any code points other than "i", "m", "s", or if it contains the same code point more than once.
--- |
866 |
early-err-modifiers-should-not-case-fold-s.js |
---
description: Code points other than "i", "m", "s" should not be case folded to "i", "m", or "s" (regular expression flags)
esid: sec-patterns-static-semantics-early-errors
features: [regexp-modifiers]
negative:
phase: parse
type: SyntaxError
info: |
Atom :: ( ? RegularExpresisonFlags : Disjunction )
It is a Syntax Error if the source text matched by RegularExpressionFlags contains any code points other than "i", "m", "s", or if it contains the same code point more than once.
--- |
866 |
early-err-modifiers-should-not-unicode-case-fold-i.js |
---
description: Code points other than "i", "m", "s" should not be case-folded to "i", "m", or "s" (regular expression flags)
esid: sec-patterns-static-semantics-early-errors
features: [regexp-modifiers]
negative:
phase: parse
type: SyntaxError
info: |
Atom :: ( ? RegularExpresisonFlags : Disjunction )
It is a Syntax Error if the source text matched by RegularExpressionFlags contains any code points other than "i", "m", "s", or if it contains the same code point more than once.
--- |
867 |
early-err-modifiers-should-not-unicode-case-fold-s.js |
---
description: Code points other than "i", "m", "s" should not be case-folded to "i", "m", or "s" (regular expression flags)
esid: sec-patterns-static-semantics-early-errors
features: [regexp-modifiers]
negative:
phase: parse
type: SyntaxError
info: |
Atom :: ( ? RegularExpresisonFlags : Disjunction )
It is a Syntax Error if the source text matched by RegularExpressionFlags contains any code points other than "i", "m", "s", or if it contains the same code point more than once.
--- |
867 |
early-err-modifiers-should-not-unicode-escape-i.js |
---
description: Source text cannot use unicode escape sequences to express code points "i", "m", "s" (regular expression flags)
esid: sec-patterns-static-semantics-early-errors
features: [regexp-modifiers]
negative:
phase: parse
type: SyntaxError
info: |
Atom :: ( ? RegularExpresisonFlags : Disjunction )
It is a Syntax Error if the source text matched by RegularExpressionFlags contains any code points other than "i", "m", "s", or if it contains the same code point more than once.
--- |
858 |
early-err-modifiers-should-not-unicode-escape-m.js |
---
description: Source text cannot use unicode escape sequences to express code points "i", "m", "s" (regular expression flags)
esid: sec-patterns-static-semantics-early-errors
features: [regexp-modifiers]
negative:
phase: parse
type: SyntaxError
info: |
Atom :: ( ? RegularExpresisonFlags : Disjunction )
It is a Syntax Error if the source text matched by RegularExpressionFlags contains any code points other than "i", "m", "s", or if it contains the same code point more than once.
--- |
858 |
early-err-modifiers-should-not-unicode-escape-s.js |
---
description: Source text cannot use unicode escape sequences to express code points "i", "m", "s" (regular expression flags)
esid: sec-patterns-static-semantics-early-errors
features: [regexp-modifiers]
negative:
phase: parse
type: SyntaxError
info: |
Atom :: ( ? RegularExpresisonFlags : Disjunction )
It is a Syntax Error if the source text matched by RegularExpressionFlags contains any code points other than "i", "m", "s", or if it contains the same code point more than once.
--- |
858 |
early-err-pattern.js |
---
esid: sec-primary-expression-regular-expression-literals-static-semantics-early-errors
info: |
PrimaryExpression : RegularExpressionLiteral
description: >
It is a Syntax Error if BodyText of RegularExpressionLiteral cannot be recognized using the goal symbol Pattern of the ECMAScript RegExp grammar specified in #sec-patterns.
negative:
phase: parse
type: SyntaxError
--- |
586 |
inequality.js |
---
description: Regular expression literals should not compare as equal even if they appear in the same source position.
esid: sec-regular-expression-literals-runtime-semantics-evaluation
--- |
558 |
invalid-braced-quantifier-exact.js |
---
esid: sec-patterns
es6id: 21.2.1
description: Braced quantifier in an Atom position (exact count)
info: |
SyntaxCharacter :: one of
^$\.*+?()[]{}|
PatternCharacter ::
SourceCharacter but not SyntaxCharacter
Although Annex B extends the definition of Term to include
ExtendedPatternCharacter, it also introduces the InvalidBracedQuantifier
pattern with a higher precedence. This makes the SyntaxError for such
patterns consistent between Annex-B and non-Annex-B environments.
negative:
phase: parse
type: SyntaxError
--- |
770 |
invalid-braced-quantifier-lower.js |
---
esid: sec-patterns
es6id: 21.2.1
description: Braced quantifier in an Atom position (lower-bounds)
info: |
SyntaxCharacter :: one of
^$\.*+?()[]{}|
PatternCharacter ::
SourceCharacter but not SyntaxCharacter
Although Annex B extends the definition of Term to include
ExtendedPatternCharacter, it also introduces the InvalidBracedQuantifier
pattern with a higher precedence. This makes the SyntaxError for such
patterns consistent between Annex-B and non-Annex-B environments.
negative:
phase: parse
type: SyntaxError
--- |
772 |
invalid-braced-quantifier-range.js |
---
esid: sec-patterns
es6id: 21.2.1
description: Braced quantifier in an Atom position (range)
info: |
SyntaxCharacter :: one of
^$\.*+?()[]{}|
PatternCharacter ::
SourceCharacter but not SyntaxCharacter
Although Annex B extends the definition of Term to include
ExtendedPatternCharacter, it also introduces the InvalidBracedQuantifier
pattern with a higher precedence. This makes the SyntaxError for such
patterns consistent between Annex-B and non-Annex-B environments.
negative:
phase: parse
type: SyntaxError
--- |
766 |
invalid-optional-lookbehind.js |
---
esid: sec-regular-expressions-patterns
description: Lookbehinds are not treated as a QuantifiableAssertion
info: |
Term[U] ::
[~U] QuantifiableAssertion Quantifier
QuantifiableAssertion[N]::
( ? = Disjunction[~U, ?N] )
( ? ! Disjunction[~U, ?N] )
negative:
phase: parse
type: SyntaxError
--- |
528 |
invalid-optional-negative-lookbehind.js |
---
esid: sec-regular-expressions-patterns
description: Lookbehinds are not treated as a QuantifiableAssertion
info: |
Term[U] ::
[~U] QuantifiableAssertion Quantifier
QuantifiableAssertion[N]::
( ? = Disjunction[~U, ?N] )
( ? ! Disjunction[~U, ?N] )
negative:
phase: parse
type: SyntaxError
--- |
528 |
invalid-range-lookbehind.js |
---
esid: sec-regular-expressions-patterns
description: Lookbehinds are not treated as a QuantifiableAssertion
info: |
Term[U] ::
[~U] QuantifiableAssertion Quantifier
QuantifiableAssertion[N]::
( ? = Disjunction[~U, ?N] )
( ? ! Disjunction[~U, ?N] )
negative:
phase: parse
type: SyntaxError
--- |
532 |
invalid-range-negative-lookbehind.js |
---
esid: sec-regular-expressions-patterns
description: Lookbehinds are not treated as a QuantifiableAssertion
info: |
Term[U] ::
[~U] QuantifiableAssertion Quantifier
QuantifiableAssertion[N]::
( ? = Disjunction[~U, ?N] )
( ? ! Disjunction[~U, ?N] )
negative:
phase: parse
type: SyntaxError
--- |
532 |
lastIndex.js |
---
esid: sec-regular-expression-literals-runtime-semantics-evaluation
description: Initial state of the `lastIndex` property
info: |
[...]
3. Return RegExpCreate(pattern, flags).
21.2.3.2.3 Runtime Semantics: RegExpCreate
1. Let obj be ? RegExpAlloc(%RegExp%).
2. Return ? RegExpInitialize(obj, P, F).
21.2.3.2.2 Runtime Semantics: RegExpInitialize
[...]
12. Perform ? Set(obj, "lastIndex", 0, true).
[...]
21.2.3.2.1 Runtime Semantics: RegExpAlloc
[...]
2. Perform ! DefinePropertyOrThrow(obj, "lastIndex", PropertyDescriptor
{[[Writable]]: true, [[Enumerable]]: false, [[Configurable]]: false}).
[...]
includes: [propertyHelper.js]
--- |
968 |
mongolian-vowel-separator-eval.js |
---
esid: sec-unicode-format-control-characters
description: >
Mongolian Vowel Separator can appear in regular expression literals (eval code).
info: |
11.1 Unicode Format-Control Characters
The Unicode format-control characters (i.e., the characters in category “Cf”
in the Unicode Character Database such as LEFT-TO-RIGHT MARK or RIGHT-TO-LEFT
MARK) are control codes used to control the formatting of a range of text in
the absence of higher-level protocols for this (such as mark-up languages).
It is useful to allow format-control characters in source text to facilitate
editing and display. All format control characters may be used within comments,
and within string literals, template literals, and regular expression literals.
features: [u180e]
--- |
993 |
mongolian-vowel-separator.js |
---
esid: sec-unicode-format-control-characters
description: >
Mongolian Vowel Separator can appear in regular expression literals.
info: |
11.1 Unicode Format-Control Characters
The Unicode format-control characters (i.e., the characters in category “Cf”
in the Unicode Character Database such as LEFT-TO-RIGHT MARK or RIGHT-TO-LEFT
MARK) are control codes used to control the formatting of a range of text in
the absence of higher-level protocols for this (such as mark-up languages).
It is useful to allow format-control characters in source text to facilitate
editing and display. All format control characters may be used within comments,
and within string literals, template literals, and regular expression literals.
features: [u180e]
--- |
1034 |
named-groups |
|
|
regexp-first-char-no-line-separator.js |
---
esid: prod-RegularExpressionNonTerminator
info: |
RegularExpressionBody ::
RegularExpressionFirstChar RegularExpressionChars
RegularExpressionChars ::
[empty]
RegularExpressionChars RegularExpressionChar
RegularExpressionFirstChar ::
RegularExpressionNonTerminator but not one of * or \ or / or [
RegularExpressionNonTerminator ::
SourceCharacter but not LineTerminator
description: >
The first character of a regular expression may not be a <LS>
negative:
phase: parse
type: SyntaxError
--- |
780 |
regexp-first-char-no-paragraph-separator.js |
---
esid: prod-RegularExpressionNonTerminator
info: |
RegularExpressionBody ::
RegularExpressionFirstChar RegularExpressionChars
RegularExpressionChars ::
[empty]
RegularExpressionChars RegularExpressionChar
RegularExpressionFirstChar ::
RegularExpressionNonTerminator but not one of * or \ or / or [
RegularExpressionNonTerminator ::
SourceCharacter but not LineTerminator
description: >
The first character of a regular expression may not be a <PS>
negative:
phase: parse
type: SyntaxError
--- |
780 |
regexp-source-char-no-line-separator.js |
---
esid: prod-RegularExpressionBackslashSequence
info: |
RegularExpressionBackslashSequence ::
\ RegularExpressionNonTerminator
RegularExpressionNonTerminator ::
SourceCharacter but not LineTerminator
LineTerminator ::
<LF>
<CR>
<LS>
<PS>
description: >
A regular expression may not contain a <LS> as a SourceCharacter
negative:
phase: parse
type: SyntaxError
--- |
649 |
regexp-source-char-no-paragraph-separator.js |
---
esid: prod-RegularExpressionNonTerminator
info: |
RegularExpressionBody ::
RegularExpressionFirstChar RegularExpressionChars
RegularExpressionChars ::
[empty]
RegularExpressionChars RegularExpressionChar
RegularExpressionFirstChar ::
RegularExpressionNonTerminator but not one of * or \ or / or [
RegularExpressionNonTerminator ::
SourceCharacter but not LineTerminator
description: >
A regular expression may not contain a <PS> as a SourceCharacter
negative:
phase: parse
type: SyntaxError
--- |
785 |
S7.8.5_A1.1_T1.js |
---
info: |
RegularExpressionFirstChar :: NonTerminator but not * or \ or /,
RegularExpressionChars :: [empty], RegularExpressionFlags :: [empty]
es5id: 7.8.5_A1.1_T1
description: Without eval
--- |
761 |
S7.8.5_A1.1_T2.js |
---
info: |
RegularExpressionFirstChar :: NonTerminator but not * or \ or /,
RegularExpressionChars :: [empty], RegularExpressionFlags :: [empty]
es5id: 7.8.5_A1.1_T2
description: Complex test with eval, using syntax pattern
--- |
1166 |
S7.8.5_A1.2_T1.js |
---
esid: prod-RegularExpressionFirstChar
info: |
RegularExpressionChars ::
[empty]
RegularExpressionCharsRegularExpressionChar
RegularExpressionFirstChar ::
RegularExpressionNonTerminator but not one of * or \ or / or [
description: >
The first character of a regular expression may not be "*"
negative:
phase: parse
type: SyntaxError
--- |
556 |
S7.8.5_A1.2_T2.js |
---
esid: sec-literals-regular-expression-literals
info: |
RegularExpressionBody ::
RegularExpressionFirstChar RegularExpressionChars
RegularExpressionChars ::
[empty]
RegularExpressionChars RegularExpressionChar
RegularExpressionFirstChar ::
RegularExpressionNonTerminator but not one of * or \ or / or [
description: >
The first character of a regular expression may not be "\"
negative:
phase: parse
type: SyntaxError
--- |
648 |
S7.8.5_A1.2_T3.js |
---
esid: sec-literals-regular-expression-literals
info: |
RegularExpressionBody ::
RegularExpressionFirstChar RegularExpressionChars
RegularExpressionChars ::
[empty]
RegularExpressionChars RegularExpressionChar
RegularExpressionFirstChar ::
RegularExpressionNonTerminator but not one of * or \ or / or [
description: >
The first character of a regular expression may not be "/"
negative:
phase: parse
type: SyntaxError
--- |
657 |
S7.8.5_A1.2_T4.js |
---
esid: sec-literals-regular-expression-literals
info: |
RegularExpressionLiteral::
/ RegularExpressionBody / RegularExpressionFlags
RegularExpressionBody ::
RegularExpressionFirstChar RegularExpressionChars
RegularExpressionChars::
[empty]
MemberExpression . IdentifierName
description: A regular expression may not be empty.
negative:
phase: parse
type: SyntaxError
--- |
602 |
S7.8.5_A1.3_T1.js |
---
esid: prod-RegularExpressionNonTerminator
info: |
RegularExpressionBody ::
RegularExpressionFirstChar RegularExpressionChars
RegularExpressionChars ::
[empty]
RegularExpressionChars RegularExpressionChar
RegularExpressionFirstChar ::
RegularExpressionNonTerminator but not one of * or \ or / or [
RegularExpressionNonTerminator ::
SourceCharacter but not LineTerminator
description: >
The first character of a regular expression may not be a <LF> (\u000A)
negative:
phase: parse
type: SyntaxError
--- |
735 |
S7.8.5_A1.3_T2.js |
---
esid: prod-RegularExpressionNonTerminator
info: |
RegularExpressionBody ::
RegularExpressionFirstChar RegularExpressionChars
RegularExpressionChars ::
[empty]
RegularExpressionChars RegularExpressionChar
RegularExpressionFirstChar ::
RegularExpressionNonTerminator but not one of * or \ or / or [
RegularExpressionNonTerminator ::
SourceCharacter but not LineTerminator
description: >
The first character of a regular expression may not be a <LF> (\u000A), evaluated
--- |
1012 |
S7.8.5_A1.3_T3.js |
---
esid: prod-RegularExpressionNonTerminator
info: |
RegularExpressionBody ::
RegularExpressionFirstChar RegularExpressionChars
RegularExpressionChars ::
[empty]
RegularExpressionChars RegularExpressionChar
RegularExpressionFirstChar ::
RegularExpressionNonTerminator but not one of * or \ or / or [
RegularExpressionNonTerminator ::
SourceCharacter but not LineTerminator
description: >
The first character of a regular expression may not be a <CR>, (\u000D)
negative:
phase: parse
type: SyntaxError
--- |
736 |
S7.8.5_A1.3_T4.js |
---
esid: prod-RegularExpressionNonTerminator
info: |
RegularExpressionBody ::
RegularExpressionFirstChar RegularExpressionChars
RegularExpressionChars ::
[empty]
RegularExpressionChars RegularExpressionChar
RegularExpressionFirstChar ::
RegularExpressionNonTerminator but not one of * or \ or / or [
RegularExpressionNonTerminator ::
SourceCharacter but not LineTerminator
description: >
The first character of a regular expression may not be a <CR>, (\u000D), evaluated
--- |
1025 |
S7.8.5_A1.3_T5.js |
---
esid: prod-RegularExpressionNonTerminator
info: |
RegularExpressionBody ::
RegularExpressionFirstChar RegularExpressionChars
RegularExpressionChars ::
[empty]
RegularExpressionChars RegularExpressionChar
RegularExpressionFirstChar ::
RegularExpressionNonTerminator but not one of * or \ or / or [
RegularExpressionNonTerminator ::
SourceCharacter but not LineTerminator
description: >
The first character of a regular expression may not be a <LS>, (\u2028), evaluated
--- |
1024 |
S7.8.5_A1.3_T6.js |
---
esid: prod-RegularExpressionNonTerminator
info: |
RegularExpressionBody ::
RegularExpressionFirstChar RegularExpressionChars
RegularExpressionChars ::
[empty]
RegularExpressionChars RegularExpressionChar
RegularExpressionFirstChar ::
RegularExpressionNonTerminator but not one of * or \ or / or [
RegularExpressionNonTerminator ::
SourceCharacter but not LineTerminator
description: >
The first character of a regular expression may not be a <LS>, (\u2028), evaluated
--- |
1033 |
S7.8.5_A1.4_T1.js |
---
info: |
RegularExpressionFirstChar :: BackslashSequence :: \NonTerminator,
RegularExpressionChars :: [empty], RegularExpressionFlags :: [empty]
es5id: 7.8.5_A1.4_T1
description: Check similar to (/\;/.source === "\\;")
--- |
556 |
S7.8.5_A1.4_T2.js |
---
info: |
RegularExpressionFirstChar :: BackslashSequence :: \NonTerminator,
RegularExpressionChars :: [empty], RegularExpressionFlags :: [empty]
es5id: 7.8.5_A1.4_T2
description: Complex test with eval, using syntax pattern
--- |
1612 |
S7.8.5_A1.5_T1.js |
---
esid: prod-RegularExpressionBackslashSequence
info: |
RegularExpressionBackslashSequence ::
\ RegularExpressionNonTerminator
RegularExpressionNonTerminator ::
SourceCharacter but not LineTerminator
description: >
A RegularExpressionBackslashSequence may not contain a <LF>
negative:
phase: parse
type: SyntaxError
--- |
534 |
S7.8.5_A1.5_T2.js |
---
esid: prod-RegularExpressionBackslashSequence
info: |
RegularExpressionBackslashSequence ::
\ RegularExpressionNonTerminator
RegularExpressionNonTerminator ::
SourceCharacter but not LineTerminator
description: >
A RegularExpressionBackslashSequence may not contain a <LF>, evaluated
--- |
860 |
S7.8.5_A1.5_T3.js |
---
esid: prod-RegularExpressionBackslashSequence
info: |
RegularExpressionBackslashSequence ::
\ RegularExpressionNonTerminator
RegularExpressionNonTerminator ::
SourceCharacter but not LineTerminator
description: >
A RegularExpressionBackslashSequence may not contain a <CR>
negative:
phase: parse
type: SyntaxError
--- |
533 |
S7.8.5_A1.5_T4.js |
---
esid: prod-RegularExpressionBackslashSequence
info: |
RegularExpressionBackslashSequence ::
\ RegularExpressionNonTerminator
RegularExpressionNonTerminator ::
SourceCharacter but not LineTerminator
description: >
A RegularExpressionBackslashSequence may not contain a <CR>, evaluated
--- |
871 |
S7.8.5_A1.5_T5.js |
---
esid: prod-RegularExpressionNonTerminator
info: |
RegularExpressionBody ::
RegularExpressionFirstChar RegularExpressionChars
RegularExpressionChars ::
[empty]
RegularExpressionChars RegularExpressionChar
RegularExpressionFirstChar ::
RegularExpressionNonTerminator but not one of * or \ or / or [
RegularExpressionNonTerminator ::
SourceCharacter but not LineTerminator
description: >
The first character of a regular expression may not be a <LS>, (\u2028), evaluated
--- |
1073 |
S7.8.5_A1.5_T6.js |
---
esid: prod-RegularExpressionNonTerminator
info: |
RegularExpressionBody ::
RegularExpressionFirstChar RegularExpressionChars
RegularExpressionChars ::
[empty]
RegularExpressionChars RegularExpressionChar
RegularExpressionFirstChar ::
RegularExpressionNonTerminator but not one of * or \ or / or [
RegularExpressionNonTerminator ::
SourceCharacter but not LineTerminator
description: >
The first character of a regular expression may not be a <PS>, (\u2029), evaluated
--- |
1083 |
S7.8.5_A2.1_T1.js |
---
info: |
RegularExpressionChar :: NonTerminator but not \ or /,
RegularExpressionFlags :: [empty]
es5id: 7.8.5_A2.1_T1
description: Without eval
--- |
740 |
S7.8.5_A2.1_T2.js |
---
info: |
RegularExpressionChar :: NonTerminator but not \ or /,
RegularExpressionFlags :: [empty]
es5id: 7.8.5_A2.1_T2
description: Complex test with eval, using syntax pattern
--- |
1130 |
S7.8.5_A2.2_T1.js |
---
esid: prod-RegularExpressionChar
info: |
RegularExpressionChar ::
RegularExpressionNonTerminator but not one of \ or / or [
RegularExpressionNonTerminator ::
SourceCharacter but not LineTerminator
description: >
A regular express may not contain a "\" as a SourceCharacter
negative:
phase: parse
type: SyntaxError
--- |
536 |
S7.8.5_A2.2_T2.js |
---
esid: prod-RegularExpressionChar
info: |
RegularExpressionChar ::
RegularExpressionNonTerminator but not one of \ or / or [
RegularExpressionNonTerminator ::
SourceCharacter but not LineTerminator
description: >
A regular expression may not contain a "/" as a SourceCharacter
negative:
phase: parse
type: SyntaxError
--- |
547 |
S7.8.5_A2.3_T1.js |
---
esid: sec-literals-regular-expression-literals
info: |
RegularExpressionChar ::
RegularExpressionBackslashSequence
RegularExpressionBackslashSequence ::
\ RegularExpressionNonTerminator
RegularExpressionNonTerminator ::
SourceCharacter but not LineTerminator
LineTerminator ::
<LF>
<CR>
<LS>
<PS>
description: >
A regular expression may not contain a <LF> as a SourceCharacter
negative:
phase: parse
type: SyntaxError
--- |
666 |
S7.8.5_A2.3_T2.js |
---
esid: sec-literals-regular-expression-literals
info: |
RegularExpressionChar ::
RegularExpressionBackslashSequence
RegularExpressionBackslashSequence ::
\ RegularExpressionNonTerminator
RegularExpressionNonTerminator ::
SourceCharacter but not LineTerminator
LineTerminator ::
<LF>
<CR>
<LS>
<PS>
description: >
A regular expression may not contain a <LF> as a SourceCharacter, evaluated
--- |
933 |
S7.8.5_A2.3_T3.js |
---
esid: sec-literals-regular-expression-literals
info: |
RegularExpressionChar ::
RegularExpressionBackslashSequence
RegularExpressionBackslashSequence ::
\ RegularExpressionNonTerminator
RegularExpressionNonTerminator ::
SourceCharacter but not LineTerminator
LineTerminator ::
<LF>
<CR>
<LS>
<PS>
description: >
A regular expression may not contain a <CR> as a SourceCharacter
negative:
phase: parse
type: SyntaxError
--- |
667 |
S7.8.5_A2.3_T4.js |
---
esid: sec-literals-regular-expression-literals
info: |
RegularExpressionChar ::
RegularExpressionBackslashSequence
RegularExpressionBackslashSequence ::
\ RegularExpressionNonTerminator
RegularExpressionNonTerminator ::
SourceCharacter but not LineTerminator
LineTerminator ::
<LF>
<CR>
<LS>
<PS>
description: >
A regular expression may not contain a <CR> as a SourceCharacter, evaluated
--- |
944 |
S7.8.5_A2.3_T5.js |
---
esid: prod-RegularExpressionNonTerminator
info: |
RegularExpressionBody ::
RegularExpressionFirstChar RegularExpressionChars
RegularExpressionChars ::
[empty]
RegularExpressionChars RegularExpressionChar
RegularExpressionFirstChar ::
RegularExpressionNonTerminator but not one of * or \ or / or [
RegularExpressionNonTerminator ::
SourceCharacter but not LineTerminator
description: >
A regular expression may not contain a <LS> as a SourceCharacter, evaluated
--- |
1009 |
S7.8.5_A2.3_T6.js |
---
esid: prod-RegularExpressionNonTerminator
info: |
RegularExpressionBody ::
RegularExpressionFirstChar RegularExpressionChars
RegularExpressionChars ::
[empty]
RegularExpressionChars RegularExpressionChar
RegularExpressionFirstChar ::
RegularExpressionNonTerminator but not one of * or \ or / or [
RegularExpressionNonTerminator ::
SourceCharacter but not LineTerminator
description: >
A regular expression may not contain a <PS> as a SourceCharacter, evaluated
--- |
1009 |
S7.8.5_A2.4_T1.js |
---
info: |
RegularExpressionChar :: BackslashSequence :: \NonTerminator,
RegularExpressionFlags :: [empty]
es5id: 7.8.5_A2.4_T1
description: Check similar to (/,\;/.source === ",\\;")
--- |
524 |
S7.8.5_A2.4_T2.js |
---
info: |
RegularExpressionChar :: BackslashSequence :: \NonTerminator,
RegularExpressionFlags :: [empty]
es5id: 7.8.5_A2.4_T2
description: Complex test with eval, using syntax pattern
--- |
1573 |
S7.8.5_A2.5_T1.js |
---
esid: prod-RegularExpressionBackslashSequence
info: |
RegularExpressionBackslashSequence ::
\ RegularExpressionNonTerminator
RegularExpressionNonTerminator ::
SourceCharacter but not LineTerminator
LineTerminator ::
<LF>
<CR>
<LS>
<PS>
description: >
A regular expression may not contain a <LF> as a SourceCharacter
negative:
phase: parse
type: SyntaxError
--- |
598 |
S7.8.5_A2.5_T2.js |
---
esid: prod-RegularExpressionBackslashSequence
info: |
RegularExpressionBackslashSequence ::
\ RegularExpressionNonTerminator
RegularExpressionNonTerminator ::
SourceCharacter but not LineTerminator
LineTerminator ::
<LF>
<CR>
<LS>
<PS>
description: >
A regular expression may not contain a <LF> as a SourceCharacter, evaluated
--- |
915 |
S7.8.5_A2.5_T3.js |
---
esid: prod-RegularExpressionBackslashSequence
info: |
RegularExpressionBackslashSequence ::
\ RegularExpressionNonTerminator
RegularExpressionNonTerminator ::
SourceCharacter but not LineTerminator
LineTerminator ::
<LF>
<CR>
<LS>
<PS>
description: >
A regular expression may not contain a <CR> as a SourceCharacter
negative:
phase: parse
type: SyntaxError
--- |
598 |
S7.8.5_A2.5_T4.js |
---
esid: prod-RegularExpressionBackslashSequence
info: |
RegularExpressionBackslashSequence ::
\ RegularExpressionNonTerminator
RegularExpressionNonTerminator ::
SourceCharacter but not LineTerminator
LineTerminator ::
<LF>
<CR>
<LS>
<PS>
description: >
A regular expression may not contain a <LF> as a SourceCharacter, evaluated
--- |
927 |
S7.8.5_A2.5_T5.js |
---
esid: prod-RegularExpressionBackslashSequence
info: |
RegularExpressionBackslashSequence ::
\ RegularExpressionNonTerminator
RegularExpressionNonTerminator ::
SourceCharacter but not LineTerminator
LineTerminator ::
<LF>
<CR>
<LS>
<PS>
description: >
A regular expression may not contain a <LS> as a SourceCharacter, evaluated
--- |
925 |
S7.8.5_A2.5_T6.js |
---
esid: prod-RegularExpressionBackslashSequence
info: |
RegularExpressionBackslashSequence ::
\ RegularExpressionNonTerminator
RegularExpressionNonTerminator ::
SourceCharacter but not LineTerminator
LineTerminator ::
<LF>
<CR>
<LS>
<PS>
description: >
A regular expression may not contain a <PS> as a SourceCharacter, evaluated
--- |
935 |
S7.8.5_A3.1_T1.js |
---
info: "RegularExpressionFlags :: IdentifierPart"
es5id: 7.8.5_A3.1_T1
description: "IdentifierPart :: g"
--- |
768 |
S7.8.5_A3.1_T2.js |
---
info: "RegularExpressionFlags :: IdentifierPart"
es5id: 7.8.5_A3.1_T2
description: "IdentifierPart :: i"
--- |
768 |
S7.8.5_A3.1_T3.js |
---
info: "RegularExpressionFlags :: IdentifierPart"
es5id: 7.8.5_A3.1_T3
description: "IdentifierPart :: m"
--- |
768 |
S7.8.5_A3.1_T4.js |
---
info: "RegularExpressionFlags :: IdentifierPart"
es5id: 7.8.5_A3.1_T4
description: "IdentifierPart :: gi"
--- |
768 |
S7.8.5_A3.1_T5.js |
---
info: "RegularExpressionFlags :: IdentifierPart"
es5id: 7.8.5_A3.1_T5
description: "IdentifierPart :: mg"
--- |
768 |
S7.8.5_A3.1_T6.js |
---
info: "RegularExpressionFlags :: IdentifierPart"
es5id: 7.8.5_A3.1_T6
description: "IdentifierPart :: mig"
--- |
768 |
S7.8.5_A4.1.js |
---
info: |
A regular expression literal is an input element that is converted to
a RegExp object when it is scanned
es5id: 7.8.5_A4.1
description: "Check ((/(?:)/ instanceof RegExp) === true)"
--- |
531 |
S7.8.5_A4.2.js |
---
info: |
Two regular expression literals in a program evaluate to
regular expression objects that never compare as === to each other even
if the two literals' contents are identical
es5id: 7.8.5_A4.2
description: Check equality two regular expression literals
--- |
597 |
shell.js |
|
0 |
u-astral-char-class-invert.js |
---
esid: sec-atom
description: >
Literal astral symbols within inverted CharacterClass.
info: |
The production Atom :: CharacterClass evaluates as follows:
1. Evaluate CharacterClass to obtain a CharSet A and a Boolean invert.
2. Call CharacterSetMatcher(A, invert, direction) and return its Matcher result.
Runtime Semantics: CharacterSetMatcher ( A, invert, direction )
1. Return an internal Matcher closure that takes two arguments, a State x and
a Continuation c, and performs the following steps:
[...]
f. Let cc be Canonicalize(ch).
g. If invert is false, then
[...]
h. Else,
i. Assert: invert is true.
ii. If there exists a member a of set A such that Canonicalize(a) is cc,
return failure.
--- |
1122 |
u-astral.js |
---
description: Literal astral symbols within a pattern
es6id: 21.2.2.8.2
info: |
21.2.2.2 Pattern
The production Pattern :: Disjunction evaluates as follows:
1. Evaluate Disjunction to obtain a Matcher m.
2. Return an internal closure that takes two arguments, a String str
and an integer index, and performs the following steps:
1. If Unicode is true, let Input be a List consisting of the
sequence of code points of str interpreted as a UTF-16 encoded
(6.1.4) Unicode string. Otherwise, let Input be a List consisting
of the sequence of code units that are the elements of str. Input
will be used throughout the algorithms in 21.2.2. Each element of
Input is considered to be a character.
--- |
1914 |
u-case-mapping.js |
---
description: Case mapping of astral symbols
es6id: 21.2.2.8.2
info: |
21.2.2.8.2 Runtime Semantics: Canonicalize ( ch )
The abstract operation Canonicalize takes a character parameter ch and
performs the following steps:
1. If IgnoreCase is false, return ch.
2. If Unicode is true,
a. If the file CaseFolding.txt of the Unicode Character Database
provides a simple or common case folding mapping for ch, return
the result of applying that mapping to ch.
b. Else, return ch.
--- |
1401 |
u-invalid-class-escape.js |
---
esid: sec-patterns
es6id: 21.2.1
description: >
ClassEscape does not recognize "class control" patterns
info: |
ClassEscape[U] ::
b
[+U] -
CharacterClassEscape
CharacterEscape[?U]
The `u` flag precludes the Annex B extension that enables this pattern.
negative:
phase: parse
type: SyntaxError
--- |
551 |
u-invalid-extended-pattern-char.js |
---
esid: sec-patterns
es6id: 21.2.1
description: Quantifiable assertions disallowed with `u` flag
info: |
The `u` flag precludes the use of extended pattern characters irrespective
of the presence of Annex B extensions.
Term[U] ::
[~U] ExtendedAtom
negative:
phase: parse
type: SyntaxError
--- |
520 |
u-invalid-identity-escape.js |
---
esid: sec-patterns
es6id: 21.2.1
description: Support for UnicodeIDContinue in IdentityEscape
info: |
IdentityEscape[U] ::
[+U] SyntaxCharacter
[+U] /
[~U] SourceCharacter but not UnicodeIDContinue
The `u` flag precludes the use of characters in UnicodeIDContinue
irrespective of the presence of Annex B extensions.
negative:
phase: parse
type: SyntaxError
--- |
607 |
u-invalid-legacy-octal-escape.js |
---
esid: sec-patterns
es6id: 21.2.1
description: Legacy Octal Escape Sequence not supported with `u` flag
info: |
The `u` flag precludes the use of LegacyOctalEscapeSequence irrespective
of the presence of Annex B extensions.
CharacterEscape [U] ::
ControlEscape
c ControlLetter
0[lookahead ∉ DecimalDigit]
HexEscapeSequence
RegExpUnicodeEscapeSequence[?U]
IdentityEscape[?U]
negative:
phase: parse
type: SyntaxError
--- |
689 |
u-invalid-non-empty-class-ranges-no-dash-a.js |
---
esid: sec-pattern-semantics
es6id: 21.2.2
description: >
NonEmptyClassRangesNoDash production cannot specify a multi-character set
("A" parameter)
info: |
The production
NonemptyClassRangesNoDash::ClassAtomNoDash-ClassAtomClassRanges evaluates
as follows:
1. Evaluate ClassAtomNoDash to obtain a CharSet A.
2. Evaluate ClassAtom to obtain a CharSet B.
3. Evaluate ClassRanges to obtain a CharSet C.
4. Call CharacterRange(A, B) and let D be the resulting CharSet.
21.2.2.15.1 Runtime Semantics: CharacterRange Abstract Operation
1. If A does not contain exactly one character or B does not contain
exactly one character, throw a SyntaxError exception.
The `u` flag precludes the Annex B extension that enables this pattern.
negative:
phase: parse
type: SyntaxError
--- |
1040 |
u-invalid-non-empty-class-ranges-no-dash-ab.js |
---
esid: sec-pattern-semantics
es6id: 21.2.2
description: >
NonEmptyClassRangesNoDash production cannot specify a multi-character set
(both "A" and "B" parameters)
info: |
The production
NonemptyClassRangesNoDash::ClassAtomNoDash-ClassAtomClassRanges evaluates
as follows:
1. Evaluate ClassAtomNoDash to obtain a CharSet A.
2. Evaluate ClassAtom to obtain a CharSet B.
3. Evaluate ClassRanges to obtain a CharSet C.
4. Call CharacterRange(A, B) and let D be the resulting CharSet.
21.2.2.15.1 Runtime Semantics: CharacterRange Abstract Operation
1. If A does not contain exactly one character or B does not contain
exactly one character, throw a SyntaxError exception.
The `u` flag precludes the Annex B extension that enables this pattern.
negative:
phase: parse
type: SyntaxError
--- |
1055 |
u-invalid-non-empty-class-ranges-no-dash-b.js |
---
esid: sec-pattern-semantics
es6id: 21.2.2
description: >
NonEmptyClassRangesNoDash production cannot specify a multi-character set
("B" parameter)
info: |
The production
NonemptyClassRangesNoDash::ClassAtomNoDash-ClassAtomClassRanges evaluates
as follows:
1. Evaluate ClassAtomNoDash to obtain a CharSet A.
2. Evaluate ClassAtom to obtain a CharSet B.
3. Evaluate ClassRanges to obtain a CharSet C.
4. Call CharacterRange(A, B) and let D be the resulting CharSet.
21.2.2.15.1 Runtime Semantics: CharacterRange Abstract Operation
1. If A does not contain exactly one character or B does not contain
exactly one character, throw a SyntaxError exception.
The `u` flag precludes the Annex B extension that enables this pattern.
negative:
phase: parse
type: SyntaxError
--- |
1040 |
u-invalid-non-empty-class-ranges.js |
---
esid: sec-pattern-semantics
es6id: 21.2.2
description: >
NonEmptyClassRangesNoDash production cannot specify a multi-character set
info: |
The production
NonemptyClassRangesNoDash::ClassAtomNoDash-ClassAtomClassRanges evaluates
as follows:
1. Evaluate ClassAtomNoDash to obtain a CharSet A.
2. Evaluate ClassAtom to obtain a CharSet B.
3. Evaluate ClassRanges to obtain a CharSet C.
4. Call CharacterRange(A, B) and let D be the resulting CharSet.
21.2.2.15.1 Runtime Semantics: CharacterRange Abstract Operation
1. If A does not contain exactly one character or B does not contain
exactly one character, throw a SyntaxError exception.
The `u` flag precludes the Annex B extension that enables this pattern.
negative:
phase: parse
type: SyntaxError
--- |
1020 |
u-invalid-oob-decimal-escape.js |
---
esid: sec-pattern-semantics
es6id: 21.2.2
description: Out-of-bounds decimal escapes
info: |
1. Evaluate DecimalEscape to obtain an integer n.
2. If n>NcapturingParens, throw a SyntaxError exception.
When the "unicode" flag is set, this algorithm is honored irrespective of
the presence of Annex B extensions.
negative:
phase: parse
type: SyntaxError
--- |
580 |
u-invalid-optional-lookahead.js |
---
esid: sec-regular-expressions-patterns
es6id: B.1.4
description: Quantifiable assertions disallowed with `u` flag
info: |
The `u` flag precludes quantifiable assertions (even when Annex B is
honored)
Term[U] ::
[~U] QuantifiableAssertion Quantifier
negative:
phase: parse
type: SyntaxError
--- |
529 |
u-invalid-optional-lookbehind.js |
---
esid: sec-regular-expressions-patterns
description: Lookbehinds are not treated as a QuantifiableAssertion
info: |
Term[U] ::
[~U] QuantifiableAssertion Quantifier
QuantifiableAssertion[N]::
( ? = Disjunction[~U, ?N] )
( ? ! Disjunction[~U, ?N] )
negative:
phase: parse
type: SyntaxError
--- |
529 |
u-invalid-optional-negative-lookahead.js |
---
esid: sec-regular-expressions-patterns
es6id: B.1.4
description: Quantifiable assertions disallowed with `u` flag
info: |
The `u` flag precludes quantifiable assertions (even when Annex B is
honored)
Term[U] ::
[~U] QuantifiableAssertion Quantifier
negative:
phase: parse
type: SyntaxError
--- |
529 |
u-invalid-optional-negative-lookbehind.js |
---
esid: sec-regular-expressions-patterns
description: Lookbehinds are not treated as a QuantifiableAssertion
info: |
Term[U] ::
[~U] QuantifiableAssertion Quantifier
QuantifiableAssertion[N]::
( ? = Disjunction[~U, ?N] )
( ? ! Disjunction[~U, ?N] )
negative:
phase: parse
type: SyntaxError
--- |
529 |
u-invalid-range-lookahead.js |
---
esid: sec-regular-expressions-patterns
es6id: B.1.4
description: Quantifiable assertions disallowed with `u` flag
info: |
The `u` flag precludes quantifiable assertions (even when Annex B is
honored)
Term[U] ::
[~U] QuantifiableAssertion Quantifier
negative:
phase: parse
type: SyntaxError
--- |
533 |
u-invalid-range-lookbehind.js |
---
esid: sec-regular-expressions-patterns
description: Lookbehinds are not treated as a QuantifiableAssertion
info: |
Term[U] ::
[~U] QuantifiableAssertion Quantifier
QuantifiableAssertion[N]::
( ? = Disjunction[~U, ?N] )
( ? ! Disjunction[~U, ?N] )
negative:
phase: parse
type: SyntaxError
--- |
533 |
u-invalid-range-negative-lookahead.js |
---
esid: sec-regular-expressions-patterns
es6id: B.1.4
description: Quantifiable assertions disallowed with `u` flag
info: |
The `u` flag precludes quantifiable assertions (even when Annex B is
honored)
Term[U] ::
[~U] QuantifiableAssertion Quantifier
negative:
phase: parse
type: SyntaxError
--- |
533 |
u-invalid-range-negative-lookbehind.js |
---
esid: sec-regular-expressions-patterns
description: Lookbehinds are not treated as a QuantifiableAssertion
info: |
Term[U] ::
[~U] QuantifiableAssertion Quantifier
QuantifiableAssertion[N]::
( ? = Disjunction[~U, ?N] )
( ? ! Disjunction[~U, ?N] )
negative:
phase: parse
type: SyntaxError
--- |
533 |
u-null-character-escape.js |
---
esid: prod-CharacterEscape
description: >
Null character escape is permitted in Unicode patterns.
info: |
CharacterEscape[U] ::
ControlEscape
c ControlLetter
0 [lookahead ∉ DecimalDigit]
HexEscapeSequence
RegExpUnicodeEscapeSequence[?U]
IdentityEscape[?U]
DecimalDigit :: one of
0 1 2 3 4 5 6 7 8 9
--- |
735 |
u-surrogate-pairs-atom-char-class.js |
---
esid: sec-atom
es6id: 21.2.2.8
description: >
Support for surrogate pairs within patterns match by the CharacterClass Atom
info: |
The production Atom :: CharacterClass evaluates as follows:
1. Evaluate CharacterClass to obtain a CharSet A and a Boolean invert.
2. Call CharacterSetMatcher(A, invert) and return its Matcher result.
Runtime Semantics: CharacterSetMatcher Abstract Operation
1. Return an internal Matcher closure that takes two arguments, a State x and
a Continuation c, and performs the following steps when evaluated:
[...]
d. Let cc be Canonicalize(ch).
[...]
--- |
1063 |
u-surrogate-pairs-atom-dot.js |
---
esid: sec-atom
es6id: 21.2.2.8
description: >
Support for surrogate pairs within patterns match by the "period" Atom
info: |
The production Atom :: . evaluates as follows:
1. Let A be the set of all characters except LineTerminator.
2. Call CharacterSetMatcher(A, false) and return its Matcher result.
Runtime Semantics: CharacterSetMatcher Abstract Operation
1. Return an internal Matcher closure that takes two arguments, a State x and
a Continuation c, and performs the following steps when evaluated:
[...]
d. Let cc be Canonicalize(ch).
[...]
--- |
794 |
u-surrogate-pairs-atom-escape-char-class.js |
---
esid: sec-atomescape
es6id: 21.2.2.9
description: >
Support for surrogate pairs within patterns match by the CharacterClassEscape
AtomEscape
info: |
The production AtomEscape :: CharacterClassEscape evaluates as follows:
1. Evaluate CharacterClassEscape to obtain a CharSet A.
2. Call CharacterSetMatcher(A, false) and return its Matcher result.
Runtime Semantics: CharacterSetMatcher Abstract Operation
1. Return an internal Matcher closure that takes two arguments, a State x and
a Continuation c, and performs the following steps when evaluated:
[...]
d. Let cc be Canonicalize(ch).
[...]
--- |
841 |
u-surrogate-pairs-atom-escape-decimal.js |
---
esid: sec-atomescape
es6id: 21.2.2.9
description: >
Support for surrogate pairs within patterns match by the DecimalEscape
AtomEscape
info: |
The production AtomEscape :: DecimalEscape evaluates as follows:
[...]
3. Return an internal Matcher closure that takes two arguments, a State x and
a Continuation c, and performs the following steps:
[...]
h. If there exists an integer i between 0 (inclusive) and len (exclusive)
such that Canonicalize(s[i]) is not the same character value as
Canonicalize(Input[e+i]), return failure.
Runtime Semantics: CharacterSetMatcher Abstract Operation
1. Return an internal Matcher closure that takes two arguments, a State x and
a Continuation c, and performs the following steps when evaluated:
[...]
d. Let cc be Canonicalize(ch).
[...]
--- |
1081 |
u-surrogate-pairs.js |
---
description: Out-of-range value of hexadecimal digits in UnicodeEscapeSequence
es6id: 21.2.2.10
info: |
21.2.2.10 CharacterEscape
The production RegExpUnicodeEscapeSequence :: u LeadSurrogate \u
TrailSurrogate evaluates as follows:
1. Let lead be the result of evaluating LeadSurrogate.
2. Let trail be the result of evaluating TrailSurrogate.
3. Let cp be UTF16Decode(lead, trail).
4. Return the character whose character value is cp.
--- |
706 |
u-unicode-esc-bounds.js |
---
description: Out-of-range value of hexadecimal digits in UnicodeEscapeSequence
es6id: 21.2.1.1
info: |
21.2.1.1 Static Semantics: Early Errors
RegExpUnicodeEscapeSequence :: u{ HexDigits }
- It is a Syntax Error if the MV of HexDigits > 1114111.
negative:
phase: parse
type: SyntaxError
--- |
526 |
u-unicode-esc-non-hex.js |
---
description: >
Non-hexadecimal value within the delimiters of a UnicodeEscapeSequence
es6id: 21.2.1
negative:
phase: parse
type: SyntaxError
--- |
362 |
u-unicode-esc.js |
---
description: Unicode escape interpreted as the Mathematical Value of HexDigits
es6id: 21.2.2.10
info: |
21.2.2.10 CharacterEscape
The production RegExpUnicodeEscapeSequence :: u{ HexDigits } evaluates as
follows:
1. Return the character whose code is the MV of HexDigits.
--- |
822 |
unicode-escape-nls-err.js |
---
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
--- |
1542 |
y-assertion-start.js |
---
esid: sec-assertion
es6id: 21.2.2.6
description: The `y` flag has no effect on the `^` assertion
info: |
Even when the y flag is used with a pattern, ^ always matches only at the
beginning of Input, or (if Multiline is true) at the beginning of a line.
--- |
1095 |