Change ld "notice" interface for better handling of indirect symbols

Alan Modra amodra@gmail.com
Thu Aug 28 02:11:00 GMT 2014


On Wed, Aug 27, 2014 at 10:02:13AM -0400, Kyle McMartin wrote:
> On Tue, Aug 12, 2014 at 10:09:11PM +0930, Alan Modra wrote:
> > The main aim of this change was to have non_ir_ref set correctly on
> > new indirect symbols.  I could have added a "copy" param to the "notice"
> > function, so that indirect symbols could be created in plugin_notice,
> > but it seemed cleaner to create indirect syms earlier and pass them
> > rather than "string" to "notice".
> 
> Happily, this seems to resolve an issue building with LTO and ld.bfd...
> We had a bug report where building systemd on aarch64 and s390 were
> failing with multiply defined symbols (everyone else has gold ported,
> which was, for some as yet undebugged by me reason, didn't do this.)
> 
> https://bugzilla.redhat.com/show_bug.cgi?id=1133960

That's nice to know.  I'd been looking at LTO and ld.bfd problems in
general, and warning symbols specifically (PR16746) when I saw the
potential problem with non_ir_ref and lack of following a warning sym
link in plugin_notice.  So I guess it isn't surprising that this fixed
your bug.

-- 
Alan Modra
Australia Development Lab, IBM



More information about the Binutils mailing list