| 1 |
ChangeLog for PCRE |
ChangeLog for PCRE |
| 2 |
------------------ |
------------------ |
| 3 |
|
|
| 4 |
|
Version 4.4 13-Aug-03 |
| 5 |
|
--------------------- |
| 6 |
|
|
| 7 |
|
1. In UTF-8 mode, a character class containing characters with values between |
| 8 |
|
127 and 255 was not handled correctly if the compiled pattern was studied. |
| 9 |
|
In fixing this, I have also improved the studying algorithm for such |
| 10 |
|
classes (slightly). |
| 11 |
|
|
| 12 |
|
2. Three internal functions had redundant arguments passed to them. Removal |
| 13 |
|
might give a very teeny performance improvement. |
| 14 |
|
|
| 15 |
|
3. Documentation bug: the value of the capture_top field in a callout is *one |
| 16 |
|
more than* the number of the hightest numbered captured substring. |
| 17 |
|
|
| 18 |
|
4. The Makefile linked pcretest and pcregrep with -lpcre, which could result |
| 19 |
|
in incorrectly linking with a previously installed version. They now link |
| 20 |
|
explicitly with libpcre.la. |
| 21 |
|
|
| 22 |
|
5. configure.in no longer needs to recognize Cygwin specially. |
| 23 |
|
|
| 24 |
|
6. A problem in pcre.in for Windows platforms is fixed. |
| 25 |
|
|
| 26 |
|
7. If a pattern was successfully studied, and the -d (or /D) flag was given to |
| 27 |
|
pcretest, it used to include the size of the study block as part of its |
| 28 |
|
output. Unfortunately, the structure contains a field that has a different |
| 29 |
|
size on different hardware architectures. This meant that the tests that |
| 30 |
|
showed this size failed. As the block is currently always of a fixed size, |
| 31 |
|
this information isn't actually particularly useful in pcretest output, so |
| 32 |
|
I have just removed it. |
| 33 |
|
|
| 34 |
|
8. Three pre-processor statements accidentally did not start in column 1. |
| 35 |
|
Sadly, there are *still* compilers around that complain, even though |
| 36 |
|
standard C has not required this for well over a decade. Sigh. |
| 37 |
|
|
| 38 |
|
9. In pcretest, the code for checking callouts passed small integers in the |
| 39 |
|
callout_data field, which is a void * field. However, some picky compilers |
| 40 |
|
complained about the casts involved for this on 64-bit systems. Now |
| 41 |
|
pcretest passes the address of the small integer instead, which should get |
| 42 |
|
rid of the warnings. |
| 43 |
|
|
| 44 |
|
10. By default, when in UTF-8 mode, PCRE now checks for valid UTF-8 strings at |
| 45 |
|
both compile and run time, and gives an error if an invalid UTF-8 sequence |
| 46 |
|
is found. There is a option for disabling this check in cases where the |
| 47 |
|
string is known to be correct and/or the maximum performance is wanted. |
| 48 |
|
|
| 49 |
|
11. In response to a bug report, I changed one line in Makefile.in from |
| 50 |
|
|
| 51 |
|
-Wl,--out-implib,.libs/lib@WIN_PREFIX@pcreposix.dll.a \ |
| 52 |
|
to |
| 53 |
|
-Wl,--out-implib,.libs/@WIN_PREFIX@libpcreposix.dll.a \ |
| 54 |
|
|
| 55 |
|
to look similar to other lines, but I have no way of telling whether this |
| 56 |
|
is the right thing to do, as I do not use Windows. No doubt I'll get told |
| 57 |
|
if it's wrong... |
| 58 |
|
|
| 59 |
|
|
| 60 |
Version 4.3 21-May-03 |
Version 4.3 21-May-03 |
| 61 |
--------------------- |
--------------------- |
| 62 |
|
|