Diff for /embedaddon/pcre/testdata/testoutput15 between versions 1.1.1.1 and 1.1.1.5

version 1.1.1.1, 2012/02/21 23:05:52 version 1.1.1.5, 2014/06/15 19:46:05
Line 1 Line 1
/-- This test is run only when JIT support is not available. It checks that an /-- This set of tests is for UTF-8 support but not Unicode property support,
attempt to use it has the expected behaviour. It also tests things that    and is relevant only to the 8-bit library. --/
are different without JIT. --/
   < forbid W
/abc/S+I
 /X(\C{3})/8
     X\x{1234}
  0: X\x{1234}
  1: \x{1234}
 
 /X(\C{4})/8
     X\x{1234}YZ
  0: X\x{1234}Y
  1: \x{1234}Y
     
 /X\C*/8
     XYZabcdce
  0: XYZabcdce
     
 /X\C*?/8
     XYZabcde
  0: X
     
 /X\C{3,5}/8
     Xabcdefg   
  0: Xabcde
     X\x{1234} 
  0: X\x{1234}
     X\x{1234}YZ
  0: X\x{1234}YZ
     X\x{1234}\x{512}  
  0: X\x{1234}\x{512}
     X\x{1234}\x{512}YZ
  0: X\x{1234}\x{512}
 
 /X\C{3,5}?/8
     Xabcdefg   
  0: Xabc
     X\x{1234} 
  0: X\x{1234}
     X\x{1234}YZ
  0: X\x{1234}
     X\x{1234}\x{512}  
  0: X\x{1234}
 
 /a\Cb/8
     aXb
  0: aXb
     a\nb
  0: a\x{0a}b
     
 /a\C\Cb/8 
     a\x{100}b 
  0: a\x{100}b
 
 /ab\Cde/8
     abXde
  0: abXde
 
 /a\C\Cb/8 
     a\x{100}b
  0: a\x{100}b
     ** Failers 
 No match
     a\x{12257}b
 No match
 
 /[]/8
 Failed: invalid UTF-8 string at offset 1
 
 //8
 Failed: invalid UTF-8 string at offset 0
 
 /xxx/8
 Failed: invalid UTF-8 string at offset 0
 
 /xxx/8?DZSSO
 ------------------------------------------------------------------
         Bra
         \X{c0}\X{c0}\X{c0}xxx
         Ket
         End
 ------------------------------------------------------------------
 Capturing subpattern count = 0  Capturing subpattern count = 0
