remaining core test failures
rurban opened this issue · comments
Reini Urban commented
check core-test failures, esp. /g anchor failures, and locale posix tables on some
platforms. e.g. [:digit:] with pure ascii fails on travis.
see @pcre_fail
in t/perl/regexp.t
About 95% of all core tests and cpan modules do work with re::engine::PCRE2.
As of 0.04 the following core regression tests still fail:
perl -C -Mblib t/perl/regexp.t | grep -a TODO
301: '^'i:ABC:y:$&: => `'', match=
353: '(a+|b){0,1}?'i:AB:y:$&-$1:- => `A-A', match=1
357: 'a*'i::y:$&: => `'', match=
497: a(?{"{"})b:-:c:-:Sequence (?{...}) not terminated or not {}-balanced => `-', match=
589:(utf8::upgrade($subject)) ([[:^alnum:]]+):ABcd01Xy__-- ${nulnul}${ffff}:y:$1:__-- ${nulnul}${ffff} => `__-- \0\0ÿÿ', match=1
590:(utf8::upgrade($subject)) ([[:^ascii:]]+):ABcd01Xy__-- ${nulnul}${ffff}:y:$1:${ffff} => `ÿÿ', match=1
594:(utf8::upgrade($subject)) ([[:^print:]]+):ABcd01Xy__-- ${nulnul}${ffff}:y:$1:${nulnul}${ffff} => `\0\0ÿÿ', match=1
597:(utf8::upgrade($subject)) ([[:^word:]]+):ABcd01Xy__-- ${nulnul}${ffff}:y:$1:-- ${nulnul}${ffff} => `-- \0\0ÿÿ', match=1
599:(utf8::upgrade($subject)) ([[:^xdigit:]]+):ABcd01Xy__-- ${nulnul}${ffff}:y:$1:Xy__-- ${nulnul}${ffff} => `Xy__-- \0\0ÿÿ', match=1
606: a{37,17}:-:c:-:Can't do {n,m} with n > m => `-', match=
813:.X(.+)+X:bbbbXcXaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa:y:-:- => error `PCRE2 error -47'
814:.X(.+)+XX:bbbbXcXXaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa:y:-:- => error `PCRE2 error -47'
815:.XX(.+)+X:bbbbXXcXaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa:y:-:- => error `PCRE2 error -47'
816:.X(.+)+X:bbbbXXaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa:n:-:- => error `PCRE2 error -47'
817:.X(.+)+XX:bbbbXXXaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa:n:-:- => error `PCRE2 error -47'
818:.XX(.+)+X:bbbbXXXaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa:n:-:- => error `PCRE2 error -47'
819:.X(.+)+[X]:bbbbXcXaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa:y:-:- => error `PCRE2 error -47'
820:.X(.+)+[X][X]:bbbbXcXXaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa:y:-:- => error `PCRE2 error -47'
821:.XX(.+)+[X]:bbbbXXcXaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa:y:-:- => error `PCRE2 error -47'
822:.X(.+)+[X]:bbbbXXaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa:n:-:- => error `PCRE2 error -47'
823:.X(.+)+[X][X]:bbbbXXXaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa:n:-:- => error `PCRE2 error -47'
824:.XX(.+)+[X]:bbbbXXXaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa:n:-:- => error `PCRE2 error -47'
825:.[X](.+)+[X]:bbbbXcXaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa:y:-:- => error `PCRE2 error -47'
826:.[X](.+)+[X][X]:bbbbXcXXaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa:y:-:- => error `PCRE2 error -47'
827:.[X][X](.+)+[X]:bbbbXXcXaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa:y:-:- => error `PCRE2 error -47'
828:.[X](.+)+[X]:bbbbXXaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa:n:-:- => error `PCRE2 error -47'
829:.[X](.+)+[X][X]:bbbbXXXaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa:n:-:- => error `PCRE2 error -47'
830:.[X][X](.+)+[X]:bbbbXXXaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa:n:-:- => error `PCRE2 error -47'
867: ^(a(b)?)+$:aba:y:-$1-$2-:-a-- => `-a-b-', match=1
868: ^(aa(bb)?)+$:aabbaa:y:-$1-$2-:-aa-- => `-aa-bb-', match=1
873: ^(a\1?){4}$:aaaaaa:y:$1:aa => `', match=
931:(??{}):x:y:-:- => error `Eval-group not allowed at runtime, use re 'eval' in regex m/(??{})/ at (eval 5345) line 2.'
1021: ^(<(?:[^<>]+|(?3)|(?1))*>)()(!>!>!>)$:<<!>!>!>><>>!>!>!>:y:$1:<<!>!>!>><>> => `', match=
1051: /^(?'main'<(?:[^<>]+|(?&crap)|(?&main))*>)(?'empty')(?'crap'!>!>!>)$/:<<!>!>!>><>>!>!>!>:y:$+{main}:<<!>!>!>><>> => `', match=
1291:(utf8::upgrade($subject)) foo(\R+)bar:foo\r
1293:(utf8::upgrade($subject)) (\R+)(\V):foo\r
1294:(utf8::upgrade($subject)) foo(\R)bar:foo\x{85}bar:y:$1:\x{85} => `', match=
1295:(utf8::upgrade($subject)) (\V)(\R):foo\x{85}bar:y:$1-$2:o-\x{85} => `Â-�', match=1
1307:(utf8::upgrade($subject)) foo(\v+)bar:foo\r
1309:(utf8::upgrade($subject)) (\v+)(\V):foo\r
1310:(utf8::upgrade($subject)) foo(\v)bar:foo\x{85}bar:y:$1:\x{85} => `', match=
1311:(utf8::upgrade($subject)) (\V)(\v):foo\x{85}bar:y:$1-$2:o-\x{85} => `Â-�', match=1
1318:(utf8::upgrade($subject)) foo(\h+)bar:foo\t\x{A0}bar:y:$1:\t\x{A0} => `', match=
1320:(utf8::upgrade($subject)) (\h+)(\H):foo\t\x{A0}bar:y:$1-$2:\t\x{A0}-b => ` -Â', match=1
1321:(utf8::upgrade($subject)) foo(\h)bar:foo\x{A0}bar:y:$1:\x{A0} => `', match=
1322:(utf8::upgrade($subject)) (\H)(\h):foo\x{A0}bar:y:$1-$2:o-\x{A0} => `Â- ', match=1