Bram Moolenaar
a2947e2bea
updated for version 7.3.1169
...
Problem: New regexp engine: some work is done while executing a pattern,
even though the result is predictable.
Solution: Do the work while compiling the pattern.
2013-06-11 22:44:09 +02:00
Bram Moolenaar
16619a235b
updated for version 7.3.1165
...
Problem: HP-UX compiler can't handle zero size array. (Charles Cooper)
Solution: Make the array one item big.
2013-06-11 18:42:36 +02:00
Bram Moolenaar
bcf4d178ab
updated for version 7.3.1157
...
Problem: New regexp engine fails on "\(\<command\)\@<=.*"
Solution: Fix rule for postponing match. Further tune estimating whether
postponing works better. Add test.
2013-06-10 16:35:18 +02:00
Bram Moolenaar
4380d1ea23
updated for version 7.3.1156
...
Problem: Compiler warnings. (dv1445)
Solution: Initialize variables, even when the value isn't really used.
2013-06-09 20:51:00 +02:00
Bram Moolenaar
927d4a1fb5
updated for version 7.3.1154
...
Problem: New regexp_nfa engine: Uneccessary code.
Solution: Remove uneccessary code.
2013-06-09 17:25:34 +02:00
Bram Moolenaar
2a4e98ac1e
updated for version 7.3.1153
...
Problem: New regexp engine: Some look-behind matches are very expensive.
Solution: Pospone invisible matches further, until a match is almost found.
2013-06-09 16:24:45 +02:00
Bram Moolenaar
a940aa6fc4
updated for version 7.3.1152
...
Problem: In tiny build ireg_icombine is undefined. (Tony Mechelynck)
Solution: Add #ifdef.
2013-06-08 23:30:04 +02:00
Bram Moolenaar
1e02e6620b
updated for version 7.3.1151
...
Problem: New regexp engine: Slow when a look-behind match is followed by a
zero-width match.
Solution: Postpone the look-behind match more often.
2013-06-08 23:26:27 +02:00
Bram Moolenaar
e7766eeaa5
updated for version 7.3.1150
...
Problem: New regexpengine: Slow when a look-behind match does not have a
width specified.
Solution: Try to compute the maximum width.
2013-06-08 22:30:03 +02:00
Bram Moolenaar
473de61b04
updated for version 7.3.1149
...
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-08 18:19:48 +02:00
Bram Moolenaar
87f764a891
updated for version 7.3.1147
...
Problem: New regexp engine: regstart is only used to find the first match.
Solution: Use regstart whenever adding the start state.
2013-06-08 14:38:27 +02:00
Bram Moolenaar
b1b284fd5d
updated for version 7.3.1146
...
Problem: New regexp engine: look-behind match not checked when followed by
zero-width match.
Solution: Do the look-behind match before adding the zero-width state.
2013-06-08 13:33:37 +02:00
Bram Moolenaar
f96d109827
updated for version 7.3.1145
...
Problem: New regexp engine: addstate() is called very often.
Solution: Optimize adding the start state.
2013-06-07 22:39:40 +02:00
Bram Moolenaar
43e0298416
updated for version 7.3.1140
...
Problem: New regexp engine: trying expensive match while the result is not
going to be used.
Solution: Check for output state already being in the state list.
2013-06-07 17:31:29 +02:00
Bram Moolenaar
decd9540fd
updated for version 7.3.1139
...
Problem: New regexp engine: negated flag is hardly used.
Solution: Add separate _NEG states, remove negated flag.
2013-06-07 16:31:50 +02:00
Bram Moolenaar
8aca2e9bef
updated for version 7.3.1138
...
Problem: New regexp engine: neglist no longer used.
Solution: Remove the now unused neglist.
2013-06-07 14:59:18 +02:00
Bram Moolenaar
417bad227a
updated for version 7.3.1137
...
Problem: New regexp engine: collections are slow.
Solution: Handle all characters in one go.
2013-06-07 14:08:30 +02:00
Bram Moolenaar
d89616ebb8
updated for version 7.3.1133
...
Problem: New regexp engine is a bit slow.
Solution: Skip ahead to a character that must match. Don't try matching a
"^" patter past the start of line.
2013-06-06 18:46:06 +02:00
Bram Moolenaar
6d3a5d755a
updated for version 7.3.1132
...
Problem: Crash when debugging regexp.
Solution: Do not try to dump subexpr that were not set. Skip over count of
\% items.
2013-06-06 18:04:51 +02:00
Bram Moolenaar
188c57bcd1
updated for version 7.3.1131
...
Problem: New regexp engine is a bit slow.
Solution: Do not clear the state list. Don't copy syntax submatches when
not used.
2013-06-06 16:22:06 +02:00
Bram Moolenaar
cd2d8bb6ea
updated for version 7.3.1128
...
Problem: Now that the NFA engine handles everything every failure is a
syntax error.
Solution: Remove the syntax_error flag.
2013-06-05 21:42:53 +02:00
Bram Moolenaar
2976c028ca
updated for version 7.3.1127
...
Problem: No error for using empty \%[].
Solution: Give error message.
2013-06-05 21:30:37 +02:00
Bram Moolenaar
c19b4b50a8
updated for version 7.3.1126
...
Problem: Compiler warning for unitialized variable. (Tony Mechelynck)
Solution: Assign something to the variable.
2013-06-05 21:23:39 +02:00
Bram Moolenaar
973fced763
updated for version 7.3.1125
...
Problem: Error for using \%V in a pattern in tiny Vim.
Solution: Allow using \%V but never match. (Dominique Pelle)
2013-06-05 21:10:59 +02:00
Bram Moolenaar
8795374bd3
updated for version 7.3.1122
...
Problem: New regexp engine: \%> not supported.
Solution: Implement \%>.
2013-06-05 18:52:40 +02:00
Bram Moolenaar
67604aed75
updated for version 7.3.1121
...
Problem: New regexp engine: adding states that are not used.
Solution: Don't add the states.
2013-06-05 16:51:57 +02:00
Bram Moolenaar
5b84ddccea
updated for version 7.3.1120
...
Problem: Crash when regexp logging is enabled.
Solution: Avoid using NULL pointers. Advance over count argument.
2013-06-05 16:33:10 +02:00
Bram Moolenaar
1cd3f2c450
updated for version 7.3.1119
...
Problem: Flags in 'cpo' are search for several times.
Solution: Store the result and re-use the flags.
2013-06-05 12:43:09 +02:00
Bram Moolenaar
e2b8cb3b15
updated for version 7.3.1118
...
Problem: Match failure rate is not very specific.
Solution: Tune the failure rate for match items.
2013-06-05 11:46:25 +02:00
Bram Moolenaar
d75799ab7f
updated for version 7.3.1117
...
Problem: New regexp engine: \%[abc] not supported.
Solution: Implement \%[abc]. Add tests.
2013-06-05 11:05:17 +02:00
Bram Moolenaar
78eae9aaf7
updated for version 7.3.1116
...
Problem: Can't build without Visual mode.
Solution: Add #ifdefs.
2013-06-05 11:02:05 +02:00
Bram Moolenaar
b76591ef4a
updated for version 7.3.1114
...
Problem: Can't build without the syntax feature.
Solution: Add #ifdefs. (Erik Falor)
2013-06-04 21:42:22 +02:00
Bram Moolenaar
044aa290c5
updated for version 7.3.1113
...
Problem: New regexp engine: \%'m not supported.
Solution: Implement \%'m. Add tests.
2013-06-04 21:27:38 +02:00
Bram Moolenaar
dacd7de3fd
updated for version 7.3.1112
...
Problem: New regexp engine: \%V not supported.
Solution: Implement \%V. Add tests.
2013-06-04 18:28:48 +02:00
Bram Moolenaar
f811509c03
updated for version 7.3.1111
...
Problem: nfa_recognize_char_class() implementation is inefficient.
Solution: Use bits in an int instead of chars in a string. (Dominique Pelle)
2013-06-04 17:47:05 +02:00
Bram Moolenaar
a2d9510861
updated for version 7.3.1110
...
Problem: New regexp matching: Using \@= and the like can be slow.
Solution: Decide whether to first try matching the zero-wdith part or what
follows, whatever is more likely to fail.
2013-06-04 14:23:05 +02:00
Bram Moolenaar
01d89dddfa
updated for version 7.3.1107
...
Problem: Compiler warnings for unused variables.
Solution: Put the variables inside #ifdef.
2013-06-03 19:41:06 +02:00
Bram Moolenaar
dd2ccdf6ea
updated for version 7.3.1106
...
Problem: New regexp engine: saving and restoring lastlist in the states
takes a lot of time.
Solution: Use a second lastlist value for the first recursive call.
2013-06-03 12:17:04 +02:00
Bram Moolenaar
f46da70603
updated for version 7.3.1105
...
Problem: New regexp engine: too much code in one function. Dead code.
Solution: Move the recursive nfa_regmatch call to a separate function.
Remove the dead code.
2013-06-02 22:37:42 +02:00
Bram Moolenaar
f18fb7af75
updated for version 7.3.1104
...
Problem: New regexp engine does not handle "~".
Solution: Add support for "~".
2013-06-02 22:08:03 +02:00
Bram Moolenaar
f6de032afe
updated for version 7.3.1103
...
Problem: New regexp engine: overhead in saving and restoring.
Solution: Make saving and restoring list IDs faster. Don't copy or check \z
subexpressions when they are not used.
2013-06-02 21:30:04 +02:00
Bram Moolenaar
525666f282
updated for version 7.3.1095
...
Problem: Compiler warnings for shadowed variables. (Christian Brabandt)
Solution: Rename new_state() to alloc_state(). Remove unnecessary
declaration.
2013-06-02 16:40:55 +02:00
Bram Moolenaar
307aa16a69
updated for version 7.3.1094
...
Problem: New regexp engine: Attempts to match "^" at every character.
Solution: Only try "^" at the start of a line.
2013-06-02 16:34:21 +02:00
Bram Moolenaar
b122e9798e
updated for version 7.3.1093
...
Problem: New regexp engine: When a sub expression is empty \1 skips a
character.
Solution: Make \1 try the current position when the match is emtpy.
2013-06-02 16:07:10 +02:00
Bram Moolenaar
69afb7bf0a
updated for version 7.3.1092
...
Problem: Can't build with regexp debugging. NFA debug output shows wrong
pattern.
Solution: Fix debugging code for recent changes. Add the pattern to the
program.
2013-06-02 15:55:55 +02:00
Bram Moolenaar
5de820b916
updated for version 7.3.1091
...
Problem: New regexp engine: no error when using \z1 or \z( where it does
not work.
Solution: Give an error message.
2013-06-02 15:01:57 +02:00
Bram Moolenaar
efb23f26e8
updated for version 7.3.1090
...
Problem: New regexp engine does not support \z1 .. \z9 and \z(.
Solution: Implement the syntax submatches.
2013-06-01 23:02:54 +02:00
Bram Moolenaar
61602c5bfe
updated for version 7.3.1088
...
Problem: New regexp engine: \@<= and \@<! are not implemented.
Solution: Implement look-behind matching. Fix off-by-one error in old
regexp engine.
2013-06-01 19:54:43 +02:00
Bram Moolenaar
3737fc1c30
updated for version 7.3.1087
...
Problem: A leading star is not seen as a normal char when \{} follows.
Solution: Save and restore the parse state properly.
2013-06-01 14:42:56 +02:00
Bram Moolenaar
75d7a06920
updated for version 7.3.1086
...
Problem: Old regexp engine accepts illegal range, new one doesn't.
Solution: Also accept the illegal range with the new engine.
2013-06-01 13:24:24 +02:00