Skip to content

Commit dfd7749

Browse files
committed
8.40
1 parent 1592fbd commit dfd7749

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

48 files changed

+1630
-1236
lines changed

pcre/AUTHORS

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ Email domain: cam.ac.uk
88
University of Cambridge Computing Service,
99
Cambridge, England.
1010

11-
Copyright (c) 1997-2016 University of Cambridge
11+
Copyright (c) 1997-2017 University of Cambridge
1212
All rights reserved
1313

1414

@@ -19,7 +19,7 @@ Written by: Zoltan Herczeg
1919
Email local part: hzmester
2020
Emain domain: freemail.hu
2121

22-
Copyright(c) 2010-2016 Zoltan Herczeg
22+
Copyright(c) 2010-2017 Zoltan Herczeg
2323
All rights reserved.
2424

2525

@@ -30,7 +30,7 @@ Written by: Zoltan Herczeg
3030
Email local part: hzmester
3131
Emain domain: freemail.hu
3232

33-
Copyright(c) 2009-2016 Zoltan Herczeg
33+
Copyright(c) 2009-2017 Zoltan Herczeg
3434
All rights reserved.
3535

3636

pcre/CMakeLists.txt

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -66,6 +66,7 @@
6666
# 2013-10-08 PH got rid of the "source" command, which is a bash-ism (use ".")
6767
# 2013-11-05 PH added support for PARENS_NEST_LIMIT
6868
# 2016-03-01 PH applied Chris Wilson's patch for MSVC static build
69+
# 2016-06-24 PH applied Chris Wilson's revised patch (adds a separate option)
6970

7071
PROJECT(PCRE C CXX)
7172

@@ -190,6 +191,9 @@ IF (MINGW)
190191
ENDIF(MINGW)
191192

192193
IF(MSVC)
194+
OPTION(PCRE_STATIC_RUNTIME OFF CACHE BOOL
195+
"ON=Compile against the static runtime (/MT)."
196+
OFF)
193197
OPTION(INSTALL_MSVC_PDB
194198
"ON=Install .pdb files built by MSVC, if generated"
195199
OFF)
@@ -573,16 +577,16 @@ ENDIF(MSVC AND NOT PCRE_STATIC)
573577
# Fix static compilation with MSVC: https://bugs.exim.org/show_bug.cgi?id=1681
574578
# This code was taken from the CMake wiki, not from WebM.
575579

576-
IF(MSVC AND PCRE_STATIC)
577-
MESSAGE(STATUS "** MSVC and PCRE_STATIC: modifying compiler flags to use static runtime library")
580+
IF(MSVC AND PCRE_STATIC_RUNTIME)
581+
MESSAGE(STATUS "** MSVC and PCRE_STATIC_RUNTIME: modifying compiler flags to use static runtime library")
578582
foreach(flag_var
579583
CMAKE_C_FLAGS CMAKE_C_FLAGS_DEBUG CMAKE_C_FLAGS_RELEASE
580584
CMAKE_C_FLAGS_MINSIZEREL CMAKE_C_FLAGS_RELWITHDEBINFO
581585
CMAKE_CXX_FLAGS CMAKE_CXX_FLAGS_DEBUG CMAKE_CXX_FLAGS_RELEASE
582586
CMAKE_CXX_FLAGS_MINSIZEREL CMAKE_CXX_FLAGS_RELWITHDEBINFO)
583587
string(REGEX REPLACE "/MD" "/MT" ${flag_var} "${${flag_var}}")
584588
endforeach()
585-
ENDIF(MSVC AND PCRE_STATIC)
589+
ENDIF(MSVC AND PCRE_STATIC_RUNTIME)
586590

