diff options
author | ph10 <ph10@2f5784b3-3f2a-0410-8824-cb99058d5e15> | 2013-04-22 17:35:23 +0000 |
---|---|---|
committer | ph10 <ph10@2f5784b3-3f2a-0410-8824-cb99058d5e15> | 2013-04-22 17:35:23 +0000 |
commit | cfb27a536da197b768d56cc7c18e17752bcb9b38 (patch) | |
tree | 3e0eb84f3fa1ed63b5724c1ce220fcd8aa1cb6e5 /testdata | |
parent | 519e96a9dba044fda33be393d49696f50ced96ba (diff) | |
download | pcre-cfb27a536da197b768d56cc7c18e17752bcb9b38.tar.gz |
Use tail recursion in maximizing character and character type repetitions, to
reduce stack usage.
git-svn-id: svn://vcs.exim.org/pcre/code/trunk@1311 2f5784b3-3f2a-0410-8824-cb99058d5e15
Diffstat (limited to 'testdata')
-rw-r--r-- | testdata/testinput1 | 20 | ||||
-rw-r--r-- | testdata/testinput4 | 28 | ||||
-rw-r--r-- | testdata/testoutput1 | 30 | ||||
-rw-r--r-- | testdata/testoutput2 | 2 | ||||
-rw-r--r-- | testdata/testoutput4 | 42 |
5 files changed, 121 insertions, 1 deletions
diff --git a/testdata/testinput1 b/testdata/testinput1 index 6319a25..c5f21e0 100644 --- a/testdata/testinput1 +++ b/testdata/testinput1 @@ -5588,4 +5588,24 @@ AbcdCBefgBhiBqz /(*THEN:m(m)(?&y)(?(DEFINE)(?<y>b))/K abc +/^\d*\w{4}/ + 1234 + 123 + +/^[^b]*\w{4}/ + aaaa + aaa + +/^[^b]*\w{4}/i + aaaa + aaa + +/^a*\w{4}/ + aaaa + aaa + +/^a*\w{4}/i + aaaa + aaa + /-- End of testinput1 --/ diff --git a/testdata/testinput4 b/testdata/testinput4 index a6ebcba..5d77ada 100644 --- a/testdata/testinput4 +++ b/testdata/testinput4 @@ -691,4 +691,32 @@ \x{fdee} \x{fdef} +/^\d*\w{4}/8 + 1234 + 123 + +/^\p{Any}*\d{4}/8 + 1234 + 123 + +/^\X*\w{4}/8 + 1234 + 123 + +/^[^b]*\w{4}/8 + aaaa + aaa + +/^[^b]*\w{4}/8i + aaaa + aaa + +/^\x{100}*.{4}/8 + \x{100}\x{100}\x{100}\x{100} + \x{100}\x{100}\x{100} + +/^\x{100}*.{4}/8i + \x{100}\x{100}\x{100}\x{100} + \x{100}\x{100}\x{100} + /-- End of testinput4 --/ diff --git a/testdata/testoutput1 b/testdata/testoutput1 index c07816b..4033b10 100644 --- a/testdata/testoutput1 +++ b/testdata/testoutput1 @@ -9172,4 +9172,34 @@ MK: m(m 0: b MK: m(m +/^\d*\w{4}/ + 1234 + 0: 1234 + 123 +No match + +/^[^b]*\w{4}/ + aaaa + 0: aaaa + aaa +No match + +/^[^b]*\w{4}/i + aaaa + 0: aaaa + aaa +No match + +/^a*\w{4}/ + aaaa + 0: aaaa + aaa +No match + +/^a*\w{4}/i + aaaa + 0: aaaa + aaa +No match + /-- End of testinput1 --/ diff --git a/testdata/testoutput2 b/testdata/testoutput2 index a3f799a..de64502 100644 --- a/testdata/testoutput2 +++ b/testdata/testoutput2 @@ -4348,7 +4348,7 @@ Minimum match() recursion limit = 6 1: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaz\M Minimum match() limit = 32768 -Minimum match() recursion limit = 42 +Minimum match() recursion limit = 29 No match /(aaa(?C1)bbb|ab)/I diff --git a/testdata/testoutput4 b/testdata/testoutput4 index 10b17e7..0b8a306 100644 --- a/testdata/testoutput4 +++ b/testdata/testoutput4 @@ -1227,4 +1227,46 @@ MK: a\x{a3}b \x{fdef} 0: \x{fdef} +/^\d*\w{4}/8 + 1234 + 0: 1234 + 123 +No match + +/^\p{Any}*\d{4}/8 + 1234 + 0: 1234 + 123 +No match + +/^\X*\w{4}/8 + 1234 + 0: 1234 + 123 +No match + +/^[^b]*\w{4}/8 + aaaa + 0: aaaa + aaa +No match + +/^[^b]*\w{4}/8i + aaaa + 0: aaaa + aaa +No match + +/^\x{100}*.{4}/8 + \x{100}\x{100}\x{100}\x{100} + 0: \x{100}\x{100}\x{100}\x{100} + \x{100}\x{100}\x{100} +No match + +/^\x{100}*.{4}/8i + \x{100}\x{100}\x{100}\x{100} + 0: \x{100}\x{100}\x{100}\x{100} + \x{100}\x{100}\x{100} +No match + /-- End of testinput4 --/ |