diff --git a/ChangeLog b/ChangeLog index 9f2b36b..d27542d 100644 --- a/ChangeLog +++ b/ChangeLog @@ -20,47 +20,47 @@ Version 10.39 29-October-2021 IMHO removing the cast (and therefore the positibilty of truncation) make the code cleaner and the fallback is likely portable enough with all 64-bit POSIX systems doing LP64 except for Windows. - -3. Merged patch from @carenas (GitHub #29) to update to Unicode 14.0.0. + +3. Merged patch from @carenas (GitHub #29) to update to Unicode 14.0.0. 4. Merged patch from @carenas (GitHub #30): * Cleanup: remove references to no longer used stdint.h - + Since 19c50b9d (Unconditionally use inttypes.h instead of trying for stdint.h (simplification) and remove the now unnecessary inclusion in pcre2_internal.h., 2018-11-14), stdint.h is no longer used. - + Remove checks for it in autotools and CMake and document better the expected build failures for systems that might have stdint.h (C99) and not inttypes.h (from POSIX), like old Windows. - + * Cleanup: remove detection for inttypes.h which is a hard dependency - + CMake checks for standard headers are not meant to be used for hard dependencies, so will prevent a possible fallback to work. - + Alternatively, the header could be checked to make the configuration fail instead of breaking the build, but that was punted, as it was missing anyway from autotools. - + 5. Merged patch from @carenas (GitHub #32): * jit: allow building with ancient MSVC versions - + Visual Studio older than 2013 fails to build with JIT enabled, because it is unable to parse non C89 compatible syntax, with mixed declarations and code. While most recent compilers wouldn't even report this as a warning since it is valid C99, it could be also made visible by adding to gcc/clang the -Wdeclaration-after-statement flag at build time. - + Move the code below the affected definitions. - + * pcre2grep: avoid mixing declarations with code - + Since d5a61ee8 (Patch to detect (and ignore) symlink loops in pcre2grep, 2021-08-28), code will fail to build in a strict C89 compiler. - + Reformat slightly to make it C89 compatible again. diff --git a/doc/html/NON-AUTOTOOLS-BUILD.txt b/doc/html/NON-AUTOTOOLS-BUILD.txt index 61d2b3e..88e2f21 100644 --- a/doc/html/NON-AUTOTOOLS-BUILD.txt +++ b/doc/html/NON-AUTOTOOLS-BUILD.txt @@ -344,9 +344,9 @@ cache can be deleted by selecting "File > Delete Cache". BUILDING PCRE2 ON WINDOWS WITH VISUAL STUDIO The code currently cannot be compiled without an inttypes.h header, which is -available only with Visual Studio 2013 or newer. However, this -portable and permissively-licensed implementation of the stdint.h header -could be used as an alternative: +available only with Visual Studio 2013 or newer. However, this portable and +permissively-licensed implementation of the stdint.h header could be used as an +alternative: http://www.azillionmonkeys.com/qed/pstdint.h diff --git a/doc/html/README.txt b/doc/html/README.txt index e07d3c0..67e46b4 100644 --- a/doc/html/README.txt +++ b/doc/html/README.txt @@ -5,9 +5,8 @@ PCRE2 is a re-working of the original PCRE1 library to provide an entirely new API. Since its initial release in 2015, there has been further development of the code and it now differs from PCRE1 in more than just the API. There are new features, and the internals have been improved. The original PCRE1 library is -now obsolete and should not be used in new projects. The latest release of -PCRE2 is available in .tar.gz, tar.bz2, or .zip form from this GitHub -repository: +now obsolete and no longer maintained. The latest release of PCRE2 is available +in .tar.gz, tar.bz2, or .zip form from this GitHub repository: https://github.com/PhilipHazel/pcre2/releases @@ -377,12 +376,12 @@ library. They are also documented in the pcre2build man page. . The C99 standard defines formatting modifiers z and t for size_t and ptrdiff_t values, respectively. By default, PCRE2 uses these modifiers in - environments other than Microsoft Visual Studio when __STDC_VERSION__ is - defined and has a value greater than or equal to 199901L (indicating C99). - However, there is at least one environment that claims to be C99 but does not - support these modifiers. If --disable-percent-zt is specified, no use is made - of the z or t modifiers. Instead of %td or %zu, %lu is used, with a cast for - size_t values. + environments other than Microsoft Visual Studio versions earlier than 2013 + when __STDC_VERSION__ is defined and has a value greater than or equal to + 199901L (indicating C99). However, there is at least one environment that + claims to be C99 but does not support these modifiers. If + --disable-percent-zt is specified, no use is made of the z or t modifiers. + Instead of %td or %zu, %lu is used, with a cast for size_t values. . There is a special option called --enable-fuzz-support for use by people who want to run fuzzing tests on PCRE2. At present this applies only to the 8-bit @@ -906,4 +905,4 @@ The distribution should contain the files listed below. Philip Hazel Email local part: Philip.Hazel Email domain: gmail.com -Last updated: 27 August 2021 +Last updated: 29 October 2021 diff --git a/doc/pcre2.txt b/doc/pcre2.txt index 9a0c839..dde66a1 100644 --- a/doc/pcre2.txt +++ b/doc/pcre2.txt @@ -185,8 +185,8 @@ REVISION Last updated: 27 August 2021 Copyright (c) 1997-2021 University of Cambridge. ------------------------------------------------------------------------------ - - + + PCRE2API(3) Library Functions Manual PCRE2API(3) @@ -3851,8 +3851,8 @@ REVISION Last updated: 30 August 2021 Copyright (c) 1997-2021 University of Cambridge. ------------------------------------------------------------------------------ - - + + PCRE2BUILD(3) Library Functions Manual PCRE2BUILD(3) @@ -4447,8 +4447,8 @@ REVISION Last updated: 20 March 2020 Copyright (c) 1997-2020 University of Cambridge. ------------------------------------------------------------------------------ - - + + PCRE2CALLOUT(3) Library Functions Manual PCRE2CALLOUT(3) @@ -4877,8 +4877,8 @@ REVISION Last updated: 03 February 2019 Copyright (c) 1997-2019 University of Cambridge. ------------------------------------------------------------------------------ - - + + PCRE2COMPAT(3) Library Functions Manual PCRE2COMPAT(3) @@ -5092,8 +5092,8 @@ REVISION Last updated: 30 August 2021 Copyright (c) 1997-2021 University of Cambridge. ------------------------------------------------------------------------------ - - + + PCRE2JIT(3) Library Functions Manual PCRE2JIT(3) @@ -5518,8 +5518,8 @@ REVISION Last updated: 23 May 2019 Copyright (c) 1997-2019 University of Cambridge. ------------------------------------------------------------------------------ - - + + PCRE2LIMITS(3) Library Functions Manual PCRE2LIMITS(3) @@ -5588,8 +5588,8 @@ REVISION Last updated: 02 February 2019 Copyright (c) 1997-2019 University of Cambridge. ------------------------------------------------------------------------------ - - + + PCRE2MATCHING(3) Library Functions Manual PCRE2MATCHING(3) @@ -5813,8 +5813,8 @@ REVISION Last updated: 28 August 2021 Copyright (c) 1997-2021 University of Cambridge. ------------------------------------------------------------------------------ - - + + PCRE2PARTIAL(3) Library Functions Manual PCRE2PARTIAL(3) @@ -6193,8 +6193,8 @@ REVISION Last updated: 04 September 2019 Copyright (c) 1997-2019 University of Cambridge. ------------------------------------------------------------------------------ - - + + PCRE2PATTERN(3) Library Functions Manual PCRE2PATTERN(3) @@ -9643,8 +9643,8 @@ REVISION Last updated: 30 August 2021 Copyright (c) 1997-2021 University of Cambridge. ------------------------------------------------------------------------------ - - + + PCRE2PERFORM(3) Library Functions Manual PCRE2PERFORM(3) @@ -9878,8 +9878,8 @@ REVISION Last updated: 03 February 2019 Copyright (c) 1997-2019 University of Cambridge. ------------------------------------------------------------------------------ - - + + PCRE2POSIX(3) Library Functions Manual PCRE2POSIX(3) @@ -10212,8 +10212,8 @@ REVISION Last updated: 26 April 2021 Copyright (c) 1997-2021 University of Cambridge. ------------------------------------------------------------------------------ - - + + PCRE2SAMPLE(3) Library Functions Manual PCRE2SAMPLE(3) @@ -10491,8 +10491,8 @@ REVISION Last updated: 27 June 2018 Copyright (c) 1997-2018 University of Cambridge. ------------------------------------------------------------------------------ - - + + PCRE2SYNTAX(3) Library Functions Manual PCRE2SYNTAX(3) @@ -11011,8 +11011,8 @@ REVISION Last updated: 30 August 2021 Copyright (c) 1997-2021 University of Cambridge. ------------------------------------------------------------------------------ - - + + PCRE2UNICODE(3) Library Functions Manual PCRE2UNICODE(3) @@ -11446,5 +11446,5 @@ REVISION Last updated: 23 February 2020 Copyright (c) 1997-2020 University of Cambridge. ------------------------------------------------------------------------------ - - + + diff --git a/src/config.h.generic b/src/config.h.generic index 3b55ca7..a135937 100644 --- a/src/config.h.generic +++ b/src/config.h.generic @@ -73,6 +73,9 @@ sure both macros are undefined; an emulation function will then be used. */ /* Define to 1 if you have the header file. */ /* #undef HAVE_EDIT_READLINE_READLINE_H */ +/* Define to 1 if you have the header file. */ +/* #undef HAVE_INTTYPES_H */ + /* Define to 1 if you have the header file. */ /* #undef HAVE_LIMITS_H */ @@ -106,6 +109,9 @@ sure both macros are undefined; an emulation function will then be used. */ /* Define to 1 if you have the `secure_getenv' function. */ /* #undef HAVE_SECURE_GETENV */ +/* Define to 1 if you have the header file. */ +/* #undef HAVE_STDINT_H */ + /* Define to 1 if you have the header file. */ /* #undef HAVE_STDIO_H */ @@ -227,7 +233,7 @@ sure both macros are undefined; an emulation function will then be used. */ #define PACKAGE_NAME "PCRE2" /* Define to the full name and version of this package. */ -#define PACKAGE_STRING "PCRE2 10.38" +#define PACKAGE_STRING "PCRE2 10.39" /* Define to the one symbol short name of this package. */ #define PACKAGE_TARNAME "pcre2" @@ -236,7 +242,7 @@ sure both macros are undefined; an emulation function will then be used. */ #define PACKAGE_URL "" /* Define to the version of this package. */ -#define PACKAGE_VERSION "10.38" +#define PACKAGE_VERSION "10.39" /* 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 @@ -429,7 +435,7 @@ sure both macros are undefined; an emulation function will then be used. */ #endif /* Version number of package */ -#define VERSION "10.38" +#define VERSION "10.39" /* Define to empty if `const' does not conform to ANSI C. */ /* #undef const */ diff --git a/src/pcre2.h.generic b/src/pcre2.h.generic index 3a40ade..90a97d9 100644 --- a/src/pcre2.h.generic +++ b/src/pcre2.h.generic @@ -42,9 +42,9 @@ POSSIBILITY OF SUCH DAMAGE. /* The current PCRE version information. */ #define PCRE2_MAJOR 10 -#define PCRE2_MINOR 38 +#define PCRE2_MINOR 39 #define PCRE2_PRERELEASE -#define PCRE2_DATE 2021-10-01 +#define PCRE2_DATE 2021-10-29 /* 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