587591
SET(PCRECPP_HEADERS
588592
pcrecpp.h

pcre/ChangeLog

Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,53 @@ ChangeLog for PCRE
44
Note that the PCRE 8.xx series (PCRE1) is now in a bugfix-only state. All
55
development is happening in the PCRE2 10.xx series.
66

7+
Version 8.40 11-January-2017
8+
----------------------------
9+
10+
1. Using -o with -M in pcregrep could cause unnecessary repeated output when
11+
the match extended over a line boundary.
12+
13+
2. Applied Chris Wilson's second patch (Bugzilla #1681) to CMakeLists.txt for
14+
MSVC static compilation, putting the first patch under a new option.
15+
16+
3. Fix register overwite in JIT when SSE2 acceleration is enabled.
17+
18+
4. Ignore "show all captures" (/=) for DFA matching.
19+
20+
5. Fix JIT unaligned accesses on x86. Patch by Marc Mutz.
21+
22+
6. In any wide-character mode (8-bit UTF or any 16-bit or 32-bit mode),
23+
without PCRE_UCP set, a negative character type such as \D in a positive
24+
class should cause all characters greater than 255 to match, whatever else
25+
is in the class. There was a bug that caused this not to happen if a
26+
Unicode property item was added to such a class, for example [\D\P{Nd}] or
27+
[\W\pL].
28+
29+
7. When pcretest was outputing information from a callout, the caret indicator
30+
for the current position in the subject line was incorrect if it was after
31+
an escape sequence for a character whose code point was greater than
32+
\x{ff}.
33+
34+
8. A pattern such as (?<RA>abc)(?(R)xyz) was incorrectly compiled such that
35+
the conditional was interpreted as a reference to capturing group 1 instead
36+
of a test for recursion. Any group whose name began with R was
37+
misinterpreted in this way. (The reference interpretation should only
38+
happen if the group's name is precisely "R".)
39+
40+
9. A number of bugs have been mended relating to match start-up optimizations
41+
when the first thing in a pattern is a positive lookahead. These all
42+
applied only when PCRE_NO_START_OPTIMIZE was *not* set:
43+
44+
(a) A pattern such as (?=.*X)X$ was incorrectly optimized as if it needed
45+
both an initial 'X' and a following 'X'.
46+
(b) Some patterns starting with an assertion that started with .* were
47+
incorrectly optimized as having to match at the start of the subject or
48+
after a newline. There are cases where this is not true, for example,
49+
(?=.*[A-Z])(?=.{8,16})(?!.*[\s]) matches after the start in lines that
50+
start with spaces. Starting .* in an assertion is no longer taken as an
51+
indication of matching at the start (or after a newline).
52+
53+
754
Version 8.39 14-June-2016
855
-------------------------
956

pcre/LICENCE

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ Email domain: cam.ac.uk
2525
University of Cambridge Computing Service,
2626
Cambridge, England.
2727

28-
Copyright (c) 1997-2016 University of Cambridge
28+
Copyright (c) 1997-2017 University of Cambridge
2929
All rights reserved.
3030

3131

@@ -36,7 +36,7 @@ Written by: Zoltan Herczeg
3636
Email local part: hzmester
3737
Emain domain: freemail.hu
3838

39-
Copyright(c) 2010-2016 Zoltan Herczeg
39+
Copyright(c) 2010-2017 Zoltan Herczeg
4040
All rights reserved.
4141

4242

@@ -47,7 +47,7 @@ Written by: Zoltan Herczeg
4747
Email local part: hzmester
4848
Emain domain: freemail.hu
4949

50-
Copyright(c) 2009-2016 Zoltan Herczeg
50+
Copyright(c) 2009-2017 Zoltan Herczeg
5151
All rights reserved.
5252

5353

pcre/Makefile.in

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2832,7 +2832,7 @@ distdir: $(DISTFILES)
28322832
! -type d ! -perm -444 -exec $(install_sh) -c -m a+r {} {} \; \
28332833
|| chmod -R a+r "$(distdir)"
28342834
dist-gzip: distdir
2835-
tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
2835+
tardir=$(distdir) && $(am__tar) | eval GZIP= gzip $(GZIP_ENV) -c >$(distdir).tar.gz
28362836
$(am__post_remove_distdir)
28372837
dist-bzip2: distdir
28382838
tardir=$(distdir) && $(am__tar) | BZIP2=$${BZIP2--9} bzip2 -c >$(distdir).tar.bz2
@@ -2857,7 +2857,7 @@ dist-shar: distdir
28572857
@echo WARNING: "Support for shar distribution archives is" \
28582858
"deprecated." >&2
28592859
@echo WARNING: "It will be removed altogether in Automake 2.0" >&2
2860-
shar $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).shar.gz
2860+
shar $(distdir) | eval GZIP= gzip $(GZIP_ENV) -c >$(distdir).shar.gz
28612861
$(am__post_remove_distdir)
28622862
dist-zip: distdir
28632863
-rm -f $(distdir).zip
@@ -2874,7 +2874,7 @@ dist dist-all:
28742874
distcheck: dist
28752875
case '$(DIST_ARCHIVES)' in \
28762876
*.tar.gz*) \
2877-
GZIP=$(GZIP_ENV) gzip -dc $(distdir).tar.gz | $(am__untar) ;;\
2877+
eval GZIP= gzip $(GZIP_ENV) -dc $(distdir).tar.gz | $(am__untar) ;;\
28782878
*.tar.bz2*) \
28792879
bzip2 -dc $(distdir).tar.bz2 | $(am__untar) ;;\
28802880
*.tar.lz*) \
@@ -2884,7 +2884,7 @@ distcheck: dist
28842884
*.tar.Z*) \
28852885
uncompress -c $(distdir).tar.Z | $(am__untar) ;;\
28862886
*.shar.gz*) \
2887-
GZIP=$(GZIP_ENV) gzip -dc $(distdir).shar.gz | unshar ;;\
2887+
eval GZIP= gzip $(GZIP_ENV) -dc $(distdir).shar.gz | unshar ;;\
28882888
*.zip*) \
28892889
unzip $(distdir).zip ;;\
28902890
esac

