Parent Directory
|
Revision Log
Links to HEAD: | (view) (annotate) |
Sticky Revision: |
Refactor named group handling for conditional tests.
Add VT to the set of characters recognized as white space.
Make back references to duplicated named subpatterns more like Perl.
Fix backup bugs with \X repeat matches.
Get rid of some "statement not reached" and a "possibly uninitialized" compiler warnings.
Fix spelling mistakes in comments.
Source tidies (trails spaces, html updates) for 8.33-RC1.
Improved support for match_limit in JIT.
Code (but not yet documentation) for *LIMIT_MATCH and *LIMIT_RECURSION.
Remove commented code that was accidentally left in.
Use tail recursion in maximizing character and character type repetitions, to reduce stack usage.
Further changes to backtracking verbs in assertions.
Fix COMMIT in recursion; document backtracking verbs in assertions and subroutines.
Code changes for simpler backtracking handling (docs to follow).
Change backtracking behaviour to "first verb encountered".
Fix the case where there are two or more SKIPs that may have to be ignored.
Fix *SKIP infinite loop.
Confine PRUNE and SKIP to recursive subpattern calls, like COMMIT.
Fix missing callout in alternative of conditional group when auto callout is set.
Add \p{Xuc} to match characters identifiable by Universal Character Names.
Change some pcre_uchar variables to pcre_uint32 in pcre_exec.c, for better performance.
Pass back the bumpalong value for partial matches.
Fix various save/revert cases for capture_last in recursion and also don't diagnose overflow when it has reverted.
Small tweaks give performance improvements.
A minor change from uchar to unsigned int improves performance in some environments. Also correct a missing "unsigned".
File tidies, preparing for 8.32-RC1.
Fix really stupid bug in multicase matching, and deficiency in the tests.
Add PCRE_ERROR_BADLENGTH for a negative length.
JIT native interface.
Previous patch for no stack recursion was incomplete.
Fix typo (duplicate label) when --disable-stack-for-recursion is set.
Lose unused variable warning when UTF not supported.
Clean up compiler warnings for pcre_exec.c in all modes.
pcre32: Fix signed-unsigned compare
pcre32: Use pcre_uint32 for characters
pcre32: exec: Mask bits > 21 in 32-bit UTF mode Allow passing characters with high bits set in UTF-32 mode.
pcre32: exec: Use uint32 for characters
pcre32: More 32-bit cleanliness fixes
pcre32: Add 32-bit library Create libpcre32 that operates on 32-bit characters (UTF-32). This turned out to be surprisingly simple after the UTF-16 support was introduced; mostly just extra ifdefs and adjusting and adding some tests.
Case folding in JIT and removing unnecessary spaces
All the remaining changes for handling characters with more than one other case.
Turn case lists for horizontal and vertical white space into macros so they are defined only once.
General spring-clean of EBCDIC-related issues in the code, which had decayed over time. Also the documentation. Added one test that can be run in an ASCII world to do a little testing of EBCDIC-related things.
Improve extended grapheme clusters using a bit table.
Upgrade \X to match an extended grapheme cluster
Fix capture problem with repeated, empty-string-matching groups.
Document update for 8.31-RC1 test release.
Fix ovector overrun when backreferences need temporary memory and the highest block is not used.
(COMMIT*) is now supported by the JIT compiler
Previous patch to fix (*COMMIT) in assertions was bad; fix it.
Confine (*COMMIT) inside positive assertions, as documented.
Stop (*COMMIT) escaping from a recursive subroutine call.
Applied Graycode's patch to use heap stack frames more efficiently.
(*MARK) support, set_SOM optimization and other fixes in JIT
Re-implement /S++ and -s++ in pcretest in a thread-safe way, using JIT callback. Removed the PCRE_EXTRA_USED_JIT flag.
OP_NOT now supports any UTF character
Set PCRE_EXTRA_USED_JIT when JIT was actually used at runtime. Add /S++ and -s++ to pcretest to show whether JIT was used or not.
Fix partial match issues with CRLF and \r, and update tests.
Fix several partial matching bugs for backrefs, \R, \X, and CRLF line endings.
Improved \X and back reference partial matching
Partial matching support is added to the JIT compiler
Add a cast to fix a compiler warning.
Additional casts to avoid compiler warnings, originally from a MS compiler, but also given by gcc if you turn on enough warnings.
Source file tidies for 8.30-RC1 release; fix Makefile.am bugs for building symbolic links to man pages.
More tidies and documentation for stack frame measurement.
Modified, and made non-default the stack size info experimental code.
Experimental stack size determination.
Put top level heap frame on the stack.
Fix indentation error.
Fix MARK bug for assertions.
Fix nested *MARK bug (nothing shown for /(?=(*:x))((*:y)q|)/ etc.)
Add pcre16 prefix to 16 bit structs
add pcre16_callout_block and pcre16_extra
Typos in PrepareRelease; include 16-bit in make distcheck; fix RunTest and RunGrepTest when building in non-source directory; problem in pcretest when no UTF or 16-bit support; other tidies consequent on building a tarball.
Merging all the changes from the pcre16 branch into the trunk.
Rolled back trunk to r755 to prepare for merging the 16-bit branch.
Source tidies for 8.21-RC1
Added (int) casts to reduce 64-bit warnings.
Fix bug with caseless matching of characters of different lengths when the shorter is right at the end of the subject.
Update *MARK handling to be more like Perl.
Code tidies.
Marks in non-capturing atomic groups were not being passed out.
Fix cache-flush issue on PowerPC, adding some comments and a check for disabled PCRE_EXTRA_TABLES.
Source tidies for 8.20-RC3.
PCRE_NO_START_OPTIMIZE, if given to pcre_compile(), did not suppress the subject length check at run time.
Revert handling of atomic groups that do not include captures to the old way of handling, thus reducing stack usage.
Comment correction and minor code improvement.
Make (*THEN) work as in Perl in subpatterns that do not contain | alternatives.
Fix bug with (*THEN) in a subroutine/recursion.
File tidies for 8.20-RC2 release.
Restore tail-recursion optimizations when no (*THEN) in pattern.
Fix *THEN in condition issue.
Final source and document tidies for 8.20-RC1.
Fix loop/bad error when recursed group contains (*PRUNE) etc.
Adjust JIT limit code; make JIT test return 1 if not successful.
Commit all the changes for JIT support, but without any documentation yet.
Documentation and general text tidies in preparation for test release.
Fix partial match bug with /f.*/8s.
Fix bug that caused /.(*F)/ to give a partial match instead of no match.
Pass *MARK name to callouts
Avoid false positive for infinite recursion by not checking conditionals at compile time, but add tests at runtime that also catch infinite mutual recursion.
Make (*MARK) work in positive assertions.
Add the /= modifier to pcretest so as to be able to check unset capturing parentheses at the ends of patterns.
Ensure unused capturing parentheses at the end of patterns are unset, because this is documented. (A recent patch altered this.)
Fix \X* bug when first character has the mark property. Also improve code for property and script handling.
Fix capturing not happening in assertion conditions.
Re-do atomic group processing to fix backtrack capture bugs. Recursion is also re-worked.
Small code and comment tidy
A better patch for the atomic capturing not resetting bug.
Fix atomic group and assertion capturing problems.
Fix problem with the interaction of (*ACCEPT) in an assertion with PCRE_NOTEMPTY.
Fixed newly introduced bug for patterns like /(?:(b))++/, where the capturing was happening, but not setting the correct return code.
Fix bug with /\A.*?(?:a|b(*THEN)c)/ by removing the tail recursion optimization for the final branch. Also fix a similar bug for conditional subpatterns.
Fix problems with capturing parens and *ACCEPT with recursion.
Tidy the API for _pcre_valid_utf8() to a more suitable form for a future public release. Also make -s in pcretest force a study for every regex.
Refactoring to reduce stack usage for possessively quantified subpatterns. Also fixed a number of bugs related to repeated subpatterns. Some further tidies consequent on the removal of OP_OPT are also in this patch.
Remove OP_OPT by handling /i and /m entirely at compile time. Fixes bug with patterns like /(?i:([^b]))(?1)/, where the /i option was mishandled.
Fix backup bug for \R with greedy quantifier.
Pass back detailed info when UTF-8 check fails at runtime.
Complete incomplete fix for UTF-8 caseless references of different lengths.
Fix problems with caseless reference matching in UTF-8 mode when the upper/lower case characters have different lengths.
Tidies of documenation and code while preparing for release.
Added support for (*NO_START_OPT)
Add PCRE_ERROR_SHORTUTF8 to PCRE_PARTIAL_HARD processing.
Test for ridiculous values of starting offsets; tidy UTF-8 code.
Add casts needed for Visual Studio when NO_RECURSE is set.
Change the way PCRE_PARTIAL_HARD handles \z, \Z, \b, \B, and $.
Make (*COMMIT) override (*THEN) and similar.
Fix problem with (*THEN) not backing up far enough.
Tidyup for 8.10-RC2 test release.
Avoid loop caused by (*SKIP) with an argument.
Fix pcre_study() problem with non-C-locale chartables in UTF-8 mode.
Correct typo in recent malloc check fix.
Check for running out of memory when using heap for recursion.
Added a lot of (int) casts to avoid compiler warnings in systems where size_t is 64-bit.
Fix crash for property test in non-UTF-8 mode.
Fix oversight for no-recurse version.
Added PCRE_UCP and related stuff to make \w etc use Unicode properties.
Add new special properties Xan, Xps, Xsp, Xwd to help with \w etc.
Fix compile problems when heap is in use
Make (*ACCEPT) work inside an atomic group.
Add support for *MARK and names for *PRUNE, *SKIP, *THEN.
Preparation code for future (*MARK) support.
Fix bugs with \K in atomic groups, subroutines, and assertions.
Fix partial match bug (code omitted) for \W.
Add casts to avoid compiler warnings.
Tidies to allow easier embedded compilation; avoid (double) where possible.
Fix bugs relating to the use of (*SKIP) etc in assertions.
Further tidies to partial matching.
Fix PCRE_PARTIAL_HARD for patterns that end optionally, e.g. abc*
Tidy up, remove trailing spaces, etc. for 8.00-RC1.
Fix problems with conditional references to duplicate named subpatterns.
Added lower bound length-finding to pcre_study() and use it when matching; make the value available via pcre_fullinfo(); also fixed bugs connected with pcre_study() in pcre_dfa_exec().
Capture data when (*ACCEPT) is inside capturing parentheses.
Correct returned capture count after recursion has matched more than outer.
Fix comment in code.
Source tidy
Added PCRE_NOTEMPTY_ATSTART to fix /g bug when \K is present.
Further updates to partial matching.
Further partial match change: add PCRE_PARTIAL_HARD and make more intuitive.
Add new PCRE_PARTIAL_HARD option.
Remove restrictions on pcre_exec() partial matching.
Further USPTR additions.
Trailing space tidies
Conditional fix needed fixing for the "heapstack" case.
Add missing #ifdef SUPPORT_UTF8 round heapframe::Xcharptr.
Fix memory leak for -8 error during recursion.
Further fix to auto-callout with conditional groups whose condition is an assertion.
Fix looping bug by recognizing that a conditional with only one branch may match an empty string.
Update after detrailing for a test release.
Add support for UTF-8 in EBCDIC environments.
Add PCRE_NO_START_OPTIMIZE
Fix Unicode property support in character classes for chars > 127 in non-UTF-8 mode.
Fix bug with (?(?=.*b)b|^) thinking it must match at start of line; also fix bug causing a crash when auto-callout is used with a conditional assertion.
Source tidies for 7.8-RC1
Lazy qualifiers were not always working in UTF-8 mode (8.0/15).
Further fixes for bumpalong processing in UTF-8 mode.
Several bugs concerned with skipping over UTF-8 characters at the start of matching (8.0/13, 8.0/14).
Fix off-end-of-buffer bug for patterns that match only at start of line.
Add PCRE_CALL_CONVENTION for MSVC users; add some missing PCRE_EXP_DEFNs.
Comments about stack usage added.
Fix caseless backreferences for non-ASCII characters.
Final tidies for new Unicode property code; upgrade to Unicode 5.1.0.
Preliminary patch for upgraded Unicode Property support.
Tidies for the 7.7-RC1 distribution.
Slight performance improvement by using the new OP_ALLANY opcode for cases of the metacharacter "." when DOTALL is set. Also, some tidies consequent upon its invention.
Fix DFA (?!) bug; add support for JavaScript empty classes.
Added PCRE_JAVASCRIPT_COMPAT option.
Do not discard subpatterns with {0} quantifiers, as they may be called as subroutines.
Update copyright year to 2008.
Tidies for the 7.5 release.
Fix UTF-8/newline=ANY with .* crash.
(1) Update tests 2,5,7,8 to run when --enable-bsr-anycrlf is used. (2) Updates files changed by building test release.
Fix broken --disable-stack-for-recursion without --enable-unicode-properties.
Detrailed files for 7.4-RC1 test release.
<config.h> => "config.h" and also some cases of <pcre.h>.
Add facility to make \R match only CR, LF, or CRLF.
(1) Move internal flags out of the options field, to make room. (2) \r and \n must be explicit to trigger the special CRLF handline exception. (3) (?J) at the start now sets JCHANGED as well as DUPNAMES.
Add (*CR) etc.
Don't advance by 2 if explicit \r or \n in the pattern. Add PCRE_INFO_HASCRORLF.
Fixed bug with repeated \S or \W in UTF-8 mode.
Fixed another looking-too-far-back-in-non-UTF-8-mode bug.
Updating docs for release; fix heap-related bugs in pcre_exec shown up by release testing.
Update UTF-8 validity check and documentation.
Add Perl 5.10's backtracking verbs.
Added a pcresyntax man page; tidied some others.
Fix backtrack past start of subject bugs caused by the use of \X, \p, or \P in non-UTF-8 mode and the presence of top-bit-set characters.
Correct errors in previous patch; tidy for test release.
Daniel's patch for config.h and Windows DLL declarations (not fully working).
Abolish the NULLWSLIMIT error at the expense of using more stack when an unlimited repeat could match an empty string. Also, doc tidies for a test release.
Fix bug with .*$ when run in not-DOTALL UTF-8 mode; small performance improvement for .* in DOTALL UTF-8 mode.
Fix non-UTF-8 mode Unicode properties bug; prepare for 7.2 release.
More document tidies, pre-release.
Add support for \h, \H, \v, \V.
Drastically reduce workspace used for alternatives in groups; also some trailing space removals for a test release.
Add support for the Perl 5.10 \K facility.
Non-longjmp heap recursion.
Replace longjmp() with gotos when not using stack recursion.
Update HTML documentation.
Add PCRE_NEWLINE_ANYCRLF.
Reworked all the WIN32 __declspec stuff in the hope of getting it right.
Daniel's patches to add to the CMake support.
Daniel's patches.
Commit after detrailing; set executable on autogen.sh.
Fix multiline ^$ bug when newline=any.
Removal of trailing spaces.
Valgrind showed up a bug in bug fix 7.1/12 which is now fixed.
Update copyright years to 2007.
Fix two obscure, but nasty bugs concerned with caseless matching with Unicode property support.
Applied Bob and Daniel's patches to convert the build system to automake. Added the maintain directory, containing files that are used for maintenance, but are not distributed. This is an intermediate step.
r6896@hex: nm | 2007-03-02 13:09:14 +0000 Added EOL and keywork properties throughout
Load pcre-7.0 into code/trunk.
Load pcre-6.7 into code/trunk.
Load pcre-6.5 into code/trunk.
Load pcre-6.4 into code/trunk.
Load pcre-6.0 into code/trunk.
This form allows you to request diffs between any two revisions of this file. For each of the two "sides" of the diff, enter a numeric revision.
ViewVC Help | |
Powered by ViewVC 1.1.5 |