/[pcre]/code/trunk/testdata/testoutput5
ViewVC logotype

Diff of /code/trunk/testdata/testoutput5

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 71 by nigel, Sat Feb 24 21:40:24 2007 UTC revision 916 by ph10, Wed Feb 15 09:50:53 2012 UTC
# Line 1  Line 1 
1  PCRE version 4.4 21-August-2003  /-- This set of tests checks the API, internals, and non-Perl stuff for UTF
2        support, excluding Unicode properties. However, tests that give different
3        results in 8-bit and 16-bit modes are excluded (see tests 16 and 17). --/
4    
5  /\x{100}/8DM  /\x{110000}/8DZ
6  Memory allocation (code space): 11  Failed: character value in \x{...} sequence is too large at offset 9
 ------------------------------------------------------------------  
   0   7 Bra 0  
   3   2 \x{100}  
   7   7 Ket  
  10     End  
 ------------------------------------------------------------------  
 Capturing subpattern count = 0  
 Options: utf8  
 First char = 196  
 Need char = 128  
   
 /\x{1000}/8DM  
 Memory allocation (code space): 12  
 ------------------------------------------------------------------  
   0   8 Bra 0  
   3   3 \x{1000}  
   8   8 Ket  
  11     End  
 ------------------------------------------------------------------  
 Capturing subpattern count = 0  
 Options: utf8  
 First char = 225  
 Need char = 128  
   
 /\x{10000}/8DM  
 Memory allocation (code space): 13  
 ------------------------------------------------------------------  
   0   9 Bra 0  
   3   4 \x{10000}  
   9   9 Ket  
  12     End  
 ------------------------------------------------------------------  
 Capturing subpattern count = 0  
 Options: utf8  
 First char = 240  
 Need char = 128  
   
 /\x{100000}/8DM  
 Memory allocation (code space): 13  
 ------------------------------------------------------------------  
   0   9 Bra 0  
   3   4 \x{100000}  
   9   9 Ket  
  12     End  
 ------------------------------------------------------------------  
 Capturing subpattern count = 0  
 Options: utf8  
 First char = 244  
 Need char = 128  
   
 /\x{1000000}/8DM  
 Memory allocation (code space): 14  
 ------------------------------------------------------------------  
   0  10 Bra 0  
   3   5 \x{1000000}  
  10  10 Ket  
  13     End  
 ------------------------------------------------------------------  
 Capturing subpattern count = 0  
 Options: utf8  
 First char = 249  
 Need char = 128  
   
 /\x{4000000}/8DM  
 Memory allocation (code space): 15  
 ------------------------------------------------------------------  
   0  11 Bra 0  
   3   6 \x{4000000}  
  11  11 Ket  
  14     End  
 ------------------------------------------------------------------  
 Capturing subpattern count = 0  
 Options: utf8  
 First char = 252  
 Need char = 128  
   
 /\x{7fffFFFF}/8DM  
 Memory allocation (code space): 15  
 ------------------------------------------------------------------  
   0  11 Bra 0  
   3   6 \x{7fffffff}  
  11  11 Ket  
  14     End  
 ------------------------------------------------------------------  
 Capturing subpattern count = 0  
 Options: utf8  
 First char = 253  
 Need char = 191  
   
 /[\x{ff}]/8DM  
 Memory allocation (code space): 40  
 ------------------------------------------------------------------  
   0  36 Bra 0  
   3     [\xff]  
  36  36 Ket  
  39     End  
 ------------------------------------------------------------------  
 Capturing subpattern count = 0  
 Options: utf8  
 No first char  
 No need char  
   
 /[\x{100}]/8DM  
 Memory allocation (code space): 47  
 ------------------------------------------------------------------  
   0  11 Bra 0  
   3     [\x{100}]  
  11  11 Ket  
  14     End  
 ------------------------------------------------------------------  
 Capturing subpattern count = 0  
 Options: utf8  
 No first char  
 No need char  
7    
8  /\x{ffffffff}/8  /\x{ffffffff}/8
9  Failed: character value in \x{...} sequence is too large at offset 11  Failed: character value in \x{...} sequence is too large at offset 11
# Line 123  Failed: character value in \x{...} seque Line 11  Failed: character value in \x{...} seque
11  /\x{100000000}/8  /\x{100000000}/8
12  Failed: character value in \x{...} sequence is too large at offset 12  Failed: character value in \x{...} sequence is too large at offset 12
13    
14    /\x{d800}/8
15    Failed: disallowed Unicode code point (>= 0xd800 && <= 0xdfff) at offset 7
16    
17    /\x{dfff}/8
18    Failed: disallowed Unicode code point (>= 0xd800 && <= 0xdfff) at offset 7
19    
20    /\x{d7ff}/8
21    
22    /\x{e000}/8
23    
24  /^\x{100}a\x{1234}/8  /^\x{100}a\x{1234}/8
25      \x{100}a\x{1234}bcd      \x{100}a\x{1234}bcd
26   0: \x{100}a\x{1234}   0: \x{100}a\x{1234}
27    
28  /\x80/8D  /\x{0041}\x{2262}\x{0391}\x{002e}/DZ8
 ------------------------------------------------------------------  
   0   7 Bra 0  
   3   2 \x{80}  
   7   7 Ket  
  10     End  
 ------------------------------------------------------------------  
 Capturing subpattern count = 0  
 Options: utf8  
 First char = 194  
 Need char = 128  
   
 /\xff/8D  
 ------------------------------------------------------------------  
   0   7 Bra 0  
   3   2 \x{ff}  
   7   7 Ket  
  10     End  
 ------------------------------------------------------------------  
 Capturing subpattern count = 0  
 Options: utf8  
 First char = 195  
 Need char = 191  
   
 /\x{0041}\x{2262}\x{0391}\x{002e}/D8  
29  ------------------------------------------------------------------  ------------------------------------------------------------------
30    0  12 Bra 0          Bra
31    3   7 A\x{2262}\x{391}.          A\x{2262}\x{391}.
32   12  12 Ket          Ket
33   15     End          End
34  ------------------------------------------------------------------  ------------------------------------------------------------------
35  Capturing subpattern count = 0  Capturing subpattern count = 0
36  Options: utf8  Options: utf
37  First char = 'A'  First char = 'A'
38  Need char = '.'  Need char = '.'
39      \x{0041}\x{2262}\x{0391}\x{002e}      \x{0041}\x{2262}\x{0391}\x{002e}
40   0: A\x{2262}\x{391}.   0: A\x{2262}\x{391}.
41    
42  /\x{D55c}\x{ad6d}\x{C5B4}/D8  /.{3,5}X/DZ8
 ------------------------------------------------------------------  
   0  14 Bra 0  
   3   9 \x{d55c}\x{ad6d}\x{c5b4}  
  14  14 Ket  
  17     End  
 ------------------------------------------------------------------  
 Capturing subpattern count = 0  
 Options: utf8  
 First char = 237  
 Need char = 180  
     \x{D55c}\x{ad6d}\x{C5B4}  
  0: \x{d55c}\x{ad6d}\x{c5b4}  
   
 /\x{65e5}\x{672c}\x{8a9e}/D8  
 ------------------------------------------------------------------  
   0  14 Bra 0  
   3   9 \x{65e5}\x{672c}\x{8a9e}  
  14  14 Ket  
  17     End  
 ------------------------------------------------------------------  
 Capturing subpattern count = 0  
 Options: utf8  
 First char = 230  
 Need char = 158  
     \x{65e5}\x{672c}\x{8a9e}  
  0: \x{65e5}\x{672c}\x{8a9e}  
   
 /\x{80}/D8  
 ------------------------------------------------------------------  
   0   7 Bra 0  
   3   2 \x{80}  
   7   7 Ket  
  10     End  
 ------------------------------------------------------------------  
 Capturing subpattern count = 0  
 Options: utf8  
 First char = 194  
 Need char = 128  
   
 /\x{084}/D8  
 ------------------------------------------------------------------  
   0   7 Bra 0  
   3   2 \x{84}  
   7   7 Ket  
  10     End  
 ------------------------------------------------------------------  
 Capturing subpattern count = 0  
 Options: utf8  
 First char = 194  
 Need char = 132  
   
 /\x{104}/D8  
 ------------------------------------------------------------------  
   0   7 Bra 0  
   3   2 \x{104}  
   7   7 Ket  
  10     End  
 ------------------------------------------------------------------  
 Capturing subpattern count = 0  
 Options: utf8  
 First char = 196  
 Need char = 132  
   
 /\x{861}/D8  
 ------------------------------------------------------------------  
   0   8 Bra 0  
   3   3 \x{861}  
   8   8 Ket  
  11     End  
 ------------------------------------------------------------------  
 Capturing subpattern count = 0  
 Options: utf8  
 First char = 224  
 Need char = 161  
   
 /\x{212ab}/D8  
43  ------------------------------------------------------------------  ------------------------------------------------------------------
44    0   9 Bra 0          Bra
45    3   4 \x{212ab}          Any{3}
46    9   9 Ket          Any{0,2}
47   12     End          X
48            Ket
49            End
50  ------------------------------------------------------------------  ------------------------------------------------------------------
51  Capturing subpattern count = 0  Capturing subpattern count = 0
52  Options: utf8  Options: utf
 First char = 240  
 Need char = 171  
   
 /.{3,5}X/D8  
 ------------------------------------------------------------------  
   0  14 Bra 0  
   3     Any{3}  
   7     Any{0,2}  
  11   1 X  
  14  14 Ket  
  17     End  
 ------------------------------------------------------------------  
 Capturing subpattern count = 0  
 Options: utf8  
