This is the mail archive of the
binutils@sources.redhat.com
mailing list for the binutils project.
Re: Linker is broken due to _bfd_elf_merge_symbol change
On Wed, May 04, 2005 at 03:41:34PM +0930, Alan Modra wrote:
> On Tue, May 03, 2005 at 10:43:23PM -0700, H. J. Lu wrote:
> > http://sourceware.org/ml/binutils/2005-05/msg00018.html
> >
> > I will revert it if it is't fixed soon.
>
> Not without explaining why the patch causes a problem.
>
If you take a look at _bfd_elf_merge_symbol, newdef and olddef can
change after:
/* Skip weak definitions of symbols that are already defined. */
if (newdef && olddef && newweak && !oldweak)
{
*skip = TRUE;
return TRUE;
}
That is the wrong place to check them. My patch:
http://sourceware.org/ml/binutils/2005-05/msg00089.html
moved it after all changes of newdef and olddef.
H.J.