diff options
author | ph10 <ph10@6239d852-aaf2-0410-a92c-79f79f948069> | 2019-07-13 11:12:03 +0000 |
---|---|---|
committer | ph10 <ph10@6239d852-aaf2-0410-a92c-79f79f948069> | 2019-07-13 11:12:03 +0000 |
commit | d6e7202265ea12fcc49bcfb3669f7d123af478a1 (patch) | |
tree | 7c92a20a01aee54ffe3c9113ec2a3e203db991af /src/pcre2_study.c | |
parent | b5a16bc0e5067389da3903792951a3b1059f3d68 (diff) | |
download | pcre2-d6e7202265ea12fcc49bcfb3669f7d123af478a1.tar.gz |
Implement non-atomic positive assertions.
git-svn-id: svn://vcs.exim.org/pcre2/code/trunk@1130 6239d852-aaf2-0410-a92c-79f79f948069
Diffstat (limited to 'src/pcre2_study.c')
-rw-r--r-- | src/pcre2_study.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/pcre2_study.c b/src/pcre2_study.c index a2f1af5..3fe2997 100644 --- a/src/pcre2_study.c +++ b/src/pcre2_study.c @@ -240,6 +240,8 @@ for (;;) case OP_ASSERT_NOT: case OP_ASSERTBACK: case OP_ASSERTBACK_NOT: + case OP_ASSERT_NA: + case OP_ASSERTBACK_NA: do cc += GET(cc, 1); while (*cc == OP_ALT); /* Fall through */ @@ -1089,6 +1091,7 @@ do case OP_ONCE: case OP_SCRIPT_RUN: case OP_ASSERT: + case OP_ASSERT_NA: rc = set_start_bits(re, tcode, utf); if (rc == SSB_FAIL || rc == SSB_UNKNOWN) return rc; if (rc == SSB_DONE) try_next = FALSE; else @@ -1131,6 +1134,7 @@ do case OP_ASSERT_NOT: case OP_ASSERTBACK: case OP_ASSERTBACK_NOT: + case OP_ASSERTBACK_NA: do tcode += GET(tcode, 1); while (*tcode == OP_ALT); tcode += 1 + LINK_SIZE; break; |