summaryrefslogtreecommitdiff
path: root/bfd/cofflink.c
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
commit00b38d93accccfcac0f746e897e7b176b9dc1285 (patch)
tree36869c9128937310ece2df2bbd678eb77ab54183 /bfd/cofflink.c
parent7e913e71491c81274a141c382a0cb91aba074e85 (diff)
downloadbinutils-redhat-00b38d93accccfcac0f746e897e7b176b9dc1285.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/cofflink.c')
-rw-r--r--bfd/cofflink.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/bfd/cofflink.c b/bfd/cofflink.c
index a99a5b3fe6..151b1fff0e 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[