From: ian Date: Tue, 22 Feb 2000 08:06:01 +0000 (+0000) Subject: 2000-02-22 H.J. Lu X-Git-Url: http://git.osdn.net/view?a=commitdiff_plain;h=85a34d34f9743ab662b9437f5a0b350280e3cce0;p=pf3gnuchains%2Fsourceware.git 2000-02-22 H.J. Lu * elflink.h (elf_link_add_object_symbols): If a version symbol is not defined, don't add a second ELF_VER_CHR. --- diff --git a/bfd/ChangeLog b/bfd/ChangeLog index da0d94da03..5d4d4a2fe6 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -5,6 +5,9 @@ 2000-02-22 H.J. Lu + * elflink.h (elf_link_add_object_symbols): If a version symbol is + not defined, don't add a second ELF_VER_CHR. + * elflink.h (elf_bfd_final_link): Call output_extsym for global symbols converted to local symbols even when stripping all symbols. diff --git a/bfd/elflink.h b/bfd/elflink.h index 00037b38a9..6acb790196 100644 --- a/bfd/elflink.h +++ b/bfd/elflink.h @@ -1444,7 +1444,11 @@ elf_link_add_object_symbols (abfd, info) strcpy (newname, name); p = newname + namelen; *p++ = ELF_VER_CHR; - if ((iver.vs_vers & VERSYM_HIDDEN) == 0) + /* If this is a defined non-hidden version symbol, + we add another @ to the name. This indicates the + default version of the symbol. */ + if ((iver.vs_vers & VERSYM_HIDDEN) == 0 + && sym.st_shndx != SHN_UNDEF) *p++ = ELF_VER_CHR; strcpy (p, verstr);