Home | History | Annotate | Download | only in testdata
      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 
      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 chars: \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}
    370         \x{100}?+
    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 starting char list
    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
    387         \x{100}++
    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 chars: 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 chars: a x \xff 
    419 
    420 /(\x{100}{0,2}a|x)/8SDZ
    421 ------------------------------------------------------------------
    422         Bra
    423         CBra 1
    424         \x{100}{0,2}+
    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 chars: a x \xff 
    438 
    439 /(\x{100}{1,2}a|x)/8SDZ
    440 ------------------------------------------------------------------
    441         Bra
    442         CBra 1
    443         \x{100}
    444         \x{100}{0,1}+
    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 chars: 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}
    475         \x{101}*+
    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}
    488         \x{101}++
    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 chars: \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 chars: \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 chars: \x09 \x20 A \xa0 \xff 
    713     CDBABC
    714  0: A
    715     \x{2000}ABC 
    716  0: \x{2000}A
    717 
    718 /\R*A/SI8<bsr_unicode>
    719 Capturing subpattern count = 0
    720 Options: bsr_unicode utf
    721 No first char
    722 Need char = 'A'
    723 Subject length lower bound = 1
    724 Starting chars: \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 chars: \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
    744 Starting chars: \x09 \x0a \x0b \x0c \x0d \x20 x 
    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 chars: \x09 \x0a \x0b \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 chars: \x00 \x01 \x02 \x03 \x04 \x05 \x06 \x07 \x08 \x0e \x0f 
    765   \x10 \x11 \x12 \x13 \x14 \x15 \x16 \x17 \x18 \x19 \x1a \x1b \x1c \x1d \x1e 
    766   \x1f ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C 
    767   D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h 
    768   i j k l m n o p q r s t u v w x y z { | } ~ \x7f \x80 \x81 \x82 \x83 \x84 
    769   \x86 \x87 \x88 \x89 \x8a \x8b \x8c \x8d \x8e \x8f \x90 \x91 \x92 \x93 \x94 
    770   \x95 \x96 \x97 \x98 \x99 \x9a \x9b \x9c \x9d \x9e \x9f \xa1 \xa2 \xa3 \xa4 
    771   \xa5 \xa6 \xa7 \xa8 \xa9 \xaa \xab \xac \xad \xae \xaf \xb0 \xb1 \xb2 \xb3 
    772   \xb4 \xb5 \xb6 \xb7 \xb8 \xb9 \xba \xbb \xbc \xbd \xbe \xbf \xc0 \xc1 \xc2 
    773   \xc3 \xc4 \xc5 \xc6 \xc7 \xc8 \xc9 \xca \xcb \xcc \xcd \xce \xcf \xd0 \xd1 
    774   \xd2 \xd3 \xd4 \xd5 \xd6 \xd7 \xd8 \xd9 \xda \xdb \xdc \xdd \xde \xdf \xe0 
    775   \xe1 \xe2 \xe3 \xe4 \xe5 \xe6 \xe7 \xe8 \xe9 \xea \xeb \xec \xed \xee \xef 
    776   \xf0 \xf1 \xf2 \xf3 \xf4 \xf5 \xf6 \xf7 \xf8 \xf9 \xfa \xfb \xfc \xfd \xfe 
    777   \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 starting char list
    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 starting char list
    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 starting char list
    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 starting char list
    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 chars: \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 --/
   1024