Mon Oct 9 11:24:08 1995 Ian Lance Taylor <ian@cygnus.com>
+ * coffcode.h (coff_slurp_symbol_table): Set BSF_NOT_AT_END for an
+ XCOFF XTY_LD symbol.
+
* targets.c (bfd_target): Rename _bfd_read_ar_hdr field to
_bfd_read_ar_hdr_fn.
* libbfd-in.h (_bfd_read_ar_hdr): Update accordingly.
/* A C_HIDEXT symbol is not global. */
if (src->u.syment.n_sclass == C_HIDEXT)
dst->symbol.flags = BSF_LOCAL;
+ /* A XTY_LD symbol should not go at the end. */
+ if (src->u.syment.n_numaux > 0)
+ {
+ combined_entry_type *auxp;
+
+ auxp = src + src->u.syment.n_numaux;
+ if (SMTYP_SMTYP (auxp->u.auxent.x_csect.x_smtyp) == XTY_LD)
+ dst->symbol.flags |= BSF_NOT_AT_END;
+ }
#endif
break;
dst->symbol.flags = BSF_DEBUGGING;
dst->symbol.value = src->u.syment.n_value;
- /* The value is actually a symbol index. Save a pointer to
- the symbol instead of the index. FIXME: This should use a
- union. */
+ /* The value is actually a symbol index. Save a pointer
+ to the symbol instead of the index. FIXME: This
+ should use a union. */
src->u.syment.n_value =
(long) (native_symbols + src->u.syment.n_value);
src->fix_value = 1;