aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--bfd/ChangeLog5
-rw-r--r--bfd/elflink.h6
2 files changed, 11 insertions, 0 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index a325b74..170e372 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,3 +1,8 @@
+Mon Dec 4 11:25:39 1995 Ian Lance Taylor <ian@cygnus.com>
+
+ * elflink.h (elf_link_output_extsym): Just ignore warning and
+ indirect references to symbols which don't really exist.
+
Sun Dec 3 19:00:27 1995 Kim Knuttila <krk@cygnus.com>
* peicode.h (pe_print_idata): Minor format fixes
diff --git a/bfd/elflink.h b/bfd/elflink.h
index 3e18295..e0d01ea 100644
--- a/bfd/elflink.h
+++ b/bfd/elflink.h
@@ -2508,6 +2508,12 @@ elf_link_output_extsym (h, data)
case bfd_link_hash_indirect:
case bfd_link_hash_warning:
+ /* We can't represent these symbols in ELF. A warning symbol
+ may have come from a .gnu.warning.SYMBOL section anyhow. We
+ just put the target symbol in the hash table. If the target
+ symbol does not really exist, don't do anything. */
+ if (h->root.u.i.link->type == bfd_link_hash_new)
+ return true;
return (elf_link_output_extsym
((struct elf_link_hash_entry *) h->root.u.i.link, data));
}