Another ex-PVBM assert
[p5sagit/p5-mst-13.2.git] / t / op / re_tests
index aa07b56..87a3e50 100644 (file)
@@ -253,6 +253,14 @@ a[-]?c     ac      y       $&      ac
 ([a-c]*)\1     abcabc  y       $1      abc
 \1     -       c       -       Reference to nonexistent group
 \2     -       c       -       Reference to nonexistent group
+\g1    -       c       -       Reference to nonexistent group
+\g-1   -       c       -       Reference to nonexistent or unclosed group
+\g{1}  -       c       -       Reference to nonexistent group
+\g{-1} -       c       -       Reference to nonexistent or unclosed group
+\g0    -       c       -       Reference to invalid group 0
+\g-0   -       c       -       Reference to invalid group 0
+\g{0}  -       c       -       Reference to invalid group 0
+\g{-0} -       c       -       Reference to invalid group 0
 (a)|\1 a       y       -       -
 (a)|\1 x       n       -       -
 (a)|\2 -       c       -       Reference to nonexistent group
@@ -261,6 +269,8 @@ a[-]?c      ac      y       $&      ac
 ((\3|b)\2(a)x)+        aaxabxbaxbbx    n       -       -
 ((\3|b)\2(a)x)+        aaaxabaxbaaxbbax        y       $&-$1-$2-$3     bbax-bbax-b-a
 ((\3|b)\2(a)){2,}      bbaababbabaaaaabbaaaabba        y       $&-$1-$2-$3     bbaaaabba-bba-b-a
+#Bug #3589 - up to perl-5.6.0 matches incorrectly, from 5.6.1 not anymore
+^((.)?a\2)+$   babadad n       -       -
 (a)|(b)        b       y       $-[0]   0
 (a)|(b)        b       y       $+[0]   1
 (a)|(b)        b       y       x$-[1]  x
@@ -1283,3 +1293,48 @@ X(\w+)(?=\s)|X(\w+)      Xab     y       [$1-$2] [-ab]
 (?(DEFINE)(?<A>(?&B)+)(?<B>a))(?&A)    a       y       $&      a
 (?(DEFINE)(?<A>(?&B)+)(?<B>a))(?&A)    aa      y       $&      aa
 \x{100}?(??{""})xxx    xxx     y       $&      xxx
+
+foo(\R)bar     foo\r\nbar      y       $1      \r\n
+foo(\R)bar     foo\nbar        y       $1      \n
+foo(\R)bar     foo\rbar        y       $1      \r
+
+foo(\R+)bar    foo\r\n\x{85}\r\n\nbar  y       $1      \r\n\x{85}\r\n\n
+(\V+)(\R)      foo\r\n\x{85}\r\n\nbar  y       $1-$2   foo-\r\n
+(\R+)(\V)      foo\r\n\x{85}\r\n\nbar  y       $1-$2   \r\n\x{85}\r\n\n-b
+foo(\R)bar     foo\x{85}bar    y       $1      \x{85}
+(\V)(\R)       foo\x{85}bar    y       $1-$2   o-\x{85}
+(\R)(\V)       foo\x{85}bar    y       $1-$2   \x{85}-b
+foo(\R)bar     foo\r\nbar      y       $1      \r\n
+(\V)(\R)       foo\r\nbar      y       $1-$2   o-\r\n
+(\R)(\V)       foo\r\nbar      y       $1-$2   \r\n-b
+foo(\R)bar     foo\r\nbar      y       $1      \r\n
+(\V)(\R)       foo\r\nbar      y       $1-$2   o-\r\n
+(\R)(\V)       foo\r\nbar      y       $1-$2   \r\n-b
+foo(\R)bar     foo\rbar        y       $1      \r
+(\V)(\R)       foo\rbar        y       $1-$2   o-\r
+(\R)(\V)       foo\rbar        y       $1-$2   \r-b
+
+foo(\v+)bar    foo\r\n\x{85}\r\n\nbar  y       $1      \r\n\x{85}\r\n\n
+(\V+)(\v)      foo\r\n\x{85}\r\n\nbar  y       $1-$2   foo-\r
+(\v+)(\V)      foo\r\n\x{85}\r\n\nbar  y       $1-$2   \r\n\x{85}\r\n\n-b
+foo(\v)bar     foo\x{85}bar    y       $1      \x{85}
+(\V)(\v)       foo\x{85}bar    y       $1-$2   o-\x{85}
+(\v)(\V)       foo\x{85}bar    y       $1-$2   \x{85}-b
+foo(\v)bar     foo\rbar        y       $1      \r
+(\V)(\v)       foo\rbar        y       $1-$2   o-\r
+(\v)(\V)       foo\rbar        y       $1-$2   \r-b
+
+
+foo(\h+)bar    foo\t\x{A0}bar  y       $1      \t\x{A0}
+(\H+)(\h)      foo\t\x{A0}bar  y       $1-$2   foo-\t
+(\h+)(\H)      foo\t\x{A0}bar  y       $1-$2   \t\x{A0}-b
+foo(\h)bar     foo\x{A0}bar    y       $1      \x{A0}
+(\H)(\h)       foo\x{A0}bar    y       $1-$2   o-\x{A0}
+(\h)(\H)       foo\x{A0}bar    y       $1-$2   \x{A0}-b
+foo(\h)bar     foo\tbar        y       $1      \t
+(\H)(\h)       foo\tbar        y       $1-$2   o-\t
+(\h)(\H)       foo\tbar        y       $1-$2   \t-b
+
+.*\z   foo\n   y       -       -
+^(?:(\d)x)?\d$ 1       y       ${\(defined($1)?1:0)}   0       
+.*?(?:(\w)|(\w))x      abx     y       $1-$2   b-