Annotation of embedaddon/pcre/testdata/testoutput18-32, revision 1.1.1.2
1.1.1.2 ! misho 1: /-- This set of tests is for UTF-16 and UTF-32 support, and is relevant only to
! 2: the 16- and 32-bit libraries. --/
! 3:
! 4: < forbid W
1.1 misho 5:
6: /xxx/8?DZSS
7: **Failed: invalid UTF-8 string cannot be converted to UTF-32
8:
9: /abc/8
10: ]
11: **Failed: invalid UTF-8 string cannot be used as input in UTF mode
12:
13: /X(\C{3})/8
14: X\x{11234}Y
15: No match
16: X\x{11234}YZ
17: 0: X\x{11234}YZ
18: 1: \x{11234}YZ
19:
20: /X(\C{4})/8
21: X\x{11234}YZ
22: No match
23: X\x{11234}YZW
24: 0: X\x{11234}YZW
25: 1: \x{11234}YZW
26:
27: /X\C*/8
28: XYZabcdce
29: 0: XYZabcdce
30:
31: /X\C*?/8
32: XYZabcde
33: 0: X
34:
35: /X\C{3,5}/8
36: Xabcdefg
37: 0: Xabcde
38: X\x{11234}Y
39: No match
40: X\x{11234}YZ
41: 0: X\x{11234}YZ
42: X\x{11234}\x{512}
43: No match
44: X\x{11234}\x{512}YZ
45: 0: X\x{11234}\x{512}YZ
46: X\x{11234}\x{512}\x{11234}Z
47: 0: X\x{11234}\x{512}\x{11234}Z
48:
49: /X\C{3,5}?/8
50: Xabcdefg
51: 0: Xabc
52: X\x{11234}Y
53: No match
54: X\x{11234}YZ
55: 0: X\x{11234}YZ
56: X\x{11234}\x{512}YZ
57: 0: X\x{11234}\x{512}Y
58: *** Failers
59: No match
60: X\x{11234}
61: No match
62:
63: /a\Cb/8
64: aXb
65: 0: aXb
66: a\nb
67: 0: a\x{0a}b
68:
69: /a\C\Cb/8
70: a\x{12257}b
71: No match
72: a\x{12257}\x{11234}b
73: 0: a\x{12257}\x{11234}b
74: ** Failers
75: No match
76: a\x{100}b
77: No match
78:
79: /ab\Cde/8
80: abXde
81: 0: abXde
82:
83: /-- Check maximum character size --/
84:
85: /\x{ffff}/8DZ
86: ------------------------------------------------------------------
87: Bra
88: \x{ffff}
89: Ket
90: End
91: ------------------------------------------------------------------
92: Capturing subpattern count = 0
93: Options: utf
94: First char = \x{ffff}
95: No need char
96:
97: /\x{10000}/8DZ
98: ------------------------------------------------------------------
99: Bra
100: \x{10000}
101: Ket
102: End
103: ------------------------------------------------------------------
104: Capturing subpattern count = 0
105: Options: utf
106: First char = \x{10000}
107: No need char
108:
109: /\x{100}/8DZ
110: ------------------------------------------------------------------
111: Bra
112: \x{100}
113: Ket
114: End
115: ------------------------------------------------------------------
116: Capturing subpattern count = 0
117: Options: utf
118: First char = \x{100}
119: No need char
120:
121: /\x{1000}/8DZ
122: ------------------------------------------------------------------
123: Bra
124: \x{1000}
125: Ket
126: End
127: ------------------------------------------------------------------
128: Capturing subpattern count = 0
129: Options: utf
130: First char = \x{1000}
131: No need char
132:
133: /\x{10000}/8DZ
134: ------------------------------------------------------------------
135: Bra
136: \x{10000}
137: Ket
138: End
139: ------------------------------------------------------------------
140: Capturing subpattern count = 0
141: Options: utf
142: First char = \x{10000}
143: No need char
144:
145: /\x{100000}/8DZ
146: ------------------------------------------------------------------
147: Bra
148: \x{100000}
149: Ket
150: End
151: ------------------------------------------------------------------
152: Capturing subpattern count = 0
153: Options: utf
154: First char = \x{100000}
155: No need char
156:
157: /\x{10ffff}/8DZ
158: ------------------------------------------------------------------
159: Bra
160: \x{10ffff}
161: Ket
162: End
163: ------------------------------------------------------------------
164: Capturing subpattern count = 0
165: Options: utf
166: First char = \x{10ffff}
167: No need char
168:
169: /[\x{ff}]/8DZ
170: ------------------------------------------------------------------
171: Bra
172: \x{ff}
173: Ket
174: End
175: ------------------------------------------------------------------
176: Capturing subpattern count = 0
177: Options: utf
178: First char = \x{ff}
179: No need char
180:
181: /[\x{100}]/8DZ
182: ------------------------------------------------------------------
183: Bra
184: \x{100}
185: Ket
186: End
187: ------------------------------------------------------------------
188: Capturing subpattern count = 0
189: Options: utf
190: First char = \x{100}
191: No need char
192:
193: /\x80/8DZ
194: ------------------------------------------------------------------
195: Bra
196: \x80
197: Ket
198: End
199: ------------------------------------------------------------------
200: Capturing subpattern count = 0
201: Options: utf
202: First char = \x{80}
203: No need char
204:
205: /\xff/8DZ
206: ------------------------------------------------------------------
207: Bra
208: \x{ff}
209: Ket
210: End
211: ------------------------------------------------------------------
212: Capturing subpattern count = 0
213: Options: utf
214: First char = \x{ff}
215: No need char
216:
217: /\x{D55c}\x{ad6d}\x{C5B4}/DZ8
218: ------------------------------------------------------------------
219: Bra
220: \x{d55c}\x{ad6d}\x{c5b4}
221: Ket
222: End
223: ------------------------------------------------------------------
224: Capturing subpattern count = 0
225: Options: utf
226: First char = \x{d55c}
227: Need char = \x{c5b4}
228: \x{D55c}\x{ad6d}\x{C5B4}
229: 0: \x{d55c}\x{ad6d}\x{c5b4}
230:
231: /\x{65e5}\x{672c}\x{8a9e}/DZ8
232: ------------------------------------------------------------------
233: Bra
234: \x{65e5}\x{672c}\x{8a9e}
235: Ket
236: End
237: ------------------------------------------------------------------
238: Capturing subpattern count = 0
239: Options: utf
240: First char = \x{65e5}
241: Need char = \x{8a9e}
242: \x{65e5}\x{672c}\x{8a9e}
243: 0: \x{65e5}\x{672c}\x{8a9e}
244:
245: /\x{80}/DZ8
246: ------------------------------------------------------------------
247: Bra
248: \x80
249: Ket
250: End
251: ------------------------------------------------------------------
252: Capturing subpattern count = 0
253: Options: utf
254: First char = \x{80}
255: No need char
256:
257: /\x{084}/DZ8
258: ------------------------------------------------------------------
259: Bra
260: \x{84}
261: Ket
262: End
263: ------------------------------------------------------------------
264: Capturing subpattern count = 0
265: Options: utf
266: First char = \x{84}
267: No need char
268:
269: /\x{104}/DZ8
270: ------------------------------------------------------------------
271: Bra
272: \x{104}
273: Ket
274: End
275: ------------------------------------------------------------------
276: Capturing subpattern count = 0
277: Options: utf
278: First char = \x{104}
279: No need char
280:
281: /\x{861}/DZ8
282: ------------------------------------------------------------------
283: Bra
284: \x{861}
285: Ket
286: End
287: ------------------------------------------------------------------
288: Capturing subpattern count = 0
289: Options: utf
290: First char = \x{861}
291: No need char
292:
293: /\x{212ab}/DZ8
294: ------------------------------------------------------------------
295: Bra
296: \x{212ab}
297: Ket
298: End
299: ------------------------------------------------------------------
300: Capturing subpattern count = 0
301: Options: utf
302: First char = \x{212ab}
303: No need char
304:
305: /-- This one is here not because it's different to Perl, but because the way
306: the captured single-byte is displayed. (In Perl it becomes a character, and you
307: can't tell the difference.) --/
308:
309: /X(\C)(.*)/8
310: X\x{1234}
311: 0: X\x{1234}
312: 1: \x{1234}
313: 2:
314: X\nabc
315: 0: X\x{0a}abc
316: 1: \x{0a}
317: 2: abc
318:
319: /-- This one is here because Perl gives out a grumbly error message (quite
320: correctly, but that messes up comparisons). --/
321:
322: /a\Cb/8
323: *** Failers
324: No match
325: a\x{100}b
326: 0: a\x{100}b
327:
328: /[^ab\xC0-\xF0]/8SDZ
329: ------------------------------------------------------------------
330: Bra
331: [\x00-`c-\xbf\xf1-\xff] (neg)
332: Ket
333: End
334: ------------------------------------------------------------------
335: Capturing subpattern count = 0
336: Options: utf
337: No first char
338: No need char
339: Subject length lower bound = 1
340: Starting byte set: \x00 \x01 \x02 \x03 \x04 \x05 \x06 \x07 \x08 \x09 \x0a
341: \x0b \x0c \x0d \x0e \x0f \x10 \x11 \x12 \x13 \x14 \x15 \x16 \x17 \x18 \x19
342: \x1a \x1b \x1c \x1d \x1e \x1f \x20 ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4
343: 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
344: 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
345: \x80 \x81 \x82 \x83 \x84 \x85 \x86 \x87 \x88 \x89 \x8a \x8b \x8c \x8d \x8e
346: \x8f \x90 \x91 \x92 \x93 \x94 \x95 \x96 \x97 \x98 \x99 \x9a \x9b \x9c \x9d
347: \x9e \x9f \xa0 \xa1 \xa2 \xa3 \xa4 \xa5 \xa6 \xa7 \xa8 \xa9 \xaa \xab \xac
348: \xad \xae \xaf \xb0 \xb1 \xb2 \xb3 \xb4 \xb5 \xb6 \xb7 \xb8 \xb9 \xba \xbb
349: \xbc \xbd \xbe \xbf \xf1 \xf2 \xf3 \xf4 \xf5 \xf6 \xf7 \xf8 \xf9 \xfa \xfb
350: \xfc \xfd \xfe \xff
351: \x{f1}
352: 0: \x{f1}
353: \x{bf}
354: 0: \x{bf}
355: \x{100}
356: 0: \x{100}
357: \x{1000}
358: 0: \x{1000}
359: *** Failers
360: 0: *
361: \x{c0}
362: No match
363: \x{f0}
364: No match
365:
366: /Ā{3,4}/8SDZ
367: ------------------------------------------------------------------
368: Bra
369: \x{100}{3}
1.1.1.2 ! misho 370: \x{100}?+
1.1 misho 371: Ket
372: End
373: ------------------------------------------------------------------
374: Capturing subpattern count = 0
375: Options: utf
376: First char = \x{100}
377: Need char = \x{100}
378: Subject length lower bound = 3
379: No set of starting bytes
380: \x{100}\x{100}\x{100}\x{100\x{100}
381: 0: \x{100}\x{100}\x{100}
382:
383: /(\x{100}+|x)/8SDZ
384: ------------------------------------------------------------------
385: Bra
386: CBra 1
1.1.1.2 ! misho 387: \x{100}++
1.1 misho 388: Alt
389: x
390: Ket
391: Ket
392: End
393: ------------------------------------------------------------------
394: Capturing subpattern count = 1
395: Options: utf
396: No first char
397: No need char
398: Subject length lower bound = 1
399: Starting byte set: x \xff
400:
401: /(\x{100}*a|x)/8SDZ
402: ------------------------------------------------------------------
403: Bra
404: CBra 1
405: \x{100}*+
406: a
407: Alt
408: x
409: Ket
410: Ket
411: End
412: ------------------------------------------------------------------
413: Capturing subpattern count = 1
414: Options: utf
415: No first char
416: No need char
417: Subject length lower bound = 1
418: Starting byte set: a x \xff
419:
420: /(\x{100}{0,2}a|x)/8SDZ
421: ------------------------------------------------------------------
422: Bra
423: CBra 1
1.1.1.2 ! misho 424: \x{100}{0,2}+
1.1 misho 425: a
426: Alt
427: x
428: Ket
429: Ket
430: End
431: ------------------------------------------------------------------
432: Capturing subpattern count = 1
433: Options: utf
434: No first char
435: No need char
436: Subject length lower bound = 1
437: Starting byte set: a x \xff
438:
439: /(\x{100}{1,2}a|x)/8SDZ
440: ------------------------------------------------------------------
441: Bra
442: CBra 1
443: \x{100}
1.1.1.2 ! misho 444: \x{100}{0,1}+
1.1 misho 445: a
446: Alt
447: x
448: Ket
449: Ket
450: End
451: ------------------------------------------------------------------
452: Capturing subpattern count = 1
453: Options: utf
454: No first char
455: No need char
456: Subject length lower bound = 1
457: Starting byte set: x \xff
458:
459: /\x{100}/8DZ
460: ------------------------------------------------------------------
461: Bra
462: \x{100}
463: Ket
464: End
465: ------------------------------------------------------------------
466: Capturing subpattern count = 0
467: Options: utf
468: First char = \x{100}
469: No need char
470:
471: /a\x{100}\x{101}*/8DZ
472: ------------------------------------------------------------------
473: Bra
474: a\x{100}
1.1.1.2 ! misho 475: \x{101}*+
1.1 misho 476: Ket
477: End
478: ------------------------------------------------------------------
479: Capturing subpattern count = 0
480: Options: utf
481: First char = 'a'
482: Need char = \x{100}
483:
484: /a\x{100}\x{101}+/8DZ
485: ------------------------------------------------------------------
486: Bra
487: a\x{100}
1.1.1.2 ! misho 488: \x{101}++
1.1 misho 489: Ket
490: End
491: ------------------------------------------------------------------
492: Capturing subpattern count = 0
493: Options: utf
494: First char = 'a'
495: Need char = \x{101}
496:
497: /[^\x{c4}]/DZ
498: ------------------------------------------------------------------
499: Bra
500: [^\x{c4}]
501: Ket
502: End
503: ------------------------------------------------------------------
504: Capturing subpattern count = 0
505: No options
506: No first char
507: No need char
508:
509: /[\x{100}]/8DZ
510: ------------------------------------------------------------------
511: Bra
512: \x{100}
513: Ket
514: End
515: ------------------------------------------------------------------
516: Capturing subpattern count = 0
517: Options: utf
518: First char = \x{100}
519: No need char
520: \x{100}
521: 0: \x{100}
522: Z\x{100}
523: 0: \x{100}
524: \x{100}Z
525: 0: \x{100}
526: *** Failers
527: No match
528:
529: /[\xff]/DZ8
530: ------------------------------------------------------------------
531: Bra
532: \x{ff}
533: Ket
534: End
535: ------------------------------------------------------------------
536: Capturing subpattern count = 0
537: Options: utf
538: First char = \x{ff}
539: No need char
540: >\x{ff}<
541: 0: \x{ff}
542:
543: /[^\xff]/8DZ
544: ------------------------------------------------------------------
545: Bra
546: [^\x{ff}]
547: Ket
548: End
549: ------------------------------------------------------------------
550: Capturing subpattern count = 0
551: Options: utf
552: No first char
553: No need char
554:
555: /\x{100}abc(xyz(?1))/8DZ
556: ------------------------------------------------------------------
557: Bra
558: \x{100}abc
559: CBra 1
560: xyz
561: Recurse
562: Ket
563: Ket
564: End
565: ------------------------------------------------------------------
566: Capturing subpattern count = 1
567: Options: utf
568: First char = \x{100}
569: Need char = 'z'
570:
571: /\777/8I
572: Capturing subpattern count = 0
573: Options: utf
574: First char = \x{1ff}
575: No need char
576: \x{1ff}
577: 0: \x{1ff}
578: \777
579: 0: \x{1ff}
580:
581: /\x{100}+\x{200}/8DZ
582: ------------------------------------------------------------------
583: Bra
584: \x{100}++
585: \x{200}
586: Ket
587: End
588: ------------------------------------------------------------------
589: Capturing subpattern count = 0
590: Options: utf
591: First char = \x{100}
592: Need char = \x{200}
593:
594: /\x{100}+X/8DZ
595: ------------------------------------------------------------------
596: Bra
597: \x{100}++
598: X
599: Ket
600: End
601: ------------------------------------------------------------------
602: Capturing subpattern count = 0
603: Options: utf
604: First char = \x{100}
605: Need char = 'X'
606:
607: /^[\QĀ\E-\QŐ\E/BZ8
608: Failed: missing terminating ] for character class at offset 13
609:
610: /X/8
611: \x{d800}
612: Error -10 (bad UTF-32 string) offset=0 reason=1
613: \x{d800}\?
614: No match
615: \x{da00}
616: Error -10 (bad UTF-32 string) offset=0 reason=1
617: \x{da00}\?
618: No match
619: \x{dc00}
620: Error -10 (bad UTF-32 string) offset=0 reason=1
621: \x{dc00}\?
622: No match
623: \x{de00}
624: Error -10 (bad UTF-32 string) offset=0 reason=1
625: \x{de00}\?
626: No match
627: \x{dfff}
628: Error -10 (bad UTF-32 string) offset=0 reason=1
629: \x{dfff}\?
630: No match
631: \x{110000}
632: Error -10 (bad UTF-32 string) offset=0 reason=3
633: \x{d800}\x{1234}
634: Error -10 (bad UTF-32 string) offset=0 reason=1
635:
636: /(*UTF16)\x{11234}/
637: Failed: (*VERB) not recognized or malformed at offset 5
638:
639: /(*UTF)\x{11234}/I
640: Capturing subpattern count = 0
641: Options: utf
642: First char = \x{11234}
643: No need char
644: abcd\x{11234}pqr
645: 0: \x{11234}
646:
647: /(*UTF-32)\x{11234}/
648: Failed: (*VERB) not recognized or malformed at offset 5
649:
650: /(*CRLF)(*UTF16)(*BSR_UNICODE)a\Rb/I
651: Failed: (*VERB) not recognized or malformed at offset 12
652:
653: /(*CRLF)(*UTF32)(*BSR_UNICODE)a\Rb/I
654: Capturing subpattern count = 0
655: Options: bsr_unicode utf
656: Forced newline sequence: CRLF
657: First char = 'a'
658: Need char = 'b'
659:
660: /\h/SI8
661: Capturing subpattern count = 0
662: Options: utf
663: No first char
664: No need char
665: Subject length lower bound = 1
666: Starting byte set: \x09 \x20 \xa0 \xff
667: ABC\x{09}
668: 0: \x{09}
669: ABC\x{20}
670: 0:
671: ABC\x{a0}
672: 0: \x{a0}
673: ABC\x{1680}
674: 0: \x{1680}
675: ABC\x{180e}
676: 0: \x{180e}
677: ABC\x{2000}
678: 0: \x{2000}
679: ABC\x{202f}
680: 0: \x{202f}
681: ABC\x{205f}
682: 0: \x{205f}
683: ABC\x{3000}
684: 0: \x{3000}
685:
686: /\v/SI8
687: Capturing subpattern count = 0
688: Options: utf
689: No first char
690: No need char
691: Subject length lower bound = 1
692: Starting byte set: \x0a \x0b \x0c \x0d \x85 \xff
693: ABC\x{0a}
694: 0: \x{0a}
695: ABC\x{0b}
696: 0: \x{0b}
697: ABC\x{0c}
698: 0: \x{0c}
699: ABC\x{0d}
700: 0: \x{0d}
701: ABC\x{85}
702: 0: \x{85}
703: ABC\x{2028}
704: 0: \x{2028}
705:
706: /\h*A/SI8
707: Capturing subpattern count = 0
708: Options: utf
709: No first char
710: Need char = 'A'
711: Subject length lower bound = 1
712: Starting byte set: \x09 \x20 A \xa0 \xff
713: CDBABC
714: 0: A
715: \x{2000}ABC
716: 0: \x{2000}A
717:
718: /\R*A/SI8
719: Capturing subpattern count = 0
720: Options: utf
721: No first char
722: Need char = 'A'
723: Subject length lower bound = 1
724: Starting byte set: \x0a \x0b \x0c \x0d A \x85 \xff
725: CDBABC
726: 0: A
727: \x{2028}A
728: 0: \x{2028}A
729:
730: /\v+A/SI8
731: Capturing subpattern count = 0
732: Options: utf
733: No first char
734: Need char = 'A'
735: Subject length lower bound = 2
736: Starting byte set: \x0a \x0b \x0c \x0d \x85 \xff
737:
738: /\s?xxx\s/8SI
739: Capturing subpattern count = 0
740: Options: utf
741: No first char
742: Need char = 'x'
743: Subject length lower bound = 4
1.1.1.2 ! misho 744: Starting byte set: \x09 \x0a \x0b \x0c \x0d \x20 x
1.1 misho 745:
746: /\sxxx\s/I8ST1
747: Capturing subpattern count = 0
748: Options: utf
749: No first char
750: Need char = 'x'
751: Subject length lower bound = 5
752: Starting byte set: \x09 \x0a \x0c \x0d \x20 \x85 \xa0
753: AB\x{85}xxx\x{a0}XYZ
754: 0: \x{85}xxx\x{a0}
755: AB\x{a0}xxx\x{85}XYZ
756: 0: \x{a0}xxx\x{85}
757:
758: /\S \S/I8ST1
759: Capturing subpattern count = 0
760: Options: utf
761: No first char
762: Need char = ' '
763: Subject length lower bound = 3
764: Starting byte set: \x00 \x01 \x02 \x03 \x04 \x05 \x06 \x07 \x08 \x0b \x0e
765: \x0f \x10 \x11 \x12 \x13 \x14 \x15 \x16 \x17 \x18 \x19 \x1a \x1b \x1c \x1d
766: \x1e \x1f ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @
767: 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
768: f g h i j k l m n o p q r s t u v w x y z { | } ~ \x7f \x80 \x81 \x82 \x83
769: \x84 \x86 \x87 \x88 \x89 \x8a \x8b \x8c \x8d \x8e \x8f \x90 \x91 \x92 \x93
770: \x94 \x95 \x96 \x97 \x98 \x99 \x9a \x9b \x9c \x9d \x9e \x9f \xa1 \xa2 \xa3
771: \xa4 \xa5 \xa6 \xa7 \xa8 \xa9 \xaa \xab \xac \xad \xae \xaf \xb0 \xb1 \xb2
772: \xb3 \xb4 \xb5 \xb6 \xb7 \xb8 \xb9 \xba \xbb \xbc \xbd \xbe \xbf \xc0 \xc1
773: \xc2 \xc3 \xc4 \xc5 \xc6 \xc7 \xc8 \xc9 \xca \xcb \xcc \xcd \xce \xcf \xd0
774: \xd1 \xd2 \xd3 \xd4 \xd5 \xd6 \xd7 \xd8 \xd9 \xda \xdb \xdc \xdd \xde \xdf
775: \xe0 \xe1 \xe2 \xe3 \xe4 \xe5 \xe6 \xe7 \xe8 \xe9 \xea \xeb \xec \xed \xee
776: \xef \xf0 \xf1 \xf2 \xf3 \xf4 \xf5 \xf6 \xf7 \xf8 \xf9 \xfa \xfb \xfc \xfd
777: \xfe \xff
778: \x{a2} \x{84}
779: 0: \x{a2} \x{84}
780: A Z
781: 0: A Z
782:
783: /a+/8
784: a\x{123}aa\>1
785: 0: aa
786: a\x{123}aa\>2
787: 0: aa
788: a\x{123}aa\>3
789: 0: a
790: a\x{123}aa\>4
791: No match
792: a\x{123}aa\>5
793: Error -24 (bad offset value)
794: a\x{123}aa\>6
795: Error -24 (bad offset value)
796:
797: /\x{1234}+/iS8I
798: Capturing subpattern count = 0
799: Options: caseless utf
800: First char = \x{1234}
801: No need char
802: Subject length lower bound = 1
803: No set of starting bytes
804:
805: /\x{1234}+?/iS8I
806: Capturing subpattern count = 0
807: Options: caseless utf
808: First char = \x{1234}
809: No need char
810: Subject length lower bound = 1
811: No set of starting bytes
812:
813: /\x{1234}++/iS8I
814: Capturing subpattern count = 0
815: Options: caseless utf
816: First char = \x{1234}
817: No need char
818: Subject length lower bound = 1
819: No set of starting bytes
820:
821: /\x{1234}{2}/iS8I
822: Capturing subpattern count = 0
823: Options: caseless utf
824: First char = \x{1234}
825: Need char = \x{1234}
826: Subject length lower bound = 2
827: No set of starting bytes
828:
829: /[^\x{c4}]/8DZ
830: ------------------------------------------------------------------
831: Bra
832: [^\x{c4}]
833: Ket
834: End
835: ------------------------------------------------------------------
836: Capturing subpattern count = 0
837: Options: utf
838: No first char
839: No need char
840:
841: /X+\x{200}/8DZ
842: ------------------------------------------------------------------
843: Bra
844: X++
845: \x{200}
846: Ket
847: End
848: ------------------------------------------------------------------
849: Capturing subpattern count = 0
850: Options: utf
851: First char = 'X'
852: Need char = \x{200}
853:
854: /\R/SI8
855: Capturing subpattern count = 0
856: Options: utf
857: No first char
858: No need char
859: Subject length lower bound = 1
860: Starting byte set: \x0a \x0b \x0c \x0d \x85 \xff
861:
862: /-- Check bad offset --/
863:
864: /a/8
865: \x{10000}\>1
866: No match
867: \x{10000}ab\>1
868: 0: a
869: \x{10000}ab\>2
870: No match
871: \x{10000}ab\>3
872: No match
873: \x{10000}ab\>4
874: Error -24 (bad offset value)
875: \x{10000}ab\>5
876: Error -24 (bad offset value)
877:
878: //8
879: **Failed: character value is ill-formed UTF-32
880:
881: /\w+\x{C4}/8BZ
882: ------------------------------------------------------------------
883: Bra
884: \w++
885: \x{c4}
886: Ket
887: End
888: ------------------------------------------------------------------
889: a\x{C4}\x{C4}
890: 0: a\x{c4}
891:
892: /\w+\x{C4}/8BZT1
893: ------------------------------------------------------------------
894: Bra
895: \w+
896: \x{c4}
897: Ket
898: End
899: ------------------------------------------------------------------
900: a\x{C4}\x{C4}
901: 0: a\x{c4}\x{c4}
902:
903: /\W+\x{C4}/8BZ
904: ------------------------------------------------------------------
905: Bra
906: \W+
907: \x{c4}
908: Ket
909: End
910: ------------------------------------------------------------------
911: !\x{C4}
912: 0: !\x{c4}
913:
914: /\W+\x{C4}/8BZT1
915: ------------------------------------------------------------------
916: Bra
917: \W++
918: \x{c4}
919: Ket
920: End
921: ------------------------------------------------------------------
922: !\x{C4}
923: 0: !\x{c4}
924:
925: /\W+\x{A1}/8BZ
926: ------------------------------------------------------------------
927: Bra
928: \W+
929: \x{a1}
930: Ket
931: End
932: ------------------------------------------------------------------
933: !\x{A1}
934: 0: !\x{a1}
935:
936: /\W+\x{A1}/8BZT1
937: ------------------------------------------------------------------
938: Bra
939: \W+
940: \x{a1}
941: Ket
942: End
943: ------------------------------------------------------------------
944: !\x{A1}
945: 0: !\x{a1}
946:
947: /X\s+\x{A0}/8BZ
948: ------------------------------------------------------------------
949: Bra
950: X
951: \s++
952: \x{a0}
953: Ket
954: End
955: ------------------------------------------------------------------
956: X\x20\x{A0}\x{A0}
957: 0: X \x{a0}
958:
959: /X\s+\x{A0}/8BZT1
960: ------------------------------------------------------------------
961: Bra
962: X
963: \s+
964: \x{a0}
965: Ket
966: End
967: ------------------------------------------------------------------
968: X\x20\x{A0}\x{A0}
969: 0: X \x{a0}\x{a0}
970:
971: /\S+\x{A0}/8BZ
972: ------------------------------------------------------------------
973: Bra
974: \S+
975: \x{a0}
976: Ket
977: End
978: ------------------------------------------------------------------
979: X\x{A0}\x{A0}
980: 0: X\x{a0}\x{a0}
981:
982: /\S+\x{A0}/8BZT1
983: ------------------------------------------------------------------
984: Bra
985: \S++
986: \x{a0}
987: Ket
988: End
989: ------------------------------------------------------------------
990: X\x{A0}\x{A0}
991: 0: X\x{a0}
992:
993: /\x{a0}+\s!/8BZ
994: ------------------------------------------------------------------
995: Bra
996: \x{a0}++
997: \s
998: !
999: Ket
1000: End
1001: ------------------------------------------------------------------
1002: \x{a0}\x20!
1003: 0: \x{a0} !
1004:
1005: /\x{a0}+\s!/8BZT1
1006: ------------------------------------------------------------------
1007: Bra
1008: \x{a0}+
1009: \s
1010: !
1011: Ket
1012: End
1013: ------------------------------------------------------------------
1014: \x{a0}\x20!
1015: 0: \x{a0} !
1016:
1017: /(*UTF)abc/9
1018: Failed: setting UTF is disabled by the application at offset 0
1019:
1020: /abc/89
1021: Failed: setting UTF is disabled by the application at offset 0
1022:
1023: /-- End of testinput18 --/
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>