pcre/NEWS

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,12 @@
11
News about PCRE releases
22
------------------------
33

4+
Release 8.40 11-January-2017
5+
----------------------------
6+
7+
This is a bug-fix release.
8+
9+
410
Release 8.39 14-June-2016
511
-------------------------
612

pcre/config.h.generic

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -235,7 +235,7 @@ sure both macros are undefined; an emulation function will then be used. */
235235
#define PACKAGE_NAME "PCRE"
236236

237237
/* Define to the full name and version of this package. */
238-
#define PACKAGE_STRING "PCRE 8.39"
238+
#define PACKAGE_STRING "PCRE 8.40"
239239

240240
/* Define to the one symbol short name of this package. */
241241
#define PACKAGE_TARNAME "pcre"
@@ -244,7 +244,7 @@ sure both macros are undefined; an emulation function will then be used. */
244244
#define PACKAGE_URL ""
245245

246246
/* Define to the version of this package. */
247-
#define PACKAGE_VERSION "8.39"
247+
#define PACKAGE_VERSION "8.40"
248248

249249
/* The value of PARENS_NEST_LIMIT specifies the maximum depth of nested
250250
parentheses (of any kind) in a pattern. This limits the amount of system
@@ -336,7 +336,7 @@ sure both macros are undefined; an emulation function will then be used. */
336336
/* #undef SUPPORT_VALGRIND */
337337

338338
/* Version number of package */
339-
#define VERSION "8.39"
339+
#define VERSION "8.40"
340340

341341
/* Define to empty if `const' does not conform to ANSI C. */
342342
/* #undef const */

pcre/configure

Lines changed: 15 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
#! /bin/sh
22
# Guess values for system-dependent variables and create Makefiles.
3-
# Generated by GNU Autoconf 2.69 for PCRE 8.39.
3+
# Generated by GNU Autoconf 2.69 for PCRE 8.40.
44
#
55
#
66
# Copyright (C) 1992-1996, 1998-2012 Free Software Foundation, Inc.
@@ -587,8 +587,8 @@ MAKEFLAGS=
587587
# Identity of this package.
588588
PACKAGE_NAME='PCRE'
589589
PACKAGE_TARNAME='pcre'
590-
PACKAGE_VERSION='8.39'
591-
PACKAGE_STRING='PCRE 8.39'
590+
PACKAGE_VERSION='8.40'
591+
PACKAGE_STRING='PCRE 8.40'
592592
PACKAGE_BUGREPORT=''
593593
PACKAGE_URL=''
594594

@@ -1418,7 +1418,7 @@ if test "$ac_init_help" = "long"; then
14181418
# Omit some internal or obsolete options to make the list less imposing.
14191419
# This message is too long to be a string in the A/UX 3.1 sh.
14201420
cat <<_ACEOF
1421-
\`configure' configures PCRE 8.39 to adapt to many kinds of systems.
1421+
\`configure' configures PCRE 8.40 to adapt to many kinds of systems.
14221422

14231423
Usage: $0 [OPTION]... [VAR=VALUE]...
14241424

@@ -1488,7 +1488,7 @@ fi
14881488

14891489
if test -n "$ac_init_help"; then
14901490
case $ac_init_help in
1491-
short | recursive ) echo "Configuration of PCRE 8.39:";;
1491+
short | recursive ) echo "Configuration of PCRE 8.40:";;
14921492
esac
14931493
cat <<\_ACEOF
14941494

@@ -1662,7 +1662,7 @@ fi
16621662
test -n "$ac_init_help" && exit $ac_status
16631663
if $ac_init_version; then
16641664
cat <<\_ACEOF
1665-
PCRE configure 8.39
1665+
PCRE configure 8.40
16661666
generated by GNU Autoconf 2.69
16671667

16681668
Copyright (C) 2012 Free Software Foundation, Inc.
@@ -2419,7 +2419,7 @@ cat >config.log <<_ACEOF
24192419
This file contains any messages produced by compilers while
24202420
running configure, to aid debugging if configure makes a mistake.
24212421

2422-
It was created by PCRE $as_me 8.39, which was
2422+
It was created by PCRE $as_me 8.40, which was
24232423
generated by GNU Autoconf 2.69. Invocation command line was
24242424

24252425
$ $0 $@
@@ -3283,7 +3283,7 @@ fi
32833283

32843284
# Define the identity of the package.
32853285
PACKAGE='pcre'
3286-
VERSION='8.39'
3286+
VERSION='8.40'
32873287

32883288

32893289
cat >>confdefs.h <<_ACEOF
@@ -17634,9 +17634,9 @@ _ACEOF
1763417634
# Versioning
1763517635

1763617636
PCRE_MAJOR="8"
17637-
PCRE_MINOR="39"
17637+
PCRE_MINOR="40"
1763817638
PCRE_PRERELEASE=""
17639-
PCRE_DATE="2016-06-14"
17639+
PCRE_DATE="2017-01-11"
1764017640

1764117641
if test "$PCRE_MINOR" = "08" -o "$PCRE_MINOR" = "09"
1764217642
then
@@ -19658,13 +19658,13 @@ esac
1965819658
# (Note: The libpcre*_version bits are m4 variables, assigned above)
1965919659

1966019660
EXTRA_LIBPCRE_LDFLAGS="$EXTRA_LIBPCRE_LDFLAGS \
19661-
$NO_UNDEFINED -version-info 3:7:2"
19661+
$NO_UNDEFINED -version-info 3:8:2"
1966219662

1966319663
EXTRA_LIBPCRE16_LDFLAGS="$EXTRA_LIBPCRE16_LDFLAGS \
19664-
$NO_UNDEFINED -version-info 2:7:2"
19664+
$NO_UNDEFINED -version-info 2:8:2"
1966519665

1966619666
EXTRA_LIBPCRE32_LDFLAGS="$EXTRA_LIBPCRE32_LDFLAGS \
19667-
$NO_UNDEFINED -version-info 0:7:0"
19667+
$NO_UNDEFINED -version-info 0:8:0"
1966819668

1966919669
EXTRA_LIBPCREPOSIX_LDFLAGS="$EXTRA_LIBPCREPOSIX_LDFLAGS \
1967019670
$NO_UNDEFINED -version-info 0:4:0"
@@ -20719,7 +20719,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
2071920719
# report actual input values of CONFIG_FILES etc. instead of their
2072020720
# values after options handling.
2072120721
ac_log="
20722-
This file was extended by PCRE $as_me 8.39, which was
20722+
This file was extended by PCRE $as_me 8.40, which was
2072320723
generated by GNU Autoconf 2.69. Invocation command line was
2072420724

2072520725
CONFIG_FILES = $CONFIG_FILES
@@ -20785,7 +20785,7 @@ _ACEOF
2078520785
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
2078620786
ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
2078720787
ac_cs_version="\\
20788-
PCRE config.status 8.39
20788+
PCRE config.status 8.40
2078920789
configured by $0, generated by GNU Autoconf 2.69,
2079020790
with options \\"\$ac_cs_config\\"
2079120791

pcre/configure.ac

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -9,17 +9,17 @@ dnl The PCRE_PRERELEASE feature is for identifying release candidates. It might
99
dnl be defined as -RC2, for example. For real releases, it should be empty.
1010

1111
m4_define(pcre_major, [8])
12-
m4_define(pcre_minor, [39])
12+
m4_define(pcre_minor, [40])
1313
m4_define(pcre_prerelease, [])
14-
m4_define(pcre_date, [2016-06-14])
14+
m4_define(pcre_date, [2017-01-11])
1515

1616
# NOTE: The CMakeLists.txt file searches for the above variables in the first
1717
# 50 lines of this file. Please update that if the variables above are moved.
1818

1919
# Libtool shared library interface versions (current:revision:age)
20-
m4_define(libpcre_version, [3:7:2])
21-
m4_define(libpcre16_version, [2:7:2])
22-
m4_define(libpcre32_version, [0:7:0])
20+
m4_define(libpcre_version, [3:8:2])
21+
m4_define(libpcre16_version, [2:8:2])
22+
m4_define(libpcre32_version, [0:8:0])
2323
m4_define(libpcreposix_version, [0:4:0])
2424
m4_define(libpcrecpp_version, [0:1:0])
2525

pcre/doc/html/pcrecompat.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -128,7 +128,7 @@ <h1>pcrecompat man page</h1>
128128
14. PCRE's handling of duplicate subpattern numbers and duplicate subpattern
129129
names is not as general as Perl's. This is a consequence of the fact the PCRE
130130
works internally just with numbers, using an external table to translate
131-
between numbers and names. In particular, a pattern such as (?|(?&#60;a&#62;A)|(?&#60;b)B),
131+
between numbers and names. In particular, a pattern such as (?|(?&#60;a&#62;A)|(?&#60;b&#62;B),
132132
where the two capturing parentheses have the same number but different names,
133133
is not supported, and causes an error at compile time. If it were allowed, it
134134
would not be possible to distinguish which parentheses matched, because both

0 commit comments

Comments
 (0)