Lock out configuring for EBCDIC with non-8-bit libraries.
This commit is contained in:
parent
7bf5d9efd0
commit
ab48e8bb73
|
@ -284,6 +284,8 @@ a factor of the size of the compiling workspace (it currently is).
|
||||||
|
|
||||||
82. Small optimizations in code for finding the minimum matching length.
|
82. Small optimizations in code for finding the minimum matching length.
|
||||||
|
|
||||||
|
83. Lock out configuring for EBCDIC with non-8-bit libraries.
|
||||||
|
|
||||||
|
|
||||||
Version 10.20 30-June-2015
|
Version 10.20 30-June-2015
|
||||||
--------------------------
|
--------------------------
|
||||||
|
|
|
@ -339,13 +339,17 @@ fi
|
||||||
# Make sure that if enable_ebcdic is set, rebuild_chartables is also enabled.
|
# Make sure that if enable_ebcdic is set, rebuild_chartables is also enabled.
|
||||||
# Also check that UTF support is not requested, because PCRE2 cannot handle
|
# Also check that UTF support is not requested, because PCRE2 cannot handle
|
||||||
# EBCDIC and UTF in the same build. To do so it would need to use different
|
# EBCDIC and UTF in the same build. To do so it would need to use different
|
||||||
# character constants depending on the mode.
|
# character constants depending on the mode. Also, EBCDIC cannot be used with
|
||||||
|
# 16-bit and 32-bit libraries.
|
||||||
#
|
#
|
||||||
if test "x$enable_ebcdic" = "xyes"; then
|
if test "x$enable_ebcdic" = "xyes"; then
|
||||||
enable_rebuild_chartables=yes
|
enable_rebuild_chartables=yes
|
||||||
if test "x$enable_unicode" = "xyes"; then
|
if test "x$enable_unicode" = "xyes"; then
|
||||||
AC_MSG_ERROR([support for EBCDIC and Unicode cannot be enabled at the same time])
|
AC_MSG_ERROR([support for EBCDIC and Unicode cannot be enabled at the same time])
|
||||||
fi
|
fi
|
||||||
|
if test "x$enable_pcre2_16" = "xyes" -o "x$enable_pcre2_32" = "xyes"; then
|
||||||
|
AC_MSG_ERROR([EBCDIC support is available only for the 8-bit library])
|
||||||
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Check argument to --with-link-size
|
# Check argument to --with-link-size
|
||||||
|
|
|
@ -39,7 +39,10 @@ POSSIBILITY OF SUCH DAMAGE.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/* We do not support both EBCDIC and Unicode at the same time. The "configure"
|
/* We do not support both EBCDIC and Unicode at the same time. The "configure"
|
||||||
script prevents both being selected, but not everybody uses "configure". */
|
script prevents both being selected, but not everybody uses "configure". EBCDIC
|
||||||
|
is only supported for the 8-bit library, but the check for this has to be later
|
||||||
|
in this file, because the first part is not width-dependent, and is included by
|
||||||
|
pcre2test.c with CODE_UNIT_WIDTH == 0. */
|
||||||
|
|
||||||
#if defined EBCDIC && defined SUPPORT_UNICODE
|
#if defined EBCDIC && defined SUPPORT_UNICODE
|
||||||
#error The use of both EBCDIC and SUPPORT_UNICODE is not supported.
|
#error The use of both EBCDIC and SUPPORT_UNICODE is not supported.
|
||||||
|
@ -1803,11 +1806,16 @@ typedef struct pcre2_serialized_data {
|
||||||
|
|
||||||
#if defined PCRE2_CODE_UNIT_WIDTH && PCRE2_CODE_UNIT_WIDTH != 0
|
#if defined PCRE2_CODE_UNIT_WIDTH && PCRE2_CODE_UNIT_WIDTH != 0
|
||||||
|
|
||||||
|
/* EBCDIC is supported only for the 8-bit library. */
|
||||||
|
|
||||||
|
#if defined EBCDIC && PCRE2_CODE_UNIT_WIDTH != 8
|
||||||
|
#error EBCDIC is not supported for the 16-bit or 32-bit libraries
|
||||||
|
#endif
|
||||||
|
|
||||||
/* This is the largest non-UTF code point. */
|
/* This is the largest non-UTF code point. */
|
||||||
|
|
||||||
#define MAX_NON_UTF_CHAR (0xffffffffU >> (32 - PCRE2_CODE_UNIT_WIDTH))
|
#define MAX_NON_UTF_CHAR (0xffffffffU >> (32 - PCRE2_CODE_UNIT_WIDTH))
|
||||||
|
|
||||||
|
|
||||||
/* Internal shared data tables and variables. These are used by more than one
|
/* Internal shared data tables and variables. These are used by more than one
|
||||||
of the exported public functions. They have to be "external" in the C sense,
|
of the exported public functions. They have to be "external" in the C sense,
|
||||||
but are not part of the PCRE2 public API. Although the data for some of them is
|
but are not part of the PCRE2 public API. Although the data for some of them is
|
||||||
|
|
Loading…
Reference in New Issue