From 622c36c90db25a2e801536a7f5d11da4e5f14366 Mon Sep 17 00:00:00 2001
From: Joel Brobecker <brobecker@adacore.com>
Date: Mon, 7 Jul 2008 17:08:21 +0000
Subject: [PATCH] safe-ctype.h: Add #include of ctype.h before redefining the
 ctype.h macros.

        * safe-ctype.h: Add #include of ctype.h before redefining
        the ctype.h macros.

From-SVN: r137580
---
 include/ChangeLog    | 5 +++++
 include/safe-ctype.h | 5 ++++-
 2 files changed, 9 insertions(+), 1 deletion(-)

diff --git a/include/ChangeLog b/include/ChangeLog
index 66f6249ce6da..1636e982f79b 100644
--- a/include/ChangeLog
+++ b/include/ChangeLog
@@ -1,3 +1,8 @@
+2008-07-07  Joel Brobecker  <brobecker@adacore.com>
+
+	* safe-ctype.h: Add #include of ctype.h before redefining
+	the ctype.h macros.
+
 2008-07-04  Joel Brobecker  <brobecker@adacore.com>
 
 	* safe-ctype.h: Remove #error when detecting that ctype.h has been
diff --git a/include/safe-ctype.h b/include/safe-ctype.h
index b3e911e07bd4..0266bf1aa269 100644
--- a/include/safe-ctype.h
+++ b/include/safe-ctype.h
@@ -116,7 +116,10 @@ extern const unsigned char  _sch_tolower[256];
    from ctype.h.  Initially, the approach was to produce an error when
    detecting that ctype.h has been included.  But this was causing
    trouble as ctype.h might get indirectly included as a result of
-   including another system header (for instance gnulib's stdint.h).  */
+   including another system header (for instance gnulib's stdint.h).
+   So we include ctype.h here and then immediately redefine its macros.  */
+
+#include <ctype.h>
 #undef isalpha
 #define isalpha(c) do_not_use_isalpha_with_safe_ctype
 #undef isalnum
-- 
GitLab