diff options
author | Alan Modra <amodra@gmail.com> | 2008-11-26 01:04:17 +0000 |
---|---|---|
committer | Alan Modra <amodra@gmail.com> | 2008-11-26 01:04:17 +0000 |
commit | ae5a359786fb21bf95678a4e9eebf2ff90114c7a (patch) | |
tree | 553563478a9db484d0305122e3f15748073bfb1d /ld/ld.texinfo | |
parent | 6cf7d91b7e79070a10ad6012559ac9adac60499a (diff) | |
download | binutils-ae5a359786fb21bf95678a4e9eebf2ff90114c7a.zip binutils-ae5a359786fb21bf95678a4e9eebf2ff90114c7a.tar.gz binutils-ae5a359786fb21bf95678a4e9eebf2ff90114c7a.tar.bz2 |
include/
PR 7047
* bfdlink.h (struct bfd_elf_version_expr): Delete "symbol".
Add "literal".
bfd/
PR 7047
* configure.in: Bump version.
* configure: Regenerate.
* elflink.c (_bfd_elf_link_assign_sym_version): Continue matching
against version nodes when a global match is a wildcard. Similarly
continue matching on local wildcard matches, rather than only
continuing for "*". Have any global wildcard match override a
local wildcard match. Correct logic hiding unversioned symbol.
(bfd_elf_size_dynamic_sections): Update for changes to struct
bfd_elf_version_expr.
ld/
PR 7047
* emultempl/ppc64elf.em (gld${EMULATION_NAME}_new_vers_pattern): Update
for changes to struct bfd_elf_version_expr.
* ldlang.c (lang_vers_match, version_expr_head_hash): Likewise.
(version_expr_head_eq, lang_finalize_version_expr_head): Likewise.
(lang_register_vers_node): Likewise.
(lang_new_vers_pattern): Likewise. Ensure "literal" is set when
no glob chars found in "pattern".
(realsymbol): Correct backslash quote logic.
* ld.texinfo (VERSION): Warn about global wildcards.
Diffstat (limited to 'ld/ld.texinfo')
-rw-r--r-- | ld/ld.texinfo | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/ld/ld.texinfo b/ld/ld.texinfo index 83c8ac4..4e8cf8a 100644 --- a/ld/ld.texinfo +++ b/ld/ld.texinfo @@ -4561,7 +4561,11 @@ When the linker finds a symbol defined in a library which is not specifically bound to a version node, it will effectively bind it to an unspecified base version of the library. You can bind all otherwise unspecified symbols to a given version node by using @samp{global: *;} -somewhere in the version script. +somewhere in the version script. Note that it's slightly crazy to use +wildcards in a global spec except on the last version node. Global +wildcards elsewhere run the risk of accidentally adding symbols to the +set exported for an old version. That's wrong since older versions +ought to have a fixed set of symbols. The names of the version nodes have no specific meaning other than what they might suggest to the person reading them. The @samp{2.0} version |