diff options
author | Ulrich Drepper <drepper@redhat.com> | 1999-01-29 09:01:50 +0000 |
---|---|---|
committer | Ulrich Drepper <drepper@redhat.com> | 1999-01-29 09:01:50 +0000 |
commit | b7398be5f8ce235f78cf92b21c39f00c150ffe68 (patch) | |
tree | a73514b50603e2de3e567f47677e9fc514cc1c43 /locale/broken_cur_max.c | |
parent | 8163845fdab02ba1943b608b635873cee50df676 (diff) | |
download | glibc-b7398be5f8ce235f78cf92b21c39f00c150ffe68.tar glibc-b7398be5f8ce235f78cf92b21c39f00c150ffe68.tar.gz glibc-b7398be5f8ce235f78cf92b21c39f00c150ffe68.tar.bz2 glibc-b7398be5f8ce235f78cf92b21c39f00c150ffe68.zip |
Update.
1999-01-28 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
* sysdeps/wordsize-32/stdint.h (INT8_C, INT16_C, INT32_C, INT64_C,
UINT8_C, UINT16_C, UINT32_C, UINT64_C): Remove casts, they must be
integer constants. Use ## directly instead of __CONCAT so that
the suffix string is not expanded as a macro.
* sysdeps/wordsize-64/stdint.h (INT8_C, INT16_C, INT32_C, INT64_C,
UINT8_C, UINT16_C, UINT32_C, UINT64_C): Likewise.
(INT64_MIN, INT64_MAX, UINT64_MAX, INT_LEAST64_MIN,
INT_LEAST64_MAX, UINT_LEAST64_MAX, INT_FAST16_MIN, INT_FAST32_MIN,
INT_FAST64_MIN, INT_FAST16_MAX, INT_FAST32_MAX, INT_FAST64_MAX,
UINT_FAST16_MAX, UINT_FAST32_MAX, UINT_FAST64_MAX, INTMAX_MIN,
INTMAX_MAX, UINTMAX_MAX): Define as long constants, not long long.
1999-01-28 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
* locale/mb_cur_max.c (__ctype_get_mb_cur_max): Correct return
type to size_t.
* locale/broken_cur_max.c (__ctype_get_mb_cur_max): Likewise.
* stdlib/stdlib.h (__ctype_get_mb_cur_max): Likewise.
1999-01-27 Philip Blundell <pb@nexus.co.uk>
* sysdeps/unix/sysv/linux/arm/vfork.S: Deleted.
Diffstat (limited to 'locale/broken_cur_max.c')
-rw-r--r-- | locale/broken_cur_max.c | 16 |
1 files changed, 8 insertions, 8 deletions
diff --git a/locale/broken_cur_max.c b/locale/broken_cur_max.c index 0374f84a57..68aec7fd93 100644 --- a/locale/broken_cur_max.c +++ b/locale/broken_cur_max.c @@ -1,6 +1,6 @@ /* Return number of characters in multibyte representation for current character set. - Copyright (C) 1996 Free Software Foundation, Inc. + Copyright (C) 1996, 1999 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Ulrich Drepper <drepper@cygnus.com>, 1996. @@ -25,26 +25,26 @@ #include "localeinfo.h" -/* This is a gross hack to get borken programs running. +/* This is a gross hack to get broken programs running. ISO C provides no mean to find out how many bytes the wide character representation really uses. But it defines MB_CUR_LEN to return the information for the multi-byte character representation. Many programmers don't know the difference between the two and - thing this means the same. But assuming all characters have a size + think this means the same. But assuming all characters have a size of MB_CUR_LEN after they have been processed by `mbrtowc' is wrong. - Instead the maximal number of character used for the conversion is - MB_CURLEN. + Instead the maximum number of characters used for the conversion is + MB_CUR_LEN. It is known that some Motif applications have this problem. To cure this one has to make sure the glibc uses the function in this file instead of the one in locale/mb_cur_max.c. This can either be done by linking with this file or by using the LD_PRELOAD feature of the dynamic linker. */ -int +size_t __ctype_get_mb_cur_max (void) { - int correct_value = _NL_CURRENT_WORD (LC_CTYPE, _NL_CTYPE_MB_CUR_MAX); + size_t correct_value = _NL_CURRENT_WORD (LC_CTYPE, _NL_CTYPE_MB_CUR_MAX); - return ((int []) { 1, 1, 1, 2, 2, 3, 4 })[correct_value]; + return ((size_t []) { 1, 1, 1, 2, 2, 3, 4 })[correct_value]; } |