a[b-d] aac y $& ac
a[-b] a- y $& a-
a[b-] a- y $& a-
-a[b-a] - c - /a[b-a]/: invalid [] range "b-a" in regexp
-a[]b - c - /a[]b/: unmatched [] in regexp
-a[ - c - /a[/: unmatched [] in regexp
+a[b-a] - c - Invalid [] range "b-a" at <HERE< mark in regex m/a[b-a <<<HERE<<< ]/
+a[]b - c - Unmatched [ at <HERE< mark in regex m/a[ <<<HERE<<< ]b/ at (eval 96) line 1, <TESTS> line 49.
+a[ - c - Unmatched [ at <HERE< mark in regex m/a[ <<<HERE<<< / at (eval 97) line 1, <TESTS> line 50.
a] a] y $& a]
a[]]b a]b y $& a]b
a[^bc]d aed y $& aed
ab|cd abc y $& ab
ab|cd abcd y $& ab
()ef def y $&-$1 ef-
-*a - c - Quantifier follows nothing in regexp
-(*)b - c - Quantifier follows nothing in regexp
+*a - c - Quantifier follows nothing at <HERE< mark in regex m/* <<<HERE<<< a/ at (eval 192) line 1, <TESTS> line 98.
+(*)b - c - Quantifier follows nothing at <HERE< mark in regex m/(* <<<HERE<<< )b/ at (eval 193) line 1, <TESTS> line 99.
$b b n - -
a\ - c - Search pattern not terminated
a\(b a(b y $&-$1 a(b-
a\(*b ab y $& ab
a\(*b a((b y $& a((b
a\\b a\b y $& a\b
-abc) - c - /abc)/: unmatched () in regexp
-(abc - c - /(abc/: unmatched () in regexp
+abc) - c - Unmatched ) at <HERE< mark in regex m/abc) <<<HERE<<< / at (eval 205) line 1, <TESTS> line 106.
+(abc - c - Unmatched ( at <HERE< mark in regex m/( <<<HERE<<< abc/ at (eval 206) line 1, <TESTS> line 107.
((a)) abc y $&-$1-$2 a-a-a
(a)b(c) abc y $&-$1-$2 abc-a-c
a+b+c aabbabc y $& abc
a{1,}b{1,}c aabbabc y $& abc
-a** - c - Nested quantifiers in regexp
+a** - c - Nested quantifiers at <HERE< mark in regex m/a** <<<HERE<<< / at (eval 215) line 1, <TESTS> line 112.
a.+?c abcabc y $& abc
(a+|b)* ab y $&-$1 ab-b
(a+|b){0,} ab y $&-$1 ab-b
(a+|b){1,} ab y $&-$1 ab-b
(a+|b)? ab y $&-$1 a-a
(a+|b){0,1} ab y $&-$1 a-a
-)( - c - /)(/: unmatched () in regexp
+)( - c - Unmatched ) at <HERE< mark in regex m/) <<<HERE<<< (/ at (eval 230) line 1, <TESTS> line 120.
[^ab]* cde y $& cde
abc n - -
a* y $&
'a[b-d]'i AAC y $& AC
'a[-b]'i A- y $& A-
'a[b-]'i A- y $& A-
-'a[b-a]'i - c - /a[b-a]/: invalid [] range "b-a" in regexp
-'a[]b'i - c - /a[]b/: unmatched [] in regexp
-'a['i - c - /a[/: unmatched [] in regexp
+'a[b-a]'i - c - Invalid [] range "b-a" at <HERE< mark in regex m/a[b-a <<<HERE<<< ]/
+'a[]b'i - c - Unmatched [ at <HERE< mark in regex m/a[ <<<HERE<<< ]b/ at (eval 431) line 1, <TESTS> line 222.
+'a['i - c - Unmatched [ at <HERE< mark in regex m/a[ <<<HERE<<< / at (eval 432) line 1, <TESTS> line 223.
'a]'i A] y $& A]
'a[]]b'i A]B y $& A]B
'a[^bc]d'i AED y $& AED
'ab|cd'i ABC y $& AB
'ab|cd'i ABCD y $& AB
'()ef'i DEF y $&-$1 EF-
-'*a'i - c - Quantifier follows nothing in regexp
-'(*)b'i - c - Quantifier follows nothing in regexp
+'*a'i - c - Quantifier follows nothing at <HERE< mark in regex m/* <<<HERE<<< a/ at (eval 455) line 1, <TESTS> line 235.
+'(*)b'i - c - Quantifier follows nothing at <HERE< mark in regex m/(* <<<HERE<<< )b/ at (eval 456) line 1, <TESTS> line 236.
'$b'i B n - -
'a\'i - c - Search pattern not terminated
'a\(b'i A(B y $&-$1 A(B-
'a\(*b'i AB y $& AB
'a\(*b'i A((B y $& A((B
'a\\b'i A\B y $& A\B
-'abc)'i - c - /abc)/: unmatched () in regexp
-'(abc'i - c - /(abc/: unmatched () in regexp
+'abc)'i - c - Unmatched ) at <HERE< mark in regex m/abc) <<<HERE<<< / at (eval 468) line 1, <TESTS> line 243.
+'(abc'i - c - Unmatched ( at <HERE< mark in regex m/( <<<HERE<<< abc/ at (eval 469) line 1, <TESTS> line 244.
'((a))'i ABC y $&-$1-$2 A-A-A
'(a)b(c)'i ABC y $&-$1-$2 ABC-A-C
'a+b+c'i AABBABC y $& ABC
'a{1,}b{1,}c'i AABBABC y $& ABC
-'a**'i - c - Nested quantifiers in regexp
+'a**'i - c - Nested quantifiers at <HERE< mark in regex m/a** <<<HERE<<< / at (eval 478) line 1, <TESTS> line 249.
'a.+?c'i ABCABC y $& ABC
'a.*?c'i ABCABC y $& ABC
'a.{0,5}?c'i ABCABC y $& ABC
'(a+|b)?'i AB y $&-$1 A-A
'(a+|b){0,1}'i AB y $&-$1 A-A
'(a+|b){0,1}?'i AB y $&-$1 -
-')('i - c - /)(/: unmatched () in regexp
+')('i - c - Unmatched ) at <HERE< mark in regex m/) <<<HERE<<< (/ at (eval 499) line 1, <TESTS> line 260.
'[^ab]*'i CDE y $& CDE
'abc'i n - -
'a*'i y $&
(?<!c)b cb n - -
(?<!c)b b y - -
(?<!c)b b y $& b
-(?<%)b - c - Sequence (?%...) not recognized
+(?<%)b - c - Sequence (?<%...) not recognized at <HERE< mark in regex m/(?<% <<<HERE<<< )b/
(?:..)*a aba y $& aba
(?:..)*?a aba y $& a
^(?:b|a(?=(.)))*\1 abc y $& ab
'(ab)\d\1'i ab4Ab y $1 ab
foo\w*\d{4}baz foobar1234baz y $& foobar1234baz
a(?{})b cabd y $& ab
-a(?{)b - c - /a(?{)b/: Sequence (?{...}) not terminated or not {}-balanced
-a(?{{})b - c - /a(?{{})b/: Sequence (?{...}) not terminated or not {}-balanced
-a(?{}})b - c - /a(?{}})b/: Sequence (?{...}) not terminated or not {}-balanced
-a(?{"{"})b - c - /a(?{"{"})b/: Sequence (?{...}) not terminated or not {}-balanced
+a(?{)b - c - Sequence (?{...}) not terminated or not {}-balanced at <HERE< mark in regex m/a(?{ <<<HERE<<< )b/ at (eval 780) line 1, <TESTS> line 400.
+a(?{{})b - c - Sequence (?{...}) not terminated or not {}-balanced at <HERE< mark in regex m/a(?{ <<<HERE<<< {})b/ at (eval 781) line 1, <TESTS> line 401.
+a(?{}})b - c -
+a(?{"{"})b - c - Sequence (?{...}) not terminated or not {}-balanced at <HERE< mark in regex m/a(?{ <<<HERE<<< "{"})b/ at (eval 783) line 1, <TESTS> line 403.
a(?{"\{"})b cabd y $& ab
a(?{"{"}})b - c - Unmatched right curly bracket
a(?{$bl="\{"}).b caxbd y $bl {
^(\(+)?blah(?(1)(\)))$ blah y ($2) ()
^(\(+)?blah(?(1)(\)))$ blah) n - -
^(\(+)?blah(?(1)(\)))$ (blah n - -
-(?(1?)a|b) a c - Switch (?(number? not recognized
+(?(1?)a|b) a c - Switch condition not recognized at <HERE< mark in regex m/(?(1? <<<HERE<<< )a|b)/ at (eval 868) line 1, <TESTS> line 444.
(?(1)a|b|c) a c - Switch (?(condition)... contains too many branches
(?(?{0})a|b) a n - -
(?(?{0})b|a) a y $& a
([[:]+) a:[b]: y $1 :[
([[=]+) a=[b]= y $1 =[
([[.]+) a.[b]. y $1 .[
-[a[:xyz: - c - /[a[:xyz:/: unmatched [] in regexp
-[a[:xyz:] - c - Character class [:xyz:] unknown
+[a[:xyz: - c - Unmatched [ at <HERE< mark in regex m/[ <<<HERE<<< a[:xyz:/ at (eval 950) line 1, <TESTS> line 476.
+[a[:xyz:] - c - POSIX class [:xyz:] unknown at <HERE< mark in regex m/[a[:xyz:] <<<HERE<<< /
[a[:]b[:c] abc y $& abc
-([a[:xyz:]b]+) pbaq c - Character class [:xyz:] unknown
+([a[:xyz:]b]+) pbaq c - POSIX class [:xyz:] unknown at <HERE< mark in regex m/([a[:xyz:] <<<HERE<<< b]+)/
[a[:]b[:c] abc y $& abc
([[:alpha:]]+) ABcd01Xy__-- ${nulnul}${ffff} y $1 ABcd
([[:alnum:]]+) ABcd01Xy__-- ${nulnul}${ffff} y $1 ABcd01Xy
([[:^word:]]+) ABcd01Xy__-- ${nulnul}${ffff} y $1 -- ${nulnul}${ffff}
([[:^upper:]]+) ABcd01Xy__-- ${nulnul}${ffff} y $1 cd01
([[:^xdigit:]]+) ABcd01Xy__-- ${nulnul}${ffff} y $1 Xy__-- ${nulnul}${ffff}
-[[:foo:]] - c - Character class [:foo:] unknown
-[[:^foo:]] - c - Character class [:^foo:] unknown
+[[:foo:]] - c - POSIX class [:foo:] unknown at <HERE< mark in regex m/[[:foo:] <<<HERE<<< ]/
+[[:^foo:]] - c - POSIX class [:^foo:] unknown at <HERE< mark in regex m/[[:^foo:] <<<HERE<<< ]/
((?>a+)b) aaab y $1 aaab
(?>(a+))b aaab y $1 aaa
((?>[^()]+)|\([^()]*\))+ ((abc(ade)ufh()()x y $& abc(ade)ufh()()x