# HG changeset patch # User Jim Meyering # Date 891800658 0 # Node ID 6e399cfc23f6bab51151555fd529ad52a908df1e # Parent bea4f919218b1dff9b956dd8082e8352d91b36cb (WIDE_CHAR_SUPPORT): Define. This now depends on HAVE_BTOWC so systems that lack btowc (like solaris-2.5.1) don't lose. diff --git a/lib/regex.c b/lib/regex.c --- a/lib/regex.c +++ b/lib/regex.c @@ -49,9 +49,12 @@ # include #endif +#define WIDE_CHAR_SUPPORT \ + defined _LIBC || (HAVE_WCTYPE_H && HAVE_WCHAR_H && HAVE_BTOWC) + /* For platform which support the ISO C amendement 1 functionality we support user defined character classes. */ -#if defined _LIBC || (defined HAVE_WCTYPE_H && defined HAVE_WCHAR_H) +#if WIDE_CHAR_SUPPORT # include # include #endif @@ -1685,7 +1688,7 @@ } \ } -#if defined _LIBC || (defined HAVE_WCTYPE_H && defined HAVE_WCHAR_H) +#if WIDE_CHAR_SUPPORT /* The GNU C library provides support for user-defined character classes and the functions from ISO C amendement 1. */ # ifdef CHARCLASS_NAME_MAX @@ -2185,7 +2188,7 @@ the leading `:' and `[' (but set bits for them). */ if (c == ':' && *p == ']') { -#if defined _LIBC || (defined HAVE_WCTYPE_H && defined HAVE_WCHAR_H) +#if WIDE_CHAR_SUPPORT boolean is_lower = STREQ (str, "lower"); boolean is_upper = STREQ (str, "upper"); wctype_t wt;