This is the mail archive of the
newlib@sourceware.org
mailing list for the newlib project.
[PATCH v3 02/24] Feature test macros overhaul: ctype.h
- From: Yaakov Selkowitz <yselkowi at redhat dot com>
- To: newlib at sourceware dot org
- Date: Mon, 14 Mar 2016 22:10:09 -0500
- Subject: [PATCH v3 02/24] Feature test macros overhaul: ctype.h
- Authentication-results: sourceware.org; auth=none
- References: <1458011431-9460-1-git-send-email-yselkowi at redhat dot com>
Simplify C99 test for isblank. isascii and toascii are BSD|SVID|XSI.
Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
---
newlib/libc/include/ctype.h | 13 +++++++------
1 file changed, 7 insertions(+), 6 deletions(-)
diff --git a/newlib/libc/include/ctype.h b/newlib/libc/include/ctype.h
index 56ad5ab..58a1238 100644
--- a/newlib/libc/include/ctype.h
+++ b/newlib/libc/include/ctype.h
@@ -2,6 +2,7 @@
#define _CTYPE_H_
#include "_ansi.h"
+#include <sys/cdefs.h>
_BEGIN_STD_C
@@ -19,11 +20,11 @@ int _EXFUN(isxdigit,(int __c));
int _EXFUN(tolower, (int __c));
int _EXFUN(toupper, (int __c));
-#if !defined(__STRICT_ANSI__) || defined(__cplusplus) || __STDC_VERSION__ >= 199901L
+#if __ISO_C_VISIBLE >= 1999
int _EXFUN(isblank, (int __c));
#endif
-#ifndef __STRICT_ANSI__
+#if __MISC_VISIBLE || __XSI_VISIBLE
int _EXFUN(isascii, (int __c));
int _EXFUN(toascii, (int __c));
#define _tolower(__c) ((unsigned char)(__c) - 'A' + 'a')
@@ -68,8 +69,7 @@ extern __IMPORT char *__ctype_ptr__;
#define isgraph(__c) (__ctype_lookup(__c)&(_P|_U|_L|_N))
#define iscntrl(__c) (__ctype_lookup(__c)&_C)
-#if defined(__GNUC__) && \
- (!defined(__STRICT_ANSI__) || __STDC_VERSION__ >= 199901L)
+#if defined(__GNUC__) && __ISO_C_VISIBLE >= 1999
#define isblank(__c) \
__extension__ ({ __typeof__ (__c) __x = (__c); \
(__ctype_lookup(__x)&_B) || (int) (__x) == '\t';})
@@ -98,13 +98,14 @@ extern __IMPORT char *__ctype_ptr__;
(void) __ctype_ptr__[__x]; (tolower) (__x);})
# endif /* _MB_EXTENDED_CHARSETS* */
# endif /* __GNUC__ */
-#endif /* !__cplusplus */
-#ifndef __STRICT_ANSI__
+#if __MISC_VISIBLE || __XSI_VISIBLE
#define isascii(__c) ((unsigned)(__c)<=0177)
#define toascii(__c) ((__c)&0177)
#endif
+#endif /* !__cplusplus */
+
/* For C++ backward-compatibility only. */
extern __IMPORT _CONST char _ctype_[];
--
2.7.0