diff options
-rw-r--r-- | bfd/ChangeLog | 7 | ||||
-rw-r--r-- | bfd/elf32-i386.c | 3 | ||||
-rw-r--r-- | bfd/elf64-x86-64.c | 3 |
3 files changed, 11 insertions, 2 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog index 6022765..05e93da 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,5 +1,12 @@ 2009-06-13 H.J. Lu <hongjiu.lu@intel.com> + * elf32-i386.c (elf_i386_check_relocs): Properly report + local symbol for unhandled relocation against STT_GNU_IFUNC + symbol. + * elf64-x86-64.c (elf64_x86_64_check_relocs): Likewise. + +2009-06-13 H.J. Lu <hongjiu.lu@intel.com> + PR ld/10269 * elf32-i386.c: Include "objalloc.h" and "hashtab.h". (elf_i386_link_hash_table): Add loc_hash_table and diff --git a/bfd/elf32-i386.c b/bfd/elf32-i386.c index 273bd85..c6e6265 100644 --- a/bfd/elf32-i386.c +++ b/bfd/elf32-i386.c @@ -1480,7 +1480,8 @@ elf_i386_check_relocs (bfd *abfd, (_("%B: relocation %s against STT_GNU_IFUNC " "symbol `%s' isn't handled by %s"), abfd, elf_howto_table[r_type].name, - h != NULL ? h->root.root.string : "a local symbol", + (h->root.root.string + ? h->root.root.string : "a local symbol"), __FUNCTION__); bfd_set_error (bfd_error_bad_value); return FALSE; diff --git a/bfd/elf64-x86-64.c b/bfd/elf64-x86-64.c index 2808906..3cb4f06 100644 --- a/bfd/elf64-x86-64.c +++ b/bfd/elf64-x86-64.c @@ -1263,7 +1263,8 @@ elf64_x86_64_check_relocs (bfd *abfd, struct bfd_link_info *info, (_("%B: relocation %s against STT_GNU_IFUNC " "symbol `%s' isn't handled by %s"), abfd, x86_64_elf_howto_table[r_type].name, - h != NULL ? h->root.root.string : "a local symbol", + (h->root.root.string + ? h->root.root.string : "a local symbol"), __FUNCTION__); bfd_set_error (bfd_error_bad_value); return FALSE; |