diff options
-rw-r--r-- | include/ctype.h | 7 | ||||
-rw-r--r-- | libc/sysdeps/linux/common/bits/uClibc_ctype.h | 9 | ||||
-rw-r--r-- | libc/sysdeps/linux/common/bits/uClibc_locale.h | 8 |
3 files changed, 17 insertions, 7 deletions
diff --git a/include/ctype.h b/include/ctype.h index 6933c96c0..e1aea86a2 100644 --- a/include/ctype.h +++ b/include/ctype.h @@ -229,7 +229,9 @@ extern int _tolower(int __c) __THROW; })) #define __isctype(c, type) ((__UCLIBC_CTYPE_B)[(int)(c)] & (__ctype_mask_t)type) -#if !defined __NO_CTYPE && !defined __cplusplus +/* Do not combine in one #if - unifdef tool is not that clever */ +#ifndef __NO_CTYPE +#ifndef __cplusplus # define isalnum(c) __isctype((c), _ISalnum) # define isalpha(c) __isctype((c), _ISalpha) # define iscntrl(c) __isctype((c), _IScntrl) @@ -270,7 +272,8 @@ __NTH (toupper (int __c)) # define _toupper(c) ((int) (__UCLIBC_CTYPE_TOUPPER)[(int) (c)]) # endif -#endif /* Not __NO_CTYPE. */ +#endif /* not __cplusplus */ +#endif /* not __NO_CTYPE */ #if defined __USE_GNU && defined __UCLIBC_HAS_XLOCALE__ diff --git a/libc/sysdeps/linux/common/bits/uClibc_ctype.h b/libc/sysdeps/linux/common/bits/uClibc_ctype.h index 04185cc58..9150b4870 100644 --- a/libc/sysdeps/linux/common/bits/uClibc_ctype.h +++ b/libc/sysdeps/linux/common/bits/uClibc_ctype.h @@ -171,7 +171,9 @@ __END_DECLS //# define __tolower(c) __body(tolower,c) //# define __toupper(c) __body(toupper,c) -# if !defined __NO_CTYPE && !defined __cplusplus +/* Do not combine in one #if - unifdef tool is not that clever */ +# ifndef __NO_CTYPE +# ifndef __cplusplus # define isspace(c) __isspace(c) # define isblank(c) __isblank(c) @@ -190,10 +192,12 @@ __END_DECLS # define toupper(c) __body(toupper,c) # endif +# endif #else /* !_GNUC__ */ -# if !defined __NO_CTYPE && !defined __cplusplus +# ifndef __NO_CTYPE +# ifndef __cplusplus /* These macros should be safe from side effects! * (not all __C_xxx macros are) */ @@ -205,6 +209,7 @@ __END_DECLS # define isgraph(c) __C_isgraph(c) # endif +# endif #endif /* __GNUC__ */ /**********************************************************************/ diff --git a/libc/sysdeps/linux/common/bits/uClibc_locale.h b/libc/sysdeps/linux/common/bits/uClibc_locale.h index 532ab8244..ad80d8f83 100644 --- a/libc/sysdeps/linux/common/bits/uClibc_locale.h +++ b/libc/sysdeps/linux/common/bits/uClibc_locale.h @@ -98,7 +98,8 @@ enum { * In particular, C/POSIX locale is '#' + "\x80\x01"}*LC_ALL + nul. */ -#if defined _LIBC && !defined __UCLIBC_GEN_LOCALE /* && (defined IS_IN_libc || defined NOT_IN_libc) */ +#ifdef _LIBC +#ifndef __UCLIBC_GEN_LOCALE /* && (defined IS_IN_libc || defined NOT_IN_libc) */ typedef struct { uint16_t num_weights; uint16_t num_starters; @@ -314,6 +315,7 @@ typedef struct __uclibc_locale_struct { extern __uclibc_locale_t __global_locale_data; extern struct __uclibc_locale_struct * __global_locale; +#endif /* !__UCLIBC_GEN_LOCALE */ #endif /* _LIBC */ typedef struct __uclibc_locale_struct *__locale_t; @@ -321,8 +323,8 @@ typedef struct __uclibc_locale_struct *__locale_t; /* if we need to leave only _LIBC, then attribute_hidden is not usable */ #if defined _LIBC && (defined IS_IN_libc || defined NOT_IN_libc) extern int __locale_mbrtowc_l(wchar_t *__restrict dst, - const char *__restrict src, - __locale_t loc ) attribute_hidden; + const char *__restrict src, + __locale_t loc) attribute_hidden; #endif #ifdef L_setlocale |