aboutsummaryrefslogtreecommitdiff
path: root/bfd/ChangeLog
diff options
context:
space:
mode:
authorH.J. Lu <hjl.tools@gmail.com>2014-01-21 15:42:43 -0800
committerH.J. Lu <hjl.tools@gmail.com>2014-01-21 15:42:51 -0800
commit4584ec12076e088cf36965b88ef8710ca85491f9 (patch)
tree9b22f0bbf45bb9e59e1f3516cfb773d556d2a567 /bfd/ChangeLog
parentefec45729843f9b1864b2a9b491adff85304525a (diff)
downloadgdb-4584ec12076e088cf36965b88ef8710ca85491f9.zip
gdb-4584ec12076e088cf36965b88ef8710ca85491f9.tar.gz
gdb-4584ec12076e088cf36965b88ef8710ca85491f9.tar.bz2
Check incompatible existing default symbol definition
After resolving a versioned reference, foo@VER1, to a default versioned definition, foo@@VER1, from a shared object, we also merge it with the existing regular default symbol definition, foo. When foo is IFUNC and foo@@VER1 aren't, we will merge 2 incompatible definitions. This patch avoids merging foo@@VER1 definition with foo definition if one is IFUNC and the other isn't.
Diffstat (limited to 'bfd/ChangeLog')
-rw-r--r--bfd/ChangeLog8
1 files changed, 8 insertions, 0 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index 5923bc3..c70a7db 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,5 +1,13 @@
2014-01-21 H.J. Lu <hongjiu.lu@intel.com>
+ PR ld/16467
+ * elflink.c (_bfd_elf_merge_symbol): When types of the existing
+ regular default symbol definition and the versioned dynamic
+ symbol definition mismatch, skip the default symbol definition
+ if one of them is IFUNC.
+
+2014-01-21 H.J. Lu <hongjiu.lu@intel.com>
+
PR ld/2404
* elflink.c (_bfd_elf_merge_symbol): Don't check info->shared,
info->export_dynamic nor h->ref_dynamic for type mismatch when