summaryrefslogtreecommitdiff
path: root/iconv/gconv_trans.c
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2000-11-20 09:16:41 +0000
committerUlrich Drepper <drepper@redhat.com>2000-11-20 09:16:41 +0000
commit17427edd1fc510ae6eb7903cc8664e15500490d6 (patch)
tree0c0e4922611172e6ab93ee76dd882902eeee7d82 /iconv/gconv_trans.c
parent1eab136137fe8b27f7c8ef2d4bee4c07c1821be3 (diff)
downloadglibc-17427edd1fc510ae6eb7903cc8664e15500490d6.tar.gz
Update.
2000-11-20 Ulrich Drepper <drepper@redhat.com> * csu/gmon-start.c: Always have prototype for __gmon_start. * csu/version.c: Add prototypes for __libc_print_version and __libc_main. * iconv/gconv.c: Include gconv_int.h and gconv.h. * iconv/gconv.h (struct __gconv_step): Remove const from __from_name and __to_name. * iconv/gconv_builtin.h: Add ASCII module definitions. * iconv/gconv_conf.c (__gconv_path_elem): Remove const. (add_module): Add cast to avoid warning. Rework construction of strings for new module. * iconv/gconv_db.c (__gconv_alias_compare): Make s1 and s2 const. (derivation_compare): Likewise. * iconv/gconv_dl.c (do_release_shlib): Remove const from nodep. (__gconv_release_shlib): Cast do_release_shlib as parameter for twalk. * iconv/gconv_int.h (__gconv_path_elem): Remove const. (struct gconv_alias): Remove const from fromname and toname. * iconv/gconv_simple.c: Include gconv_builtin.h to get prototypes for loop functions. (internal_ucs4_loop): Use correct const-ness. (ucs4_internal_loop): Likewise. (internal_ucs4le_loop): Likewise. (ucs4le_internal_loop_single): Likewise. * iconv/gconv_trans.c (__gconv_transliterate): Make from_idx, from_tbl, to_idx, to_tbl, winbuf, winbufend const. Change casts in assignments appropriately. (struct known_trans): Remove const from fname. (trans_compare): Make s1 and s2 const. * iconv/loop.c (LOOPFC): Make outend parameter const. Add cast to avoid warning. * iconv/skeleton.c: Remove cast in calls of loop functions. * iconvdata/gconv-modules: Remove US-ASCII definitions. * iconvdata/iso646.c: Remove US_ASCII support. * include/set-hooks.h (DEFINE_HOOK): Also generate prototype. * include/unistd.h: Add __libc_check_standard_fds prototype. * string/bits/string2.h (__mempcpy_args): Add const to casts. * sysdeps/generic/initfini.c: Add prototypes for dummy, _init, and _fini. * sysdeps/generic/libc-start.c: Add prototype for __libc_start_main. * sysdeps/i386/i486/bits/string.h (strcmp): Add const to casts. * sysdeps/unix/sysv/linux/dl-osinfo.h (dl_fatal): Add cast to avoid warning. * sysdeps/unix/sysv/linux/init-first.c: Add prototypes for __libc_init_first and _dl_start. * sysdeps/unix/sysv/linux/mips/clone.S: Fix comments.
Diffstat (limited to 'iconv/gconv_trans.c')
-rw-r--r--iconv/gconv_trans.c42
1 files changed, 23 insertions, 19 deletions
diff --git a/iconv/gconv_trans.c b/iconv/gconv_trans.c
index 4a42a35afd..919d438abe 100644
--- a/iconv/gconv_trans.c
+++ b/iconv/gconv_trans.c
@@ -41,18 +41,18 @@ __gconv_transliterate (struct __gconv_step *step,
{
/* Find out about the locale's transliteration. */
uint_fast32_t size;
- uint32_t *from_idx;
- uint32_t *from_tbl;
- uint32_t *to_idx;
- uint32_t *to_tbl;
- uint32_t *winbuf;
- uint32_t *winbufend;
+ const uint32_t *from_idx;
+ const uint32_t *from_tbl;
+ const uint32_t *to_idx;
+ const uint32_t *to_tbl;
+ const uint32_t *winbuf;
+ const uint32_t *winbufend;
uint_fast32_t low;
uint_fast32_t high;
/* The input buffer. There are actually 4-byte values. */
- winbuf = (uint32_t *) *inbufp;
- winbufend = (uint32_t *) inbufend;
+ winbuf = (const uint32_t *) *inbufp;
+ winbufend = (const uint32_t *) inbufend;
/* If there is no transliteration information in the locale don't do
anything and return the error. */
@@ -61,10 +61,14 @@ __gconv_transliterate (struct __gconv_step *step,
goto no_rules;
/* Get the rest of the values. */
- from_idx = (uint32_t *) _NL_CURRENT (LC_CTYPE, _NL_CTYPE_TRANSLIT_FROM_IDX);
- from_tbl = (uint32_t *) _NL_CURRENT (LC_CTYPE, _NL_CTYPE_TRANSLIT_FROM_TBL);
- to_idx = (uint32_t *) _NL_CURRENT (LC_CTYPE, _NL_CTYPE_TRANSLIT_TO_IDX);
- to_tbl = (uint32_t *) _NL_CURRENT (LC_CTYPE, _NL_CTYPE_TRANSLIT_TO_TBL);
+ from_idx =
+ (const uint32_t *) _NL_CURRENT (LC_CTYPE, _NL_CTYPE_TRANSLIT_FROM_IDX);
+ from_tbl =
+ (const uint32_t *) _NL_CURRENT (LC_CTYPE, _NL_CTYPE_TRANSLIT_FROM_TBL);
+ to_idx =
+ (const uint32_t *) _NL_CURRENT (LC_CTYPE, _NL_CTYPE_TRANSLIT_TO_IDX);
+ to_tbl =
+ (const uint32_t *) _NL_CURRENT (LC_CTYPE, _NL_CTYPE_TRANSLIT_TO_TBL);
/* Test whether there is enough input. */
if (winbuf + 1 > winbufend)
@@ -156,9 +160,9 @@ __gconv_transliterate (struct __gconv_step *step,
if (_NL_CURRENT_WORD (LC_CTYPE, _NL_CTYPE_TRANSLIT_IGNORE_LEN) != 0)
{
int n = _NL_CURRENT_WORD (LC_CTYPE, _NL_CTYPE_TRANSLIT_IGNORE_LEN);
- uint32_t *ranges = (uint32_t *) _NL_CURRENT (LC_CTYPE,
- _NL_CTYPE_TRANSLIT_IGNORE);
- uint32_t wc = *(uint32_t *) (*inbufp);
+ const uint32_t *ranges =
+ (const uint32_t *) _NL_CURRENT (LC_CTYPE, _NL_CTYPE_TRANSLIT_IGNORE);
+ const uint32_t wc = *(const uint32_t *) (*inbufp);
int i;
/* Test whether there is enough input. */
@@ -184,7 +188,7 @@ __gconv_transliterate (struct __gconv_step *step,
/* One last chance: use the default replacement. */
if (_NL_CURRENT_WORD (LC_CTYPE, _NL_CTYPE_TRANSLIT_DEFAULT_MISSING_LEN) != 0)
{
- uint32_t *default_missing = (uint32_t *)
+ const uint32_t *default_missing = (const uint32_t *)
_NL_CURRENT (LC_CTYPE, _NL_CTYPE_TRANSLIT_DEFAULT_MISSING);
const unsigned char *toinptr = (const unsigned char *) default_missing;
uint32_t len = _NL_CURRENT_WORD (LC_CTYPE,
@@ -230,7 +234,7 @@ struct known_trans
/* This structure must remain the first member. */
struct trans_struct info;
- const char *fname;
+ char *fname;
void *handle;
int open_count;
};
@@ -247,8 +251,8 @@ __libc_lock_define_initialized (static, lock);
static int
trans_compare (const void *p1, const void *p2)
{
- struct known_trans *s1 = (struct known_trans *) p1;
- struct known_trans *s2 = (struct known_trans *) p2;
+ const struct known_trans *s1 = (const struct known_trans *) p1;
+ const struct known_trans *s2 = (const struct known_trans *) p2;
return strcmp (s1->info.name, s2->info.name);
}