summaryrefslogtreecommitdiff
path: root/src/regexp.c
AgeCommit message (Collapse)Author
2016-04-26patch 7.4.1793Bram Moolenaar
Problem: Some character classes may differ between systems. On OS/X the regexp test fails. Solution: Make this less dependent on the system. (idea by Kazunobu Kuriyama)
2016-04-24patch 7.4.1783Bram Moolenaar
Problem: The old regexp engine doesn't handle character classes correctly. (Manuel Ortega) Solution: Use regmbc() instead of regc(). Add a test.
2016-04-08patch 7.4.1719Bram Moolenaar
Problem: Leaking memory when there is a cycle involving a job and a partial. Solution: Add a copyID to job and channel. Set references in items referred by them. Go through all jobs and channels to find unreferenced items. Also, decrement reference counts when garbage collecting.
2016-04-03patch 7.4.1700Bram Moolenaar
Problem: Equivalence classes are not properly tested. Solution: Add tests for multi-byte and latin1. Fix an error. (Owen Leibman)
2016-02-23patch 7.4.1399Bram Moolenaar
Problem: The MS-DOS code does not build. Solution: Remove the old MS-DOS code.
2016-02-12patch 7.4.1305Bram Moolenaar
Problem: "\%1l^#.*" does not match on a line starting with "#". Solution: Do not clear the start-of-line flag. (Christian Brabandt)
2016-01-30patch 7.4.1213Bram Moolenaar
Problem: Using old style function declarations. Solution: Change to new style function declarations. (script by Hirohito Higashi)
2016-01-29patch 7.4.1200Bram Moolenaar
Problem: Still using __ARGS. Solution: Remove __ARGS in several files. (script by Hirohito Higashi)
2016-01-29patch 7.4.1199Bram Moolenaar
Problem: Still using __ARGS. Solution: Remove __ARGS in several files. (script by Hirohito Higashi)
2015-08-11patch 7.4.822Bram Moolenaar
Problem: More problems reported by coverity. Solution: Avoid the warnings. (Christian Brabandt)
2015-07-10patch 7.4.776Bram Moolenaar
Problem: Equivalence class for 'd' does not work correctly. Solution: Fix 0x1e0f and 0x1d0b. (Dominique Pelle)
2015-06-09patch 7.4.736Bram Moolenaar
Problem: Invalid memory access. Solution: Avoid going over the end of a NUL terminated string. (Dominique Pelle)
2015-05-04patch 7.4.714Bram Moolenaar
Problem: Illegal memory access when there are illegal bytes. Solution: Check the byte length of the character. (Dominique Pelle)
2015-04-21patch 7.4.704Bram Moolenaar
Problem: Searching for a character matches an illegal byte and causes invalid memory access. (Dominique Pelle) Solution: Do not match an invalid byte when search for a character in a string. Fix equivalence classes using negative numbers, which result in illegal bytes.
2015-03-31updated for version 7.4.685Bram Moolenaar
Problem: When there are illegal utf-8 characters the old regexp engine may go past the end of a string. Solution: Only advance to the end of the string. (Dominique Pelle)
2015-01-27updated for version 7.4.593Bram Moolenaar
Problem: Crash when searching for "x\{0,90000}". (Dominique Pelle) Solution: Bail out from the NFA engine when the max limit is much higher than the min limit.
2014-11-20updated for version 7.4.526Bram Moolenaar
Problem: matchstr() fails on long text. Daniel Hahler) Solution: Return NFA_TOO_EXPENSIVE from regexec_nl(). (Christian Brabandt)
2014-11-19updated for version 7.4.519Bram Moolenaar
Problem: Crash when using syntax highlighting. Solution: When regprog is freed and replaced, store the result.
2014-11-05updated for version 7.4.497Bram Moolenaar
Problem: With some regexp patterns the NFA engine uses many states and becomes very slow. To the user it looks like Vim freezes. Solution: When the number of states reaches a limit fall back to the old engine. (Christian Brabandt)
2014-09-09updated for version 7.4.437Bram Moolenaar
Problem: New and old regexp engine are not consistent. Solution: Also give an error for "\ze*" for the old regexp engine.
2014-07-09updated for version 7.4.360Bram Moolenaar
Problem: In a regexp pattern a "$" followed by \v or \V is not seen as the end-of-line. Solution: Handle the situation. (Ozaki Kiichi)
2014-05-13updated for version 7.4.293Bram Moolenaar
Problem: It is not possible to ignore composing characters at a specific point in a pattern. Solution: Add the %C item.
2014-05-13updated for version 7.4.292Bram Moolenaar
Problem: Searching for "a" does not match accented "a" with new regexp engine, does match with old engine. (David Bürgin) "ca" does not match "ca" with accented "a" with either engine. Solution: Change the old engine, check for following composing character also for single-byte patterns.
2014-05-13updated for version 7.4.291Bram Moolenaar
Problem: Compiler warning for int to pointer of different size when DEBUG is defined. Solution: use smsg() instead of EMSG3().
2014-04-23updated for version 7.4.262Bram Moolenaar
Problem: Duplicate code in regexec(). Solution: Add line_lbr flag to regexec_nl().
2014-04-23updated for version 7.4.261Bram Moolenaar
Problem: When updating the window involves a regexp pattern, an interactive substitute to replace a "\n" with a line break fails. (Ingo Karkat) Solution: Set reg_line_lbr in vim_regsub() and vim_regsub_multi().
2014-04-06updated for version 7.4.253Bram Moolenaar
Problem: Crash when using cpp syntax file with pattern using external match. (Havard Garnes) Solution: Discard match when end column is before start column.
2014-04-02updated for version 7.4.241Bram Moolenaar
Problem: The string returned by submatch() does not distinguish between a NL from a line break and a NL that stands for a NUL character. Solution: Add a second argument to return a list. (ZyX)
2014-03-23updated for version 7.4.212Bram Moolenaar
Problem: Now that the +visual feature is always enabled the #ifdefs for it are not useful. Solution: Remove the checks for FEAT_VISUAL.
2013-11-21updated for version 7.4.101Bram Moolenaar
Problem: Using \1 in pattern goes one line too far. (Bohr Shaw, John Little) Solution: Only advance the match end for the matched characters in the last line.
2013-09-19updated for version 7.4.029Bram Moolenaar
Problem: An error in a pattern is reported twice. Solution: Remove the retry with the backtracking engine, it won't work.
2013-08-25updated for version 7.4.008Bram Moolenaar
Problem: New regexp engine can't be interrupted. Solution: Check for CTRL-C pressed. (Yasuhiro Matsumoto)
2013-07-21updated for version 7.4a.036Bram Moolenaar
Problem: "\p" in a regexp does not match double-width characters. (Yukihiro Nakadaira) Solution: Don't count display cells, use vim_isprintc().
2013-06-15updated for version 7.3.1196Bram Moolenaar
Problem: Old regexp engine does not match pattern with backref correctly. (Dominique Pelle) Solution: Fix setting status. Test multi-line patterns better.
2013-06-14updated for version 7.3.1195Bram Moolenaar
Problem: Compiler warning for unitialized variable. (Tony Mechelynck) Solution: Set the length to the matching backref.
2013-06-14updated for version 7.3.1191Bram Moolenaar
Problem: Backreference to previous line doesn't work. (Lech Lorens) Solution: Implement looking in another line.
2013-06-08updated for version 7.3.1149Bram Moolenaar
Problem: New regexp engine: Matching plain text could be faster. Solution: Detect a plain text match and handle it specifically. Add vim_regfree().
2013-06-06updated for version 7.3.1132Bram Moolenaar
Problem: Crash when debugging regexp. Solution: Do not try to dump subexpr that were not set. Skip over count of \% items.
2013-06-05updated for version 7.3.1128Bram Moolenaar
Problem: Now that the NFA engine handles everything every failure is a syntax error. Solution: Remove the syntax_error flag.
2013-06-05updated for version 7.3.1127Bram Moolenaar
Problem: No error for using empty \%[]. Solution: Give error message.
2013-06-05updated for version 7.3.1120Bram Moolenaar
Problem: Crash when regexp logging is enabled. Solution: Avoid using NULL pointers. Advance over count argument.
2013-06-05updated for version 7.3.1119Bram Moolenaar
Problem: Flags in 'cpo' are search for several times. Solution: Store the result and re-use the flags.
2013-06-04updated for version 7.3.1113Bram Moolenaar
Problem: New regexp engine: \%'m not supported. Solution: Implement \%'m. Add tests.
2013-06-04updated for version 7.3.1112Bram Moolenaar
Problem: New regexp engine: \%V not supported. Solution: Implement \%V. Add tests.
2013-06-03updated for version 7.3.1107Bram Moolenaar
Problem: Compiler warnings for unused variables. Solution: Put the variables inside #ifdef.
2013-06-02updated for version 7.3.1091Bram Moolenaar
Problem: New regexp engine: no error when using \z1 or \z( where it does not work. Solution: Give an error message.
2013-06-01updated for version 7.3.1088Bram Moolenaar
Problem: New regexp engine: \@<= and \@<! are not implemented. Solution: Implement look-behind matching. Fix off-by-one error in old regexp engine.
2013-06-01updated for version 7.3.1087Bram Moolenaar
Problem: A leading star is not seen as a normal char when \{} follows. Solution: Save and restore the parse state properly.
2013-05-29updated for version 7.3.1037Bram Moolenaar
Problem: Look-behind matching is very slow on long lines. Solution: Add a byte limit to how far back an attempt is made.
2013-05-21updated for version 7.3.1000Bram Moolenaar
Problem: Typo in char value causes out of bounds access. Solution: Fix character value. (Klemens Baum)