summaryrefslogtreecommitdiff
path: root/pcre_jit_test.c
diff options
context:
space:
mode:
authorzherczeg <zherczeg@2f5784b3-3f2a-0410-8824-cb99058d5e15>2013-03-11 09:50:29 +0000
committerzherczeg <zherczeg@2f5784b3-3f2a-0410-8824-cb99058d5e15>2013-03-11 09:50:29 +0000
commit8386e75ba4f706eacc9cf2d64e7ab8c43bb9cc12 (patch)
treed64b2777fb426086c3282b881837c88345fca144 /pcre_jit_test.c
parentde5ca26abc7476d02a8bf44c3d6103f27d94e4ae (diff)
downloadpcre-8386e75ba4f706eacc9cf2d64e7ab8c43bb9cc12.tar.gz
OP_ONCE support is added to the backtracking control verb chain support in JIT.
git-svn-id: svn://vcs.exim.org/pcre/code/trunk@1277 2f5784b3-3f2a-0410-8824-cb99058d5e15
Diffstat (limited to 'pcre_jit_test.c')
-rw-r--r--pcre_jit_test.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/pcre_jit_test.c b/pcre_jit_test.c
index 67ea7df..56b4ed6 100644
--- a/pcre_jit_test.c
+++ b/pcre_jit_test.c
@@ -719,6 +719,18 @@ static struct regression_test_case regression_test_cases[] = {
{ MUA, 0 | F_NOMATCH, "(*COMMIT)(a(*COMMIT)b)++(*PRUNE)d|c", "ababc" },
{ MUA, 0, "((a)(*COMMIT)b)++(*PRUNE)d|c", "ababc" },
{ MUA, 0 | F_NOMATCH, "(*COMMIT)((a)(*COMMIT)b)++(*PRUNE)d|c", "ababc" },
+ { MUA, 0, "(?>a(*COMMIT)b)*abab(*PRUNE)d|ba", "ababab" },
+ { MUA, 0 | F_NOMATCH, "(*COMMIT)(?>a(*COMMIT)b)*abab(*PRUNE)d|ba", "ababab" },
+ { MUA, 0, "(?>a(*COMMIT)b)+abab(*PRUNE)d|ba", "ababab" },
+ { MUA, 0 | F_NOMATCH, "(*COMMIT)(?>a(*COMMIT)b)+abab(*PRUNE)d|ba", "ababab" },
+ { MUA, 0, "(?>a(*COMMIT)b)?ab(*PRUNE)d|ba", "aba" },
+ { MUA, 0 | F_NOMATCH, "(*COMMIT)(?>a(*COMMIT)b)?ab(*PRUNE)d|ba", "aba" },
+ { MUA, 0, "(?>a(*COMMIT)b)*?n(*PRUNE)d|ba", "abababn" },
+ { MUA, 0 | F_NOMATCH, "(*COMMIT)(?>a(*COMMIT)b)*?n(*PRUNE)d|ba", "abababn" },
+ { MUA, 0, "(?>a(*COMMIT)b)+?n(*PRUNE)d|ba", "abababn" },
+ { MUA, 0 | F_NOMATCH, "(*COMMIT)(?>a(*COMMIT)b)+?n(*PRUNE)d|ba", "abababn" },
+ { MUA, 0, "(?>a(*COMMIT)b)??n(*PRUNE)d|bn", "abn" },
+ { MUA, 0 | F_NOMATCH, "(*COMMIT)(?>a(*COMMIT)b)??n(*PRUNE)d|bn", "abn" },
/* Deep recursion. */
{ MUA, 0, "((((?:(?:(?:\\w)+)?)*|(?>\\w)+?)+|(?>\\w)?\?)*)?\\s", "aaaaa+ " },