# This test is run only when JIT support is available. It checks for a # successful and an unsuccessful JIT compile, and a couple of things that are # different with JIT. /abc/I,jit Capturing subpattern count = 0 No options First code unit = 'a' Need char = 'c' Subject length lower bound = 3 No starting char list JIT study was successful /(?(?C1)(?=a)a)/I,jit Capturing subpattern count = 0 May match empty string No options No first code unit No last code unit Study returned NULL JIT study was not successful /(?(?C1)(?=a)a)/I Capturing subpattern count = 0 May match empty string No options No first code unit No last code unit Subject length lower bound = -1 No starting char list JIT study was not successful /a*/I Capturing subpattern count = 0 May match empty string No options No first code unit No last code unit Study returned NULL /(?(R)a*(?1)|((?R))b)/S+ aaaabcde Error -27 (JIT stack limit reached) # Test various compile modes #pattern jit,jitverify /abcd/ abcd 0: abcd (JIT) xyz No match (JIT) /abcd/ abcd 0: abcd (JIT) ab\P Partial match: ab (JIT) ab\P\P Partial match: ab (JIT) xyz No match (JIT) /abcd/ abcd 0: abcd (JIT) ab\P Partial match: ab (JIT) ab\P\P Partial match: ab (JIT) xyz No match (JIT) /abcd/jit=1 abcd 0: abcd (JIT) ab\P Partial match: ab ab\P\P Partial match: ab xyz No match (JIT) xyz\P No match /abcd/jit=2 abcd 0: abcd ab\P Partial match: ab (JIT) ab\P\P Partial match: ab xyz No match /abcd/jit=3 abcd 0: abcd (JIT) ab\P Partial match: ab (JIT) ab\P\P Partial match: ab xyz No match (JIT) /abcd/jit=4 abcd 0: abcd ab\P Partial match: ab ab\P\P Partial match: ab (JIT) xyz No match /abcd/jit=5 abcd 0: abcd (JIT) ab\P Partial match: ab ab\P\P Partial match: ab (JIT) xyz No match (JIT) /abcd/jit=6 abcd 0: abcd ab\P Partial match: ab (JIT) ab\P\P Partial match: ab (JIT) xyz No match /abcd/jit=7 abcd 0: abcd (JIT) ab\P Partial match: ab (JIT) ab\P\P Partial match: ab (JIT) xyz No match (JIT) /abcd/I,jit=2 Capturing subpattern count = 0 No options First code unit = 'a' Last code unit = 'd' Subject length lower bound = 4 No starting char list JIT study was successful /(*NO_START_OPT)a(*:m)b/mark a No match, mark = m (JIT) /^12345678abcd/m 12345678abcd 0: 12345678abcd (JIT) # End of testinput15