1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
|
Version 0.12
* regex.c does not #define bcmp/bcopy/bzero if they already are.
* regex.h does not redefine `const' if it is already defined, even if
__STDC__ is not defined.
* RE_SYNTAX_ED added (same as POSIX BRE's).
* The following bugs have been fixed, among others:
* The pattern \w+ doesn't infinite loop.
* The pattern ".+\n" is compiled correctly.
* Expressions with more than MAX_REGNUM groups are compiled correctly.
* Patterns that end in a repetition operator (e.g., `*') match
slightly faster if no looping is actually necessary.
Version 0.11 (17 Sep 92)
* Back-references to nonexistent subexpressions, as in the r.e. `abc\1',
are always invalid. Previously, they could match the literal digit,
e.g., the stated r.e. might have matched `abc1'.
* Empty subexpressions are always valid (POSIX leaves this undefined).
* Simplified rules for ^ and $ being anchors.
* One minor speedup (rewriting the C procedure `pop_failure_point' as a
macro again).
* Bug fixes involving:
- Declarations in regex.h and non-ANSI compilers.
- Bracket expressions with characters between 0x80-0xff.
- Memory leak in re_match_2 on systems requiring `alloca (0)' to
free alloca'd storage.
* Test and documentation files moved into subdirectories.
Version 0.10 (9 Sep 92)
* `obscure_syntax' is now called `re_default_syntax'.
* `re_comp's return type is no longer `const', for compatibility with BSD.
* POSIX syntaxes now include as much functionality as possible
(consistent with the standard).
* Compilation conditionals normalized to what the rest of GNU is
migrating towards these days.
* Bug fixes involving:
- Ranges with characters between 0x80 and 0xff, e.g., [\001-\377].
- `re_compile_fastmap' and the sequence `.*\n'.
- Intervals with exact counts, e.g., a{5}.
* Changed distribution to use a standard Makefile, install the info
files, use a configure script, etc.
Version 0.9
* The longest match was not always chosen: `a*|ab' didn't match `aab'.
|