From 5491da0dfa50a969aca174742c64e114fe068af4 Mon Sep 17 00:00:00 2001 From: Ulrich Drepper Date: Thu, 18 Nov 1999 07:22:53 +0000 Subject: Update. * locale/programs/ld-ctype.c (ctype_output): Correct computation of nelems. Correctly compute index for additional character classes. (ctype_read): Handle charclass and charconv definitions. Also recognize arbitrary strings as mapping names. * locale/programs/ld-time.c (time_finish): Correctly skip over wide character era strings. * locale/lc-time.c (_nl_get_era_entry): Correctly skip era name and format for wide characters. * time/strftime.c: Correctly determine era information for wide wcsftime. * wctrans.c: Fix after removal of second endianess table. * wctype/wctype.h (_ISwbit): Correctly handle bits > 16. Patches by Shinya Hanataka . * wcsmbs/wcwidth.h (internal_wcwidth): Reject non-printable characters. --- wctype/wctype.h | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'wctype/wctype.h') diff --git a/wctype/wctype.h b/wctype/wctype.h index 68f3853c94..378095bcb4 100644 --- a/wctype/wctype.h +++ b/wctype/wctype.h @@ -70,7 +70,10 @@ typedef unsigned long int wctype_t; # define _ISwbit(bit) (1 << (bit)) # else /* __BYTE_ORDER == __LITTLE_ENDIAN */ # define _ISwbit(bit) \ - ((bit) < 8 ? (int) (1UL << (bit) << 24) : (int) (1UL << ((bit) + 8))) + ((bit) < 8 ? (int) (1UL << ((bit) + 24)) \ + : ((bit) < 16 ? (int) (1UL << ((bit) + 8)) \ + : ((bit) < 24 ? (int) (1UL << ((bit) - 8 )) \ + : (int) (1UL << ((bit) - 24 ))))) # endif enum -- cgit v1.2.3