diff options
author | Alan Modra <amodra@gmail.com> | 2021-03-03 15:15:23 +1030 |
---|---|---|
committer | Alan Modra <amodra@gmail.com> | 2021-03-03 17:46:52 +1030 |
commit | fd5c076a06d88dc53e56a17d43ea4ad5e27515a0 (patch) | |
tree | 6be5f0d9208e061037b5c5f8bc1c67e0e6f8f040 /binutils/objcopy.c | |
parent | 5789f845fbf67d271e0f5ff154eb03319b551211 (diff) | |
download | binutils-fd5c076a06d88dc53e56a17d43ea4ad5e27515a0.zip binutils-fd5c076a06d88dc53e56a17d43ea4ad5e27515a0.tar.gz binutils-fd5c076a06d88dc53e56a17d43ea4ad5e27515a0.tar.bz2 |
PR27493, objcopy --weaken-symbol does not weaken undefined symbols
PR 27493
* objcopy.c (filter_symbols): Apply --weaken to undefined symbols.
* NEWS: Mention feature.
Diffstat (limited to 'binutils/objcopy.c')
-rw-r--r-- | binutils/objcopy.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/binutils/objcopy.c b/binutils/objcopy.c index 041acea..99e6cad 100644 --- a/binutils/objcopy.c +++ b/binutils/objcopy.c @@ -1673,7 +1673,8 @@ filter_symbols (bfd *abfd, bfd *obfd, asymbol **osyms, if (keep) { - if ((flags & BSF_GLOBAL) != 0 + if (((flags & BSF_GLOBAL) != 0 + || undefined) && (weaken || is_specified_symbol (name, weaken_specific_htab))) { sym->flags &= ~ BSF_GLOBAL; |