This is the mail archive of the bfd@sourceware.cygnus.com mailing list for the bfd project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: Bugs in recent snapshots on Solaris


> -      /* If this symbol is not defined in a regular file, and we are
> -	 not generating a shared library, then set the symbol to this
> -	 location in the .plt.  This is required to make function
> -	 pointers compare as equal between the normal executable and
> -	 the shared library.  */
> -      if (! info->shared
> -	  && (h->elf_link_hash_flags & ELF_LINK_HASH_DEF_REGULAR) == 0)
> -	{
> -	  h->root.u.def.section = s;
> -	  h->root.u.def.value = s->_raw_size;
> -	}
> +      /* Set the symbol to this location in the .plt.  This is
> +	 required to make function pointers compare as equal between
> +	 the normal executable and the shared library.  */
> +      h->root.u.def.section = s;
> +      h->root.u.def.value = s->_raw_size;

This was the offending bit.  The other part is righteous.
Somewhere I got a bit overeager.

Sorry about that.


r~