53  No first char  No first char
54  Need char = 'X'  Need char = 'X'
55      \x{212ab}\x{212ab}\x{212ab}\x{861}X      \x{212ab}\x{212ab}\x{212ab}\x{861}X
56   0: \x{212ab}\x{212ab}\x{212ab}\x{861}X   0: \x{212ab}\x{212ab}\x{212ab}\x{861}X
57    
58    /.{3,5}?/DZ8
 /.{3,5}?/D8  
59  ------------------------------------------------------------------  ------------------------------------------------------------------
60    0  11 Bra 0          Bra
61    3     Any{3}          Any{3}
62    7     Any{0,2}?          Any{0,2}?
63   11  11 Ket          Ket
64   14     End          End
65  ------------------------------------------------------------------  ------------------------------------------------------------------
66  Capturing subpattern count = 0  Capturing subpattern count = 0
67  Options: utf8  Options: utf
68  No first char  No first char
69  No need char  No need char
70      \x{212ab}\x{212ab}\x{212ab}\x{861}      \x{212ab}\x{212ab}\x{212ab}\x{861}
71   0: \x{212ab}\x{212ab}\x{212ab}   0: \x{212ab}\x{212ab}\x{212ab}
72    
 /-- These tests are here rather than in testinput4 because Perl 5.6 has --/  
 /-- some problems with UTF-8 support, in the area of \x{..} where the   --/  
 No match  
 /-- value is < 255. It grumbles about invalid UTF-8 strings.            --/  
 No match  
   
 /^[a\x{c0}]b/8  
     \x{c0}b  
  0: \x{c0}b  
   
 /^([a\x{c0}]*?)aa/8  
     a\x{c0}aaaa/  
  0: a\x{c0}aa  
  1: a\x{c0}  
   
 /^([a\x{c0}]*?)aa/8  
     a\x{c0}aaaa/  
  0: a\x{c0}aa  
  1: a\x{c0}  
     a\x{c0}a\x{c0}aaa/  
  0: a\x{c0}a\x{c0}aa  
  1: a\x{c0}a\x{c0}  
   
 /^([a\x{c0}]*)aa/8  
     a\x{c0}aaaa/  
  0: a\x{c0}aaaa  
  1: a\x{c0}aa  
     a\x{c0}a\x{c0}aaa/  
  0: a\x{c0}a\x{c0}aaa  
  1: a\x{c0}a\x{c0}a  
   
 /^([a\x{c0}]*)a\x{c0}/8  
     a\x{c0}aaaa/  
  0: a\x{c0}  
  1:  
     a\x{c0}a\x{c0}aaa/  
  0: a\x{c0}a\x{c0}  
  1: a\x{c0}  
   
 /-- --/  
   
