Commit dccfaa41 by Edward Thomson

pcre: upgrade to 8.43

parent 600dd54e
...@@ -25,7 +25,7 @@ Email domain: cam.ac.uk ...@@ -25,7 +25,7 @@ Email domain: cam.ac.uk
University of Cambridge Computing Service, University of Cambridge Computing Service,
Cambridge, England. Cambridge, England.
Copyright (c) 1997-2018 University of Cambridge Copyright (c) 1997-2019 University of Cambridge
All rights reserved. All rights reserved.
...@@ -34,9 +34,9 @@ PCRE JUST-IN-TIME COMPILATION SUPPORT ...@@ -34,9 +34,9 @@ PCRE JUST-IN-TIME COMPILATION SUPPORT
Written by: Zoltan Herczeg Written by: Zoltan Herczeg
Email local part: hzmester Email local part: hzmester
Emain domain: freemail.hu Email domain: freemail.hu
Copyright(c) 2010-2018 Zoltan Herczeg Copyright(c) 2010-2019 Zoltan Herczeg
All rights reserved. All rights reserved.
...@@ -45,9 +45,9 @@ STACK-LESS JUST-IN-TIME COMPILER ...@@ -45,9 +45,9 @@ STACK-LESS JUST-IN-TIME COMPILER
Written by: Zoltan Herczeg Written by: Zoltan Herczeg
Email local part: hzmester Email local part: hzmester
Emain domain: freemail.hu Email domain: freemail.hu
Copyright(c) 2009-2018 Zoltan Herczeg Copyright(c) 2009-2019 Zoltan Herczeg
All rights reserved. All rights reserved.
......
...@@ -42,9 +42,9 @@ POSSIBILITY OF SUCH DAMAGE. ...@@ -42,9 +42,9 @@ POSSIBILITY OF SUCH DAMAGE.
/* The current PCRE version information. */ /* The current PCRE version information. */
#define PCRE_MAJOR 8 #define PCRE_MAJOR 8
#define PCRE_MINOR 42 #define PCRE_MINOR 43
#define PCRE_PRERELEASE #define PCRE_PRERELEASE
#define PCRE_DATE 2018-03-20 #define PCRE_DATE 2019-02-23
#define PCRE_EXP_DECL extern #define PCRE_EXP_DECL extern
......
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
and semantics are as close as possible to those of the Perl 5 language. and semantics are as close as possible to those of the Perl 5 language.
Written by Philip Hazel Written by Philip Hazel
Copyright (c) 1997-2016 University of Cambridge Copyright (c) 1997-2018 University of Cambridge
----------------------------------------------------------------------------- -----------------------------------------------------------------------------
Redistribution and use in source and binary forms, with or without Redistribution and use in source and binary forms, with or without
...@@ -3299,7 +3299,7 @@ for(;;) ...@@ -3299,7 +3299,7 @@ for(;;)
if ((*xclass_flags & XCL_MAP) == 0) if ((*xclass_flags & XCL_MAP) == 0)
{ {
/* No bits are set for characters < 256. */ /* No bits are set for characters < 256. */
if (list[1] == 0) return TRUE; if (list[1] == 0) return (*xclass_flags & XCL_NOT) == 0;
/* Might be an empty repeat. */ /* Might be an empty repeat. */
continue; continue;
} }
...@@ -7647,6 +7647,8 @@ for (;; ptr++) ...@@ -7647,6 +7647,8 @@ for (;; ptr++)
/* Can't determine a first byte now */ /* Can't determine a first byte now */
if (firstcharflags == REQ_UNSET) firstcharflags = REQ_NONE; if (firstcharflags == REQ_UNSET) firstcharflags = REQ_NONE;
zerofirstchar = firstchar;
zerofirstcharflags = firstcharflags;
continue; continue;
...@@ -8687,10 +8689,18 @@ do { ...@@ -8687,10 +8689,18 @@ do {
if (!is_anchored(scode, new_map, cd, atomcount)) return FALSE; if (!is_anchored(scode, new_map, cd, atomcount)) return FALSE;
} }
/* Positive forward assertions and conditions */ /* Positive forward assertion */
else if (op == OP_ASSERT)
{
if (!is_anchored(scode, bracket_map, cd, atomcount)) return FALSE;
}
/* Condition; not anchored if no second branch */
else if (op == OP_ASSERT || op == OP_COND) else if (op == OP_COND)
{ {
if (scode[GET(scode,1)] != OP_ALT) return FALSE;
if (!is_anchored(scode, bracket_map, cd, atomcount)) return FALSE; if (!is_anchored(scode, bracket_map, cd, atomcount)) return FALSE;
} }
......
...@@ -9002,7 +9002,7 @@ if (exact > 1) ...@@ -9002,7 +9002,7 @@ if (exact > 1)
#ifdef SUPPORT_UTF #ifdef SUPPORT_UTF
&& !common->utf && !common->utf
#endif #endif
) && type != OP_ANYNL && type != OP_EXTUNI)
{ {
OP2(SLJIT_ADD, TMP1, 0, STR_PTR, 0, SLJIT_IMM, IN_UCHARS(exact)); OP2(SLJIT_ADD, TMP1, 0, STR_PTR, 0, SLJIT_IMM, IN_UCHARS(exact));
add_jump(compiler, &backtrack->topbacktracks, CMP(SLJIT_GREATER, TMP1, 0, STR_END, 0)); add_jump(compiler, &backtrack->topbacktracks, CMP(SLJIT_GREATER, TMP1, 0, STR_END, 0));
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment