Philip.Hazel
c9ac9e23ec
Refactor named group handling by adding a pre-pass that generates a list of
...
named groups with their numbers before the rest of the compiling code is run.
This has simplified the main compiling code and removed some sources of error.
2015-06-03 16:27:47 +00:00
Philip.Hazel
666b3c88cf
Give error for empty subpattern name such as (?'').
2015-05-19 16:48:57 +00:00
Philip.Hazel
78735a5336
Fix buffer overflow for lookbehind with mutually recursive groups.
2015-05-18 17:31:29 +00:00
Philip.Hazel
ba8f1d8002
Maintenance on test after running ManyConfigTests.
2015-05-17 17:44:21 +00:00
Philip.Hazel
56444e9978
Fix buffer overflow for recursive byname back reference when duplicate names
...
exist.
2015-05-15 17:09:01 +00:00
Philip.Hazel
92739ef5d8
Fix repeated condition check by duplicated name bug.
2015-05-08 16:32:28 +00:00
Philip.Hazel
e653c5f142
Re-do previous patch and fix new forward-reference-with-quantification bugs.
2015-05-06 16:51:25 +00:00
Philip.Hazel
c420d11041
Fix bug in previous fix.
2015-05-05 18:46:51 +00:00
Philip.Hazel
d5191510db
Fix recursive forward reference bug.
2015-05-03 16:46:56 +00:00
Philip.Hazel
4d35b44b43
Fix compatibility issues for \8 and \9.
2015-04-23 17:28:39 +00:00
Philip.Hazel
d1a13b8e2e
Implement PCRE2_ALT_CIRCUMFLEX.
2015-04-22 17:39:25 +00:00
Philip.Hazel
fe2733263d
Fix replication bug in pcre2test.
2015-04-21 08:34:10 +00:00
Philip.Hazel
e47a6ebe87
Implement PCRE2_NEVER_BACKSLASH_C.
2015-04-13 17:29:05 +00:00
Philip.Hazel
3e1748390b
Fix very slow find_minlength when mutual recursion is present.
2015-04-13 09:13:39 +00:00
Philip.Hazel
7105d249f6
Fix handling of global matching in pcre2test when a lookbehind assertion
...
contains \K.
2015-04-06 12:16:36 +00:00
Philip.Hazel
ade67323e7
Fix stack overflow instead of error diagnosis for mutual recursion within
...
lookbehind assertion.
2015-04-01 15:37:54 +00:00
Philip.Hazel
6a2cb0d774
Fix diagnosis of negative relative references to non-existent groups.
2015-03-31 15:01:25 +00:00
Philip.Hazel
2327a5860b
Fix bad compile for possessive quantifier on group containing a subroutine
...
reference.
2015-03-29 17:34:04 +00:00
Philip.Hazel
63cab0dba9
Fix non-diagnosis of syntax error for (?(?< when not followed by ! or =.
2015-03-29 15:40:45 +00:00
Philip.Hazel
6b6e611b39
Fix mutual recursion inside other parentheses stack overflow bug.
2015-03-27 17:45:02 +00:00
Philip.Hazel
a4ceadbf47
Fix bugs when (?!) is used as a condition.
2015-03-24 10:21:34 +00:00
Philip.Hazel
4e61019ffe
Implement pcre2_callout_enumerate().
2015-03-23 15:52:08 +00:00
Philip.Hazel
b15698b077
Fix data overrun for /(?(?C)/
2015-03-20 12:37:28 +00:00
Philip.Hazel
aa8d7342da
Test binary zero in callout strings; change offset to PCRE2_SIZE; some
...
documentation tidies.
2015-03-16 15:38:26 +00:00
Philip.Hazel
15e034c9c2
Add string offset within the pattern to the data passed to a callout with a
...
string argument.
2015-03-14 12:20:18 +00:00
Philip.Hazel
b2c67082bd
Fix crash in pcre2test for some callouts with string arguments.
2015-03-14 10:47:43 +00:00
Philip.Hazel
baf08a3d37
Support manual callout with string argument at start of condition.
2015-03-12 17:00:18 +00:00
Zoltán Herczeg
e43b3d435b
Adding more callout with string tests.
2015-03-12 11:49:29 +00:00
Philip.Hazel
d0cf279d87
Code for callouts with string arguments. Documentation not yet updated.
2015-03-11 17:44:16 +00:00
Philip.Hazel
c372df5dce
Fix compile error for forward reference subroutine call within a group that
...
also contained a recursive back reference.
2015-03-01 18:34:05 +00:00
Philip.Hazel
ea03932668
Fix "internal error" bug caused by patterns like "((?2){0,1999}())?".
2015-02-28 11:31:51 +00:00
Philip.Hazel
3d9cc76a52
Fix bug for groups like (a)*+ (possessive, zero minimum) when the ovector was
...
too small to capture.
2015-02-11 10:06:09 +00:00
Philip.Hazel
154bc83cb5
Fix replacement bug in pcre2_substitute().
2015-02-10 12:48:45 +00:00
Philip.Hazel
0011aaa712
Disallow quantification of assertion conditions, for Perl compatibility (and in
...
any case it didn't always work).
2015-01-28 17:31:11 +00:00
Philip.Hazel
911b800984
Fix incorrect size calculation when a reference to a duplicate name occurs
...
in a part of the pattern where PCRE2_DUPNAMES is not set.
2015-01-27 17:21:32 +00:00
Philip.Hazel
d4daaf966d
Fix conditional group backreference bug.
2015-01-13 16:01:24 +00:00
Philip.Hazel
5a18651441
Add PCRE2_NO_DOTSTAR_ANCHOR and revise documentation for .* optimizing.
2015-01-02 17:09:16 +00:00
Philip.Hazel
b8dbae1474
Improvements for substring handling with partial matches.
2014-12-22 17:33:10 +00:00
Philip.Hazel
cb8865d247
Update and improve substring handling and its documentation.
2014-12-14 17:17:06 +00:00
Philip.Hazel
a85d15cbd1
Improve interfaces to substring functions, and fix bugs.
2014-12-13 17:43:26 +00:00
Philip.Hazel
eea35d0cab
Fix zero-repeated assertion-as-condition bug.
2014-11-19 11:17:20 +00:00
Philip.Hazel
07f8372202
Further substitution tests (code and data), and more documentation.
2014-11-14 18:41:20 +00:00
Philip.Hazel
c19bd9a377
Substitution tests and documentation.
2014-11-12 16:57:56 +00:00
Philip.Hazel
f1c6ee730a
Code for pcre2_substitute(), and tests.
2014-11-11 10:19:23 +00:00
Philip.Hazel
8aa511a98b
Improve test coverage; minor typo in JIT test and other minor buglets fixed.
2014-10-31 12:34:34 +00:00
Philip.Hazel
26cd0bccb3
Partial documentation and partial code tweaks.
2014-10-14 16:23:57 +00:00
Philip.Hazel
b6e793f343
The tests all run clean with JIT.
2014-10-11 15:56:25 +00:00
Philip.Hazel
d961132ae1
Fix match_unset_backref bug.
2014-10-10 16:42:03 +00:00
Philip.Hazel
623b497851
Fix "first code unit" bug.
2014-10-10 16:16:44 +00:00
Philip.Hazel
62d728bb0b
Remove leftchar/rightchar from the public API.
2014-10-10 11:55:28 +00:00
Philip.Hazel
2148a4093e
Work on the tests for JIT.
2014-10-06 17:28:42 +00:00
Philip.Hazel
4bdfd990af
Impose a minimum of 1 for the number of pairs in the ovector.
2014-10-05 17:55:25 +00:00
Philip.Hazel
ccd5ac9014
Save compile-time work when PCRE2_NO_START_OPTIMIZE is set.
2014-10-03 09:47:59 +00:00
Philip.Hazel
e036c5fba0
Remove the ability to change newlines and \R at match time.
2014-10-01 17:02:33 +00:00
Philip.Hazel
a0410efc56
Make PCRE2_NO_START_OPTIMIZE a compile-only option.
2014-10-01 16:16:27 +00:00
Philip.Hazel
eee8530add
API documentation and a lot of little related changes to the code.
2014-09-19 07:43:39 +00:00
Philip.Hazel
7b2707fcf7
Make /()a/ set the "first character must be" data.
2014-08-30 16:21:17 +00:00
Philip.Hazel
7858fa702d
Implement (*NOTEMPTY) and (?(VERSION= features.
2014-08-26 11:46:21 +00:00
Philip.Hazel
ac70cacd29
Implement the "rightchar" feature of match data.
2014-08-19 17:07:22 +00:00
Philip.Hazel
7efba85b56
Change lengths to PCRE2_SIZE and revise OP_RECURSE processing.
2014-08-16 09:46:58 +00:00
Philip.Hazel
d631f4025c
Remove save/load from pcre2test, as they will not be implemented just yet (if
...
at all).
2014-08-12 17:41:11 +00:00
Philip.Hazel
bcfa6a7d5b
Don't say "No options" or "No first/last code unit"; simplifies pcre2test
...
output.
2014-08-10 16:32:58 +00:00
Philip.Hazel
b6b9087081
Multi-config tests (without JIT) now work.
2014-08-10 16:09:24 +00:00
Philip.Hazel
fd555f266c
Test tidies and additional tests.
2014-08-06 09:35:11 +00:00
Philip.Hazel
e022475d54
All tests except JIT and save/reload are implemented.
2014-08-05 16:51:32 +00:00
Philip.Hazel
e2076960d4
Changes to pcre2test single-letter modifiers.
2014-08-03 18:15:32 +00:00
Philip.Hazel
8792477279
Add more tests.
2014-08-03 17:50:08 +00:00
Philip.Hazel
017b6a1624
Tests 1 and 2 are converted (but without save/restore).
2014-07-24 16:32:38 +00:00