summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog3
-rw-r--r--posix/regex.c5
2 files changed, 7 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index 786b71aece..d9dd45dd6a 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,8 @@
 1998-03-24  Ulrich Drepper  <drepper@cygnus.com>
 
+	* posix/regex.c: Undefine ISASCII and ISPRINT before defining for
+	Solaris' sake.
+
 	* posix/regex.c (regex_compile): Don't allow non-alphabet
 	characters in character set name.
 
diff --git a/posix/regex.c b/posix/regex.c
index 626244f662..8c259d972a 100644
--- a/posix/regex.c
+++ b/posix/regex.c
@@ -189,8 +189,10 @@ init_syntax_once ()
    STDC_HEADERS is defined, then autoconf has verified that the ctype
    macros don't need to be guarded with references to isascii. ...
    Defining isascii to 1 should let any compiler worth its salt
-   eliminate the && through constant folding."  */
+   eliminate the && through constant folding."
+   Solaris defines some of these symbols so we must undefine them first.  */
 
+#undef ISASCII
 #if defined STDC_HEADERS || (!defined isascii && !defined HAVE_ISASCII)
 # define ISASCII(c) 1
 #else
@@ -208,6 +210,7 @@ init_syntax_once ()
 # define ISGRAPH(c) (ISASCII (c) && isprint (c) && !isspace (c))
 #endif
 
+#undef ISPRINT
 #define ISPRINT(c) (ISASCII (c) && isprint (c))
 #define ISDIGIT(c) (ISASCII (c) && isdigit (c))
 #define ISALNUM(c) (ISASCII (c) && isalnum (c))