PR25236, common sym versioning
authorAlan Modra <amodra@gmail.com>
Fri, 6 Dec 2019 00:51:45 +0000 (11:21 +1030)
committerAlan Modra <amodra@gmail.com>
Sat, 7 Dec 2019 05:51:01 +0000 (16:21 +1030)
commit5fa370e437f39bf73a133cc84c4e6329943522bf
tree92c6bf215135bdef8faf0d1430fa810719a2ab32
parent9231c9c2d4dcc58d74bc56c20fb586db70a158b5
PR25236, common sym versioning

In cases where a relocatable object file has a common symbol, no other
file has a definition, and there is a matching common symbol found in
a shared library then ld will output a definition using the largest of
size and alignment for the commons.  This patch fixes a bug in ld that
ignored common symbols when assigning versions, resulting in such
symbols being given VER_NDX_LOCAL versions.

PR 25236
* elflink.c (_bfd_elf_link_assign_sym_version): Assign versions
for ELF_COMMON_DEF_P symbols.
(elf_link_output_extsym, _bfd_elf_add_default_symbol): Adjust to
suit.
bfd/ChangeLog
bfd/elflink.c