PR26002 undefined symbol VER_NDX_GLOBAL vs. VER_NDX_LOCAL
authorAlan Modra <amodra@gmail.com>
Fri, 15 Jan 2021 10:47:43 +0000 (21:17 +1030)
committerAlan Modra <amodra@gmail.com>
Sat, 16 Jan 2021 00:41:51 +0000 (11:11 +1030)
commiteb6e6af8c17a8f4e120d79cb5f2451ebe60aaf4e
tree7be44ededf1492bc32581d1d9b13c1531ec255e0
parent1368b914e93a3af332f787d3d41c106d11bb90da
PR26002 undefined symbol VER_NDX_GLOBAL vs. VER_NDX_LOCAL

This patch makes undefined unversioned dynamic symbols use
VER_NDX_GLOBAL (version 1) rather than VER_NDX_LOCAL (version 0).
There really isn't much use for an undefined local dynamic symbol, so
we may as well use the logically correct value in .gnu.version.
https://docs.oracle.com/cd/E26505_01/html/E26506/chapter6-54676.html

bfd/
PR 26002
* elflink.c (elf_link_output_extsym): Use version 1 in
.gnu.version for undefined unversioned symbols.
ld/
PR 26002
* testsuite/ld-elfvers/vers6.dsym: Expect "Base" for undefined
unversioned symbols.
* testsuite/ld-elfvers/vers16.dsym: Likewise.
bfd/ChangeLog
bfd/elflink.c
ld/ChangeLog
ld/testsuite/ld-elfvers/vers16.dsym
ld/testsuite/ld-elfvers/vers6.dsym