From mboxrd@z Thu Jan 1 00:00:00 1970 From: Richard Henderson To: Manfred Hollstein Cc: rth@cygnus.com, bfd@cygnus.com, gas2@cygnus.com, Manfred.Hollstein@ks.sel.alcatel.de Subject: Re: Bugs in recent snapshots on Solaris Date: Fri, 20 Mar 1998 02:30:00 -0000 Message-id: <19980320023241.39647@dot.cygnus.com> References: <13576.61624.313896.482781@slsvhmt> <13576.63996.735032.948934@slsvhmt> <13576.63996.735032.948934@slsvhmt> X-SW-Source: 1998/msg00021.html > - /* 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~