diff options
-rw-r--r-- | bfd/ChangeLog | 5 | ||||
-rw-r--r-- | bfd/elflink.h | 3 |
2 files changed, 7 insertions, 1 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog index 364305d..9c5fac1 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,8 @@ +2001-10-31 H.J. Lu <hjl@gnu.org> + + * elflink.h (elf_link_output_extsym): Don't clear the visibility + field for relocateable. + 2001-11-01 Alan Modra <amodra@bigpond.net.au> * elf32-hppa.c (elf32_hppa_finish_dynamic_sections): Don't count diff --git a/bfd/elflink.h b/bfd/elflink.h index fd251b0..4c7f0bb 100644 --- a/bfd/elflink.h +++ b/bfd/elflink.h @@ -5696,7 +5696,8 @@ elf_link_output_extsym (h, data) /* If a symbol is not defined locally, we clear the visibility field. */ - if ((h->elf_link_hash_flags & ELF_LINK_HASH_DEF_REGULAR) == 0) + if (! finfo->info->relocateable + && (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 |