From 085a44122074e67d56dca0c4f88f01d450ae82ad Mon Sep 17 00:00:00 2001 From: Ulrich Drepper Date: Sat, 28 Jul 2007 20:16:07 +0000 Subject: * iconvdata/gbk.c (BODY): Make buf and cp char instead of unsigned char array resp. pointer. * iconvdata/iso-2022-kr.c (BODY): Make buf unsigned char instead of char array. * iconvdata/cns11643.h (cns11643_to_ucs4): Change first argument to const unsigned char **. (ucs4_to_cns11643): Change second argument to unsigned char *. * iconvdata/euc-tw.c (BODY): Change endp type to const unsigned char *. * iconvdata/iso-ir-165.h (ucs4_to_isoir165): Change second argument to unsigned char *. * iconvdata/ibm1008_420.c (LOOP_NEED_FLAGS): Don't define. * iconvdata/iso-2022-cn.c (BODY): Change buf to unsigned char array. * iconvdata/iso-2022-cn-ext.c (BODY): Change buf, tmpbuf, tmp types to unsigned char pointers/arrays instead of char. * iconvdata/jis0201.h (ucs4_to_jisx0201): Change second argument to unsigned char *. * iconvdata/jis0208.h (ucs4_to_jisx0208): Likewise. * iconvdata/jis0212.h: Include assert.h. (ucs4_to_jisx0212): Change second argument to unsigned char *. assert that if cp[0] is not '\0', cp[1] is not '\0' either instead of trying to handle that. * iconvdata/euc-kr.c (euckr_from_ucs4): Initialize also cp[1] to shut up a warning. * iconvdata/euc-jp-ms.c (from_ucs4_lat1, from_ucs4_greek, from_ucs4_cjk, from_ucs4_cjkcpt, from_ucs4_extra): Change type to two dimensional const unsigned char arrays. (BODY): Cast "" to (const unsigned char *) for assignment to cp. Initialize endp to inptr to shut up a warning. --- iconvdata/cns11643.h | 7 ++++--- iconvdata/euc-jp-ms.c | 24 ++++++++++++------------ iconvdata/euc-kr.c | 5 +++-- iconvdata/euc-tw.c | 5 +++-- iconvdata/gbk.c | 4 ++-- iconvdata/ibm1008_420.c | 2 -- iconvdata/iso-2022-cn-ext.c | 10 +++++----- iconvdata/iso-2022-cn.c | 4 ++-- iconvdata/iso-2022-kr.c | 4 ++-- iconvdata/iso-ir-165.h | 4 ++-- iconvdata/jis0201.h | 6 +++--- iconvdata/jis0208.h | 5 +++-- iconvdata/jis0212.h | 16 +++++++--------- 13 files changed, 48 insertions(+), 48 deletions(-) (limited to 'iconvdata') diff --git a/iconvdata/cns11643.h b/iconvdata/cns11643.h index 125f55f228..9d7968c225 100644 --- a/iconvdata/cns11643.h +++ b/iconvdata/cns11643.h @@ -1,5 +1,6 @@ /* Access functions for CNS 11643 handling. - Copyright (C) 1998,1999,2000,2001,2002,2003 Free Software Foundation, Inc. + Copyright (C) 1998,1999,2000,2001,2002,2003,2007 + Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Ulrich Drepper , 1998. @@ -41,7 +42,7 @@ extern const uint32_t __cns11643l15_to_ucs4_tab[]; static inline uint32_t __attribute ((always_inline)) -cns11643_to_ucs4 (const char **s, size_t avail, unsigned char offset) +cns11643_to_ucs4 (const unsigned char **s, size_t avail, unsigned char offset) { unsigned char ch = *(*s); unsigned char ch2; @@ -142,7 +143,7 @@ extern const char __cns11643_from_ucs4p2c_tab[][3]; static inline size_t __attribute ((always_inline)) -ucs4_to_cns11643 (uint32_t wch, char *s, size_t avail) +ucs4_to_cns11643 (uint32_t wch, unsigned char *s, size_t avail) { unsigned int ch = (unsigned int) wch; char buf[2]; diff --git a/iconvdata/euc-jp-ms.c b/iconvdata/euc-jp-ms.c index 1c1cc2be3d..79907bdf5e 100644 --- a/iconvdata/euc-jp-ms.c +++ b/iconvdata/euc-jp-ms.c @@ -1,5 +1,5 @@ /* Mapping tables for EUCJP-MS handling. - Copyright (C) 1998,1999,2000,2001,2003 Free Software Foundation, Inc. + Copyright (C) 1998,1999,2000,2001,2003,2007 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by MORIYAMA Masayuki , 2003. @@ -158,7 +158,7 @@ static const uint16_t cjk_block_ibm[268] = /* 0x8ff4fd */ 0xfa2d, 0x9ed1 }; -static const char from_ucs4_lat1[256][2] = +static const unsigned char from_ucs4_lat1[256][2] = { /* start = 0x0000, end = 0x00ff */ [ 0] = "\x00\x00", [ 1] = "\x01\x00", [ 2] = "\x02\x00", @@ -244,7 +244,7 @@ static const char from_ucs4_lat1[256][2] = [ 255] = "\xab\x73" }; -static const char from_ucs4_greek[864][2] = +static const unsigned char from_ucs4_greek[864][2] = { /* start = 0x0100, end = 0x045f */ [ 0] = "\xaa\x27", [ 1] = "\xab\x27", [ 2] = "\xaa\x25", @@ -351,7 +351,7 @@ static const char from_ucs4_greek[864][2] = [ 860] = "\xa7\x7c", [ 862] = "\xa7\x7d", [ 863] = "\xa7\x7e" }; -static const char from_ucs4_cjk[32662][2] = +static const unsigned char from_ucs4_cjk[32662][2] = { /* start = 0x2010, end = 0x9fa5 */ [ 0] = "\xa1\xbe", [ 4] = "\xa1\xbd", [ 5] = "\xa1\xbd", @@ -4556,7 +4556,7 @@ static const char from_ucs4_cjk[32662][2] = [32661] = "\xed\x63" }; -static const char from_ucs4_cjkcpt[261][2] = +static const unsigned char from_ucs4_cjkcpt[261][2] = { /* start = 0xf929, end = 0xfa2d */ [ 0] = "\xf4\x45", [ 179] = "\xf4\x72", [ 229] = "\xf4\x34", @@ -4573,7 +4573,7 @@ static const char from_ucs4_cjkcpt[261][2] = [ 260] = "\xf4\x7d" }; -static const char from_ucs4_extra[229][2] = +static const unsigned char from_ucs4_extra[229][2] = { /* start = 0xff01, end = 0xffe5 */ [ 0] = "\xa1\xaa", [ 1] = "\xf4\x2a", [ 2] = "\xa1\xf4", @@ -4719,7 +4719,7 @@ static const char from_ucs4_extra[229][2] = } \ else \ { \ - const unsigned char *endp; \ + const unsigned char *endp = inptr; \ int mblen = 1; \ \ if (__builtin_expect(ch == 0x8f, 0)) \ @@ -4758,7 +4758,7 @@ static const char from_ucs4_extra[229][2] = ch = __UNKNOWN_10646_CHAR; \ } \ else \ - ch = __UNKNOWN_10646_CHAR; \ + ch = __UNKNOWN_10646_CHAR; \ } \ else if (ch2 <= 0xfe) \ { \ @@ -4766,7 +4766,7 @@ static const char from_ucs4_extra[229][2] = endp = inptr + mblen; \ } \ else \ - ch = __UNKNOWN_10646_CHAR; \ + ch = __UNKNOWN_10646_CHAR; \ } \ } \ else if (__builtin_expect(0xa1 <= ch, 1)) \ @@ -4804,10 +4804,10 @@ static const char from_ucs4_extra[229][2] = endp = inptr + mblen; \ } \ else \ - ch = __UNKNOWN_10646_CHAR; \ + ch = __UNKNOWN_10646_CHAR; \ } \ else \ - ch = __UNKNOWN_10646_CHAR; \ + ch = __UNKNOWN_10646_CHAR; \ \ if (__builtin_expect (ch, 1) == 0) \ { \ @@ -4880,7 +4880,7 @@ static const char from_ucs4_extra[229][2] = { \ UNICODE_TAG_HANDLER (ch, 4); \ /* Illegal character. */ \ - cp = ""; \ + cp = (const unsigned char *) ""; \ } \ } \ else \ diff --git a/iconvdata/euc-kr.c b/iconvdata/euc-kr.c index 289ff4c419..8e9120b732 100644 --- a/iconvdata/euc-kr.c +++ b/iconvdata/euc-kr.c @@ -1,5 +1,6 @@ /* Mapping tables for EUC-KR handling. - Copyright (C) 1998, 1999, 2000-2002, 2003 Free Software Foundation, Inc. + Copyright (C) 1998, 1999, 2000-2002, 2003, 2007 + Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Jungshik Shin and Ulrich Drepper , 1998. @@ -46,7 +47,7 @@ euckr_from_ucs4 (uint32_t ch, unsigned char *cp) cp[1] |= 0x80; } else - cp[0] = '\0'; + cp[0] = cp[1] = '\0'; } else { diff --git a/iconvdata/euc-tw.c b/iconvdata/euc-tw.c index 7f10af8e93..e6d3e3554d 100644 --- a/iconvdata/euc-tw.c +++ b/iconvdata/euc-tw.c @@ -1,5 +1,6 @@ /* Mapping tables for EUC-TW handling. - Copyright (C) 1998, 1999, 2000-2002, 2003 Free Software Foundation, Inc. + Copyright (C) 1998, 1999, 2000-2002, 2003, 2007 + Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Ulrich Drepper , 1998. @@ -74,7 +75,7 @@ if (ch == 0x8e) \ { \ /* This is code set 2: CNS 11643, planes 1 to 16. */ \ - const char *endp = inptr + 1; \ + const unsigned char *endp = inptr + 1; \ \ ch = cns11643_to_ucs4 (&endp, inend - inptr - 1, 0x80); \ \ diff --git a/iconvdata/gbk.c b/iconvdata/gbk.c index ad8a37412a..c90ad77a75 100644 --- a/iconvdata/gbk.c +++ b/iconvdata/gbk.c @@ -13213,8 +13213,8 @@ static const char __gbk_from_ucs4_tab12[][2] = #define BODY \ { \ uint32_t ch = get32 (inptr); \ - unsigned char buf[2]; \ - const unsigned char *cp = buf; \ + char buf[2]; \ + const char *cp = buf; \ \ if (ch <= L'\x7f') \ /* It's plain ASCII. */ \ diff --git a/iconvdata/ibm1008_420.c b/iconvdata/ibm1008_420.c index 7dd964ab7f..0de95bf78d 100644 --- a/iconvdata/ibm1008_420.c +++ b/iconvdata/ibm1008_420.c @@ -176,7 +176,6 @@ static const char __from_ibm420_to_ibm1008[256] = *outptr++ = ch; \ ++inptr; \ } -#define LOOP_NEED_FLAGS #include @@ -190,7 +189,6 @@ static const char __from_ibm420_to_ibm1008[256] = *outptr++ = ch; \ ++inptr; \ } -#define LOOP_NEED_FLAGS #include /* Now define the toplevel functions. */ diff --git a/iconvdata/iso-2022-cn-ext.c b/iconvdata/iso-2022-cn-ext.c index 3795d24115..fd02d63592 100644 --- a/iconvdata/iso-2022-cn-ext.c +++ b/iconvdata/iso-2022-cn-ext.c @@ -1,5 +1,5 @@ /* Conversion module for ISO-2022-CN-EXT. - Copyright (C) 2000-2002, 2004 Free Software Foundation, Inc. + Copyright (C) 2000-2002, 2004, 2007 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Ulrich Drepper , 2000. @@ -304,8 +304,8 @@ enum { \ /* This is a character from CNS 11643 plane 3 or higher. \ XXX Currently GB7590 and GB13132 are not supported. */ \ - char buf[3]; \ - const char *tmp = buf; \ + unsigned char buf[3]; \ + const unsigned char *tmp = buf; \ \ buf[1] = inptr[2]; \ buf[2] = inptr[3]; \ @@ -426,7 +426,7 @@ enum } \ else \ { \ - char buf[2]; \ + unsigned char buf[2]; \ int used; \ \ if (set == GB2312_set || ((ann & SO_ann) != CNS11643_1_ann \ @@ -456,7 +456,7 @@ enum used = CNS11643_2_set; \ else \ { \ - char tmpbuf[3]; \ + unsigned char tmpbuf[3]; \ \ switch (0) \ { \ diff --git a/iconvdata/iso-2022-cn.c b/iconvdata/iso-2022-cn.c index 4e4ae768df..4825d72f0d 100644 --- a/iconvdata/iso-2022-cn.c +++ b/iconvdata/iso-2022-cn.c @@ -1,5 +1,5 @@ /* Conversion module for ISO-2022-CN. - Copyright (C) 1999, 2000-2002 Free Software Foundation, Inc. + Copyright (C) 1999, 2000-2002, 2007 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Ulrich Drepper , 1999. @@ -263,7 +263,7 @@ enum } \ else \ { \ - char buf[2]; \ + unsigned char buf[2]; \ int used; \ size_t written = 0; \ \ diff --git a/iconvdata/iso-2022-kr.c b/iconvdata/iso-2022-kr.c index 8df101b229..1a16d213a7 100644 --- a/iconvdata/iso-2022-kr.c +++ b/iconvdata/iso-2022-kr.c @@ -1,5 +1,5 @@ /* Conversion module for ISO-2022-KR. - Copyright (C) 1998, 1999, 2000-2002 Free Software Foundation, Inc. + Copyright (C) 1998, 1999, 2000-2002, 2007 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Ulrich Drepper , 1998. @@ -223,7 +223,7 @@ enum } \ else \ { \ - char buf[2]; \ + unsigned char buf[2]; \ size_t written; \ \ written = ucs4_to_ksc5601 (ch, buf, 2); \ diff --git a/iconvdata/iso-ir-165.h b/iconvdata/iso-ir-165.h index b28e45d811..80d1a1c44f 100644 --- a/iconvdata/iso-ir-165.h +++ b/iconvdata/iso-ir-165.h @@ -1,6 +1,6 @@ /* Tables for conversion to and from ISO-IR-165. converting from UCS using gaps. - Copyright (C) 2000, 2003 Free Software Foundation, Inc. + Copyright (C) 2000, 2003, 2007 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Ulrich Drepper , 2000. @@ -72,7 +72,7 @@ extern const char __isoir165_from_tab[]; static inline size_t __attribute ((always_inline)) -ucs4_to_isoir165 (uint32_t wch, char *s, size_t avail) +ucs4_to_isoir165 (uint32_t wch, unsigned char *s, size_t avail) { unsigned int ch = (unsigned int) wch; const char *cp; diff --git a/iconvdata/jis0201.h b/iconvdata/jis0201.h index 391e6d3f7c..6719b7a547 100644 --- a/iconvdata/jis0201.h +++ b/iconvdata/jis0201.h @@ -1,5 +1,5 @@ /* Access functions for JISX0201 conversion. - Copyright (C) 1997, 1998, 1999, 2003 Free Software Foundation, Inc. + Copyright (C) 1997, 1998, 1999, 2003, 2007 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Ulrich Drepper , 1997. @@ -40,9 +40,9 @@ jisx0201_to_ucs4 (char ch) static inline size_t __attribute ((always_inline)) -ucs4_to_jisx0201 (uint32_t wch, char *s) +ucs4_to_jisx0201 (uint32_t wch, unsigned char *s) { - char ch; + unsigned char ch; if (wch == 0xa5) ch = '\x5c'; diff --git a/iconvdata/jis0208.h b/iconvdata/jis0208.h index 329e30f9b2..134b45c749 100644 --- a/iconvdata/jis0208.h +++ b/iconvdata/jis0208.h @@ -1,5 +1,6 @@ /* Access functions for JISX0208 conversion. - Copyright (C) 1997,1998,1999,2000,2003,2005 Free Software Foundation, Inc. + Copyright (C) 1997,1998,1999,2000,2003,2005,2007 + Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Ulrich Drepper , 1997. @@ -75,7 +76,7 @@ jisx0208_to_ucs4 (const unsigned char **s, size_t avail, unsigned char offset) static inline size_t __attribute ((always_inline)) -ucs4_to_jisx0208 (uint32_t wch, char *s, size_t avail) +ucs4_to_jisx0208 (uint32_t wch, unsigned char *s, size_t avail) { unsigned int ch = (unsigned int) wch; const char *cp; diff --git a/iconvdata/jis0212.h b/iconvdata/jis0212.h index ba439e53eb..1f61c258a7 100644 --- a/iconvdata/jis0212.h +++ b/iconvdata/jis0212.h @@ -1,5 +1,5 @@ /* Access functions for JISX0212 conversion. - Copyright (C) 1997, 1998, 1999, 2003 Free Software Foundation, Inc. + Copyright (C) 1997, 1998, 1999, 2003, 2007 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Ulrich Drepper , 1997. @@ -21,6 +21,7 @@ #ifndef _JIS0212_H #define _JIS0212_H 1 +#include #include #include @@ -79,7 +80,7 @@ jisx0212_to_ucs4 (const unsigned char **s, size_t avail, unsigned char offset) static inline size_t __attribute ((always_inline)) -ucs4_to_jisx0212 (uint32_t wch, char *s, size_t avail) +ucs4_to_jisx0212 (uint32_t wch, unsigned char *s, size_t avail) { const struct jisx0212_idx *rp = __jisx0212_from_ucs_idx; unsigned int ch = (unsigned int) wch; @@ -98,14 +99,11 @@ ucs4_to_jisx0212 (uint32_t wch, char *s, size_t avail) return __UNKNOWN_10646_CHAR; s[0] = cp[0]; - if (cp[1] != '\0') - { - if (avail < 2) - return 0; - - s[1] = cp[1]; - } + assert (cp[1] != '\0'); + if (avail < 2) + return 0; + s[1] = cp[1]; return 2; } -- cgit 1.4.1