summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--include/ctype.h24
-rw-r--r--libc/misc/ctype/ctype.c9
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__ */