Annotation of embedaddon/pcre/testdata/testoutput18-16, revision 1.1

1.1     ! misho       1: /-- This set of tests is for UTF-16 and UTF-32 support, and is relevant only to the
        !             2:     16- and 32-bit library. --/
        !             3: 
        !             4: /xxx/8?DZSS
        !             5: **Failed: invalid UTF-8 string cannot be converted to UTF-16
        !             6: 
        !             7: /abc/8
        !             8:     ]
        !             9: **Failed: invalid UTF-8 string cannot be used as input in UTF mode
        !            10: 
        !            11: /X(\C{3})/8
        !            12:     X\x{11234}Y
        !            13:  0: X\x{11234}Y
        !            14:  1: \x{11234}Y
        !            15:     X\x{11234}YZ
        !            16:  0: X\x{11234}Y
        !            17:  1: \x{11234}Y
        !            18: 
        !            19: /X(\C{4})/8
        !            20:     X\x{11234}YZ
        !            21:  0: X\x{11234}YZ
        !            22:  1: \x{11234}YZ
        !            23:     X\x{11234}YZW
        !            24:  0: X\x{11234}YZ
        !            25:  1: \x{11234}YZ
        !            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:  0: X\x{11234}Y
        !            40:     X\x{11234}YZ
        !            41:  0: X\x{11234}YZ
        !            42:     X\x{11234}\x{512}
        !            43:  0: X\x{11234}\x{512}
        !            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}
        !            48: 
        !            49: /X\C{3,5}?/8
        !            50:     Xabcdefg
        !            51:  0: Xabc
        !            52:     X\x{11234}Y
        !            53:  0: X\x{11234}Y
        !            54:     X\x{11234}YZ
        !            55:  0: X\x{11234}Y
        !            56:     X\x{11234}\x{512}YZ
        !            57:  0: X\x{11234}\x{512}
        !            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:  0: a\x{12257}b
        !            72:     a\x{12257}\x{11234}b
        !            73: No match
        !            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{d800}
        !           107: Need char = \x{dc00}
        !           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{d800}
        !           143: Need char = \x{dc00}
        !           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{dbc0}
        !           155: Need char = \x{dc00}
        !           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{dbff}
        !           167: Need char = \x{dfff}
        !           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{d844}
        !           303: Need char = \x{deab}
        !           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}
        !           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 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
        !           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 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
        !           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 byte set: 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 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}
        !           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-16 string) offset=0 reason=1
        !           613:     \x{d800}\?
        !           614: No match
        !           615:     \x{da00}
        !           616: Error -10 (bad UTF-16 string) offset=0 reason=1
        !           617:     \x{da00}\?
        !           618: No match
        !           619:     \x{dc00}
        !           620: Error -10 (bad UTF-16 string) offset=0 reason=3
        !           621:     \x{dc00}\?
        !           622: No match
        !           623:     \x{de00}
        !           624: Error -10 (bad UTF-16 string) offset=0 reason=3
        !           625:     \x{de00}\?
        !           626: No match
        !           627:     \x{dfff}
        !           628: Error -10 (bad UTF-16 string) offset=0 reason=3
        !           629:     \x{dfff}\?
        !           630: No match
        !           631:     \x{110000}
        !           632: ** Failed: character \x{110000} is greater than 0x10ffff and so cannot be converted to UTF-16
        !           633:     \x{d800}\x{1234}
        !           634: Error -10 (bad UTF-16 string) offset=1 reason=2
        !           635: 
        !           636: /(*UTF16)\x{11234}/
        !           637:   abcd\x{11234}pqr
        !           638:  0: \x{11234}
        !           639: 
        !           640: /(*UTF)\x{11234}/I
        !           641: Capturing subpattern count = 0
        !           642: Options: utf
        !           643: First char = \x{d804}
        !           644: Need char = \x{de34}
        !           645:   abcd\x{11234}pqr
        !           646:  0: \x{11234}
        !           647: 
        !           648: /(*UTF-32)\x{11234}/
        !           649: Failed: (*VERB) not recognized or malformed at offset 5
        !           650: 
        !           651: /(*CRLF)(*UTF16)(*BSR_UNICODE)a\Rb/I
        !           652: Capturing subpattern count = 0
        !           653: Options: bsr_unicode utf
        !           654: Forced newline sequence: CRLF
        !           655: First char = 'a'
        !           656: Need char = 'b'
        !           657: 
        !           658: /(*CRLF)(*UTF32)(*BSR_UNICODE)a\Rb/I
        !           659: Failed: (*VERB) not recognized or malformed at offset 12
        !           660: 
        !           661: /\h/SI8
        !           662: Capturing subpattern count = 0
        !           663: Options: utf
        !           664: No first char
        !           665: No need char
        !           666: Subject length lower bound = 1
        !           667: Starting byte set: \x09 \x20 \xa0 \xff 
        !           668:     ABC\x{09}
        !           669:  0: \x{09}
        !           670:     ABC\x{20}
        !           671:  0:  
        !           672:     ABC\x{a0}
        !           673:  0: \x{a0}
        !           674:     ABC\x{1680}
        !           675:  0: \x{1680}
        !           676:     ABC\x{180e}
        !           677:  0: \x{180e}
        !           678:     ABC\x{2000}
        !           679:  0: \x{2000}
        !           680:     ABC\x{202f}
        !           681:  0: \x{202f}
        !           682:     ABC\x{205f}
        !           683:  0: \x{205f}
        !           684:     ABC\x{3000}
        !           685:  0: \x{3000}
        !           686: 
        !           687: /\v/SI8
        !           688: Capturing subpattern count = 0
        !           689: Options: utf
        !           690: No first char
        !           691: No need char
        !           692: Subject length lower bound = 1
        !           693: Starting byte set: \x0a \x0b \x0c \x0d \x85 \xff 
        !           694:     ABC\x{0a}
        !           695:  0: \x{0a}
        !           696:     ABC\x{0b}
        !           697:  0: \x{0b}
        !           698:     ABC\x{0c}
        !           699:  0: \x{0c}
        !           700:     ABC\x{0d}
        !           701:  0: \x{0d}
        !           702:     ABC\x{85}
        !           703:  0: \x{85}
        !           704:     ABC\x{2028}
        !           705:  0: \x{2028}
        !           706: 
        !           707: /\h*A/SI8
        !           708: Capturing subpattern count = 0
        !           709: Options: utf
        !           710: No first char
        !           711: Need char = 'A'
        !           712: Subject length lower bound = 1
        !           713: Starting byte set: \x09 \x20 A \xa0 \xff 
        !           714:     CDBABC
        !           715:  0: A
        !           716:     \x{2000}ABC 
        !           717:  0: \x{2000}A
        !           718: 
        !           719: /\R*A/SI8
        !           720: Capturing subpattern count = 0
        !           721: Options: utf
        !           722: No first char
        !           723: Need char = 'A'
        !           724: Subject length lower bound = 1
        !           725: Starting byte set: \x0a \x0b \x0c \x0d A \x85 \xff 
        !           726:     CDBABC
        !           727:  0: A
        !           728:     \x{2028}A  
        !           729:  0: \x{2028}A
        !           730: 
        !           731: /\v+A/SI8
        !           732: Capturing subpattern count = 0
        !           733: Options: utf
        !           734: No first char
        !           735: Need char = 'A'
        !           736: Subject length lower bound = 2
        !           737: Starting byte set: \x0a \x0b \x0c \x0d \x85 \xff 
        !           738: 
        !           739: /\s?xxx\s/8SI
        !           740: Capturing subpattern count = 0
        !           741: Options: utf
        !           742: No first char
        !           743: Need char = 'x'
        !           744: Subject length lower bound = 4
        !           745: Starting byte set: \x09 \x0a \x0c \x0d \x20 x 
        !           746: 
        !           747: /\sxxx\s/I8ST1
        !           748: Capturing subpattern count = 0
        !           749: Options: utf
        !           750: No first char
        !           751: Need char = 'x'
        !           752: Subject length lower bound = 5
        !           753: Starting byte set: \x09 \x0a \x0c \x0d \x20 \x85 \xa0 
        !           754:     AB\x{85}xxx\x{a0}XYZ
        !           755:  0: \x{85}xxx\x{a0}
        !           756:     AB\x{a0}xxx\x{85}XYZ
        !           757:  0: \x{a0}xxx\x{85}
        !           758: 
        !           759: /\S \S/I8ST1
        !           760: Capturing subpattern count = 0
        !           761: Options: utf
        !           762: No first char
        !           763: Need char = ' '
        !           764: Subject length lower bound = 3
        !           765: Starting byte set: \x00 \x01 \x02 \x03 \x04 \x05 \x06 \x07 \x08 \x0b \x0e 
        !           766:   \x0f \x10 \x11 \x12 \x13 \x14 \x15 \x16 \x17 \x18 \x19 \x1a \x1b \x1c \x1d 
        !           767:   \x1e \x1f ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ 
        !           768:   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 
        !           769:   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 
        !           770:   \x84 \x86 \x87 \x88 \x89 \x8a \x8b \x8c \x8d \x8e \x8f \x90 \x91 \x92 \x93 
        !           771:   \x94 \x95 \x96 \x97 \x98 \x99 \x9a \x9b \x9c \x9d \x9e \x9f \xa1 \xa2 \xa3 
        !           772:   \xa4 \xa5 \xa6 \xa7 \xa8 \xa9 \xaa \xab \xac \xad \xae \xaf \xb0 \xb1 \xb2 
        !           773:   \xb3 \xb4 \xb5 \xb6 \xb7 \xb8 \xb9 \xba \xbb \xbc \xbd \xbe \xbf \xc0 \xc1 
        !           774:   \xc2 \xc3 \xc4 \xc5 \xc6 \xc7 \xc8 \xc9 \xca \xcb \xcc \xcd \xce \xcf \xd0 
        !           775:   \xd1 \xd2 \xd3 \xd4 \xd5 \xd6 \xd7 \xd8 \xd9 \xda \xdb \xdc \xdd \xde \xdf 
        !           776:   \xe0 \xe1 \xe2 \xe3 \xe4 \xe5 \xe6 \xe7 \xe8 \xe9 \xea \xeb \xec \xed \xee 
        !           777:   \xef \xf0 \xf1 \xf2 \xf3 \xf4 \xf5 \xf6 \xf7 \xf8 \xf9 \xfa \xfb \xfc \xfd 
        !           778:   \xfe \xff 
        !           779:     \x{a2} \x{84}
        !           780:  0: \x{a2} \x{84}
        !           781:     A Z
        !           782:  0: A Z
        !           783: 
        !           784: /a+/8
        !           785:     a\x{123}aa\>1
        !           786:  0: aa
        !           787:     a\x{123}aa\>2
        !           788:  0: aa
        !           789:     a\x{123}aa\>3
        !           790:  0: a
        !           791:     a\x{123}aa\>4
        !           792: No match
        !           793:     a\x{123}aa\>5
        !           794: Error -24 (bad offset value)
        !           795:     a\x{123}aa\>6
        !           796: Error -24 (bad offset value)
        !           797: 
        !           798: /\x{1234}+/iS8I
        !           799: Capturing subpattern count = 0
        !           800: Options: caseless utf
        !           801: First char = \x{1234}
        !           802: No need char
        !           803: Subject length lower bound = 1
        !           804: No set of starting bytes
        !           805: 
        !           806: /\x{1234}+?/iS8I
        !           807: Capturing subpattern count = 0
        !           808: Options: caseless utf
        !           809: First char = \x{1234}
        !           810: No need char
        !           811: Subject length lower bound = 1
        !           812: No set of starting bytes
        !           813: 
        !           814: /\x{1234}++/iS8I
        !           815: Capturing subpattern count = 0
        !           816: Options: caseless utf
        !           817: First char = \x{1234}
        !           818: No need char
        !           819: Subject length lower bound = 1
        !           820: No set of starting bytes
        !           821: 
        !           822: /\x{1234}{2}/iS8I
        !           823: Capturing subpattern count = 0
        !           824: Options: caseless utf
        !           825: First char = \x{1234}
        !           826: Need char = \x{1234}
        !           827: Subject length lower bound = 2
        !           828: No set of starting bytes
        !           829: 
        !           830: /[^\x{c4}]/8DZ
        !           831: ------------------------------------------------------------------
        !           832:         Bra
        !           833:         [^\x{c4}]
        !           834:         Ket
        !           835:         End
        !           836: ------------------------------------------------------------------
        !           837: Capturing subpattern count = 0
        !           838: Options: utf
        !           839: No first char
        !           840: No need char
        !           841: 
        !           842: /X+\x{200}/8DZ
        !           843: ------------------------------------------------------------------
        !           844:         Bra
        !           845:         X++
        !           846:         \x{200}
        !           847:         Ket
        !           848:         End
        !           849: ------------------------------------------------------------------
        !           850: Capturing subpattern count = 0
        !           851: Options: utf
        !           852: First char = 'X'
        !           853: Need char = \x{200}
        !           854: 
        !           855: /\R/SI8
        !           856: Capturing subpattern count = 0
        !           857: Options: utf
        !           858: No first char
        !           859: No need char
        !           860: Subject length lower bound = 1
        !           861: Starting byte set: \x0a \x0b \x0c \x0d \x85 \xff 
        !           862: 
        !           863: /-- Check bad offset --/
        !           864: 
        !           865: /a/8
        !           866:     \x{10000}\>1
        !           867: Error -11 (bad UTF-16 offset)
        !           868:     \x{10000}ab\>1
        !           869: Error -11 (bad UTF-16 offset)
        !           870:     \x{10000}ab\>2
        !           871:  0: a
        !           872:     \x{10000}ab\>3
        !           873: No match
        !           874:     \x{10000}ab\>4
        !           875: No match
        !           876:     \x{10000}ab\>5
        !           877: Error -24 (bad offset value)
        !           878: 
        !           879: //8
        !           880: Failed: invalid UTF-16 string at offset 0
        !           881: 
        !           882: /\w+\x{C4}/8BZ
        !           883: ------------------------------------------------------------------
        !           884:         Bra
        !           885:         \w++
        !           886:         \x{c4}
        !           887:         Ket
        !           888:         End
        !           889: ------------------------------------------------------------------
        !           890:     a\x{C4}\x{C4}
        !           891:  0: a\x{c4}
        !           892: 
        !           893: /\w+\x{C4}/8BZT1
        !           894: ------------------------------------------------------------------
        !           895:         Bra
        !           896:         \w+
        !           897:         \x{c4}
        !           898:         Ket
        !           899:         End
        !           900: ------------------------------------------------------------------
        !           901:     a\x{C4}\x{C4}
        !           902:  0: a\x{c4}\x{c4}
        !           903:     
        !           904: /\W+\x{C4}/8BZ
        !           905: ------------------------------------------------------------------
        !           906:         Bra
        !           907:         \W+
        !           908:         \x{c4}
        !           909:         Ket
        !           910:         End
        !           911: ------------------------------------------------------------------
        !           912:     !\x{C4}
        !           913:  0: !\x{c4}
        !           914:  
        !           915: /\W+\x{C4}/8BZT1
        !           916: ------------------------------------------------------------------
        !           917:         Bra
        !           918:         \W++
        !           919:         \x{c4}
        !           920:         Ket
        !           921:         End
        !           922: ------------------------------------------------------------------
        !           923:     !\x{C4}
        !           924:  0: !\x{c4}
        !           925: 
        !           926: /\W+\x{A1}/8BZ
        !           927: ------------------------------------------------------------------
        !           928:         Bra
        !           929:         \W+
        !           930:         \x{a1}
        !           931:         Ket
        !           932:         End
        !           933: ------------------------------------------------------------------
        !           934:     !\x{A1}
        !           935:  0: !\x{a1}
        !           936:  
        !           937: /\W+\x{A1}/8BZT1
        !           938: ------------------------------------------------------------------
        !           939:         Bra
        !           940:         \W+
        !           941:         \x{a1}
        !           942:         Ket
        !           943:         End
        !           944: ------------------------------------------------------------------
        !           945:     !\x{A1}
        !           946:  0: !\x{a1}
        !           947: 
        !           948: /X\s+\x{A0}/8BZ
        !           949: ------------------------------------------------------------------
        !           950:         Bra
        !           951:         X
        !           952:         \s++
        !           953:         \x{a0}
        !           954:         Ket
        !           955:         End
        !           956: ------------------------------------------------------------------
        !           957:     X\x20\x{A0}\x{A0}
        !           958:  0: X \x{a0}
        !           959: 
        !           960: /X\s+\x{A0}/8BZT1
        !           961: ------------------------------------------------------------------
        !           962:         Bra
        !           963:         X
        !           964:         \s+
        !           965:         \x{a0}
        !           966:         Ket
        !           967:         End
        !           968: ------------------------------------------------------------------
        !           969:     X\x20\x{A0}\x{A0}
        !           970:  0: X \x{a0}\x{a0}
        !           971: 
        !           972: /\S+\x{A0}/8BZ
        !           973: ------------------------------------------------------------------
        !           974:         Bra
        !           975:         \S+
        !           976:         \x{a0}
        !           977:         Ket
        !           978:         End
        !           979: ------------------------------------------------------------------
        !           980:     X\x{A0}\x{A0}
        !           981:  0: X\x{a0}\x{a0}
        !           982: 
        !           983: /\S+\x{A0}/8BZT1
        !           984: ------------------------------------------------------------------
        !           985:         Bra
        !           986:         \S++
        !           987:         \x{a0}
        !           988:         Ket
        !           989:         End
        !           990: ------------------------------------------------------------------
        !           991:     X\x{A0}\x{A0}
        !           992:  0: X\x{a0}
        !           993: 
        !           994: /\x{a0}+\s!/8BZ
        !           995: ------------------------------------------------------------------
        !           996:         Bra
        !           997:         \x{a0}++
        !           998:         \s
        !           999:         !
        !          1000:         Ket
        !          1001:         End
        !          1002: ------------------------------------------------------------------
        !          1003:     \x{a0}\x20!
        !          1004:  0: \x{a0} !
        !          1005: 
        !          1006: /\x{a0}+\s!/8BZT1
        !          1007: ------------------------------------------------------------------
        !          1008:         Bra
        !          1009:         \x{a0}+
        !          1010:         \s
        !          1011:         !
        !          1012:         Ket
        !          1013:         End
        !          1014: ------------------------------------------------------------------
        !          1015:     \x{a0}\x20!
        !          1016:  0: \x{a0} !
        !          1017: 
        !          1018: /(*UTF)abc/9
        !          1019: Failed: setting UTF is disabled by the application at offset 0
        !          1020: 
        !          1021: /abc/89
        !          1022: Failed: setting UTF is disabled by the application at offset 0
        !          1023: 
        !          1024: /-- End of testinput18 --/

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>