1# These are: 2# 3# (1) Tests of the match-limiting features. The results are different for 4# interpretive or JIT matching, so this test should not be run with JIT. The 5# same tests are run using JIT in test 17. 6 7# (2) Other tests that must not be run with JIT. 8 9/(a+)*zz/I 10 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaazzbbbbbb\=find_limits 11 aaaaaaaaaaaaaz\=find_limits 12 13!((?:\s|//.*\\n|/[*](?:\\n|.)*?[*]/)*)!I 14 /* this is a C style comment */\=find_limits 15 16/^(?>a)++/ 17 aa\=find_limits 18 aaaaaaaaa\=find_limits 19 20/(a)(?1)++/ 21 aa\=find_limits 22 aaaaaaaaa\=find_limits 23 24/a(?:.)*?a/ims 25 abbbbbbbbbbbbbbbbbbbbba\=find_limits 26 27/a(?:.(*THEN))*?a/ims 28 abbbbbbbbbbbbbbbbbbbbba\=find_limits 29 30/a(?:.(*THEN:ABC))*?a/ims 31 abbbbbbbbbbbbbbbbbbbbba\=find_limits 32 33/^(?>a+)(?>b+)(?>c+)(?>d+)(?>e+)/ 34 aabbccddee\=find_limits 35 36/^(?>(a+))(?>(b+))(?>(c+))(?>(d+))(?>(e+))/ 37 aabbccddee\=find_limits 38 39/^(?>(a+))(?>b+)(?>(c+))(?>d+)(?>(e+))/ 40 aabbccddee\=find_limits 41 42/(*LIMIT_MATCH=12bc)abc/ 43 44/(*LIMIT_MATCH=4294967290)abc/ 45 46/(*LIMIT_RECURSION=4294967280)abc/I 47 48/(a+)*zz/ 49 aaaaaaaaaaaaaz 50 aaaaaaaaaaaaaz\=match_limit=3000 51 52/(a+)*zz/ 53 aaaaaaaaaaaaaz\=recursion_limit=10 54 55/(*LIMIT_MATCH=3000)(a+)*zz/I 56 aaaaaaaaaaaaaz 57 aaaaaaaaaaaaaz\=match_limit=60000 58 59/(*LIMIT_MATCH=60000)(*LIMIT_MATCH=3000)(a+)*zz/I 60 aaaaaaaaaaaaaz 61 62/(*LIMIT_MATCH=60000)(a+)*zz/I 63 aaaaaaaaaaaaaz 64 aaaaaaaaaaaaaz\=match_limit=3000 65 66/(*LIMIT_RECURSION=10)(a+)*zz/I 67 aaaaaaaaaaaaaz 68 aaaaaaaaaaaaaz\=recursion_limit=1000 69 70/(*LIMIT_RECURSION=10)(*LIMIT_RECURSION=1000)(a+)*zz/I 71 aaaaaaaaaaaaaz 72 73/(*LIMIT_RECURSION=1000)(a+)*zz/I 74 aaaaaaaaaaaaaz 75 aaaaaaaaaaaaaz\=recursion_limit=10 76 77# These three have infinitely nested recursions. 78 79/((?2))((?1))/ 80 abc 81 82/((?(R2)a+|(?1)b))/ 83 aaaabcde 84 85/(?(R)a*(?1)|((?R))b)/ 86 aaaabcde 87 88# The allusedtext modifier does not work with JIT, which does not maintain 89# the leftchar/rightchar data. 90 91/abc(?=xyz)/allusedtext 92 abcxyzpqr 93 abcxyzpqr\=aftertext 94 95/(?<=pqr)abc(?=xyz)/allusedtext 96 xyzpqrabcxyzpqr 97 xyzpqrabcxyzpqr\=aftertext 98 99/a\b/ 100 a.\=allusedtext 101 a\=allusedtext 102 103/abc\Kxyz/ 104 abcxyz\=allusedtext 105 106/abc(?=xyz(*ACCEPT))/ 107 abcxyz\=allusedtext 108 109/abc(?=abcde)(?=ab)/allusedtext 110 abcabcdefg 111 112# These tests provoke recursion loops, which give a different error message 113# when JIT is used. 114 115/(?R)/I 116 abcd 117 118/(a|(?R))/I 119 abcd 120 defg 121 122/(ab|(bc|(de|(?R))))/I 123 abcd 124 fghi 125 126/(ab|(bc|(de|(?1))))/I 127 abcd 128 fghi 129 130/x(ab|(bc|(de|(?1)x)x)x)/I 131 xab123 132 xfghi 133 134/(?!\w)(?R)/ 135 abcd 136 =abc 137 138/(?=\w)(?R)/ 139 =abc 140 abcd 141 142/(?<!\w)(?R)/ 143 abcd 144 145/(?<=\w)(?R)/ 146 abcd 147 148/(a+|(?R)b)/ 149 aaa 150 bbb 151 152/[^\xff]((?1))/BI 153 abcd 154 155# These tests don't behave the same with JIT 156 157/\w+(?C1)/BI,no_auto_possess 158 abc\=callout_fail=1 159 160/(*NO_AUTO_POSSESS)\w+(?C1)/BI 161 abc\=callout_fail=1 162 163# End of testinput15 164