* intl/dcigettext.c (_nl_find_msg): Add a cast.
	* nis/nis_clone_dir.c (nis_clone_directory): Use char * for ADDR.
	* nis/nis_clone_obj.c (nis_clone_object): Likewise.
	* nis/nis_clone_res.c (nis_clone_result): Likewise.

	* resolv/nss_dns/dns-network.c (getanswer_r): Use const unsigned char *
	for END_OF_MESSAGE and CP.

	* resolv/res_send.c (send_dg): Add else branch for case impossible
	unless `poll' is buggy.

	* crypt/crypt_util.c (__setkey_r): Add a cast.

	* locale/programs/linereader.c (get_toplvl_escape): Use size_t for
	NBYTES, and unsigned char * for BYTES.

	* locale/programs/charmap.c (charmap_new_char): Use size_t and
	unsighed char * for NBYTES, BYTES parameters.

	* sysdeps/generic/dl-hash.h (_dl_elf_hash): Take const char * argument
	and cast it.
	* sysdeps/i386/i686/dl-hash.h (_dl_elf_hash): Likewise.

	* sunrpc/create_xid.c (_create_xid): Don't use unsigned long for RES.

	* sunrpc/svcauth_des.c (_svcauth_des): Fix cast type.

	* sunrpc/auth_des.c (authdes_create): Don't use u_char for PKEY_DATA.
	(authdes_marshal): Don't use unsigned int for LEN.
	* sunrpc/xdr.c (xdr_hyper): Don't use unsigned long for T2.
	(xdr_u_hyper): Likewise.
	(xdr_u_short): Don't use u_long for L.
	* sunrpc/xdr_intXX_t.c (xdr_int64_t): Don't use uint32_t for T2.

	* inet/rexec.c (rexec_af): Use socklen_t.
	* sunrpc/key_call.c (getkeyserv_handle): Likewise.
	* sunrpc/rtime.c (rtime): Likewise.
	* resolv/res_send.c (send_vc, send_dg): Likewise.
	* nis/nis_callback.c (__nis_create_callback): Likewise.

	* sysdeps/generic/libc-start.c: Use unsigned int for nthreads ptr.

	* sysdeps/posix/getaddrinfo.c (gaih_inet): Fix type of ADDR local.

	* libio/libio.h (_IO_BE): Add parenthesis around EXPR.

	* intl/dcigettext.c (INTVARDEF, INTUSE): Macros removed.
	(_nl_default_dirname): Use libc_hidden_data_def instead of INTVARDEF.
	(libc_freeres_fn, DCIGETTEXT): Don't use INTUSE.
	* intl/bindtextdom.c (INTUSE): Macro removed.
	(_nl_default_dirname): Use libc_hidden_proto.
	(set_binding_values): Don't use INTUSE.
	* include/libintl.h (_libc_intl_domainname_internal): Decl removed.
	(_libc_intl_domainname): Use libc_hidden_proto.
	* posix/regex_internal.h (gettext): Remove INTUSE on it.
	* locale/SYS_libc.c (_libc_intl_domainname): Use libc_hidden_data_def
	rather than INTDEF.
	* include/libintl.h (_): Don't use *_internal name.

	* ctype/ctype-extn.c (__ctype_tolower, __ctype_toupper): Use int32_t,
	not uint32_t.
	* locale/lc-ctype.c (_nl_postload_ctype): Likewise for assignments.

	* iconv/gconv_open.c (__gconv_open): Remove useless cast.

	[BZ #721]
	* sysdeps/i386/dl-machine.h (ELF_MACHINE_NO_RELA): Define this outside
	of [RESOLVE_MAP].
	* sysdeps/sh/dl-machine.h (ELF_MACHINE_NO_REL): Likewise.
	* sysdeps/powerpc/powerpc32/dl-machine.h
	(elf_machine_rel, elf_machine_rel_relative): Removed.
	* sysdeps/powerpc/powerpc64/dl-machine.h
	(elf_machine_rel, elf_machine_rel_relative): Removed.

2005-02-03  Alexandre Oliva  <aoliva@redhat.com>

	[BZ #721]
	* elf/dynamic-link.h: Don't declare nested auto functions that are
	not going to be defined.

2004-07-23  Jakub Jelinek  <jakub@redhat.com>

	[BZ #284]
	* include/features.h (_POSIX_SOURCE, _POSIX_C_SOURCE): Define
	if _XOPEN_SOURCE >= 500 even if __STRICT_ANSI__ is defined.

2005-02-16  Roland McGrath  <roland@redhat.com>
This commit is contained in:
Roland McGrath 2005-02-17 01:19:55 +00:00
parent a0b6421652
commit 9cfe5381a1
39 changed files with 210 additions and 136 deletions

View file

@ -1,3 +1,92 @@
2005-02-16 Roland McGrath <roland@redhat.com>
* intl/dcigettext.c (_nl_find_msg): Add a cast.
* nis/nis_clone_dir.c (nis_clone_directory): Use char * for ADDR.
* nis/nis_clone_obj.c (nis_clone_object): Likewise.
* nis/nis_clone_res.c (nis_clone_result): Likewise.
* resolv/nss_dns/dns-network.c (getanswer_r): Use const unsigned char *
for END_OF_MESSAGE and CP.
* resolv/res_send.c (send_dg): Add else branch for case impossible
unless `poll' is buggy.
* crypt/crypt_util.c (__setkey_r): Add a cast.
* locale/programs/linereader.c (get_toplvl_escape): Use size_t for
NBYTES, and unsigned char * for BYTES.
* locale/programs/charmap.c (charmap_new_char): Use size_t and
unsighed char * for NBYTES, BYTES parameters.
* sysdeps/generic/dl-hash.h (_dl_elf_hash): Take const char * argument
and cast it.
* sysdeps/i386/i686/dl-hash.h (_dl_elf_hash): Likewise.
* sunrpc/create_xid.c (_create_xid): Don't use unsigned long for RES.
* sunrpc/svcauth_des.c (_svcauth_des): Fix cast type.
* sunrpc/auth_des.c (authdes_create): Don't use u_char for PKEY_DATA.
(authdes_marshal): Don't use unsigned int for LEN.
* sunrpc/xdr.c (xdr_hyper): Don't use unsigned long for T2.
(xdr_u_hyper): Likewise.
(xdr_u_short): Don't use u_long for L.
* sunrpc/xdr_intXX_t.c (xdr_int64_t): Don't use uint32_t for T2.
* inet/rexec.c (rexec_af): Use socklen_t.
* sunrpc/key_call.c (getkeyserv_handle): Likewise.
* sunrpc/rtime.c (rtime): Likewise.
* resolv/res_send.c (send_vc, send_dg): Likewise.
* nis/nis_callback.c (__nis_create_callback): Likewise.
* sysdeps/generic/libc-start.c: Use unsigned int for nthreads ptr.
* sysdeps/posix/getaddrinfo.c (gaih_inet): Fix type of ADDR local.
* libio/libio.h (_IO_BE): Add parenthesis around EXPR.
* intl/dcigettext.c (INTVARDEF, INTUSE): Macros removed.
(_nl_default_dirname): Use libc_hidden_data_def instead of INTVARDEF.
(libc_freeres_fn, DCIGETTEXT): Don't use INTUSE.
* intl/bindtextdom.c (INTUSE): Macro removed.
(_nl_default_dirname): Use libc_hidden_proto.
(set_binding_values): Don't use INTUSE.
* include/libintl.h (_libc_intl_domainname_internal): Decl removed.
(_libc_intl_domainname): Use libc_hidden_proto.
* posix/regex_internal.h (gettext): Remove INTUSE on it.
* locale/SYS_libc.c (_libc_intl_domainname): Use libc_hidden_data_def
rather than INTDEF.
* include/libintl.h (_): Don't use *_internal name.
* ctype/ctype-extn.c (__ctype_tolower, __ctype_toupper): Use int32_t,
not uint32_t.
* locale/lc-ctype.c (_nl_postload_ctype): Likewise for assignments.
* iconv/gconv_open.c (__gconv_open): Remove useless cast.
[BZ #721]
* sysdeps/i386/dl-machine.h (ELF_MACHINE_NO_RELA): Define this outside
of [RESOLVE_MAP].
* sysdeps/sh/dl-machine.h (ELF_MACHINE_NO_REL): Likewise.
* sysdeps/powerpc/powerpc32/dl-machine.h
(elf_machine_rel, elf_machine_rel_relative): Removed.
* sysdeps/powerpc/powerpc64/dl-machine.h
(elf_machine_rel, elf_machine_rel_relative): Removed.
2005-02-03 Alexandre Oliva <aoliva@redhat.com>
[BZ #721]
* elf/dynamic-link.h: Don't declare nested auto functions that are
not going to be defined.
2004-07-23 Jakub Jelinek <jakub@redhat.com>
[BZ #284]
* include/features.h (_POSIX_SOURCE, _POSIX_C_SOURCE): Define
if _XOPEN_SOURCE >= 500 even if __STRICT_ANSI__ is defined.
2005-02-16 Roland McGrath <roland@redhat.com> 2005-02-16 Roland McGrath <roland@redhat.com>
* sysdeps/generic/libc-start.c (LIBC_START_MAIN): Move UBP_EV defn * sysdeps/generic/libc-start.c (LIBC_START_MAIN): Move UBP_EV defn

View file

@ -902,7 +902,7 @@ __setkey_r(__key, __data)
c = c << 1 | *__key++; c = c << 1 | *__key++;
ktab[i] = c >> 1; ktab[i] = c >> 1;
} }
_ufc_mk_keytab_r(ktab, __data); _ufc_mk_keytab_r((char *) ktab, __data);
} }
weak_alias (__setkey_r, setkey_r) weak_alias (__setkey_r, setkey_r)

View file

@ -1,4 +1,4 @@
/* Copyright (C) 1991, 1997, 1999, 2000, 2002 Free Software Foundation, Inc. /* Copyright (C) 1991,1997,1999,2000,2002,2005 Free Software Foundation, Inc.
This file is part of the GNU C Library. This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or The GNU C Library is free software; you can redistribute it and/or
@ -20,9 +20,9 @@
#include <ctype.h> #include <ctype.h>
#define __ctype_tolower \ #define __ctype_tolower \
((uint32_t *) _NL_CURRENT (LC_CTYPE, _NL_CTYPE_TOLOWER) + 128) ((int32_t *) _NL_CURRENT (LC_CTYPE, _NL_CTYPE_TOLOWER) + 128)
#define __ctype_toupper \ #define __ctype_toupper \
((uint32_t *) _NL_CURRENT (LC_CTYPE, _NL_CTYPE_TOUPPER) + 128) ((int32_t *) _NL_CURRENT (LC_CTYPE, _NL_CTYPE_TOUPPER) + 128)
/* Real function versions of the non-ANSI ctype functions. isblank is /* Real function versions of the non-ANSI ctype functions. isblank is
now in ISO C99 but we leave it here. */ now in ISO C99 but we leave it here. */

View file

@ -1,5 +1,5 @@
/* Inline functions for dynamic linking. /* Inline functions for dynamic linking.
Copyright (C) 1995-2002, 2003, 2004 Free Software Foundation, Inc. Copyright (C) 1995-2002, 2003, 2004, 2005 Free Software Foundation, Inc.
This file is part of the GNU C Library. This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or The GNU C Library is free software; you can redistribute it and/or
@ -31,20 +31,24 @@
optimizing away alignment tests or using word instructions for optimizing away alignment tests or using word instructions for
copying memory, breaking the very code written to handle the copying memory, breaking the very code written to handle the
unaligned cases. */ unaligned cases. */
# if ! ELF_MACHINE_NO_REL
auto void __attribute__((always_inline)) auto void __attribute__((always_inline))
elf_machine_rel (struct link_map *map, const ElfW(Rel) *reloc, elf_machine_rel (struct link_map *map, const ElfW(Rel) *reloc,
const ElfW(Sym) *sym, const struct r_found_version *version, const ElfW(Sym) *sym, const struct r_found_version *version,
void *const reloc_addr); void *const reloc_addr);
auto void __attribute__((always_inline)) auto void __attribute__((always_inline))
elf_machine_rel_relative (ElfW(Addr) l_addr, const ElfW(Rel) *reloc,
void *const reloc_addr);
# endif
# if ! ELF_MACHINE_NO_RELA
auto void __attribute__((always_inline))
elf_machine_rela (struct link_map *map, const ElfW(Rela) *reloc, elf_machine_rela (struct link_map *map, const ElfW(Rela) *reloc,
const ElfW(Sym) *sym, const struct r_found_version *version, const ElfW(Sym) *sym, const struct r_found_version *version,
void *const reloc_addr); void *const reloc_addr);
auto void __attribute__((always_inline)) auto void __attribute__((always_inline))
elf_machine_rel_relative (ElfW(Addr) l_addr, const ElfW(Rel) *reloc,
void *const reloc_addr);
auto void __attribute__((always_inline))
elf_machine_rela_relative (ElfW(Addr) l_addr, const ElfW(Rela) *reloc, elf_machine_rela_relative (ElfW(Addr) l_addr, const ElfW(Rela) *reloc,
void *const reloc_addr); void *const reloc_addr);
# endif
# if ELF_MACHINE_NO_RELA || defined ELF_MACHINE_PLT_REL # if ELF_MACHINE_NO_RELA || defined ELF_MACHINE_PLT_REL
auto void __attribute__((always_inline)) auto void __attribute__((always_inline))
elf_machine_lazy_rel (struct link_map *map, elf_machine_lazy_rel (struct link_map *map,

View file

@ -1,5 +1,6 @@
/* Find matching transformation algorithms and initialize steps. /* Find matching transformation algorithms and initialize steps.
Copyright (C) 1997, 1998, 1999, 2000, 2001, 2004 Free Software Foundation, Inc. Copyright (C) 1997,1998,1999,2000,2001,2004,2005
Free Software Foundation, Inc.
This file is part of the GNU C Library. This file is part of the GNU C Library.
Contributed by Ulrich Drepper <drepper@cygnus.com>, 1997. Contributed by Ulrich Drepper <drepper@cygnus.com>, 1997.
@ -279,7 +280,7 @@ __gconv_open (const char *toset, const char *fromset, __gconv_t *handle,
/* Allocate the buffer. */ /* Allocate the buffer. */
size = (GCONV_NCHAR_GOAL * steps[cnt].__max_needed_to); size = (GCONV_NCHAR_GOAL * steps[cnt].__max_needed_to);
result->__data[cnt].__outbuf = (char *) malloc (size); result->__data[cnt].__outbuf = malloc (size);
if (result->__data[cnt].__outbuf == NULL) if (result->__data[cnt].__outbuf == NULL)
{ {
res = __GCONV_NOMEM; res = __GCONV_NOMEM;

View file

@ -1,4 +1,4 @@
/* Copyright (C) 1991-1993,1995-2003, 2004 Free Software Foundation, Inc. /* Copyright (C) 1991-1993,1995-2003,2004,2005 Free Software Foundation, Inc.
This file is part of the GNU C Library. This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or The GNU C Library is free software; you can redistribute it and/or
@ -181,8 +181,8 @@
/* If none of the ANSI/POSIX macros are defined, use POSIX.1 and POSIX.2 /* If none of the ANSI/POSIX macros are defined, use POSIX.1 and POSIX.2
(and IEEE Std 1003.1b-1993 unless _XOPEN_SOURCE is defined). */ (and IEEE Std 1003.1b-1993 unless _XOPEN_SOURCE is defined). */
#if (!defined __STRICT_ANSI__ && !defined _POSIX_SOURCE && \ #if ((!defined __STRICT_ANSI__ || (_XOPEN_SOURCE - 0) >= 500) && \
!defined _POSIX_C_SOURCE) !defined _POSIX_SOURCE && !defined _POSIX_C_SOURCE)
# define _POSIX_SOURCE 1 # define _POSIX_SOURCE 1
# if defined _XOPEN_SOURCE && (_XOPEN_SOURCE - 0) < 500 # if defined _XOPEN_SOURCE && (_XOPEN_SOURCE - 0) < 500
# define _POSIX_C_SOURCE 2 # define _POSIX_C_SOURCE 2

View file

@ -41,7 +41,7 @@ extern char *__bind_textdomain_codeset (__const char *__domainname,
__const char *__codeset); __const char *__codeset);
extern const char _libc_intl_domainname[]; extern const char _libc_intl_domainname[];
extern const char _libc_intl_domainname_internal[] attribute_hidden; libc_hidden_proto (_libc_intl_domainname)
/* Define the macros `_' and `N_' for conveniently marking translatable /* Define the macros `_' and `N_' for conveniently marking translatable
strings in the libc source code. We have to make sure we get the strings in the libc source code. We have to make sure we get the
@ -52,12 +52,7 @@ extern const char _libc_intl_domainname_internal[] attribute_hidden;
# undef _ # undef _
/* This is defined as an optimizing macro, so use it. */ /* This is defined as an optimizing macro, so use it. */
# if !defined NOT_IN_libc && defined SHARED # define _(msgid) \
# define _(msgid) \
__dcgettext_internal (_libc_intl_domainname_internal, msgid, LC_MESSAGES)
# else
# define _(msgid) \
__dcgettext (_libc_intl_domainname, msgid, LC_MESSAGES) __dcgettext (_libc_intl_domainname, msgid, LC_MESSAGES)
#endif
#endif #endif

View file

@ -111,7 +111,8 @@ retry:
port = 0; port = 0;
} else { } else {
char num[32]; char num[32];
int s2, sa2len; int s2;
socklen_t sa2len;
s2 = __socket(res0->ai_family, res0->ai_socktype, 0); s2 = __socket(res0->ai_family, res0->ai_socktype, 0);
if (s2 < 0) { if (s2 < 0) {
@ -136,7 +137,7 @@ retry:
port = atoi(servbuff); port = atoi(servbuff);
(void) sprintf(num, "%u", port); (void) sprintf(num, "%u", port);
(void) __write(s, num, strlen(num)+1); (void) __write(s, num, strlen(num)+1);
{ int len = sizeof (from); { socklen_t len = sizeof (from);
s3 = TEMP_FAILURE_RETRY (accept(s2, (struct sockaddr *)&from, s3 = TEMP_FAILURE_RETRY (accept(s2, (struct sockaddr *)&from,
&len)); &len));
__close(s2); __close(s2);

View file

@ -1,5 +1,5 @@
/* Implementation of the bindtextdomain(3) function /* Implementation of the bindtextdomain(3) function
Copyright (C) 1995-1998, 2000, 2001, 2002 Free Software Foundation, Inc. Copyright (C) 1995-1998, 2000, 2001, 2002, 2005 Free Software Foundation, Inc.
This file is part of the GNU C Library. This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or The GNU C Library is free software; you can redistribute it and/or
@ -60,9 +60,7 @@
/* Contains the default location of the message catalogs. */ /* Contains the default location of the message catalogs. */
extern const char _nl_default_dirname[]; extern const char _nl_default_dirname[];
#ifdef _LIBC #ifdef _LIBC
extern const char _nl_default_dirname_internal[] attribute_hidden; libc_hidden_proto (_nl_default_dirname)
#else
# define INTUSE(name) name
#endif #endif
/* List with bindings of specific domains. */ /* List with bindings of specific domains. */
@ -152,8 +150,8 @@ set_binding_values (domainname, dirnamep, codesetp)
char *result = binding->dirname; char *result = binding->dirname;
if (strcmp (dirname, result) != 0) if (strcmp (dirname, result) != 0)
{ {
if (strcmp (dirname, INTUSE(_nl_default_dirname)) == 0) if (strcmp (dirname, _nl_default_dirname) == 0)
result = (char *) INTUSE(_nl_default_dirname); result = (char *) _nl_default_dirname;
else else
{ {
#if defined _LIBC || defined HAVE_STRDUP #if defined _LIBC || defined HAVE_STRDUP
@ -168,7 +166,7 @@ set_binding_values (domainname, dirnamep, codesetp)
if (__builtin_expect (result != NULL, 1)) if (__builtin_expect (result != NULL, 1))
{ {
if (binding->dirname != INTUSE(_nl_default_dirname)) if (binding->dirname != _nl_default_dirname)
free (binding->dirname); free (binding->dirname);
binding->dirname = result; binding->dirname = result;
@ -222,7 +220,7 @@ set_binding_values (domainname, dirnamep, codesetp)
{ {
/* Simply return the default values. */ /* Simply return the default values. */
if (dirnamep) if (dirnamep)
*dirnamep = INTUSE(_nl_default_dirname); *dirnamep = _nl_default_dirname;
if (codesetp) if (codesetp)
*codesetp = NULL; *codesetp = NULL;
} }
@ -244,11 +242,11 @@ set_binding_values (domainname, dirnamep, codesetp)
if (dirname == NULL) if (dirname == NULL)
/* The default value. */ /* The default value. */
dirname = INTUSE(_nl_default_dirname); dirname = _nl_default_dirname;
else else
{ {
if (strcmp (dirname, INTUSE(_nl_default_dirname)) == 0) if (strcmp (dirname, _nl_default_dirname) == 0)
dirname = INTUSE(_nl_default_dirname); dirname = _nl_default_dirname;
else else
{ {
char *result; char *result;
@ -271,7 +269,7 @@ set_binding_values (domainname, dirnamep, codesetp)
} }
else else
/* The default value. */ /* The default value. */
new_binding->dirname = (char *) INTUSE(_nl_default_dirname); new_binding->dirname = (char *) _nl_default_dirname;
new_binding->codeset_cntr = 0; new_binding->codeset_cntr = 0;
@ -327,7 +325,7 @@ set_binding_values (domainname, dirnamep, codesetp)
if (0) if (0)
{ {
failed_codeset: failed_codeset:
if (new_binding->dirname != INTUSE(_nl_default_dirname)) if (new_binding->dirname != _nl_default_dirname)
free (new_binding->dirname); free (new_binding->dirname);
failed_dirname: failed_dirname:
free (new_binding); free (new_binding);

View file

@ -1,5 +1,5 @@
/* Implementation of the internal dcigettext function. /* Implementation of the internal dcigettext function.
Copyright (C) 1995-2002, 2003, 2004 Free Software Foundation, Inc. Copyright (C) 1995-2002,2003,2004,2005 Free Software Foundation, Inc.
This file is part of the GNU C Library. This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or The GNU C Library is free software; you can redistribute it and/or
@ -236,13 +236,6 @@ transcmp (p1, p2)
} }
#endif #endif
#ifndef INTVARDEF
# define INTVARDEF
#endif
#ifndef INTUSE
# define INTUSE(name) name
#endif
/* Name of the default domain used for gettext(3) prior any call to /* Name of the default domain used for gettext(3) prior any call to
textdomain(3). The default value for this is "messages". */ textdomain(3). The default value for this is "messages". */
const char _nl_default_default_domain[] attribute_hidden = "messages"; const char _nl_default_default_domain[] attribute_hidden = "messages";
@ -252,8 +245,15 @@ const char *_nl_current_default_domain attribute_hidden
= _nl_default_default_domain; = _nl_default_default_domain;
/* Contains the default location of the message catalogs. */ /* Contains the default location of the message catalogs. */
#ifdef _LIBC
extern const char _nl_default_dirname[];
libc_hidden_proto (_nl_default_dirname)
#endif
const char _nl_default_dirname[] = LOCALEDIR; const char _nl_default_dirname[] = LOCALEDIR;
INTVARDEF (_nl_default_dirname) #ifdef _LIBC
libc_hidden_data_def (_nl_default_dirname)
#endif
/* List with bindings of specific domains created by bindtextdomain() /* List with bindings of specific domains created by bindtextdomain()
calls. */ calls. */
@ -485,7 +485,7 @@ DCIGETTEXT (domainname, msgid1, msgid2, plural, n, category)
} }
if (binding == NULL) if (binding == NULL)
dirname = (char *) INTUSE(_nl_default_dirname); dirname = (char *) _nl_default_dirname;
else if (binding->dirname[0] == '/') else if (binding->dirname[0] == '/')
dirname = binding->dirname; dirname = binding->dirname;
else else
@ -882,7 +882,7 @@ _nl_find_msg (domain_file, domainbinding, msgid, lengthp)
goto converted; goto converted;
} }
inbuf = result; inbuf = (const unsigned char *) result;
# else # else
# if HAVE_ICONV # if HAVE_ICONV
const char *inptr = (const char *) inbuf; const char *inptr = (const char *) inbuf;
@ -950,7 +950,7 @@ _nl_find_msg (domain_file, domainbinding, msgid, lengthp)
newmem->next = transmem_list; newmem->next = transmem_list;
transmem_list = newmem; transmem_list = newmem;
freemem = newmem->data; freemem = (unsigned char *) newmem->data;
freemem_size -= offsetof (struct transmem_list, data); freemem_size -= offsetof (struct transmem_list, data);
# else # else
transmem_list = newmem; transmem_list = newmem;
@ -1161,7 +1161,7 @@ libc_freeres_fn (free_mem)
{ {
struct binding *oldp = _nl_domain_bindings; struct binding *oldp = _nl_domain_bindings;
_nl_domain_bindings = _nl_domain_bindings->next; _nl_domain_bindings = _nl_domain_bindings->next;
if (oldp->dirname != INTUSE(_nl_default_dirname)) if (oldp->dirname != _nl_default_dirname)
/* Yes, this is a pointer comparison. */ /* Yes, this is a pointer comparison. */
free (oldp->dirname); free (oldp->dirname);
free (oldp->codeset); free (oldp->codeset);

View file

@ -1,4 +1,4 @@
/* Copyright (C) 1991-1995, 1997-2003, 2004 Free Software Foundation, Inc. /* Copyright (C) 1991-1995,1997-2003,2004,2005 Free Software Foundation, Inc.
This file is part of the GNU C Library. This file is part of the GNU C Library.
Written by Per Bothner <bothner@cygnus.com>. Written by Per Bothner <bothner@cygnus.com>.
@ -411,7 +411,7 @@ extern _IO_wint_t __wuflow (_IO_FILE *) __THROW;
extern _IO_wint_t __woverflow (_IO_FILE *, _IO_wint_t) __THROW; extern _IO_wint_t __woverflow (_IO_FILE *, _IO_wint_t) __THROW;
#if __GNUC__ >= 3 #if __GNUC__ >= 3
# define _IO_BE(expr, res) __builtin_expect (expr, res) # define _IO_BE(expr, res) __builtin_expect ((expr), res)
#else #else
# define _IO_BE(expr, res) (expr) # define _IO_BE(expr, res) (expr)
#endif #endif

View file

@ -1,5 +1,7 @@
/* Define a constant for the dgettext domainname for libc internal messages, /* Define a constant for the dgettext domainname for libc internal messages,
so the string constant is not repeated in dozens of object files. */ so the string constant is not repeated in dozens of object files. */
#include <libintl.h>
const char _libc_intl_domainname[] = "libc"; const char _libc_intl_domainname[] = "libc";
INTDEF(_libc_intl_domainname) libc_hidden_data_def (_libc_intl_domainname)

View file

@ -1,5 +1,5 @@
/* Define current locale data for LC_CTYPE category. /* Define current locale data for LC_CTYPE category.
Copyright (C) 1995,1996,1997,1998,1999,2000,2002,2003 Copyright (C) 1995,1996,1997,1998,1999,2000,2002,2003,2005
Free Software Foundation, Inc. Free Software Foundation, Inc.
This file is part of the GNU C Library. This file is part of the GNU C Library.
@ -102,8 +102,8 @@ compat_symbol (libc, __ctype32_tolower, __ctype32_tolower, GLIBC_2_2);
compat_symbol (libc, __ctype32_toupper, __ctype32_toupper, GLIBC_2_2); compat_symbol (libc, __ctype32_toupper, __ctype32_toupper, GLIBC_2_2);
__ctype_b = current (uint16_t, CLASS, 128); __ctype_b = current (uint16_t, CLASS, 128);
__ctype_toupper = current (uint32_t, TOUPPER, 128); __ctype_toupper = current (int32_t, TOUPPER, 128);
__ctype_tolower = current (uint32_t, TOLOWER, 128); __ctype_tolower = current (int32_t, TOLOWER, 128);
__ctype32_b = current (uint32_t, CLASS32, 0); __ctype32_b = current (uint32_t, CLASS32, 0);
__ctype32_toupper = current (uint32_t, TOUPPER32, 0); __ctype32_toupper = current (uint32_t, TOUPPER32, 0);
__ctype32_tolower = current (uint32_t, TOLOWER32, 0); __ctype32_tolower = current (uint32_t, TOLOWER32, 0);

View file

@ -49,8 +49,9 @@ static void new_width (struct linereader *cmfile, struct charmap_t *result,
const char *from, const char *to, const char *from, const char *to,
unsigned long int width); unsigned long int width);
static void charmap_new_char (struct linereader *lr, struct charmap_t *cm, static void charmap_new_char (struct linereader *lr, struct charmap_t *cm,
int nbytes, char *bytes, const char *from, size_t nbytes, unsigned char *bytes,
const char *to, int decimal_ellipsis, int step); const char *from, const char *to,
int decimal_ellipsis, int step);
bool enc_not_ascii_compatible; bool enc_not_ascii_compatible;
@ -927,7 +928,8 @@ charmap_find_value (const struct charmap_t *cm, const char *name, size_t len)
static void static void
charmap_new_char (struct linereader *lr, struct charmap_t *cm, charmap_new_char (struct linereader *lr, struct charmap_t *cm,
int nbytes, char *bytes, const char *from, const char *to, size_t nbytes, unsigned char *bytes,
const char *from, const char *to,
int decimal_ellipsis, int step) int decimal_ellipsis, int step)
{ {
hash_table *ht = &cm->char_table; hash_table *ht = &cm->char_table;

View file

@ -1,4 +1,4 @@
/* Copyright (C) 1996-2001, 2002, 2003, 2004 Free Software Foundation, Inc. /* Copyright (C) 1996-2001,2002,2003,2004,2005 Free Software Foundation, Inc.
This file is part of the GNU C Library. This file is part of the GNU C Library.
Contributed by Ulrich Drepper <drepper@gnu.org>, 1996. Contributed by Ulrich Drepper <drepper@gnu.org>, 1996.
@ -347,8 +347,8 @@ get_toplvl_escape (struct linereader *lr)
/* This is supposed to be a numeric value. We return the /* This is supposed to be a numeric value. We return the
numerical value and the number of bytes. */ numerical value and the number of bytes. */
size_t start_idx = lr->idx - 1; size_t start_idx = lr->idx - 1;
char *bytes = lr->token.val.charcode.bytes; unsigned char *bytes = lr->token.val.charcode.bytes;
int nbytes = 0; size_t nbytes = 0;
int ch; int ch;
do do

View file

@ -1,4 +1,4 @@
/* Copyright (C) 1997, 1998, 1999, 2000 Free Software Foundation, Inc. /* Copyright (C) 1997, 1998, 1999, 2000, 2005 Free Software Foundation, Inc.
This file is part of the GNU C Library. This file is part of the GNU C Library.
Contributed by Thorsten Kukuk <kukuk@suse.de>, 1997. Contributed by Thorsten Kukuk <kukuk@suse.de>, 1997.
@ -274,7 +274,7 @@ __nis_create_callback (int (*callback) (const_nis_name, const nis_object *,
struct nis_cb *cb; struct nis_cb *cb;
int sock = RPC_ANYSOCK; int sock = RPC_ANYSOCK;
struct sockaddr_in sin; struct sockaddr_in sin;
int len = sizeof (struct sockaddr_in); socklen_t len = sizeof (struct sockaddr_in);
char addr[NIS_MAXNAMELEN + 1]; char addr[NIS_MAXNAMELEN + 1];
unsigned short port; unsigned short port;

View file

@ -1,4 +1,4 @@
/* Copyright (c) 1997, 1998 Free Software Foundation, Inc. /* Copyright (c) 1997, 1998, 2005 Free Software Foundation, Inc.
This file is part of the GNU C Library. This file is part of the GNU C Library.
Contributed by Thorsten Kukuk <kukuk@vt.uni-paderborn.de>, 1997. Contributed by Thorsten Kukuk <kukuk@vt.uni-paderborn.de>, 1997.
@ -26,7 +26,7 @@
directory_obj * directory_obj *
nis_clone_directory (const directory_obj *src, directory_obj *dest) nis_clone_directory (const directory_obj *src, directory_obj *dest)
{ {
unsigned char *addr; char *addr;
unsigned int size; unsigned int size;
XDR xdrs; XDR xdrs;
directory_obj *res; directory_obj *res;

View file

@ -1,4 +1,4 @@
/* Copyright (c) 1997, 1998, 2004 Free Software Foundation, Inc. /* Copyright (c) 1997, 1998, 2004, 2005 Free Software Foundation, Inc.
This file is part of the GNU C Library. This file is part of the GNU C Library.
Contributed by Thorsten Kukuk <kukuk@vt.uni-paderborn.de>, 1997. Contributed by Thorsten Kukuk <kukuk@vt.uni-paderborn.de>, 1997.
@ -26,8 +26,8 @@
nis_object * nis_object *
nis_clone_object (const nis_object *src, nis_object *dest) nis_clone_object (const nis_object *src, nis_object *dest)
{ {
unsigned char *addr; char *addr;
unsigned long size; unsigned int size;
XDR xdrs; XDR xdrs;
nis_object *res = NULL; nis_object *res = NULL;

View file

@ -1,4 +1,4 @@
/* Copyright (c) 1997, 1998 Free Software Foundation, Inc. /* Copyright (c) 1997, 1998, 2005 Free Software Foundation, Inc.
This file is part of the GNU C Library. This file is part of the GNU C Library.
Contributed by Thorsten Kukuk <kukuk@vt.uni-paderborn.de>, 1997. Contributed by Thorsten Kukuk <kukuk@vt.uni-paderborn.de>, 1997.
@ -26,7 +26,7 @@
nis_result * nis_result *
nis_clone_result (const nis_result *src, nis_result *dest) nis_clone_result (const nis_result *src, nis_result *dest)
{ {
unsigned char *addr; char *addr;
unsigned int size; unsigned int size;
XDR xdrs; XDR xdrs;
nis_result *res; nis_result *res;

View file

@ -1,3 +1,8 @@
2005-02-16 Roland McGrath <roland@redhat.com>
* sysdeps/pthread/pthread-functions.h (struct pthread_functions):
Use unsigned int * for ptr_nthreads.
2005-02-14 Alan Modra <amodra@bigpond.net.au> 2005-02-14 Alan Modra <amodra@bigpond.net.au>
* sysdeps/powerpc/tcb-offsets.sym (thread_offsetof): Redefine to suit * sysdeps/powerpc/tcb-offsets.sym (thread_offsetof): Redefine to suit
@ -15,6 +20,7 @@
2005-01-26 Jakub Jelinek <jakub@redhat.com> 2005-01-26 Jakub Jelinek <jakub@redhat.com>
[BZ #737]
* sysdeps/unix/sysv/linux/i386/i486/sem_trywait.S (__new_sem_trywait): * sysdeps/unix/sysv/linux/i386/i486/sem_trywait.S (__new_sem_trywait):
Use direct %gs segment access or, if NO_TLS_DIRECT_SEG_REFS, Use direct %gs segment access or, if NO_TLS_DIRECT_SEG_REFS,
at least gotntpoff relocation and addition. at least gotntpoff relocation and addition.

View file

@ -1,4 +1,4 @@
/* Copyright (C) 2003, 2004 Free Software Foundation, Inc. /* Copyright (C) 2003, 2004, 2005 Free Software Foundation, Inc.
This file is part of the GNU C Library. This file is part of the GNU C Library.
Contributed by Ulrich Drepper <drepper@redhat.com>, 2003. Contributed by Ulrich Drepper <drepper@redhat.com>, 2003.
@ -90,7 +90,7 @@ struct pthread_functions
void (*ptr__pthread_cleanup_pop_restore) (struct _pthread_cleanup_buffer *, void (*ptr__pthread_cleanup_pop_restore) (struct _pthread_cleanup_buffer *,
int); int);
#define HAVE_PTR_NTHREADS #define HAVE_PTR_NTHREADS
int *ptr_nthreads; unsigned int *ptr_nthreads;
void (*ptr___pthread_unwind) (__pthread_unwind_buf_t *) void (*ptr___pthread_unwind) (__pthread_unwind_buf_t *)
__attribute ((noreturn)) __cleanup_fct_attribute; __attribute ((noreturn)) __cleanup_fct_attribute;
void (*ptr__nptl_deallocate_tsd) (void); void (*ptr__nptl_deallocate_tsd) (void);

View file

@ -60,7 +60,7 @@
# ifdef _LIBC # ifdef _LIBC
# undef gettext # undef gettext
# define gettext(msgid) \ # define gettext(msgid) \
INTUSE(__dcgettext) (INTUSE(_libc_intl_domainname), msgid, LC_MESSAGES) INTUSE(__dcgettext) (_libc_intl_domainname, msgid, LC_MESSAGES)
# endif # endif
#else #else
# define gettext(msgid) (msgid) # define gettext(msgid) (msgid)

View file

@ -262,14 +262,14 @@ getanswer_r (const querybuf *answer, int anslen, struct netent *result,
char linebuffer[0]; char linebuffer[0];
} *net_data = (struct net_data *) buffer; } *net_data = (struct net_data *) buffer;
int linebuflen = buflen - offsetof (struct net_data, linebuffer); int linebuflen = buflen - offsetof (struct net_data, linebuffer);
const char *end_of_message = &answer->buf[anslen]; const unsigned char *end_of_message = &answer->buf[anslen];
const HEADER *header_pointer = &answer->hdr; const HEADER *header_pointer = &answer->hdr;
/* #/records in the answer section. */ /* #/records in the answer section. */
int answer_count = ntohs (header_pointer->ancount); int answer_count = ntohs (header_pointer->ancount);
/* #/entries in the question section. */ /* #/entries in the question section. */
int question_count = ntohs (header_pointer->qdcount); int question_count = ntohs (header_pointer->qdcount);
char *bp = net_data->linebuffer; char *bp = net_data->linebuffer;
const char *cp = &answer->buf[HFIXEDSZ]; const unsigned char *cp = &answer->buf[HFIXEDSZ];
char **alias_pointer; char **alias_pointer;
int have_answer; int have_answer;
char *ans; char *ans;

View file

@ -632,7 +632,7 @@ send_vc(res_state statp,
/* Are we still talking to whom we want to talk to? */ /* Are we still talking to whom we want to talk to? */
if (statp->_vcsock >= 0 && (statp->_flags & RES_F_VC) != 0) { if (statp->_vcsock >= 0 && (statp->_flags & RES_F_VC) != 0) {
struct sockaddr_in6 peer; struct sockaddr_in6 peer;
int size = sizeof peer; socklen_t size = sizeof peer;
if (getpeername(statp->_vcsock, if (getpeername(statp->_vcsock,
(struct sockaddr *)&peer, &size) < 0 || (struct sockaddr *)&peer, &size) < 0 ||
@ -809,7 +809,8 @@ send_dg(res_state statp,
int ptimeout; int ptimeout;
struct sockaddr_in6 from; struct sockaddr_in6 from;
static int socket_pf = 0; static int socket_pf = 0;
int fromlen, resplen, seconds, n; socklen_t fromlen;
int resplen, seconds, n;
if (EXT(statp).nssocks[ns] == -1) { if (EXT(statp).nssocks[ns] == -1) {
/* only try IPv6 if IPv6 NS and if not failed before */ /* only try IPv6 if IPv6 NS and if not failed before */
@ -1033,6 +1034,10 @@ send_dg(res_state statp,
res_nclose(statp); res_nclose(statp);
return (0); return (0);
} }
else {
/* poll should not have returned > 0 in this case. */
abort ();
}
} }
#ifdef DEBUG #ifdef DEBUG

View file

@ -107,14 +107,14 @@ authdes_create (const char *servername, u_int window,
/* syncaddr - optional addr of host to sync with */ /* syncaddr - optional addr of host to sync with */
/* ckey - optional conversation key to use */ /* ckey - optional conversation key to use */
{ {
u_char pkey_data[1024]; char pkey_data[1024];
netobj pkey; netobj pkey;
if (!getpublickey (servername, pkey_data)) if (!getpublickey (servername, pkey_data))
return NULL; return NULL;
pkey.n_bytes = (char *) pkey_data; pkey.n_bytes = pkey_data;
pkey.n_len = strlen ((char *) pkey_data) + 1; pkey.n_len = strlen (pkey_data) + 1;
return INTUSE(authdes_pk_create) (servername, &pkey, window, syncaddr, ckey); return INTUSE(authdes_pk_create) (servername, &pkey, window, syncaddr, ckey);
} }
@ -237,7 +237,7 @@ authdes_marshal (AUTH *auth, XDR *xdrs)
des_block cryptbuf[2]; des_block cryptbuf[2];
des_block ivec; des_block ivec;
int status; int status;
unsigned int len; int len;
register int32_t *ixdr; register int32_t *ixdr;
struct timeval tval; struct timeval tval;

View file

@ -33,7 +33,7 @@ static struct drand48_data __rpc_lrand48_data;
unsigned long unsigned long
_create_xid (void) _create_xid (void)
{ {
unsigned long res; long int res;
__libc_lock_lock (createxid_lock); __libc_lock_lock (createxid_lock);

View file

@ -386,7 +386,7 @@ getkeyserv_handle (int vers)
struct timeval wait_time; struct timeval wait_time;
int fd; int fd;
struct sockaddr_un name; struct sockaddr_un name;
int namelen = sizeof(struct sockaddr_un); socklen_t namelen = sizeof(struct sockaddr_un);
#define TOTAL_TIMEOUT 30 /* total timeout talking to keyserver */ #define TOTAL_TIMEOUT 30 /* total timeout talking to keyserver */
#define TOTAL_TRIES 5 /* Number of tries */ #define TOTAL_TRIES 5 /* Number of tries */

View file

@ -80,7 +80,7 @@ rtime (struct sockaddr_in *addrp, struct rpc_timeval *timep,
/* RFC 868 says the time is transmitted as a 32-bit value. */ /* RFC 868 says the time is transmitted as a 32-bit value. */
uint32_t thetime; uint32_t thetime;
struct sockaddr_in from; struct sockaddr_in from;
int fromlen; socklen_t fromlen;
int type; int type;
if (timeout == NULL) if (timeout == NULL)

View file

@ -315,7 +315,7 @@ _svcauth_des (register struct svc_req *rqst, register struct rpc_msg *msg)
/* /*
* xdr the timestamp before encrypting * xdr the timestamp before encrypting
*/ */
ixdr = (int32_t *) cryptbuf; ixdr = (uint32_t *) cryptbuf;
IXDR_PUT_INT32 (ixdr, timestamp.tv_sec - 1); IXDR_PUT_INT32 (ixdr, timestamp.tv_sec - 1);
IXDR_PUT_INT32 (ixdr, timestamp.tv_usec); IXDR_PUT_INT32 (ixdr, timestamp.tv_usec);

View file

@ -225,8 +225,7 @@ INTDEF(xdr_u_long)
bool_t bool_t
xdr_hyper (XDR *xdrs, quad_t *llp) xdr_hyper (XDR *xdrs, quad_t *llp)
{ {
long t1; long int t1, t2;
unsigned long int t2;
if (xdrs->x_op == XDR_ENCODE) if (xdrs->x_op == XDR_ENCODE)
{ {
@ -240,7 +239,7 @@ xdr_hyper (XDR *xdrs, quad_t *llp)
if (!XDR_GETLONG(xdrs, &t1) || !XDR_GETLONG(xdrs, &t2)) if (!XDR_GETLONG(xdrs, &t1) || !XDR_GETLONG(xdrs, &t2))
return FALSE; return FALSE;
*llp = ((quad_t) t1) << 32; *llp = ((quad_t) t1) << 32;
*llp |= t2; *llp |= (unsigned long int) t2;
return TRUE; return TRUE;
} }
@ -259,8 +258,7 @@ INTDEF(xdr_hyper)
bool_t bool_t
xdr_u_hyper (XDR *xdrs, u_quad_t *ullp) xdr_u_hyper (XDR *xdrs, u_quad_t *ullp)
{ {
unsigned long t1; long int t1, t2;
unsigned long t2;
if (xdrs->x_op == XDR_ENCODE) if (xdrs->x_op == XDR_ENCODE)
{ {
@ -274,7 +272,7 @@ xdr_u_hyper (XDR *xdrs, u_quad_t *ullp)
if (!XDR_GETLONG(xdrs, &t1) || !XDR_GETLONG(xdrs, &t2)) if (!XDR_GETLONG(xdrs, &t1) || !XDR_GETLONG(xdrs, &t2))
return FALSE; return FALSE;
*ullp = ((u_quad_t) t1) << 32; *ullp = ((u_quad_t) t1) << 32;
*ullp |= t2; *ullp |= (unsigned long int) t2;
return TRUE; return TRUE;
} }
@ -332,7 +330,7 @@ INTDEF(xdr_short)
bool_t bool_t
xdr_u_short (XDR *xdrs, u_short *usp) xdr_u_short (XDR *xdrs, u_short *usp)
{ {
u_long l; long l;
switch (xdrs->x_op) switch (xdrs->x_op)
{ {
@ -345,7 +343,7 @@ xdr_u_short (XDR *xdrs, u_short *usp)
{ {
return FALSE; return FALSE;
} }
*usp = (u_short) l; *usp = (u_short) (u_long) l;
return TRUE; return TRUE;
case XDR_FREE: case XDR_FREE:

View file

@ -1,4 +1,4 @@
/* Copyright (c) 1998, 1999, 2000, 2004 Free Software Foundation, Inc. /* Copyright (c) 1998, 1999, 2000, 2004, 2005 Free Software Foundation, Inc.
This file is part of the GNU C Library. This file is part of the GNU C Library.
Contributed by Thorsten Kukuk <kukuk@vt.uni-paderborn.de>, 1998. Contributed by Thorsten Kukuk <kukuk@vt.uni-paderborn.de>, 1998.
@ -31,10 +31,7 @@
bool_t bool_t
xdr_int64_t (XDR *xdrs, int64_t *ip) xdr_int64_t (XDR *xdrs, int64_t *ip)
{ {
int32_t t1; int32_t t1, t2;
/* This must be unsigned, otherwise we get problems with sign
extension in the DECODE case. */
uint32_t t2;
switch (xdrs->x_op) switch (xdrs->x_op)
{ {
@ -46,7 +43,7 @@ xdr_int64_t (XDR *xdrs, int64_t *ip)
if (!XDR_GETINT32(xdrs, &t1) || !XDR_GETINT32(xdrs, &t2)) if (!XDR_GETINT32(xdrs, &t1) || !XDR_GETINT32(xdrs, &t2))
return FALSE; return FALSE;
*ip = ((int64_t) t1) << 32; *ip = ((int64_t) t1) << 32;
*ip |= t2; *ip |= (uint32_t) t2; /* Avoid sign extension. */
return TRUE; return TRUE;
case XDR_FREE: case XDR_FREE:
return TRUE; return TRUE;

View file

@ -1,5 +1,5 @@
/* Compute hash value for given string according to ELF standard. /* Compute hash value for given string according to ELF standard.
Copyright (C) 1995, 1996, 1997, 1998, 2003 Free Software Foundation, Inc. Copyright (C) 1995,1996,1997,1998,2003,2005 Free Software Foundation, Inc.
This file is part of the GNU C Library. This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or The GNU C Library is free software; you can redistribute it and/or
@ -25,8 +25,9 @@
first five operations no overflow is possible so we optimized it a first five operations no overflow is possible so we optimized it a
bit. */ bit. */
static unsigned int static unsigned int
_dl_elf_hash (const unsigned char *name) _dl_elf_hash (const char *name_arg)
{ {
const unsigned char *name = (const unsigned char *) name_arg;
unsigned long int hash = 0; unsigned long int hash = 0;
if (*name != '\0') if (*name != '\0')
{ {

View file

@ -241,10 +241,10 @@ LIBC_START_MAIN (int (*main) (int, char **, char ** MAIN_AUXVEC_DECL),
terminate the entire process. */ terminate the entire process. */
result = 0; result = 0;
# ifdef SHARED # ifdef SHARED
int *const ptr = __libc_pthread_functions.ptr_nthreads; unsigned int *const ptr = __libc_pthread_functions.ptr_nthreads;
# else # else
extern int __nptl_nthreads __attribute ((weak)); extern unsigned int __nptl_nthreads __attribute ((weak));
int *const ptr = &__nptl_nthreads; unsigned int *const ptr = &__nptl_nthreads;
# endif # endif
if (! atomic_decrement_and_test (ptr)) if (! atomic_decrement_and_test (ptr))

View file

@ -299,14 +299,14 @@ elf_machine_plt_value (struct link_map *map, const Elf32_Rel *reloc,
#endif /* !dl_machine_h */ #endif /* !dl_machine_h */
#ifdef RESOLVE_MAP
/* The i386 never uses Elf32_Rela relocations for the dynamic linker. /* The i386 never uses Elf32_Rela relocations for the dynamic linker.
Prelinked libraries may use Elf32_Rela though. */ Prelinked libraries may use Elf32_Rela though. */
#ifdef RTLD_BOOTSTRAP #ifdef RTLD_BOOTSTRAP
# define ELF_MACHINE_NO_RELA 1 # define ELF_MACHINE_NO_RELA 1
#endif #endif
#ifdef RESOLVE_MAP
/* Perform the relocation specified by RELOC and SYM (which is fully resolved). /* Perform the relocation specified by RELOC and SYM (which is fully resolved).
MAP is the object containing the reloc. */ MAP is the object containing the reloc. */

View file

@ -1,5 +1,5 @@
/* Compute hash alue for given string according to ELF standard. /* Compute hash alue for given string according to ELF standard.
Copyright (C) 1998, 2003 Free Software Foundation, Inc. Copyright (C) 1998, 2003, 2005 Free Software Foundation, Inc.
This file is part of the GNU C Library. This file is part of the GNU C Library.
Contributed by Ulrich Drepper <drepper@cygnus.com>, 1998. Contributed by Ulrich Drepper <drepper@cygnus.com>, 1998.
@ -27,7 +27,7 @@
would be much slower than the generic C implementation. So don't would be much slower than the generic C implementation. So don't
use it. */ use it. */
static unsigned int static unsigned int
_dl_elf_hash (const unsigned char *name) _dl_elf_hash (const char *name)
{ {
unsigned int result; unsigned int result;
unsigned int temp0; unsigned int temp0;
@ -71,7 +71,7 @@ _dl_elf_hash (const unsigned char *name)
"jnz 2b\n" "jnz 2b\n"
"1:\t" "1:\t"
: "=&r" (result), "=r" (name), "=&c" (temp0), "=&r" (temp1) : "=&r" (result), "=r" (name), "=&c" (temp0), "=&r" (temp1)
: "0" (0), "1" (name)); : "0" (0), "1" ((const unsigned char *) name));
return result; return result;
} }

View file

@ -680,7 +680,7 @@ gaih_inet (const char *name, const struct gaih_service *service,
h->h_length); h->h_length);
else else
{ {
int32_t *addr = (uint32_t *) (*pat)->addr; uint32_t *addr = (uint32_t *) (*pat)->addr;
addr[3] = *(uint32_t *) h->h_addr_list[i]; addr[3] = *(uint32_t *) h->h_addr_list[i];
addr[2] = htonl (0xffff); addr[2] = htonl (0xffff);
addr[1] = 0; addr[1] = 0;

View file

@ -313,19 +313,6 @@ elf_machine_lazy_rel (struct link_map *map,
/* elf_machine_runtime_setup handles this. */ /* elf_machine_runtime_setup handles this. */
} }
auto inline void __attribute__ ((always_inline))
elf_machine_rel (struct link_map *map, const Elf32_Rel *reloc,
const ElfW(Sym) *sym, const struct r_found_version *version,
void *const reloc_addr)
{
}
auto inline void __attribute__ ((always_inline))
elf_machine_rel_relative (ElfW(Addr) l_addr, const Elf32_Rel *reloc,
void *const reloc_addr)
{
}
/* The SVR4 ABI specifies that the JMPREL relocs must be inside the /* The SVR4 ABI specifies that the JMPREL relocs must be inside the
DT_RELA table. */ DT_RELA table. */
#define ELF_MACHINE_PLTREL_OVERLAP 1 #define ELF_MACHINE_PLTREL_OVERLAP 1

View file

@ -810,17 +810,5 @@ elf_machine_lazy_rel (struct link_map *map,
/* elf_machine_runtime_setup handles this. */ /* elf_machine_runtime_setup handles this. */
} }
auto inline void __attribute__ ((always_inline))
elf_machine_rel (struct link_map *map, const Elf64_Rel *reloc,
const ElfW(Sym) *sym, const struct r_found_version *version,
void *const reloc_addr)
{
}
auto inline void __attribute__ ((always_inline))
elf_machine_rel_relative (ElfW(Addr) l_addr, const Elf64_Rel *reloc,
void *const reloc_addr)
{
}
#endif /* RESOLVE */ #endif /* RESOLVE */

View file

@ -256,11 +256,11 @@ elf_machine_plt_value (struct link_map *map, const Elf32_Rela *reloc,
#endif /* !dl_machine_h */ #endif /* !dl_machine_h */
#ifdef RESOLVE_MAP
/* SH never uses Elf32_Rel relocations. */ /* SH never uses Elf32_Rel relocations. */
#define ELF_MACHINE_NO_REL 1 #define ELF_MACHINE_NO_REL 1
#ifdef RESOLVE_MAP
/* Perform the relocation specified by RELOC and SYM (which is fully resolved). /* Perform the relocation specified by RELOC and SYM (which is fully resolved).
MAP is the object containing the reloc. */ MAP is the object containing the reloc. */