/[pcre]/code/trunk/ChangeLog
ViewVC logotype

Diff of /code/trunk/ChangeLog

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 602 by ph10, Wed May 25 08:29:03 2011 UTC revision 608 by ph10, Sun Jun 12 16:25:55 2011 UTC
# Line 52  Version 8.13 30-Apr-2011 Line 52  Version 8.13 30-Apr-2011
52      argument for the match() function, which reduces its stack requirements      argument for the match() function, which reduces its stack requirements
53      slightly. This change also fixes an incompatibility with Perl: the pattern      slightly. This change also fixes an incompatibility with Perl: the pattern
54      (?i:([^b]))(?1) should not match "ab", but previously PCRE gave a match.      (?i:([^b]))(?1) should not match "ab", but previously PCRE gave a match.
55    
56    10. More internal refactoring has drastically reduced the number of recursive
57        calls to match() for possessively repeated groups such as (abc)++ when
58        using pcre_exec().
59    
60    11. While implementing 10, a number of bugs in the handling of groups were
61        discovered and fixed:
62    
63        (?<=(a)+) was not diagnosed as invalid (non-fixed-length lookbehind).
64        (a|)*(?1) gave a compile-time internal error.
65        ((a|)+)+  did not notice that the outer group could match an empty string.
66        (^a|^)+   was not marked as anchored.
67        (.*a|.*)+ was not marked as matching at start or after a newline.
68    
69    12. Yet more internal refactoring has removed another argument from the match()
70        function. Special calls to this function are now indicated by setting a
71        value in a variable in the "match data" data block.
72    
73    13. Be more explicit in pcre_study() instead of relying on "default" for
74        opcodes that mean there is no starting character; this means that when new
75        ones are added and accidentally left out of pcre_study(), testing should
76        pick them up.
77    
78    14. The -s option of pcretest has been documented for ages as being an old
79        synonym of -m (show memory usage). I have changed it to mean "force study
80        for every regex", that is, assume /S for every regex. This is similar to -i
81        and -d etc. It's slightly incompatible, but I'm hoping nobody is still
82        using it. It makes it easier to run collection of tests with study enabled,
83        and thereby test pcre_study() more easily.
84    
85    15. When (*ACCEPT) was used in a subpattern that was called recursively, the
86        restoration of the capturing data to the outer values was not happening
87        correctly.
88    
89    16. If a recursively called subpattern ended with (*ACCEPT) and matched an
90        empty string, and PCRE_NOTEMPTY was set, pcre_exec() thought the whole
91        pattern had matched an empty string, and so incorrectly returned a no
92        match.
93    
94    
95  Version 8.12 15-Jan-2011  Version 8.12 15-Jan-2011

Legend:
Removed from v.602  
changed lines
  Added in v.608

  ViewVC Help
Powered by ViewVC 1.1.5