No optionsOptions: no_auto_possessify utf no_utf_check
First char = 'a'First char = \x{c3}
Need char = 'c'Need char = 'x'
 
 /badutf/8
     \xdf
 Error -10 (bad UTF-8 string) offset=0 reason=1
     \xef
 Error -10 (bad UTF-8 string) offset=0 reason=2
     \xef\x80
 Error -10 (bad UTF-8 string) offset=0 reason=1
     \xf7
 Error -10 (bad UTF-8 string) offset=0 reason=3
     \xf7\x80
 Error -10 (bad UTF-8 string) offset=0 reason=2
     \xf7\x80\x80
 Error -10 (bad UTF-8 string) offset=0 reason=1
     \xfb
 Error -10 (bad UTF-8 string) offset=0 reason=4
     \xfb\x80
 Error -10 (bad UTF-8 string) offset=0 reason=3
     \xfb\x80\x80
 Error -10 (bad UTF-8 string) offset=0 reason=2
     \xfb\x80\x80\x80
 Error -10 (bad UTF-8 string) offset=0 reason=1
     \xfd
 Error -10 (bad UTF-8 string) offset=0 reason=5
     \xfd\x80
 Error -10 (bad UTF-8 string) offset=0 reason=4
     \xfd\x80\x80
 Error -10 (bad UTF-8 string) offset=0 reason=3
     \xfd\x80\x80\x80
 Error -10 (bad UTF-8 string) offset=0 reason=2
     \xfd\x80\x80\x80\x80
 Error -10 (bad UTF-8 string) offset=0 reason=1
     \xdf\x7f
 Error -10 (bad UTF-8 string) offset=0 reason=6
     \xef\x7f\x80
 Error -10 (bad UTF-8 string) offset=0 reason=6
     \xef\x80\x7f
 Error -10 (bad UTF-8 string) offset=0 reason=7
     \xf7\x7f\x80\x80
 Error -10 (bad UTF-8 string) offset=0 reason=6
     \xf7\x80\x7f\x80
 Error -10 (bad UTF-8 string) offset=0 reason=7
     \xf7\x80\x80\x7f
 Error -10 (bad UTF-8 string) offset=0 reason=8
     \xfb\x7f\x80\x80\x80
 Error -10 (bad UTF-8 string) offset=0 reason=6
     \xfb\x80\x7f\x80\x80
 Error -10 (bad UTF-8 string) offset=0 reason=7
     \xfb\x80\x80\x7f\x80
 Error -10 (bad UTF-8 string) offset=0 reason=8
     \xfb\x80\x80\x80\x7f
 Error -10 (bad UTF-8 string) offset=0 reason=9
     \xfd\x7f\x80\x80\x80\x80
 Error -10 (bad UTF-8 string) offset=0 reason=6
     \xfd\x80\x7f\x80\x80\x80
 Error -10 (bad UTF-8 string) offset=0 reason=7
     \xfd\x80\x80\x7f\x80\x80
 Error -10 (bad UTF-8 string) offset=0 reason=8
     \xfd\x80\x80\x80\x7f\x80
 Error -10 (bad UTF-8 string) offset=0 reason=9
     \xfd\x80\x80\x80\x80\x7f
 Error -10 (bad UTF-8 string) offset=0 reason=10
     \xed\xa0\x80
 Error -10 (bad UTF-8 string) offset=0 reason=14
     \xc0\x8f
 Error -10 (bad UTF-8 string) offset=0 reason=15
     \xe0\x80\x8f
 Error -10 (bad UTF-8 string) offset=0 reason=16
     \xf0\x80\x80\x8f
 Error -10 (bad UTF-8 string) offset=0 reason=17
     \xf8\x80\x80\x80\x8f
 Error -10 (bad UTF-8 string) offset=0 reason=18
     \xfc\x80\x80\x80\x80\x8f
 Error -10 (bad UTF-8 string) offset=0 reason=19
     \x80
 Error -10 (bad UTF-8 string) offset=0 reason=20
     \xfe
 Error -10 (bad UTF-8 string) offset=0 reason=21
     \xff
 Error -10 (bad UTF-8 string) offset=0 reason=21
 
 /badutf/8
     \xfb\x80\x80\x80\x80
 Error -10 (bad UTF-8 string) offset=0 reason=11
     \xfd\x80\x80\x80\x80\x80
 Error -10 (bad UTF-8 string) offset=0 reason=12
     \xf7\xbf\xbf\xbf
 Error -10 (bad UTF-8 string) offset=0 reason=13
 
 /shortutf/8
     \P\P\xdf
 Error -25 (short UTF-8 string) offset=0 reason=1
     \P\P\xef
 Error -25 (short UTF-8 string) offset=0 reason=2
     \P\P\xef\x80
 Error -25 (short UTF-8 string) offset=0 reason=1
     \P\P\xf7
 Error -25 (short UTF-8 string) offset=0 reason=3
     \P\P\xf7\x80
 Error -25 (short UTF-8 string) offset=0 reason=2
     \P\P\xf7\x80\x80
 Error -25 (short UTF-8 string) offset=0 reason=1
     \P\P\xfb
 Error -25 (short UTF-8 string) offset=0 reason=4
     \P\P\xfb\x80
 Error -25 (short UTF-8 string) offset=0 reason=3
     \P\P\xfb\x80\x80
 Error -25 (short UTF-8 string) offset=0 reason=2
     \P\P\xfb\x80\x80\x80
 Error -25 (short UTF-8 string) offset=0 reason=1
     \P\P\xfd
 Error -25 (short UTF-8 string) offset=0 reason=5
     \P\P\xfd\x80
 Error -25 (short UTF-8 string) offset=0 reason=4
     \P\P\xfd\x80\x80
 Error -25 (short UTF-8 string) offset=0 reason=3
     \P\P\xfd\x80\x80\x80
 Error -25 (short UTF-8 string) offset=0 reason=2
     \P\P\xfd\x80\x80\x80\x80
 Error -25 (short UTF-8 string) offset=0 reason=1
 
 /anything/8
     \xc0\x80
 Error -10 (bad UTF-8 string) offset=0 reason=15
     \xc1\x8f 
 Error -10 (bad UTF-8 string) offset=0 reason=15
     \xe0\x9f\x80
 Error -10 (bad UTF-8 string) offset=0 reason=16
     \xf0\x8f\x80\x80 
 Error -10 (bad UTF-8 string) offset=0 reason=17
     \xf8\x87\x80\x80\x80  
 Error -10 (bad UTF-8 string) offset=0 reason=18
     \xfc\x83\x80\x80\x80\x80
 Error -10 (bad UTF-8 string) offset=0 reason=19
     \xfe\x80\x80\x80\x80\x80  
 Error -10 (bad UTF-8 string) offset=0 reason=21
     \xff\x80\x80\x80\x80\x80  
 Error -10 (bad UTF-8 string) offset=0 reason=21
     \xc3\x8f
 No match
     \xe0\xaf\x80
 No match
     \xe1\x80\x80
 No match
     \xf0\x9f\x80\x80 
 No match
     \xf1\x8f\x80\x80 
 No match
     \xf8\x88\x80\x80\x80  
 Error -10 (bad UTF-8 string) offset=0 reason=11
     \xf9\x87\x80\x80\x80  
 Error -10 (bad UTF-8 string) offset=0 reason=11
     \xfc\x84\x80\x80\x80\x80
 Error -10 (bad UTF-8 string) offset=0 reason=12
     \xfd\x83\x80\x80\x80\x80
 Error -10 (bad UTF-8 string) offset=0 reason=12
     \?\xf8\x88\x80\x80\x80  
 No match
     \?\xf9\x87\x80\x80\x80  
 No match
     \?\xfc\x84\x80\x80\x80\x80
 No match
     \?\xfd\x83\x80\x80\x80\x80
 No match
 
 /\x{100}/8DZ
 ------------------------------------------------------------------
         Bra
         \x{100}
         Ket
         End
 ------------------------------------------------------------------
 Capturing subpattern count = 0
 Options: utf
 First char = \x{c4}
 Need char = \x{80}
 
 /\x{1000}/8DZ
 ------------------------------------------------------------------
         Bra
         \x{1000}
         Ket
         End
 ------------------------------------------------------------------
 Capturing subpattern count = 0
 Options: utf
 First char = \x{e1}
 Need char = \x{80}
 
 /\x{10000}/8DZ
 ------------------------------------------------------------------
         Bra
         \x{10000}
         Ket
         End
 ------------------------------------------------------------------
 Capturing subpattern count = 0
 Options: utf
 First char = \x{f0}
 Need char = \x{80}
 
 /\x{100000}/8DZ
 ------------------------------------------------------------------
         Bra
         \x{100000}
         Ket
         End
 ------------------------------------------------------------------
 Capturing subpattern count = 0
 Options: utf
 First char = \x{f4}
 Need char = \x{80}
 
 /\x{10ffff}/8DZ
 ------------------------------------------------------------------
         Bra
         \x{10ffff}
         Ket
         End
 ------------------------------------------------------------------
 Capturing subpattern count = 0
 Options: utf
 First char = \x{f4}
 Need char = \x{bf}
 
 /[\x{ff}]/8DZ
 ------------------------------------------------------------------
         Bra
         \x{ff}
         Ket
         End
 ------------------------------------------------------------------
 Capturing subpattern count = 0
 Options: utf
 First char = \x{c3}
 Need char = \x{bf}
 
 /[\x{100}]/8DZ
 ------------------------------------------------------------------
         Bra
         \x{100}
         Ket
         End
 ------------------------------------------------------------------
 Capturing subpattern count = 0
 Options: utf
 First char = \x{c4}
 Need char = \x{80}
 
 /\x80/8DZ
 ------------------------------------------------------------------
         Bra
         \x{80}
         Ket
         End
 ------------------------------------------------------------------
 Capturing subpattern count = 0
 Options: utf
 First char = \x{c2}
 Need char = \x{80}
 
 /\xff/8DZ
 ------------------------------------------------------------------
         Bra
         \x{ff}
         Ket
         End
 ------------------------------------------------------------------
 Capturing subpattern count = 0
 Options: utf
 First char = \x{c3}
 Need char = \x{bf}
 
 /\x{D55c}\x{ad6d}\x{C5B4}/DZ8 
 ------------------------------------------------------------------
         Bra
         \x{d55c}\x{ad6d}\x{c5b4}
         Ket
         End
 ------------------------------------------------------------------
 Capturing subpattern count = 0
 Options: utf
 First char = \x{ed}
 Need char = \x{b4}
     \x{D55c}\x{ad6d}\x{C5B4} 
  0: \x{d55c}\x{ad6d}\x{c5b4}
 
 /\x{65e5}\x{672c}\x{8a9e}/DZ8
 ------------------------------------------------------------------
         Bra
         \x{65e5}\x{672c}\x{8a9e}
         Ket
         End
 ------------------------------------------------------------------
 Capturing subpattern count = 0
 Options: utf
 First char = \x{e6}
 Need char = \x{9e}
     \x{65e5}\x{672c}\x{8a9e}
  0: \x{65e5}\x{672c}\x{8a9e}
 
 /\x{80}/DZ8
 ------------------------------------------------------------------
         Bra
         \x{80}
         Ket
         End
 ------------------------------------------------------------------
 Capturing subpattern count = 0
 Options: utf
 First char = \x{c2}
 Need char = \x{80}
 
 /\x{084}/DZ8
 ------------------------------------------------------------------
         Bra
         \x{84}
         Ket
         End
 ------------------------------------------------------------------
 Capturing subpattern count = 0
 Options: utf
 First char = \x{c2}
 Need char = \x{84}
 
 /\x{104}/DZ8
 ------------------------------------------------------------------
         Bra
         \x{104}
         Ket
         End
 ------------------------------------------------------------------
 Capturing subpattern count = 0
 Options: utf
 First char = \x{c4}
 Need char = \x{84}
 
 /\x{861}/DZ8
 ------------------------------------------------------------------
         Bra
         \x{861}
         Ket
         End
 ------------------------------------------------------------------
 Capturing subpattern count = 0
 Options: utf
 First char = \x{e0}
 Need char = \x{a1}
 
 /\x{212ab}/DZ8
 ------------------------------------------------------------------
         Bra
         \x{212ab}
         Ket
         End
 ------------------------------------------------------------------
 Capturing subpattern count = 0
 Options: utf
 First char = \x{f0}
 Need char = \x{ab}
 
 /-- 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}
  0: X\x{1234}
  1: \x{e1}
  2: \x{88}\x{b4}
     X\nabc 
  0: X\x{0a}abc
  1: \x{0a}
  2: abc
 
 /-- This one is here because Perl gives out a grumbly error message (quite 
 correctly, but that messes up comparisons). --/
     
 /a\Cb/8
     *** Failers 
 No match
     a\x{100}b 
 No match
     
 /[^ab\xC0-\xF0]/8SDZ
 ------------------------------------------------------------------
         Bra
         [\x00-`c-\xbf\xf1-\xff] (neg)
         Ket
         End
 ------------------------------------------------------------------
 Capturing subpattern count = 0
 Options: utf
 No first char
 No need char
 Subject length lower bound = 1
 Starting byte set: \x00 \x01 \x02 \x03 \x04 \x05 \x06 \x07 \x08 \x09 \x0a 
   \x0b \x0c \x0d \x0e \x0f \x10 \x11 \x12 \x13 \x14 \x15 \x16 \x17 \x18 \x19 
   \x1a \x1b \x1c \x1d \x1e \x1f \x20 ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 
   5 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y 
   Z [ \ ] ^ _ ` c d e f g h i j k l m n o p q r s t u v w x y z { | } ~ \x7f 
   \xc2 \xc3 \xc4 \xc5 \xc6 \xc7 \xc8 \xc9 \xca \xcb \xcc \xcd \xce \xcf \xd0 
   \xd1 \xd2 \xd3 \xd4 \xd5 \xd6 \xd7 \xd8 \xd9 \xda \xdb \xdc \xdd \xde \xdf 
   \xe0 \xe1 \xe2 \xe3 \xe4 \xe5 \xe6 \xe7 \xe8 \xe9 \xea \xeb \xec \xed \xee 
   \xef \xf0 \xf1 \xf2 \xf3 \xf4 \xf5 \xf6 \xf7 \xf8 \xf9 \xfa \xfb \xfc \xfd 
   \xfe \xff 
     \x{f1}
  0: \x{f1}
     \x{bf}
  0: \x{bf}
     \x{100}
  0: \x{100}
     \x{1000}   
  0: \x{1000}
     *** Failers
  0: *
     \x{c0} 
 No match
     \x{f0} 
 No match
 
 /Ā{3,4}/8SDZ
 ------------------------------------------------------------------
         Bra
         \x{100}{3}
         \x{100}?+
         Ket
         End
 ------------------------------------------------------------------
 Capturing subpattern count = 0
 Options: utf
 First char = \x{c4}
 Need char = \x{80}
 Subject length lower bound = 3  Subject length lower bound = 3
 No set of starting bytes  No set of starting bytes
JIT support is not available in this version of PCRE  \x{100}\x{100}\x{100}\x{100\x{100}
  0: \x{100}\x{100}\x{100}
   
/a*/SI/(\x{100}+|x)/8SDZ
 ------------------------------------------------------------------
         Bra
         CBra 1
         \x{100}++
         Alt
         x
         Ket
         Ket
         End
 ------------------------------------------------------------------
 Capturing subpattern count = 1
 Options: utf
 No first char
 No need char
 Subject length lower bound = 1
 Starting byte set: x \xc4 
 
 /(\x{100}*a|x)/8SDZ
 ------------------------------------------------------------------
         Bra
         CBra 1
         \x{100}*+
         a
         Alt
         x
         Ket
         Ket
         End
 ------------------------------------------------------------------
 Capturing subpattern count = 1
 Options: utf
 No first char
 No need char
 Subject length lower bound = 1
 Starting byte set: a x \xc4 
 
 /(\x{100}{0,2}a|x)/8SDZ
 ------------------------------------------------------------------
         Bra
         CBra 1
         \x{100}{0,2}+
         a
         Alt
         x
         Ket
         Ket
         End
 ------------------------------------------------------------------
 Capturing subpattern count = 1
 Options: utf
 No first char
 No need char
 Subject length lower bound = 1
 Starting byte set: a x \xc4 
 
 /(\x{100}{1,2}a|x)/8SDZ
 ------------------------------------------------------------------
         Bra
         CBra 1
         \x{100}
         \x{100}{0,1}+
         a
         Alt
         x
         Ket
         Ket
         End
 ------------------------------------------------------------------
 Capturing subpattern count = 1
 Options: utf
 No first char
 No need char
 Subject length lower bound = 1
 Starting byte set: x \xc4 
 
 /\x{100}/8DZ
 ------------------------------------------------------------------
         Bra
         \x{100}
         Ket
         End
 ------------------------------------------------------------------
 Capturing subpattern count = 0  Capturing subpattern count = 0
   Options: utf
   First char = \x{c4}
   Need char = \x{80}
   
   /a\x{100}\x{101}*/8DZ
   ------------------------------------------------------------------
           Bra
           a\x{100}
           \x{101}*+
           Ket
           End
   ------------------------------------------------------------------
   Capturing subpattern count = 0
   Options: utf
   First char = 'a'
   Need char = \x{80}
   
   /a\x{100}\x{101}+/8DZ
   ------------------------------------------------------------------
           Bra
           a\x{100}
           \x{101}++
           Ket
           End
   ------------------------------------------------------------------
   Capturing subpattern count = 0
   Options: utf
   First char = 'a'
   Need char = \x{81}
   
   /[^\x{c4}]/DZ
   ------------------------------------------------------------------
           Bra
           [^\x{c4}]
           Ket
           End
   ------------------------------------------------------------------
   Capturing subpattern count = 0
 No options  No options
 No first char  No first char
 No need char  No need char
Study returned NULL
 /[\x{100}]/8DZ
 ------------------------------------------------------------------
         Bra
         \x{100}
         Ket
         End
 ------------------------------------------------------------------
 Capturing subpattern count = 0
 Options: utf
 First char = \x{c4}
 Need char = \x{80}
     \x{100}
  0: \x{100}
     Z\x{100}
  0: \x{100}
     \x{100}Z
  0: \x{100}
     *** Failers 
 No match
 
 /[\xff]/DZ8
 ------------------------------------------------------------------
         Bra
         \x{ff}
         Ket
         End
 ------------------------------------------------------------------
 Capturing subpattern count = 0
 Options: utf
 First char = \x{c3}
 Need char = \x{bf}
     >\x{ff}<
  0: \x{ff}
 
 /[^\xff]/8DZ
 ------------------------------------------------------------------
         Bra
         [^\x{ff}]
         Ket
         End
 ------------------------------------------------------------------
 Capturing subpattern count = 0
 Options: utf
 No first char
 No need char
 
 /\x{100}abc(xyz(?1))/8DZ
 ------------------------------------------------------------------
         Bra
         \x{100}abc
         CBra 1
         xyz
         Recurse
         Ket
         Ket
         End
 ------------------------------------------------------------------
 Capturing subpattern count = 1
 Options: utf
 First char = \x{c4}
 Need char = 'z'
 
 /a\x{1234}b/P8
     a\x{1234}b
  0: a\x{1234}b
 
 /\777/8I
 Capturing subpattern count = 0
 Options: utf
 First char = \x{c7}
 Need char = \x{bf}
   \x{1ff}
  0: \x{1ff}
   \777 
  0: \x{1ff}
   
 /\x{100}+\x{200}/8DZ
 ------------------------------------------------------------------
         Bra
         \x{100}++
         \x{200}
         Ket
         End
 ------------------------------------------------------------------
 Capturing subpattern count = 0
 Options: utf
 First char = \x{c4}
 Need char = \x{80}
 
 /\x{100}+X/8DZ
 ------------------------------------------------------------------
         Bra
         \x{100}++
         X
         Ket
         End
 ------------------------------------------------------------------
 Capturing subpattern count = 0
 Options: utf
 First char = \x{c4}
 Need char = 'X'
 
 /^[\QĀ\E-\QŐ\E/BZ8
 Failed: missing terminating ] for character class at offset 15
 
 /-- This tests the stricter UTF-8 check according to RFC 3629. --/ 
     
 /X/8
     \x{d800}
 Error -10 (bad UTF-8 string) offset=0 reason=14
     \x{d800}\?
 No match
     \x{da00}
 Error -10 (bad UTF-8 string) offset=0 reason=14
     \x{da00}\?
 No match
     \x{dfff}
 Error -10 (bad UTF-8 string) offset=0 reason=14
     \x{dfff}\?
 No match
     \x{110000}    
 Error -10 (bad UTF-8 string) offset=0 reason=13
     \x{110000}\?    
 No match
     \x{2000000} 
 Error -10 (bad UTF-8 string) offset=0 reason=11
     \x{2000000}\? 
 No match
     \x{7fffffff} 
 Error -10 (bad UTF-8 string) offset=0 reason=12
     \x{7fffffff}\? 
 No match
 
 /(*UTF8)\x{1234}/
   abcd\x{1234}pqr
  0: \x{1234}
 
 /(*CRLF)(*UTF)(*BSR_UNICODE)a\Rb/I
 Capturing subpattern count = 0
 Options: bsr_unicode utf
 Forced newline sequence: CRLF
 First char = 'a'
 Need char = 'b'
 
 /\h/SI8
 Capturing subpattern count = 0
 Options: utf
 No first char
 No need char
 Subject length lower bound = 1
 Starting byte set: \x09 \x20 \xc2 \xe1 \xe2 \xe3 
     ABC\x{09}
  0: \x{09}
     ABC\x{20}
  0:  
     ABC\x{a0}
  0: \x{a0}
     ABC\x{1680}
  0: \x{1680}
     ABC\x{180e}
  0: \x{180e}
     ABC\x{2000}
  0: \x{2000}
     ABC\x{202f} 
  0: \x{202f}
     ABC\x{205f} 
  0: \x{205f}
     ABC\x{3000} 
  0: \x{3000}
 
 /\v/SI8
 Capturing subpattern count = 0
 Options: utf
 No first char
 No need char
 Subject length lower bound = 1
 Starting byte set: \x0a \x0b \x0c \x0d \xc2 \xe2 
     ABC\x{0a}
  0: \x{0a}
     ABC\x{0b}
  0: \x{0b}
     ABC\x{0c}
  0: \x{0c}
     ABC\x{0d}
  0: \x{0d}
     ABC\x{85}
  0: \x{85}
     ABC\x{2028}
  0: \x{2028}
 
 /\h*A/SI8
 Capturing subpattern count = 0
 Options: utf
 No first char
 Need char = 'A'
 Subject length lower bound = 1
 Starting byte set: \x09 \x20 A \xc2 \xe1 \xe2 \xe3 
     CDBABC
  0: A
     
 /\v+A/SI8
 Capturing subpattern count = 0
 Options: utf
 No first char
 Need char = 'A'
 Subject length lower bound = 2
 Starting byte set: \x0a \x0b \x0c \x0d \xc2 \xe2 
 
 /\s?xxx\s/8SI
 Capturing subpattern count = 0
 Options: utf
 No first char
 Need char = 'x'
 Subject length lower bound = 4
 Starting byte set: \x09 \x0a \x0b \x0c \x0d \x20 x 
 
 /\sxxx\s/I8ST1
 Capturing subpattern count = 0
 Options: utf
 No first char
 Need char = 'x'
 Subject length lower bound = 5
 Starting byte set: \x09 \x0a \x0c \x0d \x20 \xc2 
     AB\x{85}xxx\x{a0}XYZ
  0: \x{85}xxx\x{a0}
     AB\x{a0}xxx\x{85}XYZ
  0: \x{a0}xxx\x{85}
 
 /\S \S/I8ST1
 Capturing subpattern count = 0
 Options: utf
 No first char
 Need char = ' '
 Subject length lower bound = 3
 Starting byte set: \x00 \x01 \x02 \x03 \x04 \x05 \x06 \x07 \x08 \x0b \x0e 
   \x0f \x10 \x11 \x12 \x13 \x14 \x15 \x16 \x17 \x18 \x19 \x1a \x1b \x1c \x1d 
   \x1e \x1f ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ 
   A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e 
   f g h i j k l m n o p q r s t u v w x y z { | } ~ \x7f \xc0 \xc1 \xc2 \xc3 
   \xc4 \xc5 \xc6 \xc7 \xc8 \xc9 \xca \xcb \xcc \xcd \xce \xcf \xd0 \xd1 \xd2 
   \xd3 \xd4 \xd5 \xd6 \xd7 \xd8 \xd9 \xda \xdb \xdc \xdd \xde \xdf \xe0 \xe1 
   \xe2 \xe3 \xe4 \xe5 \xe6 \xe7 \xe8 \xe9 \xea \xeb \xec \xed \xee \xef \xf0 
   \xf1 \xf2 \xf3 \xf4 \xf5 \xf6 \xf7 \xf8 \xf9 \xfa \xfb \xfc \xfd \xfe \xff 
     \x{a2} \x{84} 
  0: \x{a2} \x{84}
     A Z 
  0: A Z
 
 /a+/8
     a\x{123}aa\>1
  0: aa
     a\x{123}aa\>2
 Error -11 (bad UTF-8 offset)
     a\x{123}aa\>3
  0: aa
     a\x{123}aa\>4
  0: a
     a\x{123}aa\>5
 No match
     a\x{123}aa\>6
 Error -24 (bad offset value)
 
 /\x{1234}+/iS8I
 Capturing subpattern count = 0
 Options: caseless utf
 No first char
 No need char
 Subject length lower bound = 1
 Starting byte set: \xe1 
 
 /\x{1234}+?/iS8I
 Capturing subpattern count = 0
 Options: caseless utf
 No first char
 No need char
 Subject length lower bound = 1
 Starting byte set: \xe1 
 
 /\x{1234}++/iS8I
 Capturing subpattern count = 0
 Options: caseless utf
 No first char
 No need char
 Subject length lower bound = 1
 Starting byte set: \xe1 
 
 /\x{1234}{2}/iS8I
 Capturing subpattern count = 0
 Options: caseless utf
 No first char
 No need char
 Subject length lower bound = 2
 Starting byte set: \xe1 
 
 /[^\x{c4}]/8DZ
 ------------------------------------------------------------------
         Bra
         [^\x{c4}]
         Ket
         End
 ------------------------------------------------------------------
 Capturing subpattern count = 0
 Options: utf
 No first char
 No need char
 
 /X+\x{200}/8DZ
 ------------------------------------------------------------------
         Bra
         X++
         \x{200}
         Ket
         End
 ------------------------------------------------------------------
 Capturing subpattern count = 0
 Options: utf
 First char = 'X'
 Need char = \x{80}
 
 /\R/SI8
 Capturing subpattern count = 0
 Options: utf
 No first char
 No need char
 Subject length lower bound = 1
 Starting byte set: \x0a \x0b \x0c \x0d \xc2 \xe2 
 
 /\777/8DZ
 ------------------------------------------------------------------
         Bra
         \x{1ff}
         Ket
         End
 ------------------------------------------------------------------
 Capturing subpattern count = 0
 Options: utf
 First char = \x{c7}
 Need char = \x{bf}
 
 /\w+\x{C4}/8BZ
 ------------------------------------------------------------------
         Bra
         \w++
         \x{c4}
         Ket
         End
 ------------------------------------------------------------------
     a\x{C4}\x{C4}
  0: a\x{c4}
 
 /\w+\x{C4}/8BZT1
 ------------------------------------------------------------------
         Bra
         \w+
         \x{c4}
         Ket
         End
 ------------------------------------------------------------------
     a\x{C4}\x{C4}
  0: a\x{c4}\x{c4}
     
 /\W+\x{C4}/8BZ
 ------------------------------------------------------------------
         Bra
         \W+
         \x{c4}
         Ket
         End
 ------------------------------------------------------------------
     !\x{C4}
  0: !\x{c4}
  
 /\W+\x{C4}/8BZT1
 ------------------------------------------------------------------
         Bra
         \W++
         \x{c4}
         Ket
         End
 ------------------------------------------------------------------
     !\x{C4}
  0: !\x{c4}
 
 /\W+\x{A1}/8BZ
 ------------------------------------------------------------------
         Bra
         \W+
         \x{a1}
         Ket
         End
 ------------------------------------------------------------------
     !\x{A1}
  0: !\x{a1}
  
 /\W+\x{A1}/8BZT1
 ------------------------------------------------------------------
         Bra
         \W+
         \x{a1}
         Ket
         End
 ------------------------------------------------------------------
     !\x{A1}
  0: !\x{a1}
 
 /X\s+\x{A0}/8BZ
 ------------------------------------------------------------------
         Bra
         X
         \s++
         \x{a0}
         Ket
         End
 ------------------------------------------------------------------
     X\x20\x{A0}\x{A0}
  0: X \x{a0}
 
 /X\s+\x{A0}/8BZT1
 ------------------------------------------------------------------
         Bra
         X
         \s+
         \x{a0}
         Ket
         End
 ------------------------------------------------------------------
     X\x20\x{A0}\x{A0}
  0: X \x{a0}\x{a0}
 
 /\S+\x{A0}/8BZ
 ------------------------------------------------------------------
         Bra
         \S+
         \x{a0}
         Ket
         End
 ------------------------------------------------------------------
     X\x{A0}\x{A0}
  0: X\x{a0}\x{a0}
 
 /\S+\x{A0}/8BZT1
 ------------------------------------------------------------------
         Bra
         \S++
         \x{a0}
         Ket
         End
 ------------------------------------------------------------------
     X\x{A0}\x{A0}
  0: X\x{a0}
 
 /\x{a0}+\s!/8BZ
 ------------------------------------------------------------------
         Bra
         \x{a0}++
         \s
         !
         Ket
         End
 ------------------------------------------------------------------
     \x{a0}\x20!
  0: \x{a0} !
 
 /\x{a0}+\s!/8BZT1
 ------------------------------------------------------------------
         Bra
         \x{a0}+
         \s
         !
         Ket
         End
 ------------------------------------------------------------------
     \x{a0}\x20!
  0: \x{a0} !
 
 /A/8
   \x{ff000041}
 ** Character \x{ff000041} is greater than 0x7fffffff and so cannot be converted to UTF-8
   \x{7f000041} 
 Error -10 (bad UTF-8 string) offset=0 reason=12
 
 /(*UTF8)abc/9
 Failed: setting UTF is disabled by the application at offset 0
 
 /abc/89
 Failed: setting UTF is disabled by the application at offset 0
   
 /-- End of testinput15 --/  /-- End of testinput15 --/

Removed from v.1.1.1.1  
changed lines
  Added in v.1.1.1.5


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>