73  /(?<=\C)X/8  /(?<=\C)X/8
74  Failed: \C not allowed in lookbehind assertion at offset 6  Failed: \C not allowed in lookbehind assertion at offset 6
75    
76  /-- This one is here not because it's different to Perl, but because the --/  /^[ab]/8DZ
 /-- way the captured single-byte is displayed. (In Perl it becomes a --/  
 No match  
 /-- character, and you can't tell the difference.) --/  
 No match  
   
 /X(\C)(.*)/8  
     X\x{1234}  
  0: X\x{1234}  
  1: \xe1  
  2: \x88\xb4  
     X\nabc  
  0: X\x{0a}abc  
  1: \x{0a}  
  2: abc  
   
 /^[ab]/8D  
77  ------------------------------------------------------------------  ------------------------------------------------------------------
78    0  37 Bra 0          Bra
79    3     ^          ^
80    4     [a-b]          [ab]
81   37  37 Ket          Ket
82   40     End          End
83  ------------------------------------------------------------------  ------------------------------------------------------------------
84  Capturing subpattern count = 0  Capturing subpattern count = 0
85  Options: anchored utf8  Options: anchored utf
86  No first char  No first char
87  No need char  No need char
88      bar      bar
# Line 368  No match Line 96  No match
96      \x{100}      \x{100}
97  No match  No match
98    
99  /^[^ab]/8D  /^[^ab]/8DZ
100  ------------------------------------------------------------------  ------------------------------------------------------------------
101    0  37 Bra 0          Bra
102    3     ^          ^
103    4     [\x00-`c-\xff] (neg)          [\x00-`c-\xff] (neg)
104   37  37 Ket          Ket
105   40     End          End
106  ------------------------------------------------------------------  ------------------------------------------------------------------
107  Capturing subpattern count = 0  Capturing subpattern count = 0
108  Options: anchored utf8  Options: anchored utf
109  No first char  No first char
110  No need char  No need char
111      c      c
# Line 391  No need char Line 119  No need char
119      aaa      aaa
120  No match  No match
121    
 /[^ab\xC0-\xF0]/8SD  
 ------------------------------------------------------------------  
   0  36 Bra 0  
   3     [\x00-`c-\xbf\xf1-\xff] (neg)  
  36  36 Ket  
  39     End  
 ------------------------------------------------------------------  
 Capturing subpattern count = 0  
 Options: utf8  
 No first char  
 No need char  
 Starting character 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}/8SD  
 ------------------------------------------------------------------  
   0  13 Bra 0  
   3     \x{100}{3}  
   8     \x{100}{,1}  
  13  13 Ket  
  16     End  
 ------------------------------------------------------------------  
 Capturing subpattern count = 0  
 Options: utf8  
 First char = 196  
 Need char = 128  
 Study returned NULL  
   \x{100}\x{100}\x{100}\x{100\x{100}  
  0: \x{100}\x{100}\x{100}  
   
 /(\x{100}+|x)/8SD  
 ------------------------------------------------------------------  
   0  18 Bra 0  
   3   6 Bra 1  
   6     \x{100}+  
   9   6 Alt  
  12   1 x  
  15  12 Ket  
  18  18 Ket  
  21     End  
 ------------------------------------------------------------------  
 Capturing subpattern count = 1  
 Options: utf8  
 No first char  
 No need char  
 Starting character set: x \xc4  
   
 /(\x{100}*a|x)/8SD  
 ------------------------------------------------------------------  
   0  21 Bra 0  
   3   9 Bra 1  
   6     \x{100}*  
   9   1 a  
  12   6 Alt  
  15   1 x  
  18  15 Ket  
  21  21 Ket  
  24     End  
 ------------------------------------------------------------------  
 Capturing subpattern count = 1  
 Options: utf8  
 No first char  
 No need char  
 Starting character set: a x \xc4  
   
 /(\x{100}{0,2}a|x)/8SD  
 ------------------------------------------------------------------  
   0  23 Bra 0  
   3  11 Bra 1  
   6     \x{100}{,2}  
  11   1 a  
  14   6 Alt  
  17   1 x  
  20  17 Ket  
  23  23 Ket  
  26     End  
 ------------------------------------------------------------------  
 Capturing subpattern count = 1  
 Options: utf8  
 No first char  
 No need char  
 Starting character set: a x \xc4  
   
 /(\x{100}{1,2}a|x)/8SD  
 ------------------------------------------------------------------  
   0  27 Bra 0  
   3  15 Bra 1  
   6   2 \x{100}  
  10     \x{100}{,1}  
  15   1 a  
  18   6 Alt  
  21   1 x  
  24  21 Ket  
  27  27 Ket  
  30     End  
 ------------------------------------------------------------------  
 Capturing subpattern count = 1  
 Options: utf8  
 No first char  
 No need char  
 Starting character set: x \xc4  
   
122  /\x{100}*(\d+|"(?1)")/8  /\x{100}*(\d+|"(?1)")/8
123      1234      1234
124   0: 1234   0: 1234
# Line 539  No match Line 143  No match
143      \x{100}\x{100}abcd      \x{100}\x{100}abcd
144  No match  No match
145    
146  /\x{100}/8D  /\x{100}*/8DZ
147  ------------------------------------------------------------------  ------------------------------------------------------------------
148    0   7 Bra 0          Bra
149    3   2 \x{100}          \x{100}*
150    7   7 Ket          Ket
151   10     End          End
152  ------------------------------------------------------------------  ------------------------------------------------------------------
153  Capturing subpattern count = 0  Capturing subpattern count = 0
154  Options: utf8  Options: utf
 First char = 196  
 Need char = 128  
   
 /\x{100}*/8D  
 ------------------------------------------------------------------  
   0   6 Bra 0  
   3     \x{100}*  
   6   6 Ket  
   9     End  
 ------------------------------------------------------------------  
 Capturing subpattern count = 0  
 Options: utf8  
155  No first char  No first char
156  No need char  No need char
157    
158  /a\x{100}*/8D  /a\x{100}*/8DZ
159  ------------------------------------------------------------------  ------------------------------------------------------------------
160    0   9 Bra 0          Bra
161    3   1 a          a
162    6     \x{100}*          \x{100}*
163    9   9 Ket          Ket
164   12     End          End
165  ------------------------------------------------------------------  ------------------------------------------------------------------
166  Capturing subpattern count = 0  Capturing subpattern count = 0
167  Options: utf8  Options: utf
168  First char = 'a'  First char = 'a'
169  No need char  No need char
170    
171  /ab\x{100}*/8D  /ab\x{100}*/8DZ
172  ------------------------------------------------------------------  ------------------------------------------------------------------
173    0  10 Bra 0          Bra
174    3   2 ab          ab
175    7     \x{100}*          \x{100}*
176   10  10 Ket          Ket
177   13     End          End
178  ------------------------------------------------------------------  ------------------------------------------------------------------
179  Capturing subpattern count = 0  Capturing subpattern count = 0
180  Options: utf8  Options: utf
181  First char = 'a'  First char = 'a'
182  Need char = 'b'  Need char = 'b'
183    
184  /a\x{100}\x{101}*/8D  /\x{100}*A/8DZ
185  ------------------------------------------------------------------  ------------------------------------------------------------------
186    0  11 Bra 0          Bra
187    3   3 a\x{100}          \x{100}*+
188    8     \x{101}*          A
189   11  11 Ket          Ket
190   14     End          End
191  ------------------------------------------------------------------  ------------------------------------------------------------------
192  Capturing subpattern count = 0  Capturing subpattern count = 0
193  Options: utf8  Options: utf
 First char = 'a'  
 Need char = 128  
   
 /a\x{100}\x{101}+/8D  
 ------------------------------------------------------------------  
   0  11 Bra 0  
   3   3 a\x{100}  
   8     \x{101}+  
  11  11 Ket  
  14     End  
 ------------------------------------------------------------------  
 Capturing subpattern count = 0  
 Options: utf8  
 First char = 'a'  
 Need char = 129  
   
 /\x{100}*A/8D  
 ------------------------------------------------------------------  
   0   9 Bra 0  
   3     \x{100}*  
   6   1 A  
   9   9 Ket  
  12     End  
 ------------------------------------------------------------------  
 Capturing subpattern count = 0  
 Options: utf8  
194  No first char  No first char
195  Need char = 'A'  Need char = 'A'
196      A      A
197   0: A   0: A
198    
199  /\x{100}*\d(?R)/8D  /\x{100}*\d(?R)/8DZ
 ------------------------------------------------------------------  
   0  10 Bra 0  
   3     \x{100}*  
   6     \d  
   7   0 Recurse  
  10  10 Ket  
  13     End  
 ------------------------------------------------------------------  
 Capturing subpattern count = 0  
 Options: utf8  
 No first char  
 No need char  
   
 /[^\x{c4}]/D  
200  ------------------------------------------------------------------  ------------------------------------------------------------------
201    0  36 Bra 0          Bra
202    3     [\x01-35-bd-z|~-\xff] (neg)          \x{100}*+
203   36  36 Ket          \d
204   39     End          Recurse
205            Ket
206            End
207  ------------------------------------------------------------------  ------------------------------------------------------------------
208  Capturing subpattern count = 0  Capturing subpattern count = 0
209  No options  Options: utf
210  No first char  No first char
211  No need char  No need char
212    
213  /[^\x{c4}]/8D  /[Z\x{100}]/8DZ
214  ------------------------------------------------------------------  ------------------------------------------------------------------
215    0  36 Bra 0          Bra
216    3     [\x00-\xc3\xc5-\xff] (neg)          [Z\x{100}]
217   36  36 Ket          Ket
218   39     End          End
219  ------------------------------------------------------------------  ------------------------------------------------------------------
220  Capturing subpattern count = 0  Capturing subpattern count = 0
221  Options: utf8  Options: utf
 No first char  
 No need char  
   
 /[\x{100}]/8DM  
 Memory allocation (code space): 47  
 ------------------------------------------------------------------  
   0  11 Bra 0  
   3     [\x{100}]  
  11  11 Ket  
  14     End  
 ------------------------------------------------------------------  
 Capturing subpattern count = 0  
 Options: utf8  
 No first char  
 No need char  
     \x{100}  
  0: \x{100}  
     Z\x{100}  
  0: \x{100}  
     \x{100}Z  
  0: \x{100}  
     *** Failers  
 No match  
   
 /[Z\x{100}]/8DM  
 Memory allocation (code space): 47  
 ------------------------------------------------------------------  
   0  43 Bra 0  
   3     [Z\x{100}]  
  43  43 Ket  
  46     End  
 ------------------------------------------------------------------  
 Capturing subpattern count = 0  
 Options: utf8  
222  No first char  No first char
223  No need char  No need char
224      Z\x{100}      Z\x{100}
# Line 725  No match Line 245  No match
245      \x{ff}      \x{ff}
246  No match  No match
247    
248  /[z-\x{100}]/8D  /[z-\x{100}]/8DZ
 ------------------------------------------------------------------  
   0  12 Bra 0  
   3     [z-\x{100}]  
  12  12 Ket  
  15     End  
 ------------------------------------------------------------------  
 Capturing subpattern count = 0  
 Options: utf8  
 No first char  
 No need char  
   
 /[z-\x{100}]/8Di  
249  ------------------------------------------------------------------  ------------------------------------------------------------------
250    0  45 Bra 0          Bra
251    3     [Zz-\xff\x{100}-\x{100}]          [z-\x{100}]
252   45  45 Ket          Ket
253   48     End          End
254  ------------------------------------------------------------------  ------------------------------------------------------------------
255  Capturing subpattern count = 0  Capturing subpattern count = 0
256  Options: caseless utf8  Options: utf
257  No first char  No first char
258  No need char  No need char
259    
260  /[z\Qa-d]Ā\E]/8D  /[z\Qa-d]Ā\E]/8DZ
261  ------------------------------------------------------------------  ------------------------------------------------------------------
262    0  43 Bra 0          Bra
263    3     [\-\]adz\x{100}]          [\-\]adz\x{100}]
264   43  43 Ket          Ket
265   46     End          End
266  ------------------------------------------------------------------  ------------------------------------------------------------------
267  Capturing subpattern count = 0  Capturing subpattern count = 0
268  Options: utf8  Options: utf
269  No first char  No first char
270  No need char  No need char
271      \x{100}      \x{100}
# Line 765  No need char Line 273  No need char
273      Ā      Ā
274   0: \x{100}   0: \x{100}
275    
276  /[\xFF]/D  /[\xFF]/DZ
277  ------------------------------------------------------------------  ------------------------------------------------------------------
278    0   6 Bra 0          Bra
279    3   1 \xff          \xff
280    6   6 Ket          Ket
281    9     End          End
282  ------------------------------------------------------------------  ------------------------------------------------------------------
283  Capturing subpattern count = 0  Capturing subpattern count = 0
284  No options  No options
285  First char = 255  First char = \xff
286  No need char  No need char
287      >\xff<      >\xff<
288   0: \xff   0: \xff
289    
290  /[\xff]/D8  /[^\xFF]/DZ
291  ------------------------------------------------------------------  ------------------------------------------------------------------
292    0  36 Bra 0          Bra
293    3     [\xff]          [^\xff]
294   36  36 Ket          Ket
295   39     End          End
 ------------------------------------------------------------------  
 Capturing subpattern count = 0  
 Options: utf8  
 No first char  
 No need char  
     >\x{ff}<  
  0: \x{ff}  
   
 /[^\xFF]/D  
 ------------------------------------------------------------------  
   0   5 Bra 0  
   3     [^\xff]  
   5   5 Ket  
   8     End  
296  ------------------------------------------------------------------  ------------------------------------------------------------------
297  Capturing subpattern count = 0  Capturing subpattern count = 0
298  No options  No options
299  No first char  No first char
300  No need char  No need char
301    
 /[^\xff]/8D  
 ------------------------------------------------------------------  
   0  36 Bra 0  
   3     [\x00-\xfe] (neg)  
  36  36 Ket  
  39     End  
 ------------------------------------------------------------------  
 Capturing subpattern count = 0  
 Options: utf8  
 No first char  
 No need char  
   
302  /[Ä-Ü]/8  /[Ä-Ü]/8
303      Ö # Matches without Study      Ö # Matches without Study
304   0: \x{d6}   0: \x{d6}
# Line 841  No need char Line 323  No need char
323      \x{d6}      \x{d6}
324   0: \x{d6}   0: \x{d6}
325    
326  /[]/8  /[^\x{100}]abc(xyz(?1))/8DZ
327  Failed: invalid UTF-8 string at offset 2  ------------------------------------------------------------------
328            Bra
329            [^\x{100}]
330            abc
331            CBra 1
332            xyz
333            Recurse
334            Ket
335            Ket
336            End
337    ------------------------------------------------------------------
338    Capturing subpattern count = 1
339    Options: utf
340    No first char
341    Need char = 'z'
342    
343    /[ab\x{100}]abc(xyz(?1))/8DZ
344    ------------------------------------------------------------------
345            Bra
346            [ab\x{100}]
347            abc
348            CBra 1
349            xyz
350            Recurse
351            Ket
352            Ket
353            End
354    ------------------------------------------------------------------
355    Capturing subpattern count = 1
356    Options: utf
357    No first char
358    Need char = 'z'
359    
360    /(\x{100}(b(?2)c))?/DZ8
361    ------------------------------------------------------------------
362            Bra
363            Brazero
364            CBra 1
365            \x{100}
366            CBra 2
367            b
368            Recurse
369            c
370            Ket
371            Ket
372            Ket
373            End
374    ------------------------------------------------------------------
375    Capturing subpattern count = 2
376    Options: utf
377    No first char
378    No need char
379    
380    /(\x{100}(b(?2)c)){0,2}/DZ8
381    ------------------------------------------------------------------
382            Bra
383            Brazero
384            Bra
385            CBra 1
386            \x{100}
387            CBra 2
388            b
389            Recurse
390            c
391            Ket
392            Ket
393            Brazero
394            CBra 1
395            \x{100}
396            CBra 2
397            b
398            Recurse
399            c
400            Ket
401            Ket
402            Ket
403            Ket
404            End
405    ------------------------------------------------------------------
406    Capturing subpattern count = 2
407    Options: utf
408    No first char
409    No need char
410    
411    /(\x{100}(b(?1)c))?/DZ8
412    ------------------------------------------------------------------
413            Bra
414            Brazero
415            CBra 1
416            \x{100}
417            CBra 2
418            b
419            Recurse
420            c
421            Ket
422            Ket
423            Ket
424            End
425    ------------------------------------------------------------------
426    Capturing subpattern count = 2
427    Options: utf
428    No first char
429    No need char
430    
431    /(\x{100}(b(?1)c)){0,2}/DZ8
432    ------------------------------------------------------------------
433            Bra
434            Brazero
435            Bra
436            CBra 1
437            \x{100}
438            CBra 2
439            b
440            Recurse
441            c
442            Ket
443            Ket
444            Brazero
445            CBra 1
446            \x{100}
447            CBra 2
448            b
449            Recurse
450            c
451            Ket
452            Ket
453            Ket
454            Ket
455            End
456    ------------------------------------------------------------------
457    Capturing subpattern count = 2
458    Options: utf
459    No first char
460    No need char
461    
462    /\W/8
463        A.B
464     0: .
465        A\x{100}B
466     0: \x{100}
467    
468    /\w/8
469        \x{100}X
470     0: X
471    
472    /^\ሴ/8DZ
473    ------------------------------------------------------------------
474            Bra
475            ^
476            \x{1234}
477            Ket
478            End
479    ------------------------------------------------------------------
480    Capturing subpattern count = 0
481    Options: anchored utf
482    No first char
483    No need char
484    
485    /\x{100}*\d/8DZ
486    ------------------------------------------------------------------
487            Bra
488            \x{100}*+
489            \d
490            Ket
491            End
492    ------------------------------------------------------------------
493    Capturing subpattern count = 0
494    Options: utf
495    No first char
496    No need char
497    
498    /\x{100}*\s/8DZ
499    ------------------------------------------------------------------
500            Bra
501            \x{100}*+
502            \s
503            Ket
504            End
505    ------------------------------------------------------------------
506    Capturing subpattern count = 0
507    Options: utf
508    No first char
509    No need char
510    
511    /\x{100}*\w/8DZ
512    ------------------------------------------------------------------
513            Bra
514            \x{100}*+
515            \w
516            Ket
517            End
518    ------------------------------------------------------------------
519    Capturing subpattern count = 0
520    Options: utf
521    No first char
522    No need char
523    
524    /\x{100}*\D/8DZ
525    ------------------------------------------------------------------
526            Bra
527            \x{100}*
528            \D
529            Ket
530            End
531    ------------------------------------------------------------------
532    Capturing subpattern count = 0
533    Options: utf
534    No first char
535    No need char
536    
537    /\x{100}*\S/8DZ
538    ------------------------------------------------------------------
539            Bra
540            \x{100}*
541            \S
542            Ket
543            End
544    ------------------------------------------------------------------
545    Capturing subpattern count = 0
546    Options: utf
547    No first char
548    No need char
549    
550    /\x{100}*\W/8DZ
551    ------------------------------------------------------------------
552            Bra
553            \x{100}*
554            \W
555            Ket
556            End
557    ------------------------------------------------------------------
558    Capturing subpattern count = 0
559    Options: utf
560    No first char
561    No need char
562    
563    /()()()()()()()()()()
564     ()()()()()()()()()()
565     ()()()()()()()()()()
566     ()()()()()()()()()()
567     A (x) (?41) B/8x
568        AxxB
569    Matched, but too many substrings
570     0: AxxB
571     1:
572     2:
573     3:
574     4:
575     5:
576     6:
577     7:
578     8:
579     9:
580    10:
581    11:
582    12:
583    13:
584    14:
585    
586    /^[\x{100}\E-\Q\E\x{150}]/BZ8
587    ------------------------------------------------------------------
588            Bra
589            ^
590            [\x{100}-\x{150}]
591            Ket
592            End
593    ------------------------------------------------------------------
594    
595    /^[\QĀ\E-\QŐ\E]/BZ8
596    ------------------------------------------------------------------
597            Bra
598            ^
599            [\x{100}-\x{150}]
600            Ket
601            End
602    ------------------------------------------------------------------
603    
604    /^abc./mgx8<any>
605        abc1 \x0aabc2 \x0babc3xx \x0cabc4 \x0dabc5xx \x0d\x0aabc6 \x{0085}abc7 \x{2028}abc8 \x{2029}abc9 JUNK
606     0: abc1
607     0: abc2
608     0: abc3
609     0: abc4
610     0: abc5
611     0: abc6
612     0: abc7
613     0: abc8
614     0: abc9
615    
616    /abc.$/mgx8<any>
617        abc1\x0a abc2\x0b abc3\x0c abc4\x0d abc5\x0d\x0a abc6\x{0085} abc7\x{2028} abc8\x{2029} abc9
618     0: abc1
619     0: abc2
620     0: abc3
621     0: abc4
622     0: abc5
623     0: abc6
624     0: abc7
625     0: abc8
626     0: abc9
627    
628    /^a\Rb/8<bsr_unicode>
629        a\nb
630     0: a\x{0a}b
631        a\rb
632     0: a\x{0d}b
633        a\r\nb
634     0: a\x{0d}\x{0a}b
635        a\x0bb
636     0: a\x{0b}b
637        a\x0cb
638     0: a\x{0c}b
639        a\x{85}b
640     0: a\x{85}b
641        a\x{2028}b
642     0: a\x{2028}b
643        a\x{2029}b
644     0: a\x{2029}b
645        ** Failers
646    No match
647        a\n\rb
648    No match
649    
650    /^a\R*b/8<bsr_unicode>
651        ab
652     0: ab
653        a\nb
654     0: a\x{0a}b
655        a\rb
656     0: a\x{0d}b
657        a\r\nb
658     0: a\x{0d}\x{0a}b
659        a\x0bb
660     0: a\x{0b}b
661        a\x0c\x{2028}\x{2029}b
662     0: a\x{0c}\x{2028}\x{2029}b
663        a\x{85}b
664     0: a\x{85}b
665        a\n\rb
666     0: a\x{0a}\x{0d}b
667        a\n\r\x{85}\x0cb
668     0: a\x{0a}\x{0d}\x{85}\x{0c}b
669    
670    /^a\R+b/8<bsr_unicode>
671        a\nb
672     0: a\x{0a}b
673        a\rb
674     0: a\x{0d}b
675        a\r\nb
676     0: a\x{0d}\x{0a}b
677        a\x0bb
678     0: a\x{0b}b
679        a\x0c\x{2028}\x{2029}b
680     0: a\x{0c}\x{2028}\x{2029}b
681        a\x{85}b
682     0: a\x{85}b
683        a\n\rb
684     0: a\x{0a}\x{0d}b
685        a\n\r\x{85}\x0cb
686     0: a\x{0a}\x{0d}\x{85}\x{0c}b
687        ** Failers
688    No match
689        ab
690    No match
691    
692    /^a\R{1,3}b/8<bsr_unicode>
693        a\nb
694     0: a\x{0a}b
695        a\n\rb
696     0: a\x{0a}\x{0d}b
697        a\n\r\x{85}b
698     0: a\x{0a}\x{0d}\x{85}b
699        a\r\n\r\nb
700     0: a\x{0d}\x{0a}\x{0d}\x{0a}b
701        a\r\n\r\n\r\nb
702     0: a\x{0d}\x{0a}\x{0d}\x{0a}\x{0d}\x{0a}b
703        a\n\r\n\rb
704     0: a\x{0a}\x{0d}\x{0a}\x{0d}b
705        a\n\n\r\nb
706     0: a\x{0a}\x{0a}\x{0d}\x{0a}b
707        ** Failers
708    No match
709        a\n\n\n\rb
710    No match
711        a\r
712    No match
713    
714  //8  /\H\h\V\v/8
715  Failed: invalid UTF-8 string at offset 0      X X\x0a
716     0: X X\x{0a}
717        X\x09X\x0b
718     0: X\x{09}X\x{0b}
719        ** Failers
720    No match
721        \x{a0} X\x0a
722    No match
723    
724    /\H*\h+\V?\v{3,4}/8
725        \x09\x20\x{a0}X\x0a\x0b\x0c\x0d\x0a
726     0: \x{09} \x{a0}X\x{0a}\x{0b}\x{0c}\x{0d}
727        \x09\x20\x{a0}\x0a\x0b\x0c\x0d\x0a
728     0: \x{09} \x{a0}\x{0a}\x{0b}\x{0c}\x{0d}
729        \x09\x20\x{a0}\x0a\x0b\x0c
730     0: \x{09} \x{a0}\x{0a}\x{0b}\x{0c}
731        ** Failers
732    No match
733        \x09\x20\x{a0}\x0a\x0b
734    No match
735    
736    /\H\h\V\v/8
737        \x{3001}\x{3000}\x{2030}\x{2028}
738     0: \x{3001}\x{3000}\x{2030}\x{2028}
739        X\x{180e}X\x{85}
740     0: X\x{180e}X\x{85}
741        ** Failers
742    No match
743        \x{2009} X\x0a
744    No match
745    
746    /\H*\h+\V?\v{3,4}/8
747        \x{1680}\x{180e}\x{2007}X\x{2028}\x{2029}\x0c\x0d\x0a
748     0: \x{1680}\x{180e}\x{2007}X\x{2028}\x{2029}\x{0c}\x{0d}
749        \x09\x{205f}\x{a0}\x0a\x{2029}\x0c\x{2028}\x0a
750     0: \x{09}\x{205f}\x{a0}\x{0a}\x{2029}\x{0c}\x{2028}
751        \x09\x20\x{202f}\x0a\x0b\x0c
752     0: \x{09} \x{202f}\x{0a}\x{0b}\x{0c}
753        ** Failers
754    No match
755        \x09\x{200a}\x{a0}\x{2028}\x0b
756    No match
757    
758    /[\h]/8BZ
759    ------------------------------------------------------------------
760            Bra
761            [\x09 \xa0\x{1680}\x{180e}\x{2000}-\x{200a}\x{202f}\x{205f}\x{3000}]
762            Ket
763            End
764    ------------------------------------------------------------------
765        >\x{1680}
766     0: \x{1680}
767    
768    /[\h]{3,}/8BZ
769    ------------------------------------------------------------------
770            Bra
771            [\x09 \xa0\x{1680}\x{180e}\x{2000}-\x{200a}\x{202f}\x{205f}\x{3000}]{3,}
772            Ket
773            End
774    ------------------------------------------------------------------
775        >\x{1680}\x{180e}\x{2000}\x{2003}\x{200a}\x{202f}\x{205f}\x{3000}<
776     0: \x{1680}\x{180e}\x{2000}\x{2003}\x{200a}\x{202f}\x{205f}\x{3000}
777    
778  /xxx/8  /[\v]/8BZ
779  Failed: invalid UTF-8 string at offset 1  ------------------------------------------------------------------
780            Bra
781            [\x0a-\x0d\x85\x{2028}-\x{2029}]
782            Ket
783            End
784    ------------------------------------------------------------------
785    
786    /[\H]/8BZ
787    ------------------------------------------------------------------
788            Bra
789            [\x00-\x08\x0a-\x1f!-\x9f\xa1-\xff\x{100}-\x{167f}\x{1681}-\x{180d}\x{180f}-\x{1fff}\x{200b}-\x{202e}\x{2030}-\x{205e}\x{2060}-\x{2fff}\x{3001}-\x{10ffff}]
790            Ket
791            End
792    ------------------------------------------------------------------
793    
794  /xxx/8?D  /[\V]/8BZ
795  ------------------------------------------------------------------  ------------------------------------------------------------------
796    0  11 Bra 0          Bra
797    3   6 \x{c3}\x{f8}xx          [\x00-\x09\x0e-\x84\x86-\xff\x{100}-\x{2027}\x{202a}-\x{10ffff}]
798   11  11 Ket          Ket
799   14     End          End
800  ------------------------------------------------------------------  ------------------------------------------------------------------
801    
802    /.*$/8<any>
803        \x{1ec5}
804     0: \x{1ec5}
805    
806    /a\Rb/I8<bsr_anycrlf>
807  Capturing subpattern count = 0  Capturing subpattern count = 0
808  Options: utf8 no_utf8_check  Options: bsr_anycrlf utf
809  First char = 195  First char = 'a'
810  Need char = 'x'  Need char = 'b'
811        a\rb
812     0: a\x{0d}b
813        a\nb
814     0: a\x{0a}b
815        a\r\nb
816     0: a\x{0d}\x{0a}b
817        ** Failers
818    No match
819        a\x{85}b
820    No match
821        a\x0bb
822    No match
823    
824  /abc/8  /a\Rb/I8<bsr_unicode>
825     ]  Capturing subpattern count = 0
826  Error -10  Options: bsr_unicode utf
827      First char = 'a'
828  Error -10  Need char = 'b'
829          a\rb
830  Error -10   0: a\x{0d}b
831     \?      a\nb
832     0: a\x{0a}b
833        a\r\nb
834     0: a\x{0d}\x{0a}b
835        a\x{85}b
836     0: a\x{85}b
837        a\x0bb
838     0: a\x{0b}b
839        ** Failers
840    No match
841        a\x{85}b\<bsr_anycrlf>
842    No match
843        a\x0bb\<bsr_anycrlf>
844    No match
845    
846    /a\R?b/I8<bsr_anycrlf>
847    Capturing subpattern count = 0
848    Options: bsr_anycrlf utf
849    First char = 'a'
850    Need char = 'b'
851        a\rb
852     0: a\x{0d}b
853        a\nb
854     0: a\x{0a}b
855        a\r\nb
856     0: a\x{0d}\x{0a}b
857        ** Failers
858    No match
859        a\x{85}b
860    No match
861        a\x0bb
862  No match  No match
863    
864  / End of testinput5 /  /a\R?b/I8<bsr_unicode>
865    Capturing subpattern count = 0
866    Options: bsr_unicode utf
867    First char = 'a'
868    Need char = 'b'
869        a\rb
870     0: a\x{0d}b
871        a\nb
872     0: a\x{0a}b
873        a\r\nb
874     0: a\x{0d}\x{0a}b
875        a\x{85}b
876     0: a\x{85}b
877        a\x0bb
878     0: a\x{0b}b
879        ** Failers
880    No match
881        a\x{85}b\<bsr_anycrlf>
882    No match
883        a\x0bb\<bsr_anycrlf>
884    No match
885    
886    /.*a.*=.b.*/8<ANY>
887        QQQ\x{2029}ABCaXYZ=!bPQR
888     0: ABCaXYZ=!bPQR
889        ** Failers
890    No match
891        a\x{2029}b
892    No match
893        \x61\xe2\x80\xa9\x62
894    No match
895    
896    /[[:a\x{100}b:]]/8
897    Failed: unknown POSIX class name at offset 3
898    
899    /a[^]b/<JS>8
900        a\x{1234}b
901     0: a\x{1234}b
902        a\nb
903     0: a\x{0a}b
904        ** Failers
905    No match
906        ab
907    No match
908    
909    /a[^]+b/<JS>8
910        aXb
911     0: aXb
912        a\nX\nX\x{1234}b
913     0: a\x{0a}X\x{0a}X\x{1234}b
914        ** Failers
915    No match
916        ab
917    No match
918    
919    /(\x{de})\1/
920        \x{de}\x{de}
921     0: \xde\xde
922     1: \xde
923    
924    /X/8f<any>
925        A\x{1ec5}ABCXYZ
926     0: X
927    
928    /Xa{2,4}b/8
929        X\P
930    Partial match: X
931        Xa\P
932    Partial match: Xa
933        Xaa\P
934    Partial match: Xaa
935        Xaaa\P
936    Partial match: Xaaa
937        Xaaaa\P
938    Partial match: Xaaaa
939    
940    /Xa{2,4}?b/8
941        X\P
942    Partial match: X
943        Xa\P
944    Partial match: Xa
945        Xaa\P
946    Partial match: Xaa
947        Xaaa\P
948    Partial match: Xaaa
949        Xaaaa\P
950    Partial match: Xaaaa
951    
952    /Xa{2,4}+b/8
953        X\P
954    Partial match: X
955        Xa\P
956    Partial match: Xa
957        Xaa\P
958    Partial match: Xaa
959        Xaaa\P
960    Partial match: Xaaa
961        Xaaaa\P
962    Partial match: Xaaaa
963    
964    /X\x{123}{2,4}b/8
965        X\P
966    Partial match: X
967        X\x{123}\P
968    Partial match: X\x{123}
969        X\x{123}\x{123}\P
970    Partial match: X\x{123}\x{123}
971        X\x{123}\x{123}\x{123}\P
972    Partial match: X\x{123}\x{123}\x{123}
973        X\x{123}\x{123}\x{123}\x{123}\P
974    Partial match: X\x{123}\x{123}\x{123}\x{123}
975    
976    /X\x{123}{2,4}?b/8
977        X\P
978    Partial match: X
979        X\x{123}\P
980    Partial match: X\x{123}
981        X\x{123}\x{123}\P
982    Partial match: X\x{123}\x{123}
983        X\x{123}\x{123}\x{123}\P
984    Partial match: X\x{123}\x{123}\x{123}
985        X\x{123}\x{123}\x{123}\x{123}\P
986    Partial match: X\x{123}\x{123}\x{123}\x{123}
987    
988    /X\x{123}{2,4}+b/8
989        X\P
990    Partial match: X
991        X\x{123}\P
992    Partial match: X\x{123}
993        X\x{123}\x{123}\P
994    Partial match: X\x{123}\x{123}
995        X\x{123}\x{123}\x{123}\P
996    Partial match: X\x{123}\x{123}\x{123}
997        X\x{123}\x{123}\x{123}\x{123}\P
998    Partial match: X\x{123}\x{123}\x{123}\x{123}
999    
1000    /X\x{123}{2,4}b/8
1001        Xx\P
1002    No match
1003        X\x{123}x\P
1004    No match
1005        X\x{123}\x{123}x\P
1006    No match
1007        X\x{123}\x{123}\x{123}x\P
1008    No match
1009        X\x{123}\x{123}\x{123}\x{123}x\P
1010    No match
1011    
1012    /X\x{123}{2,4}?b/8
1013        Xx\P
1014    No match
1015        X\x{123}x\P
1016    No match
1017        X\x{123}\x{123}x\P
1018    No match
1019        X\x{123}\x{123}\x{123}x\P
1020    No match
1021        X\x{123}\x{123}\x{123}\x{123}x\P
1022    No match
1023    
1024    /X\x{123}{2,4}+b/8
1025        Xx\P
1026    No match
1027        X\x{123}x\P
1028    No match
1029        X\x{123}\x{123}x\P
1030    No match
1031        X\x{123}\x{123}\x{123}x\P
1032    No match
1033        X\x{123}\x{123}\x{123}\x{123}x\P
1034    No match
1035    
1036    /X\d{2,4}b/8
1037        X\P
1038    Partial match: X
1039        X3\P
1040    Partial match: X3
1041        X33\P
1042    Partial match: X33
1043        X333\P
1044    Partial match: X333
1045        X3333\P
1046    Partial match: X3333
1047    
1048    /X\d{2,4}?b/8
1049        X\P
1050    Partial match: X
1051        X3\P
1052    Partial match: X3
1053        X33\P
1054    Partial match: X33
1055        X333\P
1056    Partial match: X333
1057        X3333\P
1058    Partial match: X3333
1059    
1060    /X\d{2,4}+b/8
1061        X\P
1062    Partial match: X
1063        X3\P
1064    Partial match: X3
1065        X33\P
1066    Partial match: X33
1067        X333\P
1068    Partial match: X333
1069        X3333\P
1070    Partial match: X3333
1071    
1072    /X\D{2,4}b/8
1073        X\P
1074    Partial match: X
1075        Xa\P
1076    Partial match: Xa
1077        Xaa\P
1078    Partial match: Xaa
1079        Xaaa\P
1080    Partial match: Xaaa
1081        Xaaaa\P
1082    Partial match: Xaaaa
1083    
1084    /X\D{2,4}?b/8
1085        X\P
1086    Partial match: X
1087        Xa\P
1088    Partial match: Xa
1089        Xaa\P
1090    Partial match: Xaa
1091        Xaaa\P
1092    Partial match: Xaaa
1093        Xaaaa\P
1094    Partial match: Xaaaa
1095    
1096    /X\D{2,4}+b/8
1097        X\P
1098    Partial match: X
1099        Xa\P
1100    Partial match: Xa
1101        Xaa\P
1102    Partial match: Xaa
1103        Xaaa\P
1104    Partial match: Xaaa
1105        Xaaaa\P
1106    Partial match: Xaaaa
1107    
1108    /X\D{2,4}b/8
1109        X\P
1110    Partial match: X
1111        X\x{123}\P
1112    Partial match: X\x{123}
1113        X\x{123}\x{123}\P
1114    Partial match: X\x{123}\x{123}
1115        X\x{123}\x{123}\x{123}\P
1116    Partial match: X\x{123}\x{123}\x{123}
1117        X\x{123}\x{123}\x{123}\x{123}\P
1118    Partial match: X\x{123}\x{123}\x{123}\x{123}
1119    
1120    /X\D{2,4}?b/8
1121        X\P
1122    Partial match: X
1123        X\x{123}\P
1124    Partial match: X\x{123}
1125        X\x{123}\x{123}\P
1126    Partial match: X\x{123}\x{123}
1127        X\x{123}\x{123}\x{123}\P
1128    Partial match: X\x{123}\x{123}\x{123}
1129        X\x{123}\x{123}\x{123}\x{123}\P
1130    Partial match: X\x{123}\x{123}\x{123}\x{123}
1131    
1132    /X\D{2,4}+b/8
1133        X\P
1134    Partial match: X
1135        X\x{123}\P
1136    Partial match: X\x{123}
1137        X\x{123}\x{123}\P
1138    Partial match: X\x{123}\x{123}
1139        X\x{123}\x{123}\x{123}\P
1140    Partial match: X\x{123}\x{123}\x{123}
1141        X\x{123}\x{123}\x{123}\x{123}\P
1142    Partial match: X\x{123}\x{123}\x{123}\x{123}
1143    
1144    /X[abc]{2,4}b/8
1145        X\P
1146    Partial match: X
1147        Xa\P
1148    Partial match: Xa
1149        Xaa\P
1150    Partial match: Xaa
1151        Xaaa\P
1152    Partial match: Xaaa
1153        Xaaaa\P
1154    Partial match: Xaaaa
1155    
1156    /X[abc]{2,4}?b/8
1157        X\P
1158    Partial match: X
1159        Xa\P
1160    Partial match: Xa
1161        Xaa\P
1162    Partial match: Xaa
1163        Xaaa\P
1164    Partial match: Xaaa
1165        Xaaaa\P
1166    Partial match: Xaaaa
1167    
1168    /X[abc]{2,4}+b/8
1169        X\P
1170    Partial match: X
1171        Xa\P
1172    Partial match: Xa
1173        Xaa\P
1174    Partial match: Xaa
1175        Xaaa\P
1176    Partial match: Xaaa
1177        Xaaaa\P
1178    Partial match: Xaaaa
1179    
1180    /X[abc\x{123}]{2,4}b/8
1181        X\P
1182    Partial match: X
1183        X\x{123}\P
1184    Partial match: X\x{123}
1185        X\x{123}\x{123}\P
1186    Partial match: X\x{123}\x{123}
1187        X\x{123}\x{123}\x{123}\P
1188    Partial match: X\x{123}\x{123}\x{123}
1189        X\x{123}\x{123}\x{123}\x{123}\P
1190    Partial match: X\x{123}\x{123}\x{123}\x{123}
1191    
1192    /X[abc\x{123}]{2,4}?b/8
1193        X\P
1194    Partial match: X
1195        X\x{123}\P
1196    Partial match: X\x{123}
1197        X\x{123}\x{123}\P
1198    Partial match: X\x{123}\x{123}
1199        X\x{123}\x{123}\x{123}\P
1200    Partial match: X\x{123}\x{123}\x{123}
1201        X\x{123}\x{123}\x{123}\x{123}\P
1202    Partial match: X\x{123}\x{123}\x{123}\x{123}
1203    
1204    /X[abc\x{123}]{2,4}+b/8
1205        X\P
1206    Partial match: X
1207        X\x{123}\P
1208    Partial match: X\x{123}
1209        X\x{123}\x{123}\P
1210    Partial match: X\x{123}\x{123}
1211        X\x{123}\x{123}\x{123}\P
1212    Partial match: X\x{123}\x{123}\x{123}
1213        X\x{123}\x{123}\x{123}\x{123}\P
1214    Partial match: X\x{123}\x{123}\x{123}\x{123}
1215    
1216    /X[^a]{2,4}b/8
1217        X\P
1218    Partial match: X
1219        Xz\P
1220    Partial match: Xz
1221        Xzz\P
1222    Partial match: Xzz
1223        Xzzz\P
1224    Partial match: Xzzz
1225        Xzzzz\P
1226    Partial match: Xzzzz
1227    
1228    /X[^a]{2,4}?b/8
1229        X\P
1230    Partial match: X
1231        Xz\P
1232    Partial match: Xz
1233        Xzz\P
1234    Partial match: Xzz
1235        Xzzz\P
1236    Partial match: Xzzz
1237        Xzzzz\P
1238    Partial match: Xzzzz
1239    
1240    /X[^a]{2,4}+b/8
1241        X\P
1242    Partial match: X
1243        Xz\P
1244    Partial match: Xz
1245        Xzz\P
1246    Partial match: Xzz
1247        Xzzz\P
1248    Partial match: Xzzz
1249        Xzzzz\P
1250    Partial match: Xzzzz
1251    
1252    /X[^a]{2,4}b/8
1253        X\P
1254    Partial match: X
1255        X\x{123}\P
1256    Partial match: X\x{123}
1257        X\x{123}\x{123}\P
1258    Partial match: X\x{123}\x{123}
1259        X\x{123}\x{123}\x{123}\P
1260    Partial match: X\x{123}\x{123}\x{123}
1261        X\x{123}\x{123}\x{123}\x{123}\P
1262    Partial match: X\x{123}\x{123}\x{123}\x{123}
1263    
1264    /X[^a]{2,4}?b/8
1265        X\P
1266    Partial match: X
1267        X\x{123}\P
1268    Partial match: X\x{123}
1269        X\x{123}\x{123}\P
1270    Partial match: X\x{123}\x{123}
1271        X\x{123}\x{123}\x{123}\P
1272    Partial match: X\x{123}\x{123}\x{123}
1273        X\x{123}\x{123}\x{123}\x{123}\P
1274    Partial match: X\x{123}\x{123}\x{123}\x{123}
1275    
1276    /X[^a]{2,4}+b/8
1277        X\P
1278    Partial match: X
1279        X\x{123}\P
1280    Partial match: X\x{123}
1281        X\x{123}\x{123}\P
1282    Partial match: X\x{123}\x{123}
1283        X\x{123}\x{123}\x{123}\P
1284    Partial match: X\x{123}\x{123}\x{123}
1285        X\x{123}\x{123}\x{123}\x{123}\P
1286    Partial match: X\x{123}\x{123}\x{123}\x{123}
1287    
1288    /(Y)X\1{2,4}b/8
1289        YX\P
1290    Partial match: YX
1291        YXY\P
1292    Partial match: YXY
1293        YXYY\P
1294    Partial match: YXYY
1295        YXYYY\P
1296    Partial match: YXYYY
1297        YXYYYY\P
1298    Partial match: YXYYYY
1299    
1300    /(Y)X\1{2,4}?b/8
1301        YX\P
1302    Partial match: YX
1303        YXY\P
1304    Partial match: YXY
1305        YXYY\P
1306    Partial match: YXYY
1307        YXYYY\P
1308    Partial match: YXYYY
1309        YXYYYY\P
1310    Partial match: YXYYYY
1311    
1312    /(Y)X\1{2,4}+b/8
1313        YX\P
1314    Partial match: YX
1315        YXY\P
1316    Partial match: YXY
1317        YXYY\P
1318    Partial match: YXYY
1319        YXYYY\P
1320    Partial match: YXYYY
1321        YXYYYY\P
1322    Partial match: YXYYYY
1323    
1324    /(\x{123})X\1{2,4}b/8
1325        \x{123}X\P
1326    Partial match: \x{123}X
1327        \x{123}X\x{123}\P
1328    Partial match: \x{123}X\x{123}
1329        \x{123}X\x{123}\x{123}\P
1330    Partial match: \x{123}X\x{123}\x{123}
1331        \x{123}X\x{123}\x{123}\x{123}\P
1332    Partial match: \x{123}X\x{123}\x{123}\x{123}
1333        \x{123}X\x{123}\x{123}\x{123}\x{123}\P
1334    Partial match: \x{123}X\x{123}\x{123}\x{123}\x{123}
1335    
1336    /(\x{123})X\1{2,4}?b/8
1337        \x{123}X\P
1338    Partial match: \x{123}X
1339        \x{123}X\x{123}\P
1340    Partial match: \x{123}X\x{123}
1341        \x{123}X\x{123}\x{123}\P
1342    Partial match: \x{123}X\x{123}\x{123}
1343        \x{123}X\x{123}\x{123}\x{123}\P
1344    Partial match: \x{123}X\x{123}\x{123}\x{123}
1345        \x{123}X\x{123}\x{123}\x{123}\x{123}\P
1346    Partial match: \x{123}X\x{123}\x{123}\x{123}\x{123}
1347    
1348    /(\x{123})X\1{2,4}+b/8
1349        \x{123}X\P
1350    Partial match: \x{123}X
1351        \x{123}X\x{123}\P
1352    Partial match: \x{123}X\x{123}
1353        \x{123}X\x{123}\x{123}\P
1354    Partial match: \x{123}X\x{123}\x{123}
1355        \x{123}X\x{123}\x{123}\x{123}\P
1356    Partial match: \x{123}X\x{123}\x{123}\x{123}
1357        \x{123}X\x{123}\x{123}\x{123}\x{123}\P
1358    Partial match: \x{123}X\x{123}\x{123}\x{123}\x{123}
1359    
1360    /\bthe cat\b/8
1361        the cat\P
1362     0: the cat
1363        the cat\P\P
1364    Partial match: the cat
1365    
1366    /abcd*/8
1367        xxxxabcd\P
1368     0: abcd
1369        xxxxabcd\P\P
1370    Partial match: abcd
1371    
1372    /abcd*/i8
1373        xxxxabcd\P
1374     0: abcd
1375        xxxxabcd\P\P
1376    Partial match: abcd
1377        XXXXABCD\P
1378     0: ABCD
1379        XXXXABCD\P\P
1380    Partial match: ABCD
1381    
1382    /abc\d*/8
1383        xxxxabc1\P
1384     0: abc1
1385        xxxxabc1\P\P
1386    Partial match: abc1
1387    
1388    /(a)bc\1*/8
1389        xxxxabca\P
1390     0: abca
1391     1: a
1392        xxxxabca\P\P
1393    Partial match: abca
1394    
1395    /abc[de]*/8
1396        xxxxabcde\P
1397     0: abcde
1398        xxxxabcde\P\P
1399    Partial match: abcde
1400    
1401    /X\W{3}X/8
1402        \PX
1403    Partial match: X
1404    
1405    /\sxxx\s/8T1
1406        AB\x{85}xxx\x{a0}XYZ
1407     0: \x{85}xxx\x{a0}
1408        AB\x{a0}xxx\x{85}XYZ
1409     0: \x{a0}xxx\x{85}
1410    
1411    /\S \S/8T1
1412        \x{a2} \x{84}
1413     0: \x{a2} \x{84}
1414    
1415    'A#хц'8x<any>BZ
1416    ------------------------------------------------------------------
1417            Bra
1418            A
1419            Ket
1420            End
1421    ------------------------------------------------------------------
1422    
1423    'A#хц
1424      PQ'8x<any>BZ
1425    ------------------------------------------------------------------
1426            Bra
1427            APQ
1428            Ket
1429            End
1430    ------------------------------------------------------------------
1431    
1432    /a+#хaa
1433      z#XX?/8x<any>BZ
1434    ------------------------------------------------------------------
1435            Bra
1436            a++
1437            z
1438            Ket
1439            End
1440    ------------------------------------------------------------------
1441    
1442    /a+#хaa
1443      z#х?/8x<any>BZ
1444    ------------------------------------------------------------------
1445            Bra
1446            a++
1447            z
1448            Ket
1449            End
1450    ------------------------------------------------------------------
1451    
1452    /\g{A}xxx#bXX(?'A'123) (?'A'456)/8x<any>BZ
1453    ------------------------------------------------------------------
1454            Bra
1455            \1
1456            xxx
1457            CBra 1
1458            456
1459            Ket
1460            Ket
1461            End
1462    ------------------------------------------------------------------
1463    
1464    /\g{A}xxx#bх(?'A'123) (?'A'456)/8x<any>BZ
1465    ------------------------------------------------------------------
1466            Bra
1467            \1
1468            xxx
1469            CBra 1
1470            456
1471            Ket
1472            Ket
1473            End
1474    ------------------------------------------------------------------
1475    
1476    /^\cģ/8
1477    Failed: \c must be followed by an ASCII character at offset 3
1478    
1479    /(\R*)(.)/s8
1480        \r\n
1481     0: \x{0d}
1482     1:
1483     2: \x{0d}
1484        \r\r\n\n\r
1485     0: \x{0d}\x{0d}\x{0a}\x{0a}\x{0d}
1486     1: \x{0d}\x{0d}\x{0a}\x{0a}
1487     2: \x{0d}
1488        \r\r\n\n\r\n
1489     0: \x{0d}\x{0d}\x{0a}\x{0a}\x{0d}
1490     1: \x{0d}\x{0d}\x{0a}\x{0a}
1491     2: \x{0d}
1492    
1493    /(\R)*(.)/s8
1494        \r\n
1495     0: \x{0d}
1496     1: <unset>
1497     2: \x{0d}
1498        \r\r\n\n\r
1499     0: \x{0d}\x{0d}\x{0a}\x{0a}\x{0d}
1500     1: \x{0a}
1501     2: \x{0d}
1502        \r\r\n\n\r\n
1503     0: \x{0d}\x{0d}\x{0a}\x{0a}\x{0d}
1504     1: \x{0a}
1505     2: \x{0d}
1506    
1507    /[^\x{1234}]+/iS8I
1508    Capturing subpattern count = 0
1509    Options: caseless utf
1510    No first char
1511    No need char
1512    Subject length lower bound = 1
1513    No set of starting bytes
1514    
1515    /[^\x{1234}]+?/iS8I
1516    Capturing subpattern count = 0
1517    Options: caseless utf
1518    No first char
1519    No need char
1520    Subject length lower bound = 1
1521    No set of starting bytes
1522    
1523    /[^\x{1234}]++/iS8I
1524    Capturing subpattern count = 0
1525    Options: caseless utf
1526    No first char
1527    No need char
1528    Subject length lower bound = 1
1529    No set of starting bytes
1530    
1531    /[^\x{1234}]{2}/iS8I
1532    Capturing subpattern count = 0
1533    Options: caseless utf
1534    No first char
1535    No need char
1536    Subject length lower bound = 2
1537    No set of starting bytes
1538    
1539    //<bsr_anycrlf><bsr_unicode>
1540    Failed: inconsistent NEWLINE options at offset 0
1541    
1542    /f.*/
1543        \P\Pfor
1544    Partial match: for
1545    
1546    /f.*/s
1547        \P\Pfor
1548    Partial match: for
1549    
1550    /f.*/8
1551        \P\Pfor
1552    Partial match: for
1553    
1554    /f.*/8s
1555        \P\Pfor
1556    Partial match: for
1557    
1558    /\x{d7ff}\x{e000}/8
1559    
1560    /\x{d800}/8
1561    Failed: disallowed Unicode code point (>= 0xd800 && <= 0xdfff) at offset 7
1562    
1563    /\x{dfff}/8
1564    Failed: disallowed Unicode code point (>= 0xd800 && <= 0xdfff) at offset 7
1565    
1566    /\h+/8
1567        \x{1681}\x{200b}\x{1680}\x{2000}\x{202f}\x{3000}
1568     0: \x{1680}\x{2000}\x{202f}\x{3000}
1569        \x{3001}\x{2fff}\x{200a}\x{a0}\x{2000}
1570     0: \x{200a}\x{a0}\x{2000}
1571    
1572    /[\h\x{e000}]+/8BZ
1573    ------------------------------------------------------------------
1574            Bra
1575            [\x09 \xa0\x{1680}\x{180e}\x{2000}-\x{200a}\x{202f}\x{205f}\x{3000}\x{e000}]+
1576            Ket
1577            End
1578    ------------------------------------------------------------------
1579        \x{1681}\x{200b}\x{1680}\x{2000}\x{202f}\x{3000}
1580     0: \x{1680}\x{2000}\x{202f}\x{3000}
1581        \x{3001}\x{2fff}\x{200a}\x{a0}\x{2000}
1582     0: \x{200a}\x{a0}\x{2000}
1583    
1584    /\H+/8
1585        \x{1680}\x{180e}\x{167f}\x{1681}\x{180d}\x{180f}
1586     0: \x{167f}\x{1681}\x{180d}\x{180f}
1587        \x{2000}\x{200a}\x{1fff}\x{200b}
1588     0: \x{1fff}\x{200b}
1589        \x{202f}\x{205f}\x{202e}\x{2030}\x{205e}\x{2060}
1590     0: \x{202e}\x{2030}\x{205e}\x{2060}
1591        \x{a0}\x{3000}\x{9f}\x{a1}\x{2fff}\x{3001}
1592     0: \x{9f}\x{a1}\x{2fff}\x{3001}
1593    
1594    /[\H\x{d7ff}]+/8BZ
1595    ------------------------------------------------------------------
1596            Bra
1597            [\x00-\x08\x0a-\x1f!-\x9f\xa1-\xff\x{100}-\x{167f}\x{1681}-\x{180d}\x{180f}-\x{1fff}\x{200b}-\x{202e}\x{2030}-\x{205e}\x{2060}-\x{2fff}\x{3001}-\x{10ffff}\x{d7ff}]+
1598            Ket
1599            End
1600    ------------------------------------------------------------------
1601        \x{1680}\x{180e}\x{167f}\x{1681}\x{180d}\x{180f}
1602     0: \x{167f}\x{1681}\x{180d}\x{180f}
1603        \x{2000}\x{200a}\x{1fff}\x{200b}
1604     0: \x{1fff}\x{200b}
1605        \x{202f}\x{205f}\x{202e}\x{2030}\x{205e}\x{2060}
1606     0: \x{202e}\x{2030}\x{205e}\x{2060}
1607        \x{a0}\x{3000}\x{9f}\x{a1}\x{2fff}\x{3001}
1608     0: \x{9f}\x{a1}\x{2fff}\x{3001}
1609    
1610    /\v+/8
1611        \x{2027}\x{2030}\x{2028}\x{2029}
1612     0: \x{2028}\x{2029}
1613        \x09\x0e\x{84}\x{86}\x{85}\x0a\x0b\x0c\x0d
1614     0: \x{85}\x{0a}\x{0b}\x{0c}\x{0d}
1615    
1616    /[\v\x{e000}]+/8BZ
1617    ------------------------------------------------------------------
1618            Bra
1619            [\x0a-\x0d\x85\x{2028}-\x{2029}\x{e000}]+
1620            Ket
1621            End
1622    ------------------------------------------------------------------
1623        \x{2027}\x{2030}\x{2028}\x{2029}
1624     0: \x{2028}\x{2029}
1625        \x09\x0e\x{84}\x{86}\x{85}\x0a\x0b\x0c\x0d
1626     0: \x{85}\x{0a}\x{0b}\x{0c}\x{0d}
1627    
1628    /\V+/8
1629        \x{2028}\x{2029}\x{2027}\x{2030}
1630     0: \x{2027}\x{2030}
1631        \x{85}\x0a\x0b\x0c\x0d\x09\x0e\x{84}\x{86}
1632     0: \x{09}\x{0e}\x{84}\x{86}
1633    
1634    /[\V\x{d7ff}]+/8BZ
1635    ------------------------------------------------------------------
1636            Bra
1637            [\x00-\x09\x0e-\x84\x86-\xff\x{100}-\x{2027}\x{202a}-\x{10ffff}\x{d7ff}]+
1638            Ket
1639            End
1640    ------------------------------------------------------------------
1641        \x{2028}\x{2029}\x{2027}\x{2030}
1642     0: \x{2027}\x{2030}
1643        \x{85}\x0a\x0b\x0c\x0d\x09\x0e\x{84}\x{86}
1644     0: \x{09}\x{0e}\x{84}\x{86}
1645    
1646    /\R+/8<bsr_unicode>
1647        \x{2027}\x{2030}\x{2028}\x{2029}
1648     0: \x{2028}\x{2029}
1649        \x09\x0e\x{84}\x{86}\x{85}\x0a\x0b\x0c\x0d
1650     0: \x{85}\x{0a}\x{0b}\x{0c}\x{0d}
1651    
1652    /(..)\1/8
1653        ab\P
1654    Partial match: ab
1655        aba\P
1656    Partial match: aba
1657        abab\P
1658     0: abab
1659     1: ab
1660    
1661    /(..)\1/8i
1662        ab\P
1663    Partial match: ab
1664        abA\P
1665    Partial match: abA
1666        aBAb\P
1667     0: aBAb
1668     1: aB
1669    
1670    /(..)\1{2,}/8
1671        ab\P
1672    Partial match: ab
1673        aba\P
1674    Partial match: aba
1675        abab\P
1676    Partial match: abab
1677        ababa\P
1678    Partial match: ababa
1679        ababab\P
1680     0: ababab
1681     1: ab
1682        ababab\P\P
1683    Partial match: ababab
1684        abababa\P
1685     0: ababab
1686     1: ab
1687        abababa\P\P
1688    Partial match: abababa
1689    
1690    /(..)\1{2,}/8i
1691        ab\P
1692    Partial match: ab
1693        aBa\P
1694    Partial match: aBa
1695        aBAb\P
1696    Partial match: aBAb
1697        AbaBA\P
1698    Partial match: AbaBA
1699        abABAb\P
1700     0: abABAb
1701     1: ab
1702        aBAbaB\P\P
1703    Partial match: aBAbaB
1704        abABabA\P
1705     0: abABab
1706     1: ab
1707        abaBABa\P\P
1708    Partial match: abaBABa
1709    
1710    /(..)\1{2,}?x/8i
1711        ab\P
1712    Partial match: ab
1713        abA\P
1714    Partial match: abA
1715        aBAb\P
1716    Partial match: aBAb
1717        abaBA\P
1718    Partial match: abaBA
1719        abAbaB\P
1720    Partial match: abAbaB
1721        abaBabA\P
1722    Partial match: abaBabA
1723        abAbABaBx\P
1724     0: abAbABaBx
1725     1: ab
1726    
1727    /^\X/8
1728        A\P
1729     0: A
1730        A\P\P
1731    Partial match: A
1732        A\x{300}\x{301}\P
1733     0: A\x{300}\x{301}
1734        A\x{300}\x{301}\P\P
1735    Partial match: A\x{300}\x{301}
1736        A\x{301}\P
1737     0: A\x{301}
1738        A\x{301}\P\P
1739    Partial match: A\x{301}
1740    
1741    /^\X{2,3}/8
1742        A\P
1743    Partial match: A
1744        A\P\P
1745    Partial match: A
1746        AA\P
1747     0: AA
1748        AA\P\P
1749    Partial match: AA
1750        A\x{300}\x{301}\P
1751    Partial match: A\x{300}\x{301}
1752        A\x{300}\x{301}\P\P
1753    Partial match: A\x{300}\x{301}
1754        A\x{300}\x{301}A\x{300}\x{301}\P
1755     0: A\x{300}\x{301}A\x{300}\x{301}
1756        A\x{300}\x{301}A\x{300}\x{301}\P\P
1757    Partial match: A\x{300}\x{301}A\x{300}\x{301}
1758    
1759    /^\X{2}/8
1760        AA\P
1761     0: AA
1762        AA\P\P
1763    Partial match: AA
1764        A\x{300}\x{301}A\x{300}\x{301}\P
1765     0: A\x{300}\x{301}A\x{300}\x{301}
1766        A\x{300}\x{301}A\x{300}\x{301}\P\P
1767    Partial match: A\x{300}\x{301}A\x{300}\x{301}
1768    
1769    /^\X+/8
1770        AA\P
1771     0: AA
1772        AA\P\P
1773    Partial match: AA
1774    
1775    /^\X+?Z/8
1776        AA\P
1777    Partial match: AA
1778        AA\P\P
1779    Partial match: AA
1780    
1781    /-- End of testinput5 --/

Legend:
Removed from v.71  
changed lines
  Added in v.916

  ViewVC Help
Powered by ViewVC 1.1.5