1/-- These are a few representative patterns whose lengths and offsets are to be 2shown when the link size is 2. This is just a doublecheck test to ensure the 3sizes don't go horribly wrong when something is changed. The pattern contents 4are all themselves checked in other tests. Unicode, including property support, 5is required for these tests. --/ 6 7/((?i)b)/BM 8Memory allocation (code space): 21 9------------------------------------------------------------------ 10 0 17 Bra 11 3 9 CBra 1 12 8 01 Opt 13 10 NC b 14 12 9 Ket 15 15 00 Opt 16 17 17 Ket 17 20 End 18------------------------------------------------------------------ 19 20/(?s)(.*X|^B)/BM 21Memory allocation (code space): 25 22------------------------------------------------------------------ 23 0 21 Bra 24 3 9 CBra 1 25 8 AllAny* 26 10 X 27 12 6 Alt 28 15 ^ 29 16 B 30 18 15 Ket 31 21 21 Ket 32 24 End 33------------------------------------------------------------------ 34 35/(?s:.*X|^B)/BM 36Memory allocation (code space): 29 37------------------------------------------------------------------ 38 0 25 Bra 39 3 9 Bra 40 6 04 Opt 41 8 AllAny* 42 10 X 43 12 8 Alt 44 15 04 Opt 45 17 ^ 46 18 B 47 20 17 Ket 48 23 00 Opt 49 25 25 Ket 50 28 End 51------------------------------------------------------------------ 52 53/^[[:alnum:]]/BM 54Memory allocation (code space): 41 55------------------------------------------------------------------ 56 0 37 Bra 57 3 ^ 58 4 [0-9A-Za-z] 59 37 37 Ket 60 40 End 61------------------------------------------------------------------ 62 63/#/IxMD 64Memory allocation (code space): 7 65------------------------------------------------------------------ 66 0 3 Bra 67 3 3 Ket 68 6 End 69------------------------------------------------------------------ 70Capturing subpattern count = 0 71Options: extended 72No first char 73No need char 74 75/a#/IxMD 76Memory allocation (code space): 9 77------------------------------------------------------------------ 78 0 5 Bra 79 3 a 80 5 5 Ket 81 8 End 82------------------------------------------------------------------ 83Capturing subpattern count = 0 84Options: extended 85First char = 'a' 86No need char 87 88/x?+/BM 89Memory allocation (code space): 9 90------------------------------------------------------------------ 91 0 5 Bra 92 3 x?+ 93 5 5 Ket 94 8 End 95------------------------------------------------------------------ 96 97/x++/BM 98Memory allocation (code space): 9 99------------------------------------------------------------------ 100 0 5 Bra 101 3 x++ 102 5 5 Ket 103 8 End 104------------------------------------------------------------------ 105 106/x{1,3}+/BM 107Memory allocation (code space): 19 108------------------------------------------------------------------ 109 0 15 Bra 110 3 9 Once 111 6 x 112 8 x{0,2} 113 12 9 Ket 114 15 15 Ket 115 18 End 116------------------------------------------------------------------ 117 118/(x)*+/BM 119Memory allocation (code space): 24 120------------------------------------------------------------------ 121 0 20 Bra 122 3 14 Once 123 6 Brazero 124 7 7 CBra 1 125 12 x 126 14 7 KetRmax 127 17 14 Ket 128 20 20 Ket 129 23 End 130------------------------------------------------------------------ 131 132/^((a+)(?U)([ab]+)(?-U)([bc]+)(\w*))/BM 133Memory allocation (code space): 120 134------------------------------------------------------------------ 135 0 116 Bra 136 3 ^ 137 4 109 CBra 1 138 9 7 CBra 2 139 14 a+ 140 16 7 Ket 141 19 39 CBra 3 142 24 [ab]+? 143 58 39 Ket 144 61 39 CBra 4 145 66 [bc]+ 146100 39 Ket 147103 7 CBra 5 148108 \w* 149110 7 Ket 150113 109 Ket 151116 116 Ket 152119 End 153------------------------------------------------------------------ 154 155|8J\$WE\<\.rX\+ix\[d1b\!H\#\?vV0vrK\:ZH1\=2M\>iV\;\?aPhFB\<\*vW\@QW\@sO9\}cfZA\-i\'w\%hKd6gt1UJP\,15_\#QY\$M\^Mss_U\/\]\&LK9\[5vQub\^w\[KDD\<EjmhUZ\?\.akp2dF\>qmj\;2\}YWFdYx\.Ap\]hjCPTP\(n28k\+3\;o\&WXqs\/gOXdr\$\:r\'do0\;b4c\(f_Gr\=\"\\4\)\[01T7ajQJvL\$W\~mL_sS\/4h\:x\*\[ZN\=KLs\&L5zX\/\/\>it\,o\:aU\(\;Z\>pW\&T7oP\'2K\^E\:x9\'c\[\%z\-\,64JQ5AeH_G\#KijUKghQw\^\\vea3a\?kka_G\$8\#\`\*kynsxzBLru\'\]k_\[7FrVx\}\^\=\$blx\>s\-N\%j\;D\*aZDnsw\:YKZ\%Q\.Kne9\#hP\?\+b3\(SOvL\,\^\;\&u5\@\?5C5Bhb\=m\-vEh_L15Jl\]U\)0RP6\{q\%L\^_z5E\'Dw6X\b|BM 156Memory allocation (code space): 826 157------------------------------------------------------------------ 158 0 822 Bra 159 3 8J$WE<.rX+ix[d1b!H#?vV0vrK:ZH1=2M>iV;?aPhFB<*vW@QW@sO9}cfZA-i'w%hKd6gt1UJP,15_#QY$M^Mss_U/]&LK9[5vQub^w[KDD<EjmhUZ?.akp2dF>qmj;2}YWFdYx.Ap]hjCPTP(n28k+3;o&WXqs/gOXdr$:r'do0;b4c(f_Gr="\4)[01T7ajQJvL$W~mL_sS/4h:x*[ZN=KLs&L5zX//>it,o:aU(;Z>pW&T7oP'2K^E:x9'c[%z-,64JQ5AeH_G#KijUKghQw^\vea3a?kka_G$8#`*kynsxzBLru']k_[7FrVx}^=$blx>s-N%j;D*aZDnsw:YKZ%Q.Kne9#hP?+b3(SOvL,^;&u5@?5C5Bhb=m-vEh_L15Jl]U)0RP6{q%L^_z5E'Dw6X 160821 \b 161822 822 Ket 162825 End 163------------------------------------------------------------------ 164 165|\$\<\.X\+ix\[d1b\!H\#\?vV0vrK\:ZH1\=2M\>iV\;\?aPhFB\<\*vW\@QW\@sO9\}cfZA\-i\'w\%hKd6gt1UJP\,15_\#QY\$M\^Mss_U\/\]\&LK9\[5vQub\^w\[KDD\<EjmhUZ\?\.akp2dF\>qmj\;2\}YWFdYx\.Ap\]hjCPTP\(n28k\+3\;o\&WXqs\/gOXdr\$\:r\'do0\;b4c\(f_Gr\=\"\\4\)\[01T7ajQJvL\$W\~mL_sS\/4h\:x\*\[ZN\=KLs\&L5zX\/\/\>it\,o\:aU\(\;Z\>pW\&T7oP\'2K\^E\:x9\'c\[\%z\-\,64JQ5AeH_G\#KijUKghQw\^\\vea3a\?kka_G\$8\#\`\*kynsxzBLru\'\]k_\[7FrVx\}\^\=\$blx\>s\-N\%j\;D\*aZDnsw\:YKZ\%Q\.Kne9\#hP\?\+b3\(SOvL\,\^\;\&u5\@\?5C5Bhb\=m\-vEh_L15Jl\]U\)0RP6\{q\%L\^_z5E\'Dw6X\b|BM 166Memory allocation (code space): 816 167------------------------------------------------------------------ 168 0 812 Bra 169 3 $<.X+ix[d1b!H#?vV0vrK:ZH1=2M>iV;?aPhFB<*vW@QW@sO9}cfZA-i'w%hKd6gt1UJP,15_#QY$M^Mss_U/]&LK9[5vQub^w[KDD<EjmhUZ?.akp2dF>qmj;2}YWFdYx.Ap]hjCPTP(n28k+3;o&WXqs/gOXdr$:r'do0;b4c(f_Gr="\4)[01T7ajQJvL$W~mL_sS/4h:x*[ZN=KLs&L5zX//>it,o:aU(;Z>pW&T7oP'2K^E:x9'c[%z-,64JQ5AeH_G#KijUKghQw^\vea3a?kka_G$8#`*kynsxzBLru']k_[7FrVx}^=$blx>s-N%j;D*aZDnsw:YKZ%Q.Kne9#hP?+b3(SOvL,^;&u5@?5C5Bhb=m-vEh_L15Jl]U)0RP6{q%L^_z5E'Dw6X 170811 \b 171812 812 Ket 172815 End 173------------------------------------------------------------------ 174 175/(a(?1)b)/BM 176Memory allocation (code space): 28 177------------------------------------------------------------------ 178 0 24 Bra 179 3 18 CBra 1 180 8 a 181 10 6 Once 182 13 3 Recurse 183 16 6 Ket 184 19 b 185 21 18 Ket 186 24 24 Ket 187 27 End 188------------------------------------------------------------------ 189 190/(a(?1)+b)/BM 191Memory allocation (code space): 28 192------------------------------------------------------------------ 193 0 24 Bra 194 3 18 CBra 1 195 8 a 196 10 6 Once 197 13 3 Recurse 198 16 6 KetRmax 199 19 b 200 21 18 Ket 201 24 24 Ket 202 27 End 203------------------------------------------------------------------ 204 205/a(?P<name1>b|c)d(?P<longername2>e)/BM 206Memory allocation (code space): 42 207------------------------------------------------------------------ 208 0 32 Bra 209 3 a 210 5 7 CBra 1 211 10 b 212 12 5 Alt 213 15 c 214 17 12 Ket 215 20 d 216 22 7 CBra 2 217 27 e 218 29 7 Ket 219 32 32 Ket 220 35 End 221------------------------------------------------------------------ 222 223/(?:a(?P<c>c(?P<d>d)))(?P<a>a)/BM 224Memory allocation (code space): 54 225------------------------------------------------------------------ 226 0 41 Bra 227 3 25 Bra 228 6 a 229 8 17 CBra 1 230 13 c 231 15 7 CBra 2 232 20 d 233 22 7 Ket 234 25 17 Ket 235 28 25 Ket 236 31 7 CBra 3 237 36 a 238 38 7 Ket 239 41 41 Ket 240 44 End 241------------------------------------------------------------------ 242 243/(?P<a>a)...(?P=a)bbb(?P>a)d/BM 244Memory allocation (code space): 43 245------------------------------------------------------------------ 246 0 36 Bra 247 3 7 CBra 1 248 8 a 249 10 7 Ket 250 13 Any 251 14 Any 252 15 Any 253 16 \1 254 19 bbb 255 25 6 Once 256 28 3 Recurse 257 31 6 Ket 258 34 d 259 36 36 Ket 260 39 End 261------------------------------------------------------------------ 262 263/abc(?C255)de(?C)f/BM 264Memory allocation (code space): 31 265------------------------------------------------------------------ 266 0 27 Bra 267 3 abc 268 9 Callout 255 10 1 269 15 de 270 19 Callout 0 16 1 271 25 f 272 27 27 Ket 273 30 End 274------------------------------------------------------------------ 275 276/abcde/CBM 277Memory allocation (code space): 53 278------------------------------------------------------------------ 279 0 49 Bra 280 3 Callout 255 0 1 281 9 a 282 11 Callout 255 1 1 283 17 b 284 19 Callout 255 2 1 285 25 c 286 27 Callout 255 3 1 287 33 d 288 35 Callout 255 4 1 289 41 e 290 43 Callout 255 5 0 291 49 49 Ket 292 52 End 293------------------------------------------------------------------ 294 295/\x{100}/8BM 296Memory allocation (code space): 10 297------------------------------------------------------------------ 298 0 6 Bra 299 3 \x{100} 300 6 6 Ket 301 9 End 302------------------------------------------------------------------ 303 304/\x{1000}/8BM 305Memory allocation (code space): 11 306------------------------------------------------------------------ 307 0 7 Bra 308 3 \x{1000} 309 7 7 Ket 310 10 End 311------------------------------------------------------------------ 312 313/\x{10000}/8BM 314Memory allocation (code space): 12 315------------------------------------------------------------------ 316 0 8 Bra 317 3 \x{10000} 318 8 8 Ket 319 11 End 320------------------------------------------------------------------ 321 322/\x{100000}/8BM 323Memory allocation (code space): 12 324------------------------------------------------------------------ 325 0 8 Bra 326 3 \x{100000} 327 8 8 Ket 328 11 End 329------------------------------------------------------------------ 330 331/\x{1000000}/8BM 332Memory allocation (code space): 13 333------------------------------------------------------------------ 334 0 9 Bra 335 3 \x{1000000} 336 9 9 Ket 337 12 End 338------------------------------------------------------------------ 339 340/\x{4000000}/8BM 341Memory allocation (code space): 14 342------------------------------------------------------------------ 343 0 10 Bra 344 3 \x{4000000} 345 10 10 Ket 346 13 End 347------------------------------------------------------------------ 348 349/\x{7fffFFFF}/8BM 350Memory allocation (code space): 14 351------------------------------------------------------------------ 352 0 10 Bra 353 3 \x{7fffffff} 354 10 10 Ket 355 13 End 356------------------------------------------------------------------ 357 358/[\x{ff}]/8BM 359Memory allocation (code space): 10 360------------------------------------------------------------------ 361 0 6 Bra 362 3 \x{ff} 363 6 6 Ket 364 9 End 365------------------------------------------------------------------ 366 367/[\x{100}]/8BM 368Memory allocation (code space): 15 369------------------------------------------------------------------ 370 0 11 Bra 371 3 [\x{100}] 372 11 11 Ket 373 14 End 374------------------------------------------------------------------ 375 376/\x80/8BM 377Memory allocation (code space): 10 378------------------------------------------------------------------ 379 0 6 Bra 380 3 \x{80} 381 6 6 Ket 382 9 End 383------------------------------------------------------------------ 384 385/\xff/8BM 386Memory allocation (code space): 10 387------------------------------------------------------------------ 388 0 6 Bra 389 3 \x{ff} 390 6 6 Ket 391 9 End 392------------------------------------------------------------------ 393 394/\x{0041}\x{2262}\x{0391}\x{002e}/D8M 395Memory allocation (code space): 18 396------------------------------------------------------------------ 397 0 14 Bra 398 3 A\x{2262}\x{391}. 399 14 14 Ket 400 17 End 401------------------------------------------------------------------ 402Capturing subpattern count = 0 403Options: utf8 404First char = 'A' 405Need char = '.' 406 407/\x{D55c}\x{ad6d}\x{C5B4}/D8M 408Memory allocation (code space): 19 409------------------------------------------------------------------ 410 0 15 Bra 411 3 \x{d55c}\x{ad6d}\x{c5b4} 412 15 15 Ket 413 18 End 414------------------------------------------------------------------ 415Capturing subpattern count = 0 416Options: utf8 417First char = 237 418Need char = 180 419 420/\x{65e5}\x{672c}\x{8a9e}/D8M 421Memory allocation (code space): 19 422------------------------------------------------------------------ 423 0 15 Bra 424 3 \x{65e5}\x{672c}\x{8a9e} 425 15 15 Ket 426 18 End 427------------------------------------------------------------------ 428Capturing subpattern count = 0 429Options: utf8 430First char = 230 431Need char = 158 432 433/[\x{100}]/8BM 434Memory allocation (code space): 15 435------------------------------------------------------------------ 436 0 11 Bra 437 3 [\x{100}] 438 11 11 Ket 439 14 End 440------------------------------------------------------------------ 441 442/[Z\x{100}]/8BM 443Memory allocation (code space): 47 444------------------------------------------------------------------ 445 0 43 Bra 446 3 [Z\x{100}] 447 43 43 Ket 448 46 End 449------------------------------------------------------------------ 450 451/^[\x{100}\E-\Q\E\x{150}]/B8M 452Memory allocation (code space): 18 453------------------------------------------------------------------ 454 0 14 Bra 455 3 ^ 456 4 [\x{100}-\x{150}] 457 14 14 Ket 458 17 End 459------------------------------------------------------------------ 460 461/^[\QĀ\E-\QŐ\E]/B8M 462Memory allocation (code space): 18 463------------------------------------------------------------------ 464 0 14 Bra 465 3 ^ 466 4 [\x{100}-\x{150}] 467 14 14 Ket 468 17 End 469------------------------------------------------------------------ 470 471/^[\QĀ\E-\QŐ\E/B8M 472Failed: missing terminating ] for character class at offset 15 473 474/[\p{L}]/BM 475Memory allocation (code space): 15 476------------------------------------------------------------------ 477 0 11 Bra 478 3 [\p{L}] 479 11 11 Ket 480 14 End 481------------------------------------------------------------------ 482 483/[\p{^L}]/BM 484Memory allocation (code space): 15 485------------------------------------------------------------------ 486 0 11 Bra 487 3 [\P{L}] 488 11 11 Ket 489 14 End 490------------------------------------------------------------------ 491 492/[\P{L}]/BM 493Memory allocation (code space): 15 494------------------------------------------------------------------ 495 0 11 Bra 496 3 [\P{L}] 497 11 11 Ket 498 14 End 499------------------------------------------------------------------ 500 501/[\P{^L}]/BM 502Memory allocation (code space): 15 503------------------------------------------------------------------ 504 0 11 Bra 505 3 [\p{L}] 506 11 11 Ket 507 14 End 508------------------------------------------------------------------ 509 510/[abc\p{L}\x{0660}]/8BM 511Memory allocation (code space): 50 512------------------------------------------------------------------ 513 0 46 Bra 514 3 [a-c\p{L}\x{660}] 515 46 46 Ket 516 49 End 517------------------------------------------------------------------ 518 519/[\p{Nd}]/8BM 520Memory allocation (code space): 15 521------------------------------------------------------------------ 522 0 11 Bra 523 3 [\p{Nd}] 524 11 11 Ket 525 14 End 526------------------------------------------------------------------ 527 528/[\p{Nd}+-]+/8BM 529Memory allocation (code space): 48 530------------------------------------------------------------------ 531 0 44 Bra 532 3 [+\-\p{Nd}]+ 533 44 44 Ket 534 47 End 535------------------------------------------------------------------ 536 537/A\x{391}\x{10427}\x{ff3a}\x{1fb0}/8iBM 538Memory allocation (code space): 25 539------------------------------------------------------------------ 540 0 21 Bra 541 3 NC A\x{391}\x{10427}\x{ff3a}\x{1fb0} 542 21 21 Ket 543 24 End 544------------------------------------------------------------------ 545 546/A\x{391}\x{10427}\x{ff3a}\x{1fb0}/8BM 547Memory allocation (code space): 25 548------------------------------------------------------------------ 549 0 21 Bra 550 3 A\x{391}\x{10427}\x{ff3a}\x{1fb0} 551 21 21 Ket 552 24 End 553------------------------------------------------------------------ 554 555/[\x{105}-\x{109}]/8iBM 556Memory allocation (code space): 17 557------------------------------------------------------------------ 558 0 13 Bra 559 3 [\x{104}-\x{109}] 560 13 13 Ket 561 16 End 562------------------------------------------------------------------ 563 564/( ( (?(1)0|) )* )/xBM 565Memory allocation (code space): 38 566------------------------------------------------------------------ 567 0 34 Bra 568 3 28 CBra 1 569 8 Brazero 570 9 19 SCBra 2 571 14 8 Cond 572 17 1 Cond ref 573 20 0 574 22 3 Alt 575 25 11 Ket 576 28 19 KetRmax 577 31 28 Ket 578 34 34 Ket 579 37 End 580------------------------------------------------------------------ 581 582/( (?(1)0|)* )/xBM 583Memory allocation (code space): 30 584------------------------------------------------------------------ 585 0 26 Bra 586 3 20 CBra 1 587 8 Brazero 588 9 8 SCond 589 12 1 Cond ref 590 15 0 591 17 3 Alt 592 20 11 KetRmax 593 23 20 Ket 594 26 26 Ket 595 29 End 596------------------------------------------------------------------ 597 598/[a]/BM 599Memory allocation (code space): 9 600------------------------------------------------------------------ 601 0 5 Bra 602 3 a 603 5 5 Ket 604 8 End 605------------------------------------------------------------------ 606 607/[a]/8BM 608Memory allocation (code space): 9 609------------------------------------------------------------------ 610 0 5 Bra 611 3 a 612 5 5 Ket 613 8 End 614------------------------------------------------------------------ 615 616/[\xaa]/BM 617Memory allocation (code space): 9 618------------------------------------------------------------------ 619 0 5 Bra 620 3 \xaa 621 5 5 Ket 622 8 End 623------------------------------------------------------------------ 624 625/[\xaa]/8BM 626Memory allocation (code space): 10 627------------------------------------------------------------------ 628 0 6 Bra 629 3 \x{aa} 630 6 6 Ket 631 9 End 632------------------------------------------------------------------ 633 634/[^a]/BM 635Memory allocation (code space): 9 636------------------------------------------------------------------ 637 0 5 Bra 638 3 [^a] 639 5 5 Ket 640 8 End 641------------------------------------------------------------------ 642 643/[^a]/8BM 644Memory allocation (code space): 9 645------------------------------------------------------------------ 646 0 5 Bra 647 3 [^a] 648 5 5 Ket 649 8 End 650------------------------------------------------------------------ 651 652/[^\xaa]/BM 653Memory allocation (code space): 9 654------------------------------------------------------------------ 655 0 5 Bra 656 3 [^\xaa] 657 5 5 Ket 658 8 End 659------------------------------------------------------------------ 660 661/[^\xaa]/8BM 662Memory allocation (code space): 40 663------------------------------------------------------------------ 664 0 36 Bra 665 3 [\x00-\xa9\xab-\xff] (neg) 666 36 36 Ket 667 39 End 668------------------------------------------------------------------ 669 670/[^\d]/8WB 671------------------------------------------------------------------ 672 0 11 Bra 673 3 [^\p{Nd}] 674 11 11 Ket 675 14 End 676------------------------------------------------------------------ 677 678/[[:^alpha:][:^cntrl:]]+/8WB 679------------------------------------------------------------------ 680 0 44 Bra 681 3 [ -~\x80-\xff\P{L}]+ 682 44 44 Ket 683 47 End 684------------------------------------------------------------------ 685 686/[[:^cntrl:][:^alpha:]]+/8WB 687------------------------------------------------------------------ 688 0 44 Bra 689 3 [ -~\x80-\xff\P{L}]+ 690 44 44 Ket 691 47 End 692------------------------------------------------------------------ 693 694/[[:alpha:]]+/8WB 695------------------------------------------------------------------ 696 0 12 Bra 697 3 [\p{L}]+ 698 12 12 Ket 699 15 End 700------------------------------------------------------------------ 701 702/[[:^alpha:]\S]+/8WB 703------------------------------------------------------------------ 704 0 15 Bra 705 3 [\P{L}\P{Xsp}]+ 706 15 15 Ket 707 18 End 708------------------------------------------------------------------ 709 710/abc(d|e)(*THEN)x(123(*THEN)4|567(b|q)(*THEN)xx)/B 711------------------------------------------------------------------ 712 0 79 Bra 713 3 abc 714 9 7 CBra 1 715 14 d 716 16 5 Alt 717 19 e 718 21 12 Ket 719 24 *THEN 24 720 27 x 721 29 16 CBra 2 722 34 123 723 40 *THEN 11 724 43 4 725 45 31 Alt 726 48 567 727 54 7 CBra 3 728 59 b 729 61 5 Alt 730 64 q 731 66 12 Ket 732 69 *THEN 24 733 72 xx 734 76 47 Ket 735 79 79 Ket 736 82 End 737------------------------------------------------------------------ 738 739/-- End of testinput10 --/ 740