PATCH: ld/3351: aborting at elflink.c line 6778 in elf_link_check_versioned_symbol

Alan Modra amodra@bigpond.net.au
Thu Oct 19 07:51:00 GMT 2006


On Tue, Oct 17, 2006 at 05:57:12PM -0700, H. J. Lu wrote:
> On Tue, Oct 17, 2006 at 04:31:05PM -0700, H. J. Lu wrote:
> > When a shared library references a forced local symbol in executable,
> > linker tries to issue an error. But it doesn't check indirect symbols.
> > Also, when we update real symbol reference flags, we fail to update
> > indirect symbol reference flags. This patch fixes both.
> > 
> 
> We have to be very careful about indiret symbol created by symbol
> versioning. This patch only updates some indirect symbol flags Should
> _bfd_elf_merge_symbol and elf_link_add_object_symbols update all
> indirect symbol flags at the same time when we update real symbol
> flags?

The usual practice in the linker is to copy flags from the indirect
symbol to the real one at the time the indirect symbol is created.
>From that point on test/modify only the real symbol flags.  I don't
think you should copy anything back to the indirect symbol unless
there is a very good reason to do so.

-- 
Alan Modra
IBM OzLabs - Linux Technology Centre



More information about the Binutils mailing list