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. --/
7 **Failed: invalid UTF-8 string cannot be converted to UTF-16
11 **Failed: invalid UTF-8 string cannot be used as input in UTF mode
47 0: X\x{11234}\x{512}YZ
48 X\x{11234}\x{512}\x{11234}Z
49 0: X\x{11234}\x{512}\x{11234}
85 /-- Check maximum character size --/
88 ------------------------------------------------------------------
93 ------------------------------------------------------------------
94 Capturing subpattern count = 0
100 ------------------------------------------------------------------
105 ------------------------------------------------------------------
106 Capturing subpattern count = 0
108 First char = \x{d800}
112 ------------------------------------------------------------------
117 ------------------------------------------------------------------
118 Capturing subpattern count = 0
124 ------------------------------------------------------------------
129 ------------------------------------------------------------------
130 Capturing subpattern count = 0
132 First char = \x{1000}
136 ------------------------------------------------------------------
141 ------------------------------------------------------------------
142 Capturing subpattern count = 0
144 First char = \x{d800}
148 ------------------------------------------------------------------
153 ------------------------------------------------------------------
154 Capturing subpattern count = 0
156 First char = \x{dbc0}
160 ------------------------------------------------------------------
165 ------------------------------------------------------------------
166 Capturing subpattern count = 0
168 First char = \x{dbff}
172 ------------------------------------------------------------------
177 ------------------------------------------------------------------
178 Capturing subpattern count = 0
184 ------------------------------------------------------------------
189 ------------------------------------------------------------------
190 Capturing subpattern count = 0
196 ------------------------------------------------------------------
201 ------------------------------------------------------------------
202 Capturing subpattern count = 0
208 ------------------------------------------------------------------
213 ------------------------------------------------------------------
214 Capturing subpattern count = 0
219 /\x{D55c}\x{ad6d}\x{C5B4}/DZ8
220 ------------------------------------------------------------------
222 \x{d55c}\x{ad6d}\x{c5b4}
225 ------------------------------------------------------------------
226 Capturing subpattern count = 0
228 First char = \x{d55c}
230 \x{D55c}\x{ad6d}\x{C5B4}
231 0: \x{d55c}\x{ad6d}\x{c5b4}
233 /\x{65e5}\x{672c}\x{8a9e}/DZ8
234 ------------------------------------------------------------------
236 \x{65e5}\x{672c}\x{8a9e}
239 ------------------------------------------------------------------
240 Capturing subpattern count = 0
242 First char = \x{65e5}
244 \x{65e5}\x{672c}\x{8a9e}
245 0: \x{65e5}\x{672c}\x{8a9e}
248 ------------------------------------------------------------------
253 ------------------------------------------------------------------
254 Capturing subpattern count = 0
260 ------------------------------------------------------------------
265 ------------------------------------------------------------------
266 Capturing subpattern count = 0
272 ------------------------------------------------------------------
277 ------------------------------------------------------------------
278 Capturing subpattern count = 0
284 ------------------------------------------------------------------
289 ------------------------------------------------------------------
290 Capturing subpattern count = 0
296 ------------------------------------------------------------------
301 ------------------------------------------------------------------
302 Capturing subpattern count = 0
304 First char = \x{d844}
307 /-- This one is here not because it's different to Perl, but because the way
308 the captured single-byte is displayed. (In Perl it becomes a character, and you
309 can't tell the difference.) --/
321 /-- This one is here because Perl gives out a grumbly error message (quite
322 correctly, but that messes up comparisons). --/
331 ------------------------------------------------------------------
333 [\x00-`c-\xbf\xf1-\xff] (neg)
336 ------------------------------------------------------------------
337 Capturing subpattern count = 0
341 Subject length lower bound = 1
342 Starting chars: \x00 \x01 \x02 \x03 \x04 \x05 \x06 \x07 \x08 \x09 \x0a
343 \x0b \x0c \x0d \x0e \x0f \x10 \x11 \x12 \x13 \x14 \x15 \x16 \x17 \x18 \x19
344 \x1a \x1b \x1c \x1d \x1e \x1f \x20 ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4
345 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
346 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
347 \x80 \x81 \x82 \x83 \x84 \x85 \x86 \x87 \x88 \x89 \x8a \x8b \x8c \x8d \x8e
348 \x8f \x90 \x91 \x92 \x93 \x94 \x95 \x96 \x97 \x98 \x99 \x9a \x9b \x9c \x9d
349 \x9e \x9f \xa0 \xa1 \xa2 \xa3 \xa4 \xa5 \xa6 \xa7 \xa8 \xa9 \xaa \xab \xac
350 \xad \xae \xaf \xb0 \xb1 \xb2 \xb3 \xb4 \xb5 \xb6 \xb7 \xb8 \xb9 \xba \xbb
351 \xbc \xbd \xbe \xbf \xf1 \xf2 \xf3 \xf4 \xf5 \xf6 \xf7 \xf8 \xf9 \xfa \xfb
369 ------------------------------------------------------------------
375 ------------------------------------------------------------------
376 Capturing subpattern count = 0
380 Subject length lower bound = 3
381 No starting char list
382 \x{100}\x{100}\x{100}\x{100\x{100}
383 0: \x{100}\x{100}\x{100}
386 ------------------------------------------------------------------
395 ------------------------------------------------------------------
396 Capturing subpattern count = 1
400 Subject length lower bound = 1
401 Starting chars: x \xff
404 ------------------------------------------------------------------
414 ------------------------------------------------------------------
415 Capturing subpattern count = 1
419 Subject length lower bound = 1
420 Starting chars: a x \xff
422 /(\x{100}{0,2}a|x)/8SDZ
423 ------------------------------------------------------------------
433 ------------------------------------------------------------------
434 Capturing subpattern count = 1
438 Subject length lower bound = 1
439 Starting chars: a x \xff
441 /(\x{100}{1,2}a|x)/8SDZ
442 ------------------------------------------------------------------
453 ------------------------------------------------------------------
454 Capturing subpattern count = 1
458 Subject length lower bound = 1
459 Starting chars: x \xff
462 ------------------------------------------------------------------
467 ------------------------------------------------------------------
468 Capturing subpattern count = 0
473 /a\x{100}\x{101}*/8DZ
474 ------------------------------------------------------------------
480 ------------------------------------------------------------------
481 Capturing subpattern count = 0
486 /a\x{100}\x{101}+/8DZ
487 ------------------------------------------------------------------
493 ------------------------------------------------------------------
494 Capturing subpattern count = 0
500 ------------------------------------------------------------------
505 ------------------------------------------------------------------
506 Capturing subpattern count = 0
512 ------------------------------------------------------------------
517 ------------------------------------------------------------------
518 Capturing subpattern count = 0
532 ------------------------------------------------------------------
537 ------------------------------------------------------------------
538 Capturing subpattern count = 0
546 ------------------------------------------------------------------
551 ------------------------------------------------------------------
552 Capturing subpattern count = 0
557 /\x{100}abc(xyz(?1))/8DZ
558 ------------------------------------------------------------------
567 ------------------------------------------------------------------
568 Capturing subpattern count = 1
574 Capturing subpattern count = 0
584 ------------------------------------------------------------------
590 ------------------------------------------------------------------
591 Capturing subpattern count = 0
597 ------------------------------------------------------------------
603 ------------------------------------------------------------------
604 Capturing subpattern count = 0
610 Failed: missing terminating ] for character class at offset 13
614 Error -10 (bad UTF-16 string) offset=0 reason=1
618 Error -10 (bad UTF-16 string) offset=0 reason=1
622 Error -10 (bad UTF-16 string) offset=0 reason=3
626 Error -10 (bad UTF-16 string) offset=0 reason=3
630 Error -10 (bad UTF-16 string) offset=0 reason=3
634 ** Failed: character \x{110000} is greater than 0x10ffff and so cannot be converted to UTF-16
636 Error -10 (bad UTF-16 string) offset=1 reason=2
643 Capturing subpattern count = 0
645 First char = \x{d804}
651 Failed: (*VERB) not recognized or malformed at offset 5
653 /(*CRLF)(*UTF16)(*BSR_UNICODE)a\Rb/I
654 Capturing subpattern count = 0
655 Options: bsr_unicode utf
656 Forced newline sequence: CRLF
660 /(*CRLF)(*UTF32)(*BSR_UNICODE)a\Rb/I
661 Failed: (*VERB) not recognized or malformed at offset 12
664 Capturing subpattern count = 0
668 Subject length lower bound = 1
669 Starting chars: \x09 \x20 \xa0 \xff
690 Capturing subpattern count = 0
694 Subject length lower bound = 1
695 Starting chars: \x0a \x0b \x0c \x0d \x85 \xff
710 Capturing subpattern count = 0
714 Subject length lower bound = 1
715 Starting chars: \x09 \x20 A \xa0 \xff
721 /\R*A/SI8<bsr_unicode>
722 Capturing subpattern count = 0
723 Options: bsr_unicode utf
726 Subject length lower bound = 1
727 Starting chars: \x0a \x0b \x0c \x0d A \x85 \xff
734 Capturing subpattern count = 0
738 Subject length lower bound = 2
739 Starting chars: \x0a \x0b \x0c \x0d \x85 \xff
742 Capturing subpattern count = 0
746 Subject length lower bound = 4
747 Starting chars: \x09 \x0a \x0b \x0c \x0d \x20 x
750 Capturing subpattern count = 0
754 Subject length lower bound = 5
755 Starting chars: \x09 \x0a \x0c \x0d \x20 \x85 \xa0
762 Capturing subpattern count = 0
766 Subject length lower bound = 3
767 Starting chars: \x00 \x01 \x02 \x03 \x04 \x05 \x06 \x07 \x08 \x0b \x0e
768 \x0f \x10 \x11 \x12 \x13 \x14 \x15 \x16 \x17 \x18 \x19 \x1a \x1b \x1c \x1d
769 \x1e \x1f ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @
770 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
771 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
772 \x84 \x86 \x87 \x88 \x89 \x8a \x8b \x8c \x8d \x8e \x8f \x90 \x91 \x92 \x93
773 \x94 \x95 \x96 \x97 \x98 \x99 \x9a \x9b \x9c \x9d \x9e \x9f \xa1 \xa2 \xa3
774 \xa4 \xa5 \xa6 \xa7 \xa8 \xa9 \xaa \xab \xac \xad \xae \xaf \xb0 \xb1 \xb2
775 \xb3 \xb4 \xb5 \xb6 \xb7 \xb8 \xb9 \xba \xbb \xbc \xbd \xbe \xbf \xc0 \xc1
776 \xc2 \xc3 \xc4 \xc5 \xc6 \xc7 \xc8 \xc9 \xca \xcb \xcc \xcd \xce \xcf \xd0
777 \xd1 \xd2 \xd3 \xd4 \xd5 \xd6 \xd7 \xd8 \xd9 \xda \xdb \xdc \xdd \xde \xdf
778 \xe0 \xe1 \xe2 \xe3 \xe4 \xe5 \xe6 \xe7 \xe8 \xe9 \xea \xeb \xec \xed \xee
779 \xef \xf0 \xf1 \xf2 \xf3 \xf4 \xf5 \xf6 \xf7 \xf8 \xf9 \xfa \xfb \xfc \xfd
796 Error -24 (bad offset value)
798 Error -24 (bad offset value)
801 Capturing subpattern count = 0
802 Options: caseless utf
803 First char = \x{1234}
805 Subject length lower bound = 1
806 No starting char list
809 Capturing subpattern count = 0
810 Options: caseless utf
811 First char = \x{1234}
813 Subject length lower bound = 1
814 No starting char list
817 Capturing subpattern count = 0
818 Options: caseless utf
819 First char = \x{1234}
821 Subject length lower bound = 1
822 No starting char list
825 Capturing subpattern count = 0
826 Options: caseless utf
827 First char = \x{1234}
829 Subject length lower bound = 2
830 No starting char list
833 ------------------------------------------------------------------
838 ------------------------------------------------------------------
839 Capturing subpattern count = 0
845 ------------------------------------------------------------------
851 ------------------------------------------------------------------
852 Capturing subpattern count = 0
858 Capturing subpattern count = 0
862 Subject length lower bound = 1
863 Starting chars: \x0a \x0b \x0c \x0d \x85 \xff
865 /-- Check bad offset --/
869 Error -11 (bad UTF-16 offset)
871 Error -11 (bad UTF-16 offset)
879 Error -24 (bad offset value)
882 Failed: invalid UTF-16 string at offset 0
885 ------------------------------------------------------------------
891 ------------------------------------------------------------------
896 ------------------------------------------------------------------
902 ------------------------------------------------------------------
907 ------------------------------------------------------------------
913 ------------------------------------------------------------------
918 ------------------------------------------------------------------
924 ------------------------------------------------------------------
929 ------------------------------------------------------------------
935 ------------------------------------------------------------------
940 ------------------------------------------------------------------
946 ------------------------------------------------------------------
951 ------------------------------------------------------------------
958 ------------------------------------------------------------------
963 ------------------------------------------------------------------
970 ------------------------------------------------------------------
975 ------------------------------------------------------------------
981 ------------------------------------------------------------------
986 ------------------------------------------------------------------
992 ------------------------------------------------------------------
997 ------------------------------------------------------------------
1004 ------------------------------------------------------------------
1009 ------------------------------------------------------------------
1016 ------------------------------------------------------------------
1021 Failed: setting UTF is disabled by the application at offset 0
1024 Failed: setting UTF is disabled by the application at offset 0
1026 /-- End of testinput18 --/