aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMaciej W. Rozycki <macro@codesourcery.com>2013-04-25 16:09:19 +0100
committerMaciej W. Rozycki <macro@codesourcery.com>2013-04-25 16:14:49 +0100
commitae9552cf7b7f43591a1dfd54baf48d31fbbe9fac (patch)
tree7fb29a609ae5b681c7fd3c0a76121a9395818163
parent93fd48c5f633dac3a81a01147688c5d7a429cb58 (diff)
downloadglibc-ae9552cf7b7f43591a1dfd54baf48d31fbbe9fac.zip
glibc-ae9552cf7b7f43591a1dfd54baf48d31fbbe9fac.tar.gz
glibc-ae9552cf7b7f43591a1dfd54baf48d31fbbe9fac.tar.bz2
Declare __ehdr_start with hidden visibility.
This avoids a linker bug triggering for MIPS SVR4 binaries: http://sourceware.org/bugzilla/show_bug.cgi?id=15365 and regardless serves as a documentation of intent.
-rw-r--r--ChangeLog3
-rw-r--r--csu/libc-start.c3
2 files changed, 5 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index da92463..930af2a 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,8 @@
2013-04-25 Maciej W. Rozycki <macro@codesourcery.com>
+ * csu/libc-start.c (__libc_start_main) [!SHARED]: Declare
+ __ehdr_start with hidden visibility.
+
* soft-fp/op-common.h (_FP_SQRT): s/sNAN/NAN/ in a comment.
2013-04-24 Carlos O'Donell <carlos@redhat.com>
diff --git a/csu/libc-start.c b/csu/libc-start.c
index fa9085c..e5da3ef 100644
--- a/csu/libc-start.c
+++ b/csu/libc-start.c
@@ -161,7 +161,8 @@ LIBC_START_MAIN (int (*main) (int, char **, char ** MAIN_AUXVEC_DECL),
So we can set up _dl_phdr and _dl_phnum even without any
information from auxv. */
- extern const ElfW(Ehdr) __ehdr_start __attribute__ ((weak));
+ extern const ElfW(Ehdr) __ehdr_start
+ __attribute__ ((weak, visibility ("hidden")));
if (&__ehdr_start != NULL)
{
assert (__ehdr_start.e_phentsize == sizeof *GL(dl_phdr));