Updated PCRE source to version 8.32 (bug 5593).

This commit is contained in:
Nicholas Hastings
2013-03-17 11:32:03 -04:00
parent ed6d8521e6
commit 6ce00034a2
340 changed files with 154241 additions and 63858 deletions
+430
View File
@@ -0,0 +1,430 @@
/-- This set of tests is for UTF-8 support, and is relevant only to the 8-bit
library. --/
/X(\C{3})/8
X\x{1234}
/X(\C{4})/8
X\x{1234}YZ
/X\C*/8
XYZabcdce
/X\C*?/8
XYZabcde
/X\C{3,5}/8
Xabcdefg
X\x{1234}
X\x{1234}YZ
X\x{1234}\x{512}
X\x{1234}\x{512}YZ
/X\C{3,5}?/8
Xabcdefg
X\x{1234}
X\x{1234}YZ
X\x{1234}\x{512}
/a\Cb/8
aXb
a\nb
/a\C\Cb/8
a\x{100}b
/ab\Cde/8
abXde
/a\C\Cb/8
a\x{100}b
** Failers
a\x{12257}b
/[Ã]/8
/Ã/8
/ÃÃÃxxx/8
/ÃÃÃxxx/8?DZSS
/badutf/8
\xdf
\xef
\xef\x80
\xf7
\xf7\x80
\xf7\x80\x80
\xfb
\xfb\x80
\xfb\x80\x80
\xfb\x80\x80\x80
\xfd
\xfd\x80
\xfd\x80\x80
\xfd\x80\x80\x80
\xfd\x80\x80\x80\x80
\xdf\x7f
\xef\x7f\x80
\xef\x80\x7f
\xf7\x7f\x80\x80
\xf7\x80\x7f\x80
\xf7\x80\x80\x7f
\xfb\x7f\x80\x80\x80
\xfb\x80\x7f\x80\x80
\xfb\x80\x80\x7f\x80
\xfb\x80\x80\x80\x7f
\xfd\x7f\x80\x80\x80\x80
\xfd\x80\x7f\x80\x80\x80
\xfd\x80\x80\x7f\x80\x80
\xfd\x80\x80\x80\x7f\x80
\xfd\x80\x80\x80\x80\x7f
\xed\xa0\x80
\xc0\x8f
\xe0\x80\x8f
\xf0\x80\x80\x8f
\xf8\x80\x80\x80\x8f
\xfc\x80\x80\x80\x80\x8f
\x80
\xfe
\xff
\xef\xb7\x90
/badutf/8
\xfb\x80\x80\x80\x80
\xfd\x80\x80\x80\x80\x80
\xf7\xbf\xbf\xbf
/shortutf/8
\P\P\xdf
\P\P\xef
\P\P\xef\x80
\P\P\xf7
\P\P\xf7\x80
\P\P\xf7\x80\x80
\P\P\xfb
\P\P\xfb\x80
\P\P\xfb\x80\x80
\P\P\xfb\x80\x80\x80
\P\P\xfd
\P\P\xfd\x80
\P\P\xfd\x80\x80
\P\P\xfd\x80\x80\x80
\P\P\xfd\x80\x80\x80\x80
/anything/8
\xc0\x80
\xc1\x8f
\xe0\x9f\x80
\xf0\x8f\x80\x80
\xf8\x87\x80\x80\x80
\xfc\x83\x80\x80\x80\x80
\xfe\x80\x80\x80\x80\x80
\xff\x80\x80\x80\x80\x80
\xc3\x8f
\xe0\xaf\x80
\xe1\x80\x80
\xf0\x9f\x80\x80
\xf1\x8f\x80\x80
\xf8\x88\x80\x80\x80
\xf9\x87\x80\x80\x80
\xfc\x84\x80\x80\x80\x80
\xfd\x83\x80\x80\x80\x80
\?\xf8\x88\x80\x80\x80
\?\xf9\x87\x80\x80\x80
\?\xfc\x84\x80\x80\x80\x80
\?\xfd\x83\x80\x80\x80\x80
/noncharacter/8
\x{fffe}
\x{ffff}
\x{1fffe}
\x{1ffff}
\x{2fffe}
\x{2ffff}
\x{3fffe}
\x{3ffff}
\x{4fffe}
\x{4ffff}
\x{5fffe}
\x{5ffff}
\x{6fffe}
\x{6ffff}
\x{7fffe}
\x{7ffff}
\x{8fffe}
\x{8ffff}
\x{9fffe}
\x{9ffff}
\x{afffe}
\x{affff}
\x{bfffe}
\x{bffff}
\x{cfffe}
\x{cffff}
\x{dfffe}
\x{dffff}
\x{efffe}
\x{effff}
\x{ffffe}
\x{fffff}
\x{10fffe}
\x{10ffff}
\x{fdd0}
\x{fdd1}
\x{fdd2}
\x{fdd3}
\x{fdd4}
\x{fdd5}
\x{fdd6}
\x{fdd7}
\x{fdd8}
\x{fdd9}
\x{fdda}
\x{fddb}
\x{fddc}
\x{fddd}
\x{fdde}
\x{fddf}
\x{fde0}
\x{fde1}
\x{fde2}
\x{fde3}
\x{fde4}
\x{fde5}
\x{fde6}
\x{fde7}
\x{fde8}
\x{fde9}
\x{fdea}
\x{fdeb}
\x{fdec}
\x{fded}
\x{fdee}
\x{fdef}
/\x{100}/8DZ
/\x{1000}/8DZ
/\x{10000}/8DZ
/\x{100000}/8DZ
/\x{10ffff}/8DZ
/[\x{ff}]/8DZ
/[\x{100}]/8DZ
/\x80/8DZ
/\xff/8DZ
/\x{D55c}\x{ad6d}\x{C5B4}/DZ8
\x{D55c}\x{ad6d}\x{C5B4}
/\x{65e5}\x{672c}\x{8a9e}/DZ8
\x{65e5}\x{672c}\x{8a9e}
/\x{80}/DZ8
/\x{084}/DZ8
/\x{104}/DZ8
/\x{861}/DZ8
/\x{212ab}/DZ8
/-- This one is here not because it's different to Perl, but because the way
the captured single-byte is displayed. (In Perl it becomes a character, and you
can't tell the difference.) --/
/X(\C)(.*)/8
X\x{1234}
X\nabc
/-- This one is here because Perl gives out a grumbly error message (quite
correctly, but that messes up comparisons). --/
/a\Cb/8
*** Failers
a\x{100}b
/[^ab\xC0-\xF0]/8SDZ
\x{f1}
\x{bf}
\x{100}
\x{1000}
*** Failers
\x{c0}
\x{f0}
/Ä€{3,4}/8SDZ
\x{100}\x{100}\x{100}\x{100\x{100}
/(\x{100}+|x)/8SDZ
/(\x{100}*a|x)/8SDZ
/(\x{100}{0,2}a|x)/8SDZ
/(\x{100}{1,2}a|x)/8SDZ
/\x{100}/8DZ
/a\x{100}\x{101}*/8DZ
/a\x{100}\x{101}+/8DZ
/[^\x{c4}]/DZ
/[\x{100}]/8DZ
\x{100}
Z\x{100}
\x{100}Z
*** Failers
/[\xff]/DZ8
>\x{ff}<
/[^\xff]/8DZ
/\x{100}abc(xyz(?1))/8DZ
/a\x{1234}b/P8
a\x{1234}b
/\777/8I
\x{1ff}
\777
/\x{100}+\x{200}/8DZ
/\x{100}+X/8DZ
/^[\QÄ€\E-\QÅ\E/BZ8
/-- This tests the stricter UTF-8 check according to RFC 3629. --/
/X/8
\x{0}\x{d7ff}\x{e000}\x{10ffff}
\x{d800}
\x{d800}\?
\x{da00}
\x{da00}\?
\x{dfff}
\x{dfff}\?
\x{110000}
\x{110000}\?
\x{2000000}
\x{2000000}\?
\x{7fffffff}
\x{7fffffff}\?
/(*UTF8)\x{1234}/
abcd\x{1234}pqr
/(*CRLF)(*UTF)(*BSR_UNICODE)a\Rb/I
/\h/SI8
ABC\x{09}
ABC\x{20}
ABC\x{a0}
ABC\x{1680}
ABC\x{180e}
ABC\x{2000}
ABC\x{202f}
ABC\x{205f}
ABC\x{3000}
/\v/SI8
ABC\x{0a}
ABC\x{0b}
ABC\x{0c}
ABC\x{0d}
ABC\x{85}
ABC\x{2028}
/\h*A/SI8
CDBABC
/\v+A/SI8
/\s?xxx\s/8SI
/\sxxx\s/I8ST1
AB\x{85}xxx\x{a0}XYZ
AB\x{a0}xxx\x{85}XYZ
/\S \S/I8ST1
\x{a2} \x{84}
A Z
/a+/8
a\x{123}aa\>1
a\x{123}aa\>2
a\x{123}aa\>3
a\x{123}aa\>4
a\x{123}aa\>5
a\x{123}aa\>6
/\x{1234}+/iS8I
/\x{1234}+?/iS8I
/\x{1234}++/iS8I
/\x{1234}{2}/iS8I
/[^\x{c4}]/8DZ
/X+\x{200}/8DZ
/\R/SI8
/\777/8DZ
/\w+\x{C4}/8BZ
a\x{C4}\x{C4}
/\w+\x{C4}/8BZT1
a\x{C4}\x{C4}
/\W+\x{C4}/8BZ
!\x{C4}
/\W+\x{C4}/8BZT1
!\x{C4}
/\W+\x{A1}/8BZ
!\x{A1}
/\W+\x{A1}/8BZT1
!\x{A1}
/X\s+\x{A0}/8BZ
X\x20\x{A0}\x{A0}
/X\s+\x{A0}/8BZT1
X\x20\x{A0}\x{A0}
/\S+\x{A0}/8BZ
X\x{A0}\x{A0}
/\S+\x{A0}/8BZT1
X\x{A0}\x{A0}
/\x{a0}+\s!/8BZ
\x{a0}\x20!
/\x{a0}+\s!/8BZT1
\x{a0}\x20!
/A/8
\x{ff000041}
\x{7f000041}
/-- End of testinput15 --/