[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Bug gold/18288] gold does not handle common symbols in shared libraries
From: |
cvs-commit at gcc dot gnu.org |
Subject: |
[Bug gold/18288] gold does not handle common symbols in shared libraries correctly |
Date: |
Sun, 07 Jun 2015 21:05:01 +0000 |
https://sourceware.org/bugzilla/show_bug.cgi?id=18288
--- Comment #22 from cvs-commit at gcc dot gnu.org <cvs-commit at gcc dot
gnu.org> ---
The master branch has been updated by Cary Coutant <address@hidden>:
https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=b8cf50755b573140aae71f7247b604373fcdfbeb
commit b8cf50755b573140aae71f7247b604373fcdfbeb
Author: Cary Coutant <address@hidden>
Date: Sun Jun 7 14:03:09 2015 -0700
Fix incorrect handling of STT_COMMON symbols in shared libraries.
The gABI allows STT_COMMON symbols to appear in executables and shared
objects, so that the dynamic loader can resolve commons across modules.
When reading a shared object, however, an STT_COMMON symbol should be
treated as a regular definition at link time.
In a relocatable object, the gABI requires that any STT_COMMON symbols
must also be defined in the special SHN_COMMON section (which we extend
to include target-specific small and large common sections). Thus,
there is no need for gold to treat STT_COMMON symbols as common unless
the st_shndx field is also set to a common section.
gold/
PR gold/18288
* resolve.cc (symbol_to_bits): Remove type parameter; adjust all
callers. Don't use STT_COMMON to check for common symbols.
(Symbol_table::resolve): Warn if relocatable object has STT_COMMON
symbol that's not in a common section.
* symtab.h (Symbol::is_common): Don't use STT_COMMON to check for
common symbols.
--
You are receiving this mail because:
You are on the CC list for the bug.