2009-06-13 H.J. Lu <hongjiu.lu@intel.com>
authorH.J. Lu <hjl.tools@gmail.com>
Sun, 14 Jun 2009 05:45:09 +0000 (05:45 +0000)
committerH.J. Lu <hjl.tools@gmail.com>
Sun, 14 Jun 2009 05:45:09 +0000 (05:45 +0000)
* 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.

bfd/ChangeLog
bfd/elf32-i386.c
bfd/elf64-x86-64.c

index 6022765a4ad081470b96fb0ab3a1a4108d59c597..05e93da97dd32d5d83d5e29b627d47b90e95a784 100644 (file)
@@ -1,3 +1,10 @@
+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
index 273bd85939a0e322850d76f9c235582faf759c4d..c6e62653ebb40e3b57b1e9c131f0c319060e0c73 100644 (file)
@@ -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;
index 2808906a46a2748e0c1d6234a40755269d39493f..3cb4f062026e22292f5c928ff9beb9bc9ce10d4d 100644 (file)
@@ -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;