This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
[PATCH] Fix warnings on i686
- From: Andreas Jaeger <aj at suse dot de>
- To: libc-alpha at sourceware dot org
- Date: Thu, 17 May 2012 17:20:46 +0200
- Subject: [PATCH] Fix warnings on i686
I noticed the following two warnings compiling glibc on Linux/i686:
../sysdeps/i386/dl-machine.h:336:30: warning: unused variable ârefsymâ [-Wunused-variable]
rtld.c:1435:3: warning: implicit declaration of function â_dl_discover_osversionâ [-Wimplicit-function-declaration]
The file ./sysdeps/unix/sysv/linux/dl-sysdep.h had a change to "Don't
declare _dl_discover_osversion only for older kernels." which is missing
in the file ./nptl/sysdeps/unix/sysv/linux/i386/i686/dl-sysdep.h.
For dl-machine.h it's moving refsym inside ifndef RTLD_BOOTSTRAP.
Tested on Linux/i686.
Ok to commit?
Andreas
for nptl:
2012-05-17 Andreas Jaeger <aj@suse.de>
* sysdeps/unix/sysv/linux/i386/i686/dl-sysdep.h
(HAVE_DL_DISCOVER_OSVERSION): Don't declare _dl_discover_osversion
only for older kernels.
2012-05-17 Andreas Jaeger <aj@suse.de>
* sysdeps/i386/dl-machine.h (elf_machine_rel): Declare refsym only
when it is used.
diff --git a/nptl/sysdeps/unix/sysv/linux/i386/i686/dl-sysdep.h b/nptl/sysdeps/unix/sysv/linux/i386/i686/dl-sysdep.h
index a2fa3ee..1253343 100644
--- a/nptl/sysdeps/unix/sysv/linux/i386/i686/dl-sysdep.h
+++ b/nptl/sysdeps/unix/sysv/linux/i386/i686/dl-sysdep.h
@@ -1,5 +1,5 @@
/* System-specific settings for dynamic linker code. IA-32 version.
- Copyright (C) 2002, 2003, 2008 Free Software Foundation, Inc.
+ Copyright (C) 2002-2012 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
@@ -58,9 +58,7 @@ extern void _dl_sysinfo_int80 (void) attribute_hidden;
#endif
-/* The _dl_discover_osversion function is so far only needed in sysconf
- to check for kernels later than 2.6.23. */
-#if !defined __ASSEMBLER__ && __LINUX_KERNEL_VERSION < 0x020617
+#ifndef __ASSEMBLER__
/* Get version of the OS. */
extern int _dl_discover_osversion (void) attribute_hidden;
# define HAVE_DL_DISCOVER_OSVERSION 1
diff --git a/sysdeps/i386/dl-machine.h b/sysdeps/i386/dl-machine.h
index e20a961..33847f0 100644
--- a/sysdeps/i386/dl-machine.h
+++ b/sysdeps/i386/dl-machine.h
@@ -1,5 +1,5 @@
/* Machine-dependent ELF dynamic relocation inline functions. i386 version.
- Copyright (C) 1995-2005, 2006, 2009, 2011 Free Software Foundation, Inc.
+ Copyright (C) 1995-2012 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
@@ -333,7 +333,9 @@ elf_machine_rel (struct link_map *map, const Elf32_Rel *reloc,
else
# endif /* !RTLD_BOOTSTRAP and have no -z combreloc */
{
+# ifndef RTLD_BOOTSTRAP
const Elf32_Sym *const refsym = sym;
+# endif
struct link_map *sym_map = RESOLVE_MAP (&sym, version, r_type);
Elf32_Addr value = sym_map == NULL ? 0 : sym_map->l_addr + sym->st_value;
--
Andreas Jaeger aj@{suse.com,opensuse.org} Twitter/Identica: jaegerandi
SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 NÃrnberg, Germany
GF: Jeff Hawn,Jennifer Guild,Felix ImendÃrffer,HRB16746 (AG NÃrnberg)
GPG fingerprint = 93A3 365E CE47 B889 DF7F FED1 389A 563C C272 A126