diff options
Diffstat (limited to 'bfd')
-rw-r--r-- | bfd/ChangeLog | 5 | ||||
-rw-r--r-- | bfd/elflink.h | 11 |
2 files changed, 12 insertions, 4 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog index f597f9c..c35541f 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,8 @@ +2002-08-08 H.J. Lu <hjl@gnu.org> + + * elflink.h (elf_add_default_symbol): Don't warn a defintion + overrides an indirect versioned symbol. + 2002-08-08 Jakub Jelinek <jakub@redhat.com> * elf32-i386.c (elf_i386_relocate_section): Fill in proper addend diff --git a/bfd/elflink.h b/bfd/elflink.h index b1732e4..d849478 100644 --- a/bfd/elflink.h +++ b/bfd/elflink.h @@ -1085,10 +1085,13 @@ elf_add_default_symbol (abfd, info, h, name, sym, sec, value, if (override) { /* Here SHORTNAME is a versioned name, so we don't expect to see - the type of override we do in the case above. */ - (*_bfd_error_handler) - (_("%s: warning: unexpected redefinition of `%s'"), - bfd_archive_filename (abfd), shortname); + the type of override we do in the case above unless it is + overridden by a versioned definiton. */ + if (hi->root.type != bfd_link_hash_defined + && hi->root.type != bfd_link_hash_defweak) + (*_bfd_error_handler) + (_("%s: warning: unexpected redefinition of indirect versioned symbol `%s'"), + bfd_archive_filename (abfd), shortname); } else { |