summaryrefslogtreecommitdiff
path: root/bfd
diff options
context:
space:
mode:
authorDanny Smith <dannysmith@users.sourceforge.net>2005-08-17 08:58:01 +0000
committerDanny Smith <dannysmith@users.sourceforge.net>2005-08-17 08:58:01 +0000
commit735fa2a76f15ae4c62087e7f6c03b0d1d823f1ac (patch)
treeb58712660972841020d34fd21cb4f959394b912c /bfd
parent10acf1253a4c64467fe0dc3a6fb2a028cc583954 (diff)
downloadgdb-735fa2a76f15ae4c62087e7f6c03b0d1d823f1ac.tar.gz
bfd
* cofflink.c (_bfd_coff_generic_relocate_section): Correct comment. gas * config/obj-coff.c (obj_coff_weak): Set auxiliary record of NT weak externals to IMAGE_WEAK_EXTERN_SEARCH_NOLIBRARY.
Diffstat (limited to 'bfd')
-rw-r--r--bfd/ChangeLog5
-rw-r--r--bfd/cofflink.c8
2 files changed, 10 insertions, 3 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index ed9ead4e2e4..7d0d5f36dfb 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,3 +1,8 @@
+2005-08-17 Danny Smith <dannysmith@users.sourceforge.net>
+
+ * cofflink.c (_bfd_coff_generic_relocate_section): Correct
+ comment.
+
2005-08-17 Alan Modra <amodra@bigpond.net.au>
* elflink.c (_bfd_elf_define_linkage_sym): Don't call
diff --git a/bfd/cofflink.c b/bfd/cofflink.c
index a99a5b3fe6b..151b1fff0e5 100644
--- a/bfd/cofflink.c
+++ b/bfd/cofflink.c
@@ -2937,9 +2937,11 @@ _bfd_coff_generic_relocate_section (bfd *output_bfd,
Note that weak symbols without aux records are a GNU
extension.
FIXME: All weak externals are treated as having
- characteristics IMAGE_WEAK_EXTERN_SEARCH_LIBRARY (2).
- There are no known uses of the other two types of
- weak externals. */
+ characteristic IMAGE_WEAK_EXTERN_SEARCH_NOLIBRARY (1).
+ These behave as per SVR4 ABI: A library member
+ will resolve a weak external only if a normal
+ external causes the library member to be linked.
+ See also linker.c: generic_link_check_archive_element. */
asection *sec;
struct coff_link_hash_entry *h2 =
input_bfd->tdata.coff_obj_data->sym_hashes[