diff options
Diffstat (limited to 'ctype')
-rw-r--r-- | ctype/ctype-info.c | 45 |
1 files changed, 38 insertions, 7 deletions
diff --git a/ctype/ctype-info.c b/ctype/ctype-info.c index 18d88d9534..57f1256572 100644 --- a/ctype/ctype-info.c +++ b/ctype/ctype-info.c @@ -24,10 +24,23 @@ extern const char _nl_C_LC_CTYPE_class[]; extern const char _nl_C_LC_CTYPE_class32[]; extern const char _nl_C_LC_CTYPE_toupper[]; extern const char _nl_C_LC_CTYPE_tolower[]; -extern const char _nl_C_LC_CTYPE_names[]; +extern const char _nl_C_LC_CTYPE_class_upper[]; +extern const char _nl_C_LC_CTYPE_class_lower[]; +extern const char _nl_C_LC_CTYPE_class_alpha[]; +extern const char _nl_C_LC_CTYPE_class_digit[]; +extern const char _nl_C_LC_CTYPE_class_xdigit[]; +extern const char _nl_C_LC_CTYPE_class_space[]; +extern const char _nl_C_LC_CTYPE_class_print[]; +extern const char _nl_C_LC_CTYPE_class_graph[]; +extern const char _nl_C_LC_CTYPE_class_blank[]; +extern const char _nl_C_LC_CTYPE_class_cntrl[]; +extern const char _nl_C_LC_CTYPE_class_punct[]; +extern const char _nl_C_LC_CTYPE_class_alnum[]; +extern const char _nl_C_LC_CTYPE_map_toupper[]; +extern const char _nl_C_LC_CTYPE_map_tolower[]; extern const char _nl_C_LC_CTYPE_width[]; -#define b(t,x,o) (((const t *) _nl_C_LC_CTYPE_##x) + o); +#define b(t,x,o) (((const t *) _nl_C_LC_CTYPE_##x) + o) const unsigned short int *__ctype_b = b (unsigned short int, class, 128); const __uint32_t *__ctype32_b = b (__uint32_t, class32, 0); @@ -35,8 +48,26 @@ const __int32_t *__ctype_tolower = b (__int32_t, tolower, 128); const __int32_t *__ctype_toupper = b (__int32_t, toupper, 128); const __uint32_t *__ctype32_tolower = b (__uint32_t, tolower, 128); const __uint32_t *__ctype32_toupper = b (__uint32_t, toupper, 128); -const __uint32_t *__ctype_names = b (__uint32_t, names, 0); -const unsigned char *__ctype_width = b (unsigned char, width, 0); -const char *__ctype32_wctype[12]; -const char *__ctype32_wctrans[2]; -const char *__ctype32_width; +const __uint32_t *__ctype_names; +const unsigned char *__ctype_width; +const char *__ctype32_wctype[12] = +{ + b(char, class_upper, 32), + b(char, class_lower, 32), + b(char, class_alpha, 32), + b(char, class_digit, 32), + b(char, class_xdigit, 32), + b(char, class_space, 32), + b(char, class_print, 32), + b(char, class_graph, 32), + b(char, class_blank, 32), + b(char, class_cntrl, 32), + b(char, class_punct, 32), + b(char, class_alnum, 32) +}; +const char *__ctype32_wctrans[2] = +{ + b(char, map_toupper, 0), + b(char, map_tolower, 0) +}; +const char *__ctype32_width = b (char, width, 0); |