mirror of
https://sourceware.org/git/glibc.git
synced 2024-11-27 03:33:33 +08:00
* locale/xlocale.c (_nl_C_locobj): Mark as const.
* include/locale.h: Define _nl_C_locobj_ptr. * iconv/gconv_charset.h: Use _nl_C_locobj_ptr instead of using pointer to _nl_C_locobj because we also need a cast. * iconv/gconv_conf.c: Likewise. * iconv/gconv_int.h: Likewise. * iconv/gconv_open.c: Likewise. * locale/duplocale.c: Likewise. * locale/freelocale.c: Likewise. * locale/newlocale.c: Likewise. * misc/syslog.c: Likewise. * stdlib/strtod_l.c: Likewise. * sysdeps/unix/sysv/linux/getloadavg.c: Likewise.
This commit is contained in:
parent
808e0190f7
commit
4b5b009cc3
14
ChangeLog
14
ChangeLog
@ -1,5 +1,19 @@
|
||||
2005-12-20 Ulrich Drepper <drepper@redhat.com>
|
||||
|
||||
* locale/xlocale.c (_nl_C_locobj): Mark as const.
|
||||
* include/locale.h: Define _nl_C_locobj_ptr.
|
||||
* iconv/gconv_charset.h: Use _nl_C_locobj_ptr instead of using pointer
|
||||
to _nl_C_locobj because we also need a cast.
|
||||
* iconv/gconv_conf.c: Likewise.
|
||||
* iconv/gconv_int.h: Likewise.
|
||||
* iconv/gconv_open.c: Likewise.
|
||||
* locale/duplocale.c: Likewise.
|
||||
* locale/freelocale.c: Likewise.
|
||||
* locale/newlocale.c: Likewise.
|
||||
* misc/syslog.c: Likewise.
|
||||
* stdlib/strtod_l.c: Likewise.
|
||||
* sysdeps/unix/sysv/linux/getloadavg.c: Likewise.
|
||||
|
||||
* csu/dso_handle.c (__dso_handle): Mark as const.
|
||||
|
||||
* intl/plural-exp.c (GERMANIC_PLURAL): Mark as const.
|
||||
|
@ -1,5 +1,5 @@
|
||||
/* Charset name normalization.
|
||||
Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
|
||||
Copyright (C) 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
Contributed by Ulrich Drepper <drepper@cygnus.com>, 2001.
|
||||
|
||||
@ -29,9 +29,9 @@ strip (char *wp, const char *s)
|
||||
|
||||
while (*s != '\0')
|
||||
{
|
||||
if (__isalnum_l (*s, &_nl_C_locobj)
|
||||
if (__isalnum_l (*s, _nl_C_locobj_ptr)
|
||||
|| *s == '_' || *s == '-' || *s == '.' || *s == ',')
|
||||
*wp++ = __toupper_l (*s, &_nl_C_locobj);
|
||||
*wp++ = __toupper_l (*s, _nl_C_locobj_ptr);
|
||||
else if (*s == '/')
|
||||
{
|
||||
if (++slash_count == 3)
|
||||
@ -52,7 +52,7 @@ static inline char * __attribute__ ((unused, always_inline))
|
||||
upstr (char *dst, const char *str)
|
||||
{
|
||||
char *cp = dst;
|
||||
while ((*cp++ = __toupper_l (*str++, &_nl_C_locobj)) != '\0')
|
||||
while ((*cp++ = __toupper_l (*str++, _nl_C_locobj_ptr)) != '\0')
|
||||
/* nothing */;
|
||||
return dst;
|
||||
}
|
||||
|
@ -133,20 +133,20 @@ add_alias (char *rp, void *modules)
|
||||
struct gconv_alias *new_alias;
|
||||
char *from, *to, *wp;
|
||||
|
||||
while (__isspace_l (*rp, &_nl_C_locobj))
|
||||
while (__isspace_l (*rp, _nl_C_locobj_ptr))
|
||||
++rp;
|
||||
from = wp = rp;
|
||||
while (*rp != '\0' && !__isspace_l (*rp, &_nl_C_locobj))
|
||||
*wp++ = __toupper_l (*rp++, &_nl_C_locobj);
|
||||
while (*rp != '\0' && !__isspace_l (*rp, _nl_C_locobj_ptr))
|
||||
*wp++ = __toupper_l (*rp++, _nl_C_locobj_ptr);
|
||||
if (*rp == '\0')
|
||||
/* There is no `to' string on the line. Ignore it. */
|
||||
return;
|
||||
*wp++ = '\0';
|
||||
to = ++rp;
|
||||
while (__isspace_l (*rp, &_nl_C_locobj))
|
||||
while (__isspace_l (*rp, _nl_C_locobj_ptr))
|
||||
++rp;
|
||||
while (*rp != '\0' && !__isspace_l (*rp, &_nl_C_locobj))
|
||||
*wp++ = __toupper_l (*rp++, &_nl_C_locobj);
|
||||
while (*rp != '\0' && !__isspace_l (*rp, _nl_C_locobj_ptr))
|
||||
*wp++ = __toupper_l (*rp++, _nl_C_locobj_ptr);
|
||||
if (to == wp)
|
||||
/* No `to' string, ignore the line. */
|
||||
return;
|
||||
@ -254,30 +254,30 @@ add_module (char *rp, const char *directory, size_t dir_len, void **modules,
|
||||
int need_ext;
|
||||
int cost_hi;
|
||||
|
||||
while (__isspace_l (*rp, &_nl_C_locobj))
|
||||
while (__isspace_l (*rp, _nl_C_locobj_ptr))
|
||||
++rp;
|
||||
from = rp;
|
||||
while (*rp != '\0' && !__isspace_l (*rp, &_nl_C_locobj))
|
||||
while (*rp != '\0' && !__isspace_l (*rp, _nl_C_locobj_ptr))
|
||||
{
|
||||
*rp = __toupper_l (*rp, &_nl_C_locobj);
|
||||
*rp = __toupper_l (*rp, _nl_C_locobj_ptr);
|
||||
++rp;
|
||||
}
|
||||
if (*rp == '\0')
|
||||
return;
|
||||
*rp++ = '\0';
|
||||
to = wp = rp;
|
||||
while (__isspace_l (*rp, &_nl_C_locobj))
|
||||
while (__isspace_l (*rp, _nl_C_locobj_ptr))
|
||||
++rp;
|
||||
while (*rp != '\0' && !__isspace_l (*rp, &_nl_C_locobj))
|
||||
*wp++ = __toupper_l (*rp++, &_nl_C_locobj);
|
||||
while (*rp != '\0' && !__isspace_l (*rp, _nl_C_locobj_ptr))
|
||||
*wp++ = __toupper_l (*rp++, _nl_C_locobj_ptr);
|
||||
if (*rp == '\0')
|
||||
return;
|
||||
*wp++ = '\0';
|
||||
do
|
||||
++rp;
|
||||
while (__isspace_l (*rp, &_nl_C_locobj));
|
||||
while (__isspace_l (*rp, _nl_C_locobj_ptr));
|
||||
module = wp;
|
||||
while (*rp != '\0' && !__isspace_l (*rp, &_nl_C_locobj))
|
||||
while (*rp != '\0' && !__isspace_l (*rp, _nl_C_locobj_ptr))
|
||||
*wp++ = *rp++;
|
||||
if (*rp == '\0')
|
||||
{
|
||||
@ -392,7 +392,7 @@ read_conf_file (const char *filename, const char *directory, size_t dir_len,
|
||||
if (rp[n - 1] == '\n')
|
||||
rp[n - 1] = '\0';
|
||||
|
||||
while (__isspace_l (*rp, &_nl_C_locobj))
|
||||
while (__isspace_l (*rp, _nl_C_locobj_ptr))
|
||||
++rp;
|
||||
|
||||
/* If this is an empty line go on with the next one. */
|
||||
@ -400,7 +400,7 @@ read_conf_file (const char *filename, const char *directory, size_t dir_len,
|
||||
continue;
|
||||
|
||||
word = rp;
|
||||
while (*rp != '\0' && !__isspace_l (*rp, &_nl_C_locobj))
|
||||
while (*rp != '\0' && !__isspace_l (*rp, _nl_C_locobj_ptr))
|
||||
++rp;
|
||||
|
||||
if (rp - word == sizeof ("alias") - 1
|
||||
|
@ -148,7 +148,7 @@ __libc_lock_define (extern, __gconv_lock);
|
||||
tmp = result = __alloca (cp - (str) + 3 + suffix_len); \
|
||||
cp = (str); \
|
||||
while (*cp != '\0') \
|
||||
*tmp++ = __toupper_l (*cp++, &_nl_C_locobj); \
|
||||
*tmp++ = __toupper_l (*cp++, _nl_C_locobj_ptr); \
|
||||
if (cnt < 2) \
|
||||
{ \
|
||||
*tmp++ = '/'; \
|
||||
|
@ -67,7 +67,7 @@ __gconv_open (const char *toset, const char *fromset, __gconv_t *handle,
|
||||
tok = __strtok_r (tok, ",", &ptr);
|
||||
while (tok != NULL)
|
||||
{
|
||||
if (__strcasecmp_l (tok, "TRANSLIT", &_nl_C_locobj) == 0)
|
||||
if (__strcasecmp_l (tok, "TRANSLIT", _nl_C_locobj_ptr) == 0)
|
||||
{
|
||||
/* It's the builtin transliteration handling. We only
|
||||
support it for working on the internal encoding. */
|
||||
@ -101,7 +101,7 @@ __gconv_open (const char *toset, const char *fromset, __gconv_t *handle,
|
||||
lastp->next = newp;
|
||||
}
|
||||
}
|
||||
else if (__strcasecmp_l (tok, "IGNORE", &_nl_C_locobj) == 0)
|
||||
else if (__strcasecmp_l (tok, "IGNORE", _nl_C_locobj_ptr) == 0)
|
||||
/* Set the flag to ignore all errors. */
|
||||
conv_flags |= __GCONV_IGNORE_ERRORS;
|
||||
else
|
||||
@ -115,7 +115,7 @@ __gconv_open (const char *toset, const char *fromset, __gconv_t *handle,
|
||||
for (runp = trans; runp != NULL; runp = runp->next)
|
||||
if (runp->name != NULL
|
||||
&& __strcasecmp_l (tok, runp->name,
|
||||
&_nl_C_locobj) == 0)
|
||||
_nl_C_locobj_ptr) == 0)
|
||||
break;
|
||||
else
|
||||
lastp = runp;
|
||||
@ -235,7 +235,7 @@ __gconv_open (const char *toset, const char *fromset, __gconv_t *handle,
|
||||
for (runp = trans; runp != NULL; runp = runp->next)
|
||||
for (n = 0; n < runp->ncsnames; ++n)
|
||||
if (__strcasecmp_l (steps[cnt].__from_name,
|
||||
runp->csnames[n], &_nl_C_locobj) == 0)
|
||||
runp->csnames[n], _nl_C_locobj_ptr) == 0)
|
||||
{
|
||||
void *data = NULL;
|
||||
|
||||
|
@ -11,7 +11,8 @@ libc_hidden_proto (setlocale)
|
||||
extern struct loaded_l10nfile *_nl_locale_file_list[] attribute_hidden;
|
||||
|
||||
/* Locale object for C locale. */
|
||||
extern struct __locale_struct _nl_C_locobj attribute_hidden;
|
||||
extern const struct __locale_struct _nl_C_locobj attribute_hidden;
|
||||
#define _nl_C_locobj_ptr ((struct __locale_struct *) &_nl_C_locobj)
|
||||
|
||||
/* Now define the internal interfaces. */
|
||||
extern struct lconv *__localeconv (void);
|
||||
|
@ -1,5 +1,5 @@
|
||||
/* Duplicate handle for selection of locales.
|
||||
Copyright (C) 1997, 2000, 2001, 2002 Free Software Foundation, Inc.
|
||||
Copyright (C) 1997, 2000, 2001, 2002, 2005 Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
Contributed by Ulrich Drepper <drepper@cygnus.com>, 1997.
|
||||
|
||||
@ -34,7 +34,7 @@ __locale_t
|
||||
__duplocale (__locale_t dataset)
|
||||
{
|
||||
/* This static object is returned for newlocale (LC_ALL_MASK, "C"). */
|
||||
if (dataset == &_nl_C_locobj)
|
||||
if (dataset == _nl_C_locobj_ptr)
|
||||
return dataset;
|
||||
|
||||
__locale_t result;
|
||||
|
@ -1,5 +1,5 @@
|
||||
/* Free data allocated by a call to setlocale_r
|
||||
Copyright (C) 1996, 1997, 2000, 2002 Free Software Foundation, Inc.
|
||||
Copyright (C) 1996, 1997, 2000, 2002, 2005 Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
Contributed by Ulrich Drepper <drepper@cygnus.com>, 1996.
|
||||
|
||||
@ -35,7 +35,7 @@ __freelocale (__locale_t dataset)
|
||||
int cnt;
|
||||
|
||||
/* This static object is returned for newlocale (LC_ALL_MASK, "C"). */
|
||||
if (dataset == &_nl_C_locobj)
|
||||
if (dataset == _nl_C_locobj_ptr)
|
||||
return;
|
||||
|
||||
/* We modify global data (the usage counts). */
|
||||
|
@ -1,5 +1,5 @@
|
||||
/* Return a reference to locale information record.
|
||||
Copyright (C) 1996, 1997, 1999, 2000, 2001, 2002, 2004
|
||||
Copyright (C) 1996, 1997, 1999, 2000, 2001, 2002, 2004, 2005
|
||||
Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
Contributed by Ulrich Drepper <drepper@cygnus.com>, 1996.
|
||||
@ -66,7 +66,7 @@ __newlocale (int category_mask, const char *locale, __locale_t base)
|
||||
if (locale == NULL)
|
||||
ERROR_RETURN;
|
||||
|
||||
if (base == &_nl_C_locobj)
|
||||
if (base == _nl_C_locobj_ptr)
|
||||
/* We're to modify BASE, returned for a previous call with "C".
|
||||
We can't really modify the read-only structure, so instead
|
||||
start over by copying it. */
|
||||
@ -75,7 +75,7 @@ __newlocale (int category_mask, const char *locale, __locale_t base)
|
||||
if ((base == NULL || category_mask == (1 << __LC_LAST) - 1 - (1 << LC_ALL))
|
||||
&& (category_mask == 0 || !strcmp (locale, "C")))
|
||||
/* Asking for the "C" locale needn't allocate a new object. */
|
||||
return &_nl_C_locobj;
|
||||
return _nl_C_locobj_ptr;
|
||||
|
||||
/* Allocate memory for the result. */
|
||||
if (base != NULL)
|
||||
|
@ -1,5 +1,5 @@
|
||||
/* C locale object.
|
||||
Copyright (C) 2001, 2002 Free Software Foundation, Inc.
|
||||
Copyright (C) 2001, 2002, 2005 Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
Contributed by Ulrich Drepper <drepper@cygnus.com>, 2001.
|
||||
|
||||
@ -32,7 +32,7 @@ extern const char _nl_C_LC_CTYPE_toupper[] attribute_hidden;
|
||||
extern const char _nl_C_LC_CTYPE_tolower[] attribute_hidden;
|
||||
|
||||
|
||||
struct __locale_struct _nl_C_locobj attribute_hidden =
|
||||
const struct __locale_struct _nl_C_locobj attribute_hidden =
|
||||
{
|
||||
.__locales =
|
||||
{
|
||||
|
@ -195,7 +195,7 @@ __vsyslog_chk(int pri, int flag, const char *fmt, va_list ap)
|
||||
- f->_IO_write_ptr,
|
||||
"%h %e %T ",
|
||||
__localtime_r (&now, &now_tm),
|
||||
&_nl_C_locobj);
|
||||
_nl_C_locobj_ptr);
|
||||
msgoff = ftell (f);
|
||||
if (LogTag == NULL)
|
||||
LogTag = __progname;
|
||||
|
@ -100,9 +100,9 @@ extern unsigned long long int ____strtoull_l_internal (const char *, char **,
|
||||
# define ISDIGIT(Ch) __iswdigit_l ((Ch), loc)
|
||||
# define ISXDIGIT(Ch) __iswxdigit_l ((Ch), loc)
|
||||
# define TOLOWER(Ch) __towlower_l ((Ch), loc)
|
||||
# define TOLOWER_C(Ch) __towlower_l ((Ch), &_nl_C_locobj)
|
||||
# define TOLOWER_C(Ch) __towlower_l ((Ch), _nl_C_locobj_ptr)
|
||||
# define STRNCASECMP(S1, S2, N) \
|
||||
__wcsncasecmp_l ((S1), (S2), (N), &_nl_C_locobj)
|
||||
__wcsncasecmp_l ((S1), (S2), (N), _nl_C_locobj_ptr)
|
||||
# define STRTOULL(S, E, B) ____wcstoull_l_internal ((S), (E), (B), 0, loc)
|
||||
#else
|
||||
# define STRING_TYPE char
|
||||
@ -112,9 +112,9 @@ extern unsigned long long int ____strtoull_l_internal (const char *, char **,
|
||||
# define ISDIGIT(Ch) __isdigit_l ((Ch), loc)
|
||||
# define ISXDIGIT(Ch) __isxdigit_l ((Ch), loc)
|
||||
# define TOLOWER(Ch) __tolower_l ((Ch), loc)
|
||||
# define TOLOWER_C(Ch) __tolower_l ((Ch), &_nl_C_locobj)
|
||||
# define TOLOWER_C(Ch) __tolower_l ((Ch), _nl_C_locobj_ptr)
|
||||
# define STRNCASECMP(S1, S2, N) \
|
||||
__strncasecmp_l ((S1), (S2), (N), &_nl_C_locobj)
|
||||
__strncasecmp_l ((S1), (S2), (N), _nl_C_locobj_ptr)
|
||||
# define STRTOULL(S, E, B) ____strtoull_l_internal ((S), (E), (B), 0, loc)
|
||||
#endif
|
||||
|
||||
|
@ -1,5 +1,5 @@
|
||||
/* Get system load averages. Linux (/proc/loadavg) version.
|
||||
Copyright (C) 1999, 2000, 2001, 2003 Free Software Foundation, Inc.
|
||||
Copyright (C) 1999, 2000, 2001, 2003, 2005 Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
|
||||
The GNU C Library is free software; you can redistribute it and/or
|
||||
@ -55,7 +55,7 @@ getloadavg (double loadavg[], int nelem)
|
||||
for (i = 0; i < nelem; ++i)
|
||||
{
|
||||
char *endp;
|
||||
loadavg[i] = __strtod_l (p, &endp, &_nl_C_locobj);
|
||||
loadavg[i] = __strtod_l (p, &endp, _nl_C_locobj_ptr);
|
||||
if (endp == p)
|
||||
/* This should not happen. The format of /proc/loadavg
|
||||
must have changed. Don't return with what we have,
|
||||
|
Loading…
Reference in New Issue
Block a user