diff options
author | H.J. Lu <hjl.tools@gmail.com> | 2000-05-22 07:26:58 +0000 |
---|---|---|
committer | H.J. Lu <hjl.tools@gmail.com> | 2000-05-22 07:26:58 +0000 |
commit | 32c092c3fab0ca778242005a793cc4641c3e1b4b (patch) | |
tree | 5ab67f3e05b56175fd416a63c28aec27b391cf0d /bfd/elflink.h | |
parent | 004527cbbbb93a2e7aa688b233db7dde56c9c321 (diff) | |
download | gdb-32c092c3fab0ca778242005a793cc4641c3e1b4b.zip gdb-32c092c3fab0ca778242005a793cc4641c3e1b4b.tar.gz gdb-32c092c3fab0ca778242005a793cc4641c3e1b4b.tar.bz2 |
2000-05-22 H.J. Lu <hjl@gnu.org>
* elflink.h (elf_link_output_extsym): Clear the visibility
field for symbols not defined locally.
Diffstat (limited to 'bfd/elflink.h')
-rw-r--r-- | bfd/elflink.h | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/bfd/elflink.h b/bfd/elflink.h index 5d86bbc..f1dab705 100644 --- a/bfd/elflink.h +++ b/bfd/elflink.h @@ -5089,6 +5089,11 @@ elf_link_output_extsym (h, data) sym.st_info = ELF_ST_INFO (bindtype, ELF_ST_TYPE (sym.st_info)); } + /* If a symbol is not defined locally, we clear the visibility + field. */ + if ((h->elf_link_hash_flags & ELF_LINK_HASH_DEF_REGULAR) == 0) + sym.st_other ^= ELF_ST_VISIBILITY(sym.st_other); + /* If this symbol should be put in the .dynsym section, then put it there now. We have already know the symbol index. We also fill in the entry in the .hash section. */ |