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