diff options
-rw-r--r-- | include/ctype.h | 24 | ||||
-rw-r--r-- | libc/misc/ctype/ctype.c | 9 |
2 files changed, 28 insertions, 5 deletions
diff --git a/include/ctype.h b/include/ctype.h index 3c1b0c3c7..a2e457806 100644 --- a/include/ctype.h +++ b/include/ctype.h @@ -161,17 +161,27 @@ __BEGIN_NAMESPACE_STD which return nonzero iff C has CHARACTERISTIC. For the meaning of the characteristic names, see the `enum' above. */ __exctype (isalnum); +libc_hidden_proto(isalnum) __exctype (isalpha); +libc_hidden_proto(isalpha) __exctype (iscntrl); +libc_hidden_proto(iscntrl) __exctype (isdigit); +libc_hidden_proto(isdigit) __exctype (islower); +libc_hidden_proto(islower) __exctype (isgraph); +libc_hidden_proto(isgraph) __exctype (isprint); +libc_hidden_proto(isprint) __exctype (ispunct); +libc_hidden_proto(ispunct) __exctype (isspace); libc_hidden_proto(isspace) __exctype (isupper); +libc_hidden_proto(isupper) __exctype (isxdigit); +libc_hidden_proto(isxdigit) /* Return the lowercase version of C. */ @@ -190,6 +200,7 @@ __END_NAMESPACE_STD __BEGIN_NAMESPACE_C99 __exctype (isblank); +libc_hidden_proto(isblank) __END_NAMESPACE_C99 #endif @@ -310,20 +321,29 @@ __NTH (toupper (int __c)) which return nonzero iff C has CHARACTERISTIC. For the meaning of the characteristic names, see the `enum' above. */ __exctype_l (isalnum_l); +libc_hidden_proto(isalnum_l) __exctype_l (isalpha_l); +libc_hidden_proto(isalpha_l) __exctype_l (iscntrl_l); +libc_hidden_proto(iscntrl_l) __exctype_l (isdigit_l); +libc_hidden_proto(isdigit_l) __exctype_l (islower_l); +libc_hidden_proto(islower_l) __exctype_l (isgraph_l); +libc_hidden_proto(isgraph_l) __exctype_l (isprint_l); +libc_hidden_proto(isprint_l) __exctype_l (ispunct_l); +libc_hidden_proto(ispunct_l) __exctype_l (isspace_l); libc_hidden_proto(isspace_l) __exctype_l (isupper_l); +libc_hidden_proto(isupper_l) __exctype_l (isxdigit_l); - +libc_hidden_proto(isxdigit_l) __exctype_l (isblank_l); - +libc_hidden_proto(isblank_l) /* Return the lowercase version of C in locale L. */ extern int __tolower_l (int __c, __locale_t __l) __THROW; diff --git a/libc/misc/ctype/ctype.c b/libc/misc/ctype/ctype.c index 4b62fc34c..1ae2f8de5 100644 --- a/libc/misc/ctype/ctype.c +++ b/libc/misc/ctype/ctype.c @@ -89,14 +89,17 @@ #undef CTYPE_NAME #undef ISCTYPE #undef CTYPE_ALIAS +#undef CTYPE_DEF #ifdef __UCLIBC_DO_XLOCALE #define CTYPE_NAME(X) __is ## X ## _l #define ISCTYPE(C,F) __isctype_l( C, F, locale_arg) -#define CTYPE_ALIAS(NAME) strong_alias( __is ## NAME ## _l , is ## NAME ## _l) +#define CTYPE_ALIAS(NAME) strong_alias( __is ## NAME ## _l , is ## NAME ## _l) +#define CTYPE_DEF(NAME) libc_hidden_def(is ## NAME ## _l) #else #define CTYPE_NAME(X) is ## X #define ISCTYPE(C,F) __isctype( C, F ) #define CTYPE_ALIAS(NAME) +#define CTYPE_DEF(NAME) libc_hidden_def(is ## NAME) #endif @@ -142,9 +145,9 @@ int CTYPE_NAME(NAME) (int c __LOCALE_PARAM ) \ { \ CTYPE_BODY(NAME,c,PASTE2(_IS,NAME)) \ } \ +CTYPE_DEF(NAME) \ CTYPE_ALIAS(NAME) - #else /* __UCLIBC_HAS_CTYPE_TABLES__ */ #define C_MACRO(X) PASTE2(__C_is,X)(c) @@ -220,7 +223,7 @@ int CTYPE_NAME(digit) (int C __LOCALE_PARAM) return __isdigit_int(C); /* C could be invalid. */ #endif } - +CTYPE_DEF(digit) CTYPE_ALIAS(digit) #else /* __UCLIBC_HAS_CTYPE_TABLES__ */ |