SYN SYN
[p5sagit/p5-mst-13.2.git] / t / pragma / warn / regcomp
CommitLineData
599cee73 1 regcomp.c AOK
2
767a6a26 3 Strange *+?{} on zero-length expression [S_study_chunk]
4 /(?=a)?/
599cee73 5
767a6a26 6 %.*s matches null string many times [S_regpiece]
599cee73 7 $a = "ABC123" ; $a =~ /(?=a)*/'
8
ac561586 9 /%.127s/: Unrecognized escape \\%c passed through [S_regatom]
e476b1b5 10 $x = '\m' ; /$x/
599cee73 11
ac561586 12 Character class [:%.*s:] unknown [S_regpposixcc]
13
767a6a26 14 Character class syntax [%c %c] belongs inside character classes [S_checkposixcc]
15
73b437c8 16 /%.127s/: false [] range \"%*.*s\" in regexp [S_regclass]
599cee73 17
73b437c8 18 /%.127s/: false [] range \"%*.*s\" in regexp [S_regclassutf8]
599cee73 19
1028017a 20 /%.127s/: Unrecognized escape \\%c in character class passed through" [S_regclass]
21
22 /%.127s/: Unrecognized escape \\%c in character class passed through" [S_regclassutf8]
23
599cee73 24__END__
767a6a26 25# regcomp.c [S_regpiece]
e476b1b5 26use warnings 'regexp' ;
599cee73 27my $a = "ABC123" ;
28$a =~ /(?=a)*/ ;
e476b1b5 29no warnings 'regexp' ;
0453d815 30$a =~ /(?=a)*/ ;
599cee73 31EXPECT
22d4bb9c 32(?=a)* matches null string many times before HERE mark in regex m/(?=a)* << HERE / at - line 4.
599cee73 33########
767a6a26 34# regcomp.c [S_study_chunk]
e476b1b5 35use warnings 'regexp' ;
599cee73 36$_ = "" ;
37/(?=a)?/;
e476b1b5 38no warnings 'regexp' ;
0453d815 39/(?=a)?/;
599cee73 40EXPECT
22d4bb9c 41Quantifier unexpected on zero-length expression before HERE mark in regex m/(?=a)? << HERE / at - line 4.
599cee73 42########
767a6a26 43# regcomp.c [S_regatom]
e476b1b5 44$x = '\m' ;
45use warnings 'regexp' ;
46$a =~ /a$x/ ;
47no warnings 'regexp' ;
48$a =~ /a$x/ ;
767a6a26 49EXPECT
22d4bb9c 50Unrecognized escape \m passed through before HERE mark in regex m/a\m << HERE / at - line 4.
767a6a26 51########
52# regcomp.c [S_regpposixcc S_checkposixcc]
032dc9da 53BEGIN { $ENV{PERL_DESTRUCT_LEVEL} = 0 unless $ENV{PERL_DESTRUCT_LEVEL} > 3 }
e476b1b5 54use warnings 'regexp' ;
599cee73 55$_ = "" ;
e8c223df 56/[:alpha:]/;
e8c223df 57/[:zog:]/;
ac561586 58/[[:zog:]]/;
e476b1b5 59no warnings 'regexp' ;
e8c223df 60/[:alpha:]/;
ac561586 61/[:zog:]/;
4b19af01 62/[[:zog:]]/;
599cee73 63EXPECT
22d4bb9c 64POSIX syntax [: :] belongs inside character classes before HERE mark in regex m/[:alpha:] << HERE / at - line 5.
65POSIX syntax [: :] belongs inside character classes before HERE mark in regex m/[:zog:] << HERE / at - line 6.
66POSIX class [:zog:] unknown before HERE mark in regex m/[[:zog:] << HERE ]/
4b19af01 67########
68# regcomp.c [S_checkposixcc]
69BEGIN { $ENV{PERL_DESTRUCT_LEVEL} = 0 unless $ENV{PERL_DESTRUCT_LEVEL} > 3 }
70use warnings 'regexp' ;
71$_ = "" ;
72/[.zog.]/;
73no warnings 'regexp' ;
74/[.zog.]/;
75EXPECT
22d4bb9c 76POSIX syntax [. .] belongs inside character classes before HERE mark in regex m/[.zog.] << HERE / at - line 5.
77POSIX syntax [. .] is reserved for future extensions before HERE mark in regex m/[.zog.] << HERE /
4b19af01 78########
79# regcomp.c [S_checkposixcc]
80BEGIN { $ENV{PERL_DESTRUCT_LEVEL} = 0 unless $ENV{PERL_DESTRUCT_LEVEL} > 3 }
81use warnings 'regexp' ;
82$_ = "" ;
83/[[.zog.]]/;
84no warnings 'regexp' ;
85/[[.zog.]]/;
86EXPECT
22d4bb9c 87POSIX syntax [. .] is reserved for future extensions before HERE mark in regex m/[[.zog.] << HERE ]/
73b437c8 88########
89# regcomp.c [S_regclass]
90$_ = "";
e476b1b5 91use warnings 'regexp' ;
73b437c8 92/[a-b]/;
93/[a-\d]/;
94/[\d-b]/;
95/[\s-\d]/;
96/[\d-\s]/;
97/[a-[:digit:]]/;
98/[[:digit:]-b]/;
99/[[:alpha:]-[:digit:]]/;
100/[[:digit:]-[:alpha:]]/;
e476b1b5 101no warnings 'regexp' ;
73b437c8 102/[a-b]/;
103/[a-\d]/;
104/[\d-b]/;
105/[\s-\d]/;
106/[\d-\s]/;
107/[a-[:digit:]]/;
108/[[:digit:]-b]/;
109/[[:alpha:]-[:digit:]]/;
110/[[:digit:]-[:alpha:]]/;
111EXPECT
22d4bb9c 112False [] range "a-\d" before HERE mark in regex m/[a-\d << HERE ]/ at - line 5.
113False [] range "\d-" before HERE mark in regex m/[\d- << HERE b]/ at - line 6.
114False [] range "\s-" before HERE mark in regex m/[\s- << HERE \d]/ at - line 7.
115False [] range "\d-" before HERE mark in regex m/[\d- << HERE \s]/ at - line 8.
116False [] range "a-[:digit:]" before HERE mark in regex m/[a-[:digit:] << HERE ]/ at - line 9.
117False [] range "[:digit:]-" before HERE mark in regex m/[[:digit:]- << HERE b]/ at - line 10.
118False [] range "[:alpha:]-" before HERE mark in regex m/[[:alpha:]- << HERE [:digit:]]/ at - line 11.
119False [] range "[:digit:]-" before HERE mark in regex m/[[:digit:]- << HERE [:alpha:]]/ at - line 12.
73b437c8 120########
121# regcomp.c [S_regclassutf8]
59af8754 122BEGIN {
123 if (ord("\t") == 5) {
124 print "SKIPPED\n# ebcdic regular expression ranges differ.";
125 exit 0;
126 }
127}
73b437c8 128use utf8;
129$_ = "";
e476b1b5 130use warnings 'regexp' ;
73b437c8 131/[a-b]/;
132/[a-\d]/;
133/[\d-b]/;
134/[\s-\d]/;
135/[\d-\s]/;
136/[a-[:digit:]]/;
137/[[:digit:]-b]/;
138/[[:alpha:]-[:digit:]]/;
139/[[:digit:]-[:alpha:]]/;
e476b1b5 140no warnings 'regexp' ;
73b437c8 141/[a-b]/;
142/[a-\d]/;
143/[\d-b]/;
144/[\s-\d]/;
145/[\d-\s]/;
146/[a-[:digit:]]/;
147/[[:digit:]-b]/;
148/[[:alpha:]-[:digit:]]/;
149/[[:digit:]-[:alpha:]]/;
150EXPECT
22d4bb9c 151False [] range "a-\d" before HERE mark in regex m/[a-\d << HERE ]/ at - line 12.
152False [] range "\d-" before HERE mark in regex m/[\d- << HERE b]/ at - line 13.
153False [] range "\s-" before HERE mark in regex m/[\s- << HERE \d]/ at - line 14.
154False [] range "\d-" before HERE mark in regex m/[\d- << HERE \s]/ at - line 15.
155False [] range "a-[:digit:]" before HERE mark in regex m/[a-[:digit:] << HERE ]/ at - line 16.
156False [] range "[:digit:]-" before HERE mark in regex m/[[:digit:]- << HERE b]/ at - line 17.
157False [] range "[:alpha:]-" before HERE mark in regex m/[[:alpha:]- << HERE [:digit:]]/ at - line 18.
158False [] range "[:digit:]-" before HERE mark in regex m/[[:digit:]- << HERE [:alpha:]]/ at - line 19.
1028017a 159########
160# regcomp.c [S_regclass S_regclassutf8]
e476b1b5 161use warnings 'regexp' ;
1028017a 162$a =~ /[a\zb]/ ;
e476b1b5 163no warnings 'regexp' ;
1028017a 164$a =~ /[a\zb]/ ;
165EXPECT
22d4bb9c 166Unrecognized escape \z in character class passed through before HERE mark in regex m/[a\z << HERE b]/ at - line 3.
167