* aoutx.h (aout_link_add_symbols): Increment sym_hash as well as p
for an indirect or warning symbol.
(aout_link_write_symbols): Update sym_hash with the target of an
- indirect symbol. If an indirect symbol is defined, output the
- calculated value and don't output the target symbol.
+ indirect or warning symbol. If an indirect symbol is defined,
+ output the calculated value and don't output the target symbol.
Tue Jan 18 03:54:59 1994 David J. Mackenzie (djm@thepub.cygnus.com)
external symbol. */
h = *sym_hash;
- /* If this is an indirect symbol, then change hresolve to
- the base symbol. We also change sym_hash so that the
- relocation routines relocate against the real symbol. */
+ /* If this is an indirect or warning symbol, then change
+ hresolve to the base symbol. We also change *sym_hash so
+ that the relocation routines relocate against the real
+ symbol. */
hresolve = h;
if (h != (struct aout_link_hash_entry *) NULL
- && h->root.type == bfd_link_hash_indirect)
+ && (h->root.type == bfd_link_hash_indirect
+ || h->root.type == bfd_link_hash_warning))
{
hresolve = (struct aout_link_hash_entry *) h->root.u.i.link;
while (hresolve->root.type == bfd_link_hash_indirect)