diff --git a/bfd/ChangeLog b/bfd/ChangeLog index ff33b489731..54bfc039a30 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,5 +1,8 @@ 2002-03-14 Nick Clifton + * coffcode.h (coff_slurp_symbol_table): When adding BSF_WEAK flag, + OR it in rather than replacing previously selected flags. + * elfxx-target.h (TARGET_BIG_SYM): Set ar_max_namelen to 15. (TARGET_LITTLE_SYM): Set ar_max_namelen to 15. diff --git a/bfd/coffcode.h b/bfd/coffcode.h index f0a2c5e3a61..f87cb9e98ce 100644 --- a/bfd/coffcode.h +++ b/bfd/coffcode.h @@ -4443,16 +4443,14 @@ coff_slurp_symbol_table (abfd) #ifdef COFF_WITH_PE if (src->u.syment.n_sclass == C_NT_WEAK) - dst->symbol.flags = BSF_WEAK; + dst->symbol.flags |= BSF_WEAK; + if (src->u.syment.n_sclass == C_SECTION && src->u.syment.n_scnum > 0) - { dst->symbol.flags = BSF_LOCAL; - } #endif - if (src->u.syment.n_sclass == C_WEAKEXT) - dst->symbol.flags = BSF_WEAK; + dst->symbol.flags |= BSF_WEAK; break;