This is the mail archive of the
binutils@sourceware.org
mailing list for the binutils project.
Re: --as-needed change wrt undefined weak symbols
- From: "H.J. Lu" <hjl dot tools at gmail dot com>
- To: binutils at sourceware dot org
- Date: Thu, 4 Apr 2013 10:15:58 -0700
- Subject: Re: --as-needed change wrt undefined weak symbols
- References: <20130114035805 dot GF3244 at bubble dot grove dot modra dot org> <CAMe9rOr9pmgn=ARZn_kEcJvAm4yHpyDmgxq=7_XHRVs7pzOopQ at mail dot gmail dot com> <20130115022340 dot GO3244 at bubble dot grove dot modra dot org> <CAMe9rOrOBPOHkQpPzYjC=OBgwq4bF29zDTTWidW20RJ5Y-F3tA at mail dot gmail dot com> <20130115052328 dot GQ3244 at bubble dot grove dot modra dot org> <CAMe9rOqcu7_-aAkkF=im56KsQ9Ypb6YkmmogcZDoswkNsaPPqg at mail dot gmail dot com> <20130318024130 dot GA18331 at bubble dot grove dot modra dot org>
On Sun, Mar 17, 2013 at 7:41 PM, Alan Modra <amodra@gmail.com> wrote:
> http://sourceware.org/ml/binutils/2013-01/msg00188.html
>
> bfd/
> PR ld/12549
> elflink.c (elf_link_add_object_symbols): Exclude weak refs when
> considering whether an --as-needed library is needed.
> ld/
> * ld.texinfo (--as-needed): Update.
> ld/testsuite/
> * ld-elf/pr14862.out: Expect no output.
>
> I'm committing the above patch. Apologies to the bug reporter that
> it's taken so long.
>
> --
> Alan Modra
> Australia Development Lab, IBM
Just for the record, this patch may change the behavior of
the resulting executables for
extern void bar () __attribute__((weak));
if (bar)
bar ();
if bar is defined in the DT_NEEDED library. Binutils 2.22
will resolve bar and add a DT_NEEDED entry. The new
linker will resolve bar to 0. We will see if it causes any
problems.
--
H.J.