Source tidies and version etc. updates for 10.31-RC1.
This commit is contained in:
parent
9d197bfe76
commit
958cd1484f
6
AUTHORS
6
AUTHORS
|
@ -8,7 +8,7 @@ Email domain: cam.ac.uk
|
||||||
University of Cambridge Computing Service,
|
University of Cambridge Computing Service,
|
||||||
Cambridge, England.
|
Cambridge, England.
|
||||||
|
|
||||||
Copyright (c) 1997-2017 University of Cambridge
|
Copyright (c) 1997-2018 University of Cambridge
|
||||||
All rights reserved
|
All rights reserved
|
||||||
|
|
||||||
|
|
||||||
|
@ -19,7 +19,7 @@ Written by: Zoltan Herczeg
|
||||||
Email local part: hzmester
|
Email local part: hzmester
|
||||||
Emain domain: freemail.hu
|
Emain domain: freemail.hu
|
||||||
|
|
||||||
Copyright(c) 2010-2017 Zoltan Herczeg
|
Copyright(c) 2010-2018 Zoltan Herczeg
|
||||||
All rights reserved.
|
All rights reserved.
|
||||||
|
|
||||||
|
|
||||||
|
@ -30,7 +30,7 @@ Written by: Zoltan Herczeg
|
||||||
Email local part: hzmester
|
Email local part: hzmester
|
||||||
Emain domain: freemail.hu
|
Emain domain: freemail.hu
|
||||||
|
|
||||||
Copyright(c) 2009-2017 Zoltan Herczeg
|
Copyright(c) 2009-2018 Zoltan Herczeg
|
||||||
All rights reserved.
|
All rights reserved.
|
||||||
|
|
||||||
####
|
####
|
||||||
|
|
|
@ -432,7 +432,7 @@ SET(PCRE2_SOURCES
|
||||||
src/pcre2_convert.c
|
src/pcre2_convert.c
|
||||||
src/pcre2_dfa_match.c
|
src/pcre2_dfa_match.c
|
||||||
src/pcre2_error.c
|
src/pcre2_error.c
|
||||||
src/pcre2_extuni.c
|
src/pcre2_extuni.c
|
||||||
src/pcre2_find_bracket.c
|
src/pcre2_find_bracket.c
|
||||||
src/pcre2_jit_compile.c
|
src/pcre2_jit_compile.c
|
||||||
src/pcre2_maketables.c
|
src/pcre2_maketables.c
|
||||||
|
|
|
@ -2,8 +2,8 @@ Change Log for PCRE2
|
||||||
--------------------
|
--------------------
|
||||||
|
|
||||||
|
|
||||||
Version 10.31 xx-xxx-201x
|
Version 10.31 13-January-2018
|
||||||
-------------------------
|
-----------------------------
|
||||||
|
|
||||||
1. Fix typo (missing ]) in VMS code in pcre2test.c.
|
1. Fix typo (missing ]) in VMS code in pcre2test.c.
|
||||||
|
|
||||||
|
|
6
LICENCE
6
LICENCE
|
@ -26,7 +26,7 @@ Email domain: cam.ac.uk
|
||||||
University of Cambridge Computing Service,
|
University of Cambridge Computing Service,
|
||||||
Cambridge, England.
|
Cambridge, England.
|
||||||
|
|
||||||
Copyright (c) 1997-2017 University of Cambridge
|
Copyright (c) 1997-2018 University of Cambridge
|
||||||
All rights reserved.
|
All rights reserved.
|
||||||
|
|
||||||
|
|
||||||
|
@ -37,7 +37,7 @@ Written by: Zoltan Herczeg
|
||||||
Email local part: hzmester
|
Email local part: hzmester
|
||||||
Emain domain: freemail.hu
|
Emain domain: freemail.hu
|
||||||
|
|
||||||
Copyright(c) 2010-2017 Zoltan Herczeg
|
Copyright(c) 2010-2018 Zoltan Herczeg
|
||||||
All rights reserved.
|
All rights reserved.
|
||||||
|
|
||||||
|
|
||||||
|
@ -48,7 +48,7 @@ Written by: Zoltan Herczeg
|
||||||
Email local part: hzmester
|
Email local part: hzmester
|
||||||
Emain domain: freemail.hu
|
Emain domain: freemail.hu
|
||||||
|
|
||||||
Copyright(c) 2009-2017 Zoltan Herczeg
|
Copyright(c) 2009-2018 Zoltan Herczeg
|
||||||
All rights reserved.
|
All rights reserved.
|
||||||
|
|
||||||
|
|
||||||
|
|
18
NEWS
18
NEWS
|
@ -1,6 +1,24 @@
|
||||||
News about PCRE2 releases
|
News about PCRE2 releases
|
||||||
-------------------------
|
-------------------------
|
||||||
|
|
||||||
|
Version 10.31 13-January-2018
|
||||||
|
-----------------------------
|
||||||
|
|
||||||
|
This is mainly a bugfix and tidying release (see ChangeLog for full details).
|
||||||
|
However, there are some minor enhancements.
|
||||||
|
|
||||||
|
1. New pcre2_config() options: PCRE2_CONFIG_NEVER_BACKSLASH_C and
|
||||||
|
PCRE2_CONFIG_COMPILED_WIDTHS.
|
||||||
|
|
||||||
|
2. New pcre2_pattern_info() option PCRE2_INFO_EXTRAOPTIONS to retrieve the
|
||||||
|
extra compile time options.
|
||||||
|
|
||||||
|
3. There are now public names for all the pcre2_compile() error numbers.
|
||||||
|
|
||||||
|
4. Added PCRE2_CALLOUT_STARTMATCH and PCRE2_CALLOUT_BACKTRACK bits to a new
|
||||||
|
field callout_flags in callout blocks.
|
||||||
|
|
||||||
|
|
||||||
Version 10.30 14-August-2017
|
Version 10.30 14-August-2017
|
||||||
----------------------------
|
----------------------------
|
||||||
|
|
||||||
|
|
|
@ -91,10 +91,10 @@ can skip ahead to the CMake section.
|
||||||
pcre2_compile.c
|
pcre2_compile.c
|
||||||
pcre2_config.c
|
pcre2_config.c
|
||||||
pcre2_context.c
|
pcre2_context.c
|
||||||
pcre2_convert.c
|
pcre2_convert.c
|
||||||
pcre2_dfa_match.c
|
pcre2_dfa_match.c
|
||||||
pcre2_error.c
|
pcre2_error.c
|
||||||
pcre2_extuni.c
|
pcre2_extuni.c
|
||||||
pcre2_find_bracket.c
|
pcre2_find_bracket.c
|
||||||
pcre2_jit_compile.c
|
pcre2_jit_compile.c
|
||||||
pcre2_maketables.c
|
pcre2_maketables.c
|
||||||
|
@ -125,10 +125,10 @@ can skip ahead to the CMake section.
|
||||||
all of whose names begin with "sljit". It also #includes
|
all of whose names begin with "sljit". It also #includes
|
||||||
src/pcre2_jit_match.c and src/pcre2_jit_misc.c, so you should not compile
|
src/pcre2_jit_match.c and src/pcre2_jit_misc.c, so you should not compile
|
||||||
these yourself.
|
these yourself.
|
||||||
|
|
||||||
Not also that the pcre2_fuzzsupport.c file contains special code that is
|
Not also that the pcre2_fuzzsupport.c file contains special code that is
|
||||||
useful to those who want to run fuzzing tests on the PCRE2 library. Unless
|
useful to those who want to run fuzzing tests on the PCRE2 library. Unless
|
||||||
you are doing that, you can ignore it.
|
you are doing that, you can ignore it.
|
||||||
|
|
||||||
(5) Now link all the compiled code into an object library in whichever form
|
(5) Now link all the compiled code into an object library in whichever form
|
||||||
your system keeps such libraries. This is the basic PCRE2 C 8-bit library.
|
your system keeps such libraries. This is the basic PCRE2 C 8-bit library.
|
||||||
|
@ -370,7 +370,7 @@ z/OS and z/VM are operating systems for mainframe computers, produced by IBM.
|
||||||
The character code used is EBCDIC, not ASCII or Unicode. In z/OS, UNIX APIs and
|
The character code used is EBCDIC, not ASCII or Unicode. In z/OS, UNIX APIs and
|
||||||
applications can be supported through UNIX System Services, and in such an
|
applications can be supported through UNIX System Services, and in such an
|
||||||
environment it should be possible to build PCRE2 in the same way as in other
|
environment it should be possible to build PCRE2 in the same way as in other
|
||||||
systems, with the EBCDIC related configuration settings, but it is not known if
|
systems, with the EBCDIC related configuration settings, but it is not known if
|
||||||
anybody has tried this.
|
anybody has tried this.
|
||||||
|
|
||||||
In native z/OS (without UNIX System Services) and in z/VM, special ports are
|
In native z/OS (without UNIX System Services) and in z/VM, special ports are
|
||||||
|
@ -379,7 +379,7 @@ required. For details, please see file 939 on this web site:
|
||||||
http://www.cbttape.org
|
http://www.cbttape.org
|
||||||
|
|
||||||
Everything in that location, source and executable, is in EBCDIC and native
|
Everything in that location, source and executable, is in EBCDIC and native
|
||||||
z/OS file formats. The port provides an API for LE languages such as COBOL and
|
z/OS file formats. The port provides an API for LE languages such as COBOL and
|
||||||
for the z/OS and z/VM versions of the Rexx languages.
|
for the z/OS and z/VM versions of the Rexx languages.
|
||||||
|
|
||||||
===============================
|
===============================
|
||||||
|
|
2
README
2
README
|
@ -773,7 +773,7 @@ The distribution should contain the files listed below.
|
||||||
src/pcre2_convert.c )
|
src/pcre2_convert.c )
|
||||||
src/pcre2_dfa_match.c )
|
src/pcre2_dfa_match.c )
|
||||||
src/pcre2_error.c )
|
src/pcre2_error.c )
|
||||||
src/pcre2_extuni.c )
|
src/pcre2_extuni.c )
|
||||||
src/pcre2_find_bracket.c )
|
src/pcre2_find_bracket.c )
|
||||||
src/pcre2_jit_compile.c )
|
src/pcre2_jit_compile.c )
|
||||||
src/pcre2_jit_match.c ) sources for the functions in the library,
|
src/pcre2_jit_match.c ) sources for the functions in the library,
|
||||||
|
|
|
@ -11,15 +11,15 @@ dnl be defined as -RC2, for example. For real releases, it should be empty.
|
||||||
m4_define(pcre2_major, [10])
|
m4_define(pcre2_major, [10])
|
||||||
m4_define(pcre2_minor, [31])
|
m4_define(pcre2_minor, [31])
|
||||||
m4_define(pcre2_prerelease, [-RC1])
|
m4_define(pcre2_prerelease, [-RC1])
|
||||||
m4_define(pcre2_date, [2017-09-12])
|
m4_define(pcre2_date, [2018-01-11])
|
||||||
|
|
||||||
# NOTE: The CMakeLists.txt file searches for the above variables in the first
|
# NOTE: The CMakeLists.txt file searches for the above variables in the first
|
||||||
# 50 lines of this file. Please update that if the variables above are moved.
|
# 50 lines of this file. Please update that if the variables above are moved.
|
||||||
|
|
||||||
# Libtool shared library interface versions (current:revision:age)
|
# Libtool shared library interface versions (current:revision:age)
|
||||||
m4_define(libpcre2_8_version, [6:0:6])
|
m4_define(libpcre2_8_version, [7:0:7])
|
||||||
m4_define(libpcre2_16_version, [6:0:6])
|
m4_define(libpcre2_16_version, [7:0:7])
|
||||||
m4_define(libpcre2_32_version, [6:0:6])
|
m4_define(libpcre2_32_version, [7:0:7])
|
||||||
m4_define(libpcre2_posix_version, [2:0:0])
|
m4_define(libpcre2_posix_version, [2:0:0])
|
||||||
|
|
||||||
AC_PREREQ(2.57)
|
AC_PREREQ(2.57)
|
||||||
|
|
|
@ -91,10 +91,10 @@ can skip ahead to the CMake section.
|
||||||
pcre2_compile.c
|
pcre2_compile.c
|
||||||
pcre2_config.c
|
pcre2_config.c
|
||||||
pcre2_context.c
|
pcre2_context.c
|
||||||
pcre2_convert.c
|
pcre2_convert.c
|
||||||
pcre2_dfa_match.c
|
pcre2_dfa_match.c
|
||||||
pcre2_error.c
|
pcre2_error.c
|
||||||
pcre2_extuni.c
|
pcre2_extuni.c
|
||||||
pcre2_find_bracket.c
|
pcre2_find_bracket.c
|
||||||
pcre2_jit_compile.c
|
pcre2_jit_compile.c
|
||||||
pcre2_maketables.c
|
pcre2_maketables.c
|
||||||
|
@ -125,10 +125,10 @@ can skip ahead to the CMake section.
|
||||||
all of whose names begin with "sljit". It also #includes
|
all of whose names begin with "sljit". It also #includes
|
||||||
src/pcre2_jit_match.c and src/pcre2_jit_misc.c, so you should not compile
|
src/pcre2_jit_match.c and src/pcre2_jit_misc.c, so you should not compile
|
||||||
these yourself.
|
these yourself.
|
||||||
|
|
||||||
Not also that the pcre2_fuzzsupport.c file contains special code that is
|
Not also that the pcre2_fuzzsupport.c file contains special code that is
|
||||||
useful to those who want to run fuzzing tests on the PCRE2 library. Unless
|
useful to those who want to run fuzzing tests on the PCRE2 library. Unless
|
||||||
you are doing that, you can ignore it.
|
you are doing that, you can ignore it.
|
||||||
|
|
||||||
(5) Now link all the compiled code into an object library in whichever form
|
(5) Now link all the compiled code into an object library in whichever form
|
||||||
your system keeps such libraries. This is the basic PCRE2 C 8-bit library.
|
your system keeps such libraries. This is the basic PCRE2 C 8-bit library.
|
||||||
|
@ -370,7 +370,7 @@ z/OS and z/VM are operating systems for mainframe computers, produced by IBM.
|
||||||
The character code used is EBCDIC, not ASCII or Unicode. In z/OS, UNIX APIs and
|
The character code used is EBCDIC, not ASCII or Unicode. In z/OS, UNIX APIs and
|
||||||
applications can be supported through UNIX System Services, and in such an
|
applications can be supported through UNIX System Services, and in such an
|
||||||
environment it should be possible to build PCRE2 in the same way as in other
|
environment it should be possible to build PCRE2 in the same way as in other
|
||||||
systems, with the EBCDIC related configuration settings, but it is not known if
|
systems, with the EBCDIC related configuration settings, but it is not known if
|
||||||
anybody has tried this.
|
anybody has tried this.
|
||||||
|
|
||||||
In native z/OS (without UNIX System Services) and in z/VM, special ports are
|
In native z/OS (without UNIX System Services) and in z/VM, special ports are
|
||||||
|
@ -379,7 +379,7 @@ required. For details, please see file 939 on this web site:
|
||||||
http://www.cbttape.org
|
http://www.cbttape.org
|
||||||
|
|
||||||
Everything in that location, source and executable, is in EBCDIC and native
|
Everything in that location, source and executable, is in EBCDIC and native
|
||||||
z/OS file formats. The port provides an API for LE languages such as COBOL and
|
z/OS file formats. The port provides an API for LE languages such as COBOL and
|
||||||
for the z/OS and z/VM versions of the Rexx languages.
|
for the z/OS and z/VM versions of the Rexx languages.
|
||||||
|
|
||||||
===============================
|
===============================
|
||||||
|
|
|
@ -773,7 +773,7 @@ The distribution should contain the files listed below.
|
||||||
src/pcre2_convert.c )
|
src/pcre2_convert.c )
|
||||||
src/pcre2_dfa_match.c )
|
src/pcre2_dfa_match.c )
|
||||||
src/pcre2_error.c )
|
src/pcre2_error.c )
|
||||||
src/pcre2_extuni.c )
|
src/pcre2_extuni.c )
|
||||||
src/pcre2_find_bracket.c )
|
src/pcre2_find_bracket.c )
|
||||||
src/pcre2_jit_compile.c )
|
src/pcre2_jit_compile.c )
|
||||||
src/pcre2_jit_match.c ) sources for the functions in the library,
|
src/pcre2_jit_match.c ) sources for the functions in the library,
|
||||||
|
|
|
@ -32,8 +32,8 @@ name is zero-terminated, and is within the compiled pattern. The length of the
|
||||||
name is in the preceding code unit. If no name is available, NULL is returned.
|
name is in the preceding code unit. If no name is available, NULL is returned.
|
||||||
</P>
|
</P>
|
||||||
<P>
|
<P>
|
||||||
After a successful match, the name that is returned is the last one on the
|
After a successful match, the name that is returned is the last one on the
|
||||||
matching path. After a failed match or a partial match, the last encountered
|
matching path. After a failed match or a partial match, the last encountered
|
||||||
name is returned.
|
name is returned.
|
||||||
</P>
|
</P>
|
||||||
<P>
|
<P>
|
||||||
|
|
|
@ -920,7 +920,7 @@ The <i>offset_limit</i> parameter limits how far an unanchored search can
|
||||||
advance in the subject string. The default value is PCRE2_UNSET. The
|
advance in the subject string. The default value is PCRE2_UNSET. The
|
||||||
<b>pcre2_match()</b> and <b>pcre2_dfa_match()</b> functions return
|
<b>pcre2_match()</b> and <b>pcre2_dfa_match()</b> functions return
|
||||||
PCRE2_ERROR_NOMATCH if a match with a starting point before or at the given
|
PCRE2_ERROR_NOMATCH if a match with a starting point before or at the given
|
||||||
offset is not found. The <b>pcre2_substitute()</b> function makes no more
|
offset is not found. The <b>pcre2_substitute()</b> function makes no more
|
||||||
substitutions.
|
substitutions.
|
||||||
</P>
|
</P>
|
||||||
<P>
|
<P>
|
||||||
|
@ -939,10 +939,10 @@ PCRE2_USE_OFFSET_LIMIT is not set, an error is generated.
|
||||||
<P>
|
<P>
|
||||||
The offset limit facility can be used to track progress when searching large
|
The offset limit facility can be used to track progress when searching large
|
||||||
subject strings or to limit the extent of global substitutions. See also the
|
subject strings or to limit the extent of global substitutions. See also the
|
||||||
PCRE2_FIRSTLINE option, which requires a match to start within the first line
|
PCRE2_FIRSTLINE option, which requires a match to start before or at the first
|
||||||
of the subject. If this is set with an offset limit, a match must occur in the
|
newline that follows the start of matching in the subject. If this is set with
|
||||||
first line and also within the offset limit. In other words, whichever limit
|
an offset limit, a match must occur in the first line and also within the
|
||||||
comes first is used.
|
offset limit. In other words, whichever limit comes first is used.
|
||||||
<br>
|
<br>
|
||||||
<br>
|
<br>
|
||||||
<b>int pcre2_set_heap_limit(pcre2_match_context *<i>mcontext</i>,</b>
|
<b>int pcre2_set_heap_limit(pcre2_match_context *<i>mcontext</i>,</b>
|
||||||
|
@ -1506,11 +1506,16 @@ changed within a pattern by a (?xx) option setting.
|
||||||
PCRE2_FIRSTLINE
|
PCRE2_FIRSTLINE
|
||||||
</pre>
|
</pre>
|
||||||
If this option is set, the start of an unanchored pattern match must be before
|
If this option is set, the start of an unanchored pattern match must be before
|
||||||
or at the first newline in the subject string, though the matched text may
|
or at the first newline in the subject string following the start of matching,
|
||||||
continue over the newline. See also PCRE2_USE_OFFSET_LIMIT, which provides a
|
though the matched text may continue over the newline. If <i>startoffset</i> is
|
||||||
more general limiting facility. If PCRE2_FIRSTLINE is set with an offset limit,
|
non-zero, the limiting newline is not necessarily the first newline in the
|
||||||
a match must occur in the first line and also within the offset limit. In other
|
subject. For example, if the subject string is "abc\nxyz" (where \n
|
||||||
words, whichever limit comes first is used.
|
represents a single-character newline) a pattern match for "yz" succeeds with
|
||||||
|
PCRE2_FIRSTLINE if <i>startoffset</i> is greater than 3. See also
|
||||||
|
PCRE2_USE_OFFSET_LIMIT, which provides a more general limiting facility. If
|
||||||
|
PCRE2_FIRSTLINE is set with an offset limit, a match must occur in the first
|
||||||
|
line and also within the offset limit. In other words, whichever limit comes
|
||||||
|
first is used.
|
||||||
<pre>
|
<pre>
|
||||||
PCRE2_LITERAL
|
PCRE2_LITERAL
|
||||||
</pre>
|
</pre>
|
||||||
|
@ -1945,13 +1950,13 @@ are as follows:
|
||||||
<pre>
|
<pre>
|
||||||
PCRE2_INFO_ALLOPTIONS
|
PCRE2_INFO_ALLOPTIONS
|
||||||
PCRE2_INFO_ARGOPTIONS
|
PCRE2_INFO_ARGOPTIONS
|
||||||
PCRE2_INFO_EXTRAOPTIONS
|
PCRE2_INFO_EXTRAOPTIONS
|
||||||
</pre>
|
</pre>
|
||||||
Return copies of the pattern's options. The third argument should point to a
|
Return copies of the pattern's options. The third argument should point to a
|
||||||
<b>uint32_t</b> variable. PCRE2_INFO_ARGOPTIONS returns exactly the options that
|
<b>uint32_t</b> variable. PCRE2_INFO_ARGOPTIONS returns exactly the options that
|
||||||
were passed to <b>pcre2_compile()</b>, whereas PCRE2_INFO_ALLOPTIONS returns
|
were passed to <b>pcre2_compile()</b>, whereas PCRE2_INFO_ALLOPTIONS returns
|
||||||
the compile options as modified by any top-level (*XXX) option settings such as
|
the compile options as modified by any top-level (*XXX) option settings such as
|
||||||
(*UTF) at the start of the pattern itself. PCRE2_INFO_EXTRAOPTIONS returns the
|
(*UTF) at the start of the pattern itself. PCRE2_INFO_EXTRAOPTIONS returns the
|
||||||
extra options that were set in the compile context by calling the
|
extra options that were set in the compile context by calling the
|
||||||
pcre2_set_compile_extra_options() function.
|
pcre2_set_compile_extra_options() function.
|
||||||
</P>
|
</P>
|
||||||
|
@ -3167,7 +3172,7 @@ options can be set in the <i>options</i> argument of <b>pcre2_substitute()</b>.
|
||||||
PCRE2_SUBSTITUTE_GLOBAL causes the function to iterate over the subject string,
|
PCRE2_SUBSTITUTE_GLOBAL causes the function to iterate over the subject string,
|
||||||
replacing every matching substring. If this option is not set, only the first
|
replacing every matching substring. If this option is not set, only the first
|
||||||
matching substring is replaced. The search for matches takes place in the
|
matching substring is replaced. The search for matches takes place in the
|
||||||
original subject string (that is, previous replacements do not affect it).
|
original subject string (that is, previous replacements do not affect it).
|
||||||
Iteration is implemented by advancing the <i>startoffset</i> value for each
|
Iteration is implemented by advancing the <i>startoffset</i> value for each
|
||||||
search, which is always passed the entire subject string. If an offset limit is
|
search, which is always passed the entire subject string. If an offset limit is
|
||||||
set in the match context, searching stops when that limit is reached.
|
set in the match context, searching stops when that limit is reached.
|
||||||
|
@ -3589,7 +3594,7 @@ Cambridge, England.
|
||||||
</P>
|
</P>
|
||||||
<br><a name="SEC42" href="#TOC1">REVISION</a><br>
|
<br><a name="SEC42" href="#TOC1">REVISION</a><br>
|
||||||
<P>
|
<P>
|
||||||
Last updated: 16 December 2017
|
Last updated: 31 December 2017
|
||||||
<br>
|
<br>
|
||||||
Copyright © 1997-2017 University of Cambridge.
|
Copyright © 1997-2017 University of Cambridge.
|
||||||
<br>
|
<br>
|
||||||
|
|
|
@ -464,7 +464,7 @@ given any number of times. If a directory matches both <b>--include-dir</b> and
|
||||||
<b>-L</b>, <b>--files-without-match</b>
|
<b>-L</b>, <b>--files-without-match</b>
|
||||||
Instead of outputting lines from the files, just output the names of the files
|
Instead of outputting lines from the files, just output the names of the files
|
||||||
that do not contain any lines that would have been output. Each file name is
|
that do not contain any lines that would have been output. Each file name is
|
||||||
output once, on a separate line. This option overrides any previous <b>-H</b>,
|
output once, on a separate line. This option overrides any previous <b>-H</b>,
|
||||||
<b>-h</b>, or <b>-l</b> options.
|
<b>-h</b>, or <b>-l</b> options.
|
||||||
</P>
|
</P>
|
||||||
<P>
|
<P>
|
||||||
|
@ -494,7 +494,7 @@ to terminal is normally automatically flushed by the operating system. This
|
||||||
option can be useful when the input or output is attached to a pipe and you do
|
option can be useful when the input or output is attached to a pipe and you do
|
||||||
not want <b>pcre2grep</b> to buffer up large amounts of data. However, its use
|
not want <b>pcre2grep</b> to buffer up large amounts of data. However, its use
|
||||||
will affect performance, and the <b>-M</b> (multiline) option ceases to work.
|
will affect performance, and the <b>-M</b> (multiline) option ceases to work.
|
||||||
When input is from a compressed .gz or .bz2 file, <b>--line-buffered</b> is
|
When input is from a compressed .gz or .bz2 file, <b>--line-buffered</b> is
|
||||||
ignored.
|
ignored.
|
||||||
</P>
|
</P>
|
||||||
<P>
|
<P>
|
||||||
|
@ -931,7 +931,7 @@ matches were found in other files) or too many matching errors. Using the
|
||||||
affect the return code.
|
affect the return code.
|
||||||
</P>
|
</P>
|
||||||
<P>
|
<P>
|
||||||
When run under VMS, the return code is placed in the symbol PCRE2GREP_RC
|
When run under VMS, the return code is placed in the symbol PCRE2GREP_RC
|
||||||
because VMS does not distinguish between exit(0) and exit(1).
|
because VMS does not distinguish between exit(0) and exit(1).
|
||||||
</P>
|
</P>
|
||||||
<br><a name="SEC13" href="#TOC1">SEE ALSO</a><br>
|
<br><a name="SEC13" href="#TOC1">SEE ALSO</a><br>
|
||||||
|
|
|
@ -513,8 +513,8 @@ limited to certain values, as follows:
|
||||||
All UTF modes no greater than 0x10ffff and a valid codepoint
|
All UTF modes no greater than 0x10ffff and a valid codepoint
|
||||||
</pre>
|
</pre>
|
||||||
Invalid Unicode codepoints are all those in the range 0xd800 to 0xdfff (the
|
Invalid Unicode codepoints are all those in the range 0xd800 to 0xdfff (the
|
||||||
so-called "surrogate" codepoints). The check for these can be disabled by the
|
so-called "surrogate" codepoints). The check for these can be disabled by the
|
||||||
caller of <b>pcre2_compile()</b> by setting the option
|
caller of <b>pcre2_compile()</b> by setting the option
|
||||||
PCRE2_EXTRA_ALLOW_SURROGATE_ESCAPES.
|
PCRE2_EXTRA_ALLOW_SURROGATE_ESCAPES.
|
||||||
</P>
|
</P>
|
||||||
<br><b>
|
<br><b>
|
||||||
|
@ -1416,9 +1416,9 @@ Ranges normally include all code points between the start and end characters,
|
||||||
inclusive. They can also be used for code points specified numerically, for
|
inclusive. They can also be used for code points specified numerically, for
|
||||||
example [\000-\037]. Ranges can include any characters that are valid for the
|
example [\000-\037]. Ranges can include any characters that are valid for the
|
||||||
current mode. In any UTF mode, the so-called "surrogate" characters (those
|
current mode. In any UTF mode, the so-called "surrogate" characters (those
|
||||||
whose code points lie between 0xd800 and 0xdfff inclusive) may not be specified
|
whose code points lie between 0xd800 and 0xdfff inclusive) may not be specified
|
||||||
explicitly by default (the PCRE2_EXTRA_ALLOW_SURROGATE_ESCAPES option disables
|
explicitly by default (the PCRE2_EXTRA_ALLOW_SURROGATE_ESCAPES option disables
|
||||||
this check). However, ranges such as [\x{d7ff}-\x{e000}], which include the
|
this check). However, ranges such as [\x{d7ff}-\x{e000}], which include the
|
||||||
surrogates, are always permitted.
|
surrogates, are always permitted.
|
||||||
</P>
|
</P>
|
||||||
<P>
|
<P>
|
||||||
|
|
2147
doc/pcre2.txt
2147
doc/pcre2.txt
File diff suppressed because it is too large
Load Diff
|
@ -19,8 +19,8 @@ this function's argument, this function returns a pointer to the last (*MARK),
|
||||||
name is zero-terminated, and is within the compiled pattern. The length of the
|
name is zero-terminated, and is within the compiled pattern. The length of the
|
||||||
name is in the preceding code unit. If no name is available, NULL is returned.
|
name is in the preceding code unit. If no name is available, NULL is returned.
|
||||||
.P
|
.P
|
||||||
After a successful match, the name that is returned is the last one on the
|
After a successful match, the name that is returned is the last one on the
|
||||||
matching path. After a failed match or a partial match, the last encountered
|
matching path. After a failed match or a partial match, the last encountered
|
||||||
name is returned.
|
name is returned.
|
||||||
.P
|
.P
|
||||||
There is a complete description of the PCRE2 native API in the
|
There is a complete description of the PCRE2 native API in the
|
||||||
|
|
|
@ -859,7 +859,7 @@ The \fIoffset_limit\fP parameter limits how far an unanchored search can
|
||||||
advance in the subject string. The default value is PCRE2_UNSET. The
|
advance in the subject string. The default value is PCRE2_UNSET. The
|
||||||
\fBpcre2_match()\fP and \fBpcre2_dfa_match()\fP functions return
|
\fBpcre2_match()\fP and \fBpcre2_dfa_match()\fP functions return
|
||||||
PCRE2_ERROR_NOMATCH if a match with a starting point before or at the given
|
PCRE2_ERROR_NOMATCH if a match with a starting point before or at the given
|
||||||
offset is not found. The \fBpcre2_substitute()\fP function makes no more
|
offset is not found. The \fBpcre2_substitute()\fP function makes no more
|
||||||
substitutions.
|
substitutions.
|
||||||
.P
|
.P
|
||||||
For example, if the pattern /abc/ is matched against "123abc" with an offset
|
For example, if the pattern /abc/ is matched against "123abc" with an offset
|
||||||
|
@ -1447,8 +1447,8 @@ changed within a pattern by a (?xx) option setting.
|
||||||
.sp
|
.sp
|
||||||
If this option is set, the start of an unanchored pattern match must be before
|
If this option is set, the start of an unanchored pattern match must be before
|
||||||
or at the first newline in the subject string following the start of matching,
|
or at the first newline in the subject string following the start of matching,
|
||||||
though the matched text may continue over the newline. If \fIstartoffset\fP is
|
though the matched text may continue over the newline. If \fIstartoffset\fP is
|
||||||
non-zero, the limiting newline is not necessarily the first newline in the
|
non-zero, the limiting newline is not necessarily the first newline in the
|
||||||
subject. For example, if the subject string is "abc\enxyz" (where \en
|
subject. For example, if the subject string is "abc\enxyz" (where \en
|
||||||
represents a single-character newline) a pattern match for "yz" succeeds with
|
represents a single-character newline) a pattern match for "yz" succeeds with
|
||||||
PCRE2_FIRSTLINE if \fIstartoffset\fP is greater than 3. See also
|
PCRE2_FIRSTLINE if \fIstartoffset\fP is greater than 3. See also
|
||||||
|
@ -1909,13 +1909,13 @@ are as follows:
|
||||||
.sp
|
.sp
|
||||||
PCRE2_INFO_ALLOPTIONS
|
PCRE2_INFO_ALLOPTIONS
|
||||||
PCRE2_INFO_ARGOPTIONS
|
PCRE2_INFO_ARGOPTIONS
|
||||||
PCRE2_INFO_EXTRAOPTIONS
|
PCRE2_INFO_EXTRAOPTIONS
|
||||||
.sp
|
.sp
|
||||||
Return copies of the pattern's options. The third argument should point to a
|
Return copies of the pattern's options. The third argument should point to a
|
||||||
\fBuint32_t\fP variable. PCRE2_INFO_ARGOPTIONS returns exactly the options that
|
\fBuint32_t\fP variable. PCRE2_INFO_ARGOPTIONS returns exactly the options that
|
||||||
were passed to \fBpcre2_compile()\fP, whereas PCRE2_INFO_ALLOPTIONS returns
|
were passed to \fBpcre2_compile()\fP, whereas PCRE2_INFO_ALLOPTIONS returns
|
||||||
the compile options as modified by any top-level (*XXX) option settings such as
|
the compile options as modified by any top-level (*XXX) option settings such as
|
||||||
(*UTF) at the start of the pattern itself. PCRE2_INFO_EXTRAOPTIONS returns the
|
(*UTF) at the start of the pattern itself. PCRE2_INFO_EXTRAOPTIONS returns the
|
||||||
extra options that were set in the compile context by calling the
|
extra options that were set in the compile context by calling the
|
||||||
pcre2_set_compile_extra_options() function.
|
pcre2_set_compile_extra_options() function.
|
||||||
.P
|
.P
|
||||||
|
@ -3180,7 +3180,7 @@ options can be set in the \fIoptions\fP argument of \fBpcre2_substitute()\fP.
|
||||||
PCRE2_SUBSTITUTE_GLOBAL causes the function to iterate over the subject string,
|
PCRE2_SUBSTITUTE_GLOBAL causes the function to iterate over the subject string,
|
||||||
replacing every matching substring. If this option is not set, only the first
|
replacing every matching substring. If this option is not set, only the first
|
||||||
matching substring is replaced. The search for matches takes place in the
|
matching substring is replaced. The search for matches takes place in the
|
||||||
original subject string (that is, previous replacements do not affect it).
|
original subject string (that is, previous replacements do not affect it).
|
||||||
Iteration is implemented by advancing the \fIstartoffset\fP value for each
|
Iteration is implemented by advancing the \fIstartoffset\fP value for each
|
||||||
search, which is always passed the entire subject string. If an offset limit is
|
search, which is always passed the entire subject string. If an offset limit is
|
||||||
set in the match context, searching stops when that limit is reached.
|
set in the match context, searching stops when that limit is reached.
|
||||||
|
|
|
@ -400,7 +400,7 @@ given any number of times. If a directory matches both \fB--include-dir\fP and
|
||||||
\fB-L\fP, \fB--files-without-match\fP
|
\fB-L\fP, \fB--files-without-match\fP
|
||||||
Instead of outputting lines from the files, just output the names of the files
|
Instead of outputting lines from the files, just output the names of the files
|
||||||
that do not contain any lines that would have been output. Each file name is
|
that do not contain any lines that would have been output. Each file name is
|
||||||
output once, on a separate line. This option overrides any previous \fB-H\fP,
|
output once, on a separate line. This option overrides any previous \fB-H\fP,
|
||||||
\fB-h\fP, or \fB-l\fP options.
|
\fB-h\fP, or \fB-l\fP options.
|
||||||
.TP
|
.TP
|
||||||
\fB-l\fP, \fB--files-with-matches\fP
|
\fB-l\fP, \fB--files-with-matches\fP
|
||||||
|
@ -427,7 +427,7 @@ to terminal is normally automatically flushed by the operating system. This
|
||||||
option can be useful when the input or output is attached to a pipe and you do
|
option can be useful when the input or output is attached to a pipe and you do
|
||||||
not want \fBpcre2grep\fP to buffer up large amounts of data. However, its use
|
not want \fBpcre2grep\fP to buffer up large amounts of data. However, its use
|
||||||
will affect performance, and the \fB-M\fP (multiline) option ceases to work.
|
will affect performance, and the \fB-M\fP (multiline) option ceases to work.
|
||||||
When input is from a compressed .gz or .bz2 file, \fB--line-buffered\fP is
|
When input is from a compressed .gz or .bz2 file, \fB--line-buffered\fP is
|
||||||
ignored.
|
ignored.
|
||||||
.TP
|
.TP
|
||||||
\fB--line-offsets\fP
|
\fB--line-offsets\fP
|
||||||
|
@ -838,7 +838,7 @@ matches were found in other files) or too many matching errors. Using the
|
||||||
\fB-s\fP option to suppress error messages about inaccessible files does not
|
\fB-s\fP option to suppress error messages about inaccessible files does not
|
||||||
affect the return code.
|
affect the return code.
|
||||||
.P
|
.P
|
||||||
When run under VMS, the return code is placed in the symbol PCRE2GREP_RC
|
When run under VMS, the return code is placed in the symbol PCRE2GREP_RC
|
||||||
because VMS does not distinguish between exit(0) and exit(1).
|
because VMS does not distinguish between exit(0) and exit(1).
|
||||||
.
|
.
|
||||||
.
|
.
|
||||||
|
|
|
@ -493,8 +493,8 @@ limited to certain values, as follows:
|
||||||
All UTF modes no greater than 0x10ffff and a valid codepoint
|
All UTF modes no greater than 0x10ffff and a valid codepoint
|
||||||
.sp
|
.sp
|
||||||
Invalid Unicode codepoints are all those in the range 0xd800 to 0xdfff (the
|
Invalid Unicode codepoints are all those in the range 0xd800 to 0xdfff (the
|
||||||
so-called "surrogate" codepoints). The check for these can be disabled by the
|
so-called "surrogate" codepoints). The check for these can be disabled by the
|
||||||
caller of \fBpcre2_compile()\fP by setting the option
|
caller of \fBpcre2_compile()\fP by setting the option
|
||||||
PCRE2_EXTRA_ALLOW_SURROGATE_ESCAPES.
|
PCRE2_EXTRA_ALLOW_SURROGATE_ESCAPES.
|
||||||
.
|
.
|
||||||
.
|
.
|
||||||
|
@ -1407,9 +1407,9 @@ Ranges normally include all code points between the start and end characters,
|
||||||
inclusive. They can also be used for code points specified numerically, for
|
inclusive. They can also be used for code points specified numerically, for
|
||||||
example [\e000-\e037]. Ranges can include any characters that are valid for the
|
example [\e000-\e037]. Ranges can include any characters that are valid for the
|
||||||
current mode. In any UTF mode, the so-called "surrogate" characters (those
|
current mode. In any UTF mode, the so-called "surrogate" characters (those
|
||||||
whose code points lie between 0xd800 and 0xdfff inclusive) may not be specified
|
whose code points lie between 0xd800 and 0xdfff inclusive) may not be specified
|
||||||
explicitly by default (the PCRE2_EXTRA_ALLOW_SURROGATE_ESCAPES option disables
|
explicitly by default (the PCRE2_EXTRA_ALLOW_SURROGATE_ESCAPES option disables
|
||||||
this check). However, ranges such as [\ex{d7ff}-\ex{e000}], which include the
|
this check). However, ranges such as [\ex{d7ff}-\ex{e000}], which include the
|
||||||
surrogates, are always permitted.
|
surrogates, are always permitted.
|
||||||
.P
|
.P
|
||||||
There is a special case in EBCDIC environments for ranges whose end points are
|
There is a special case in EBCDIC environments for ranges whose end points are
|
||||||
|
|
|
@ -210,7 +210,7 @@ sure both macros are undefined; an emulation function will then be used. */
|
||||||
#define PACKAGE_NAME "PCRE2"
|
#define PACKAGE_NAME "PCRE2"
|
||||||
|
|
||||||
/* Define to the full name and version of this package. */
|
/* Define to the full name and version of this package. */
|
||||||
#define PACKAGE_STRING "PCRE2 10.30"
|
#define PACKAGE_STRING "PCRE2 10.31-RC1"
|
||||||
|
|
||||||
/* Define to the one symbol short name of this package. */
|
/* Define to the one symbol short name of this package. */
|
||||||
#define PACKAGE_TARNAME "pcre2"
|
#define PACKAGE_TARNAME "pcre2"
|
||||||
|
@ -219,7 +219,7 @@ sure both macros are undefined; an emulation function will then be used. */
|
||||||
#define PACKAGE_URL ""
|
#define PACKAGE_URL ""
|
||||||
|
|
||||||
/* Define to the version of this package. */
|
/* Define to the version of this package. */
|
||||||
#define PACKAGE_VERSION "10.30"
|
#define PACKAGE_VERSION "10.31-RC1"
|
||||||
|
|
||||||
/* The value of PARENS_NEST_LIMIT specifies the maximum depth of nested
|
/* The value of PARENS_NEST_LIMIT specifies the maximum depth of nested
|
||||||
parentheses (of any kind) in a pattern. This limits the amount of system
|
parentheses (of any kind) in a pattern. This limits the amount of system
|
||||||
|
@ -339,7 +339,7 @@ sure both macros are undefined; an emulation function will then be used. */
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/* Version number of package */
|
/* Version number of package */
|
||||||
#define VERSION "10.30"
|
#define VERSION "10.31-RC1"
|
||||||
|
|
||||||
/* Define to 1 if on MINIX. */
|
/* Define to 1 if on MINIX. */
|
||||||
/* #undef _MINIX */
|
/* #undef _MINIX */
|
||||||
|
|
|
@ -44,7 +44,7 @@ POSSIBILITY OF SUCH DAMAGE.
|
||||||
#define PCRE2_MAJOR 10
|
#define PCRE2_MAJOR 10
|
||||||
#define PCRE2_MINOR 31
|
#define PCRE2_MINOR 31
|
||||||
#define PCRE2_PRERELEASE -RC1
|
#define PCRE2_PRERELEASE -RC1
|
||||||
#define PCRE2_DATE 2017-09-12
|
#define PCRE2_DATE 2018-01-11
|
||||||
|
|
||||||
/* When an application links to a PCRE DLL in Windows, the symbols that are
|
/* When an application links to a PCRE DLL in Windows, the symbols that are
|
||||||
imported have to be identified as such. When building PCRE2, the appropriate
|
imported have to be identified as such. When building PCRE2, the appropriate
|
||||||
|
|
|
@ -42,9 +42,9 @@ POSSIBILITY OF SUCH DAMAGE.
|
||||||
/* The current PCRE version information. */
|
/* The current PCRE version information. */
|
||||||
|
|
||||||
#define PCRE2_MAJOR 10
|
#define PCRE2_MAJOR 10
|
||||||
#define PCRE2_MINOR 30
|
#define PCRE2_MINOR 31
|
||||||
#define PCRE2_PRERELEASE
|
#define PCRE2_PRERELEASE -RC1
|
||||||
#define PCRE2_DATE 2017-08-14
|
#define PCRE2_DATE 2018-01-11
|
||||||
|
|
||||||
/* When an application links to a PCRE DLL in Windows, the symbols that are
|
/* When an application links to a PCRE DLL in Windows, the symbols that are
|
||||||
imported have to be identified as such. When building PCRE2, the appropriate
|
imported have to be identified as such. When building PCRE2, the appropriate
|
||||||
|
@ -208,7 +208,104 @@ greater than zero. */
|
||||||
#define PCRE2_BSR_UNICODE 1
|
#define PCRE2_BSR_UNICODE 1
|
||||||
#define PCRE2_BSR_ANYCRLF 2
|
#define PCRE2_BSR_ANYCRLF 2
|
||||||
|
|
||||||
/* Error codes: no match and partial match are "expected" errors. */
|
/* Error codes for pcre2_compile(). Some of these are also used by
|
||||||
|
pcre2_pattern_convert(). */
|
||||||
|
|
||||||
|
#define PCRE2_ERROR_END_BACKSLASH 101
|
||||||
|
#define PCRE2_ERROR_END_BACKSLASH_C 102
|
||||||
|
#define PCRE2_ERROR_UNKNOWN_ESCAPE 103
|
||||||
|
#define PCRE2_ERROR_QUANTIFIER_OUT_OF_ORDER 104
|
||||||
|
#define PCRE2_ERROR_QUANTIFIER_TOO_BIG 105
|
||||||
|
#define PCRE2_ERROR_MISSING_SQUARE_BRACKET 106
|
||||||
|
#define PCRE2_ERROR_ESCAPE_INVALID_IN_CLASS 107
|
||||||
|
#define PCRE2_ERROR_CLASS_RANGE_ORDER 108
|
||||||
|
#define PCRE2_ERROR_QUANTIFIER_INVALID 109
|
||||||
|
#define PCRE2_ERROR_INTERNAL_UNEXPECTED_REPEAT 110
|
||||||
|
#define PCRE2_ERROR_INVALID_AFTER_PARENS_QUERY 111
|
||||||
|
#define PCRE2_ERROR_POSIX_CLASS_NOT_IN_CLASS 112
|
||||||
|
#define PCRE2_ERROR_POSIX_NO_SUPPORT_COLLATING 113
|
||||||
|
#define PCRE2_ERROR_MISSING_CLOSING_PARENTHESIS 114
|
||||||
|
#define PCRE2_ERROR_BAD_SUBPATTERN_REFERENCE 115
|
||||||
|
#define PCRE2_ERROR_NULL_PATTERN 116
|
||||||
|
#define PCRE2_ERROR_BAD_OPTIONS 117
|
||||||
|
#define PCRE2_ERROR_MISSING_COMMENT_CLOSING 118
|
||||||
|
#define PCRE2_ERROR_PARENTHESES_NEST_TOO_DEEP 119
|
||||||
|
#define PCRE2_ERROR_PATTERN_TOO_LARGE 120
|
||||||
|
#define PCRE2_ERROR_HEAP_FAILED 121
|
||||||
|
#define PCRE2_ERROR_UNMATCHED_CLOSING_PARENTHESIS 122
|
||||||
|
#define PCRE2_ERROR_INTERNAL_CODE_OVERFLOW 123
|
||||||
|
#define PCRE2_ERROR_MISSING_CONDITION_CLOSING 124
|
||||||
|
#define PCRE2_ERROR_LOOKBEHIND_NOT_FIXED_LENGTH 125
|
||||||
|
#define PCRE2_ERROR_ZERO_RELATIVE_REFERENCE 126
|
||||||
|
#define PCRE2_ERROR_TOO_MANY_CONDITION_BRANCHES 127
|
||||||
|
#define PCRE2_ERROR_CONDITION_ASSERTION_EXPECTED 128
|
||||||
|
#define PCRE2_ERROR_BAD_RELATIVE_REFERENCE 129
|
||||||
|
#define PCRE2_ERROR_UNKNOWN_POSIX_CLASS 130
|
||||||
|
#define PCRE2_ERROR_INTERNAL_STUDY_ERROR 131
|
||||||
|
#define PCRE2_ERROR_UNICODE_NOT_SUPPORTED 132
|
||||||
|
#define PCRE2_ERROR_PARENTHESES_STACK_CHECK 133
|
||||||
|
#define PCRE2_ERROR_CODE_POINT_TOO_BIG 134
|
||||||
|
#define PCRE2_ERROR_LOOKBEHIND_TOO_COMPLICATED 135
|
||||||
|
#define PCRE2_ERROR_LOOKBEHIND_INVALID_BACKSLASH_C 136
|
||||||
|
#define PCRE2_ERROR_UNSUPPORTED_ESCAPE_SEQUENCE 137
|
||||||
|
#define PCRE2_ERROR_CALLOUT_NUMBER_TOO_BIG 138
|
||||||
|
#define PCRE2_ERROR_MISSING_CALLOUT_CLOSING 139
|
||||||
|
#define PCRE2_ERROR_ESCAPE_INVALID_IN_VERB 140
|
||||||
|
#define PCRE2_ERROR_UNRECOGNIZED_AFTER_QUERY_P 141
|
||||||
|
#define PCRE2_ERROR_MISSING_NAME_TERMINATOR 142
|
||||||
|
#define PCRE2_ERROR_DUPLICATE_SUBPATTERN_NAME 143
|
||||||
|
#define PCRE2_ERROR_INVALID_SUBPATTERN_NAME 144
|
||||||
|
#define PCRE2_ERROR_UNICODE_PROPERTIES_UNAVAILABLE 145
|
||||||
|
#define PCRE2_ERROR_MALFORMED_UNICODE_PROPERTY 146
|
||||||
|
#define PCRE2_ERROR_UNKNOWN_UNICODE_PROPERTY 147
|
||||||
|
#define PCRE2_ERROR_SUBPATTERN_NAME_TOO_LONG 148
|
||||||
|
#define PCRE2_ERROR_TOO_MANY_NAMED_SUBPATTERNS 149
|
||||||
|
#define PCRE2_ERROR_CLASS_INVALID_RANGE 150
|
||||||
|
#define PCRE2_ERROR_OCTAL_BYTE_TOO_BIG 151
|
||||||
|
#define PCRE2_ERROR_INTERNAL_OVERRAN_WORKSPACE 152
|
||||||
|
#define PCRE2_ERROR_INTERNAL_MISSING_SUBPATTERN 153
|
||||||
|
#define PCRE2_ERROR_DEFINE_TOO_MANY_BRANCHES 154
|
||||||
|
#define PCRE2_ERROR_BACKSLASH_O_MISSING_BRACE 155
|
||||||
|
#define PCRE2_ERROR_INTERNAL_UNKNOWN_NEWLINE 156
|
||||||
|
#define PCRE2_ERROR_BACKSLASH_G_SYNTAX 157
|
||||||
|
#define PCRE2_ERROR_PARENS_QUERY_R_MISSING_CLOSING 158
|
||||||
|
#define PCRE2_ERROR_VERB_ARGUMENT_NOT_ALLOWED 159
|
||||||
|
#define PCRE2_ERROR_VERB_UNKNOWN 160
|
||||||
|
#define PCRE2_ERROR_SUBPATTERN_NUMBER_TOO_BIG 161
|
||||||
|
#define PCRE2_ERROR_SUBPATTERN_NAME_EXPECTED 162
|
||||||
|
#define PCRE2_ERROR_INTERNAL_PARSED_OVERFLOW 163
|
||||||
|
#define PCRE2_ERROR_INVALID_OCTAL 164
|
||||||
|
#define PCRE2_ERROR_SUBPATTERN_NAMES_MISMATCH 165
|
||||||
|
#define PCRE2_ERROR_MARK_MISSING_ARGUMENT 166
|
||||||
|
#define PCRE2_ERROR_INVALID_HEXADECIMAL 167
|
||||||
|
#define PCRE2_ERROR_BACKSLASH_C_SYNTAX 168
|
||||||
|
#define PCRE2_ERROR_BACKSLASH_K_SYNTAX 169
|
||||||
|
#define PCRE2_ERROR_INTERNAL_BAD_CODE_LOOKBEHINDS 170
|
||||||
|
#define PCRE2_ERROR_BACKSLASH_N_IN_CLASS 171
|
||||||
|
#define PCRE2_ERROR_CALLOUT_STRING_TOO_LONG 172
|
||||||
|
#define PCRE2_ERROR_UNICODE_DISALLOWED_CODE_POINT 173
|
||||||
|
#define PCRE2_ERROR_UTF_IS_DISABLED 174
|
||||||
|
#define PCRE2_ERROR_UCP_IS_DISABLED 175
|
||||||
|
#define PCRE2_ERROR_VERB_NAME_TOO_LONG 176
|
||||||
|
#define PCRE2_ERROR_BACKSLASH_U_CODE_POINT_TOO_BIG 177
|
||||||
|
#define PCRE2_ERROR_MISSING_OCTAL_OR_HEX_DIGITS 178
|
||||||
|
#define PCRE2_ERROR_VERSION_CONDITION_SYNTAX 179
|
||||||
|
#define PCRE2_ERROR_INTERNAL_BAD_CODE_AUTO_POSSESS 180
|
||||||
|
#define PCRE2_ERROR_CALLOUT_NO_STRING_DELIMITER 181
|
||||||
|
#define PCRE2_ERROR_CALLOUT_BAD_STRING_DELIMITER 182
|
||||||
|
#define PCRE2_ERROR_BACKSLASH_C_CALLER_DISABLED 183
|
||||||
|
#define PCRE2_ERROR_QUERY_BARJX_NEST_TOO_DEEP 184
|
||||||
|
#define PCRE2_ERROR_BACKSLASH_C_LIBRARY_DISABLED 185
|
||||||
|
#define PCRE2_ERROR_PATTERN_TOO_COMPLICATED 186
|
||||||
|
#define PCRE2_ERROR_LOOKBEHIND_TOO_LONG 187
|
||||||
|
#define PCRE2_ERROR_PATTERN_STRING_TOO_LONG 188
|
||||||
|
#define PCRE2_ERROR_INTERNAL_BAD_CODE 189
|
||||||
|
#define PCRE2_ERROR_INTERNAL_BAD_CODE_IN_SKIP 190
|
||||||
|
#define PCRE2_ERROR_NO_SURROGATES_IN_UTF16 191
|
||||||
|
#define PCRE2_ERROR_BAD_LITERAL_OPTIONS 192
|
||||||
|
|
||||||
|
|
||||||
|
/* "Expected" matching error codes: no match and partial match. */
|
||||||
|
|
||||||
#define PCRE2_ERROR_NOMATCH (-1)
|
#define PCRE2_ERROR_NOMATCH (-1)
|
||||||
#define PCRE2_ERROR_PARTIAL (-2)
|
#define PCRE2_ERROR_PARTIAL (-2)
|
||||||
|
@ -248,10 +345,10 @@ greater than zero. */
|
||||||
#define PCRE2_ERROR_UTF32_ERR1 (-27)
|
#define PCRE2_ERROR_UTF32_ERR1 (-27)
|
||||||
#define PCRE2_ERROR_UTF32_ERR2 (-28)
|
#define PCRE2_ERROR_UTF32_ERR2 (-28)
|
||||||
|
|
||||||
/* Error codes for pcre2[_dfa]_match(), substring extraction functions, context
|
/* Miscellaneous error codes for pcre2[_dfa]_match(), substring extraction
|
||||||
functions, and serializing functions. They are in numerical order. Originally
|
functions, context functions, and serializing functions. They are in numerical
|
||||||
they were in alphabetical order too, but now that PCRE2 is released, the
|
order. Originally they were in alphabetical order too, but now that PCRE2 is
|
||||||
numbers must not be changed. */
|
released, the numbers must not be changed. */
|
||||||
|
|
||||||
#define PCRE2_ERROR_BADDATA (-29)
|
#define PCRE2_ERROR_BADDATA (-29)
|
||||||
#define PCRE2_ERROR_MIXEDTABLES (-30) /* Name was changed */
|
#define PCRE2_ERROR_MIXEDTABLES (-30) /* Name was changed */
|
||||||
|
@ -321,6 +418,7 @@ numbers must not be changed. */
|
||||||
#define PCRE2_INFO_HASBACKSLASHC 23
|
#define PCRE2_INFO_HASBACKSLASHC 23
|
||||||
#define PCRE2_INFO_FRAMESIZE 24
|
#define PCRE2_INFO_FRAMESIZE 24
|
||||||
#define PCRE2_INFO_HEAPLIMIT 25
|
#define PCRE2_INFO_HEAPLIMIT 25
|
||||||
|
#define PCRE2_INFO_EXTRAOPTIONS 26
|
||||||
|
|
||||||
/* Request types for pcre2_config(). */
|
/* Request types for pcre2_config(). */
|
||||||
|
|
||||||
|
@ -338,6 +436,9 @@ numbers must not be changed. */
|
||||||
#define PCRE2_CONFIG_UNICODE_VERSION 10
|
#define PCRE2_CONFIG_UNICODE_VERSION 10
|
||||||
#define PCRE2_CONFIG_VERSION 11
|
#define PCRE2_CONFIG_VERSION 11
|
||||||
#define PCRE2_CONFIG_HEAPLIMIT 12
|
#define PCRE2_CONFIG_HEAPLIMIT 12
|
||||||
|
#define PCRE2_CONFIG_NEVER_BACKSLASH_C 13
|
||||||
|
#define PCRE2_CONFIG_COMPILED_WIDTHS 14
|
||||||
|
|
||||||
|
|
||||||
/* Types for code units in patterns and subject strings. */
|
/* Types for code units in patterns and subject strings. */
|
||||||
|
|
||||||
|
@ -393,6 +494,11 @@ without changing the API of the function, thereby allowing old clients to work
|
||||||
without modification. Define the generic version in a macro; the width-specific
|
without modification. Define the generic version in a macro; the width-specific
|
||||||
versions are generated from this macro below. */
|
versions are generated from this macro below. */
|
||||||
|
|
||||||
|
/* Flags for the callout_flags field. These are cleared after a callout. */
|
||||||
|
|
||||||
|
#define PCRE2_CALLOUT_STARTMATCH 0x00000001u /* Set for each bumpalong */
|
||||||
|
#define PCRE2_CALLOUT_BACKTRACK 0x00000002u /* Set after a backtrack */
|
||||||
|
|
||||||
#define PCRE2_STRUCTURE_LIST \
|
#define PCRE2_STRUCTURE_LIST \
|
||||||
typedef struct pcre2_callout_block { \
|
typedef struct pcre2_callout_block { \
|
||||||
uint32_t version; /* Identifies version of block */ \
|
uint32_t version; /* Identifies version of block */ \
|
||||||
|
@ -412,6 +518,8 @@ typedef struct pcre2_callout_block { \
|
||||||
PCRE2_SIZE callout_string_offset; /* Offset to string within pattern */ \
|
PCRE2_SIZE callout_string_offset; /* Offset to string within pattern */ \
|
||||||
PCRE2_SIZE callout_string_length; /* Length of string compiled into pattern */ \
|
PCRE2_SIZE callout_string_length; /* Length of string compiled into pattern */ \
|
||||||
PCRE2_SPTR callout_string; /* String compiled into pattern */ \
|
PCRE2_SPTR callout_string; /* String compiled into pattern */ \
|
||||||
|
/* ------------------- Added for Version 2 -------------------------- */ \
|
||||||
|
uint32_t callout_flags; /* See above for list */ \
|
||||||
/* ------------------------------------------------------------------ */ \
|
/* ------------------------------------------------------------------ */ \
|
||||||
} pcre2_callout_block; \
|
} pcre2_callout_block; \
|
||||||
\
|
\
|
||||||
|
|
|
@ -95,7 +95,7 @@ static const char *pcre2_escaped_literals =
|
||||||
|
|
||||||
static const char *posix_meta_escapes =
|
static const char *posix_meta_escapes =
|
||||||
STR_LEFT_PARENTHESIS STR_RIGHT_PARENTHESIS
|
STR_LEFT_PARENTHESIS STR_RIGHT_PARENTHESIS
|
||||||
STR_LEFT_CURLY_BRACKET STR_RIGHT_CURLY_BRACKET
|
STR_LEFT_CURLY_BRACKET STR_RIGHT_CURLY_BRACKET
|
||||||
STR_1 STR_2 STR_3 STR_4 STR_5 STR_6 STR_7 STR_8 STR_9;
|
STR_1 STR_2 STR_3 STR_4 STR_5 STR_6 STR_7 STR_8 STR_9;
|
||||||
|
|
||||||
|
|
||||||
|
@ -250,7 +250,7 @@ while (plength > 0)
|
||||||
continue; /* With next character */
|
continue; /* With next character */
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/* Handle start of "normal" character classes */
|
/* Handle start of "normal" character classes */
|
||||||
|
|
||||||
|
@ -278,7 +278,7 @@ while (plength > 0)
|
||||||
case CHAR_BACKSLASH:
|
case CHAR_BACKSLASH:
|
||||||
if (plength <= 0) return PCRE2_ERROR_END_BACKSLASH;
|
if (plength <= 0) return PCRE2_ERROR_END_BACKSLASH;
|
||||||
if (extended) nextisliteral = TRUE; else
|
if (extended) nextisliteral = TRUE; else
|
||||||
{
|
{
|
||||||
if (*posix < 127 && strchr(posix_meta_escapes, *posix) != NULL)
|
if (*posix < 127 && strchr(posix_meta_escapes, *posix) != NULL)
|
||||||
{
|
{
|
||||||
if (isdigit(*posix)) PUTCHARS(STR_BACKSLASH);
|
if (isdigit(*posix)) PUTCHARS(STR_BACKSLASH);
|
||||||
|
@ -286,7 +286,7 @@ while (plength > 0)
|
||||||
lastspecial = *p++ = *posix++;
|
lastspecial = *p++ = *posix++;
|
||||||
plength--;
|
plength--;
|
||||||
}
|
}
|
||||||
else nextisliteral = TRUE;
|
else nextisliteral = TRUE;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
@ -867,7 +867,7 @@ while (pattern < pattern_end)
|
||||||
|
|
||||||
if (pattern >= pattern_end)
|
if (pattern >= pattern_end)
|
||||||
{
|
{
|
||||||
no_slash_z = TRUE;
|
no_slash_z = TRUE;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -937,7 +937,7 @@ while (pattern < pattern_end)
|
||||||
{
|
{
|
||||||
if (pattern >= pattern_end)
|
if (pattern >= pattern_end)
|
||||||
{
|
{
|
||||||
no_slash_z = TRUE;
|
no_slash_z = TRUE;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -508,7 +508,7 @@ if (*this_start_code == OP_ASSERTBACK || *this_start_code == OP_ASSERTBACK_NOT)
|
||||||
{
|
{
|
||||||
if (current_subject <= start_subject) break;
|
if (current_subject <= start_subject) break;
|
||||||
current_subject--;
|
current_subject--;
|
||||||
ACROSSCHAR(current_subject > start_subject, current_subject,
|
ACROSSCHAR(current_subject > start_subject, current_subject,
|
||||||
current_subject--);
|
current_subject--);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1770,7 +1770,7 @@ typedef struct open_capitem {
|
||||||
struct open_capitem *next; /* Chain link */
|
struct open_capitem *next; /* Chain link */
|
||||||
uint16_t number; /* Capture number */
|
uint16_t number; /* Capture number */
|
||||||
uint16_t flag; /* Set TRUE if recursive back ref */
|
uint16_t flag; /* Set TRUE if recursive back ref */
|
||||||
uint16_t assert_depth; /* Assertion depth when opened */
|
uint16_t assert_depth; /* Assertion depth when opened */
|
||||||
} open_capitem;
|
} open_capitem;
|
||||||
|
|
||||||
/* Layout of the UCP type table that translates property names into types and
|
/* Layout of the UCP type table that translates property names into types and
|
||||||
|
|
|
@ -623,7 +623,7 @@ typedef struct pcre2_real_code {
|
||||||
uint32_t magic_number; /* Paranoid and endianness check */
|
uint32_t magic_number; /* Paranoid and endianness check */
|
||||||
uint32_t compile_options; /* Options passed to pcre2_compile() */
|
uint32_t compile_options; /* Options passed to pcre2_compile() */
|
||||||
uint32_t overall_options; /* Options after processing the pattern */
|
uint32_t overall_options; /* Options after processing the pattern */
|
||||||
uint32_t extra_options; /* Taken from compile_context */
|
uint32_t extra_options; /* Taken from compile_context */
|
||||||
uint32_t flags; /* Various state flags */
|
uint32_t flags; /* Various state flags */
|
||||||
uint32_t limit_heap; /* Limit set in the pattern */
|
uint32_t limit_heap; /* Limit set in the pattern */
|
||||||
uint32_t limit_match; /* Limit set in the pattern */
|
uint32_t limit_match; /* Limit set in the pattern */
|
||||||
|
@ -862,7 +862,7 @@ typedef struct match_block {
|
||||||
uint32_t nltype; /* Newline type */
|
uint32_t nltype; /* Newline type */
|
||||||
uint32_t nllen; /* Newline string length */
|
uint32_t nllen; /* Newline string length */
|
||||||
PCRE2_UCHAR nl[4]; /* Newline string when fixed */
|
PCRE2_UCHAR nl[4]; /* Newline string when fixed */
|
||||||
pcre2_callout_block *cb; /* Points to a callout block */
|
pcre2_callout_block *cb; /* Points to a callout block */
|
||||||
void *callout_data; /* To pass back to callouts */
|
void *callout_data; /* To pass back to callouts */
|
||||||
int (*callout)(pcre2_callout_block *,void *); /* Callout function or NULL */
|
int (*callout)(pcre2_callout_block *,void *); /* Callout function or NULL */
|
||||||
} match_block;
|
} match_block;
|
||||||
|
@ -888,7 +888,7 @@ typedef struct dfa_match_block {
|
||||||
uint32_t nllen; /* Newline string length */
|
uint32_t nllen; /* Newline string length */
|
||||||
PCRE2_UCHAR nl[4]; /* Newline string when fixed */
|
PCRE2_UCHAR nl[4]; /* Newline string when fixed */
|
||||||
uint16_t bsr_convention; /* \R interpretation */
|
uint16_t bsr_convention; /* \R interpretation */
|
||||||
pcre2_callout_block *cb; /* Points to a callout block */
|
pcre2_callout_block *cb; /* Points to a callout block */
|
||||||
void *callout_data; /* To pass back to callouts */
|
void *callout_data; /* To pass back to callouts */
|
||||||
int (*callout)(pcre2_callout_block *,void *); /* Callout function or NULL */
|
int (*callout)(pcre2_callout_block *,void *); /* Callout function or NULL */
|
||||||
dfa_recursion_info *recursive; /* Linked list of recursion data */
|
dfa_recursion_info *recursive; /* Linked list of recursion data */
|
||||||
|
|
|
@ -179,12 +179,12 @@ static struct regression_test_case regression_test_cases[] = {
|
||||||
{ PCRE2_CASELESS, 0, 0, 0, "\xff#a", "\xff#\xff\xfe##\xff#A" },
|
{ PCRE2_CASELESS, 0, 0, 0, "\xff#a", "\xff#\xff\xfe##\xff#A" },
|
||||||
{ PCRE2_CASELESS, 0, 0, 0, "\xfe", "\xff\xfc#\xfe\xfe" },
|
{ PCRE2_CASELESS, 0, 0, 0, "\xfe", "\xff\xfc#\xfe\xfe" },
|
||||||
{ PCRE2_CASELESS, 0, 0, 0, "a1", "Aa1" },
|
{ PCRE2_CASELESS, 0, 0, 0, "a1", "Aa1" },
|
||||||
#ifndef NEVER_BACKSLASH_C
|
#ifndef NEVER_BACKSLASH_C
|
||||||
{ M, A, 0, 0, "\\Ca", "cda" },
|
{ M, A, 0, 0, "\\Ca", "cda" },
|
||||||
{ CM, A, 0, 0, "\\Ca", "CDA" },
|
{ CM, A, 0, 0, "\\Ca", "CDA" },
|
||||||
{ M, A, 0, 0 | F_NOMATCH, "\\Cx", "cda" },
|
{ M, A, 0, 0 | F_NOMATCH, "\\Cx", "cda" },
|
||||||
{ CM, A, 0, 0 | F_NOMATCH, "\\Cx", "CDA" },
|
{ CM, A, 0, 0 | F_NOMATCH, "\\Cx", "CDA" },
|
||||||
#endif
|
#endif
|
||||||
{ CMUP, A, 0, 0, "\xf0\x90\x90\x80\xf0\x90\x90\xa8", "\xf0\x90\x90\xa8\xf0\x90\x90\x80" },
|
{ CMUP, A, 0, 0, "\xf0\x90\x90\x80\xf0\x90\x90\xa8", "\xf0\x90\x90\xa8\xf0\x90\x90\x80" },
|
||||||
{ CMUP, A, 0, 0, "\xf0\x90\x90\x80{2}", "\xf0\x90\x90\x80#\xf0\x90\x90\xa8\xf0\x90\x90\x80" },
|
{ CMUP, A, 0, 0, "\xf0\x90\x90\x80{2}", "\xf0\x90\x90\x80#\xf0\x90\x90\xa8\xf0\x90\x90\x80" },
|
||||||
{ CMUP, A, 0, 0, "\xf0\x90\x90\xa8{2}", "\xf0\x90\x90\x80#\xf0\x90\x90\xa8\xf0\x90\x90\x80" },
|
{ CMUP, A, 0, 0, "\xf0\x90\x90\xa8{2}", "\xf0\x90\x90\x80#\xf0\x90\x90\xa8\xf0\x90\x90\x80" },
|
||||||
|
|
|
@ -76,7 +76,7 @@ if (where == NULL) /* Requests field length */
|
||||||
case PCRE2_INFO_BSR:
|
case PCRE2_INFO_BSR:
|
||||||
case PCRE2_INFO_CAPTURECOUNT:
|
case PCRE2_INFO_CAPTURECOUNT:
|
||||||
case PCRE2_INFO_DEPTHLIMIT:
|
case PCRE2_INFO_DEPTHLIMIT:
|
||||||
case PCRE2_INFO_EXTRAOPTIONS:
|
case PCRE2_INFO_EXTRAOPTIONS:
|
||||||
case PCRE2_INFO_FIRSTCODETYPE:
|
case PCRE2_INFO_FIRSTCODETYPE:
|
||||||
case PCRE2_INFO_FIRSTCODEUNIT:
|
case PCRE2_INFO_FIRSTCODEUNIT:
|
||||||
case PCRE2_INFO_HASBACKSLASHC:
|
case PCRE2_INFO_HASBACKSLASHC:
|
||||||
|
|
|
@ -5858,7 +5858,7 @@ output caused by CALLOUT_EXTRA. */
|
||||||
|
|
||||||
fdefault = (!first_callout && !callout_capture && cb->callout_string == NULL)?
|
fdefault = (!first_callout && !callout_capture && cb->callout_string == NULL)?
|
||||||
NULL : outfile;
|
NULL : outfile;
|
||||||
|
|
||||||
if ((dat_datctl.control2 & CTL2_CALLOUT_EXTRA) != 0)
|
if ((dat_datctl.control2 & CTL2_CALLOUT_EXTRA) != 0)
|
||||||
{
|
{
|
||||||
f = outfile;
|
f = outfile;
|
||||||
|
@ -8213,11 +8213,11 @@ while (argc > 1 && argv[op][0] == '-' && argv[op][1] != 0)
|
||||||
|
|
||||||
/* Set some common pattern and subject controls */
|
/* Set some common pattern and subject controls */
|
||||||
|
|
||||||
else if (strcmp(arg, "-AC") == 0)
|
else if (strcmp(arg, "-AC") == 0)
|
||||||
{
|
{
|
||||||
def_patctl.options |= PCRE2_AUTO_CALLOUT;
|
def_patctl.options |= PCRE2_AUTO_CALLOUT;
|
||||||
def_datctl.control2 |= CTL2_CALLOUT_EXTRA;
|
def_datctl.control2 |= CTL2_CALLOUT_EXTRA;
|
||||||
}
|
}
|
||||||
else if (strcmp(arg, "-ac") == 0) def_patctl.options |= PCRE2_AUTO_CALLOUT;
|
else if (strcmp(arg, "-ac") == 0) def_patctl.options |= PCRE2_AUTO_CALLOUT;
|
||||||
else if (strcmp(arg, "-b") == 0) def_patctl.control |= CTL_FULLBINCODE;
|
else if (strcmp(arg, "-b") == 0) def_patctl.control |= CTL_FULLBINCODE;
|
||||||
else if (strcmp(arg, "-d") == 0) def_patctl.control |= CTL_DEBUG;
|
else if (strcmp(arg, "-d") == 0) def_patctl.control |= CTL_DEBUG;
|
||||||
|
|
Loading…
Reference in New Issue