diff --git a/include/ctype.h b/include/ctype.h index a6f44df2..a7d5db5d 100644 --- a/include/ctype.h +++ b/include/ctype.h @@ -22,6 +22,7 @@ int isxdigit(int); int tolower(int); int toupper(int); +#ifndef __cplusplus static __inline int __isspace(int _c) { return _c == ' ' || (unsigned)_c-'\t' < 5; @@ -34,6 +35,7 @@ static __inline int __isspace(int _c) #define isprint(a) (((unsigned)(a)-0x20) < 0x5f) #define isgraph(a) (((unsigned)(a)-0x21) < 0x5e) #define isspace(a) __isspace(a) +#endif #if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \ diff --git a/include/wchar.h b/include/wchar.h index 52da6395..ad727a86 100644 --- a/include/wchar.h +++ b/include/wchar.h @@ -172,9 +172,12 @@ int iswctype(wint_t, wctype_t); wint_t towlower(wint_t); wint_t towupper(wint_t); wctype_t wctype(const char *); + +#ifndef __cplusplus #undef iswdigit #define iswdigit(a) ((unsigned)(a)-'0' < 10) #endif +#endif #ifdef __cplusplus } diff --git a/include/wctype.h b/include/wctype.h index 3ac24f13..3da12195 100644 --- a/include/wctype.h +++ b/include/wctype.h @@ -43,8 +43,10 @@ wint_t towupper(wint_t); wctrans_t wctrans(const char *); wctype_t wctype(const char *); +#ifndef __cplusplus #undef iswdigit #define iswdigit(a) (((unsigned)(a)-L'0') < 10) +#endif #if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \ || defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) || defined(_BSD_SOURCE)