[binutils-gdb] PR31941 objcopy --globalize-symbol

Alan Modra amodra@sourceware.org
Mon Jul 1 01:43:53 GMT 2024


https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=79674bfc369e793b0b53cc0dc09a3fcfdbdf158a

commit 79674bfc369e793b0b53cc0dc09a3fcfdbdf158a
Author: Alan Modra <amodra@gmail.com>
Date:   Mon Jul 1 09:02:10 2024 +0930

    PR31941 objcopy --globalize-symbol
    
    I think FILE symbols are special, and I can't see why anyone would
    want them to be made global.  The fact that no one has reported this
    bug since commit 7b4a0685e80a in 2005 supports that claim.
    
            PR 31941
            * objcopy.c (filter_symbols): Don't allow BSF_FILE symbols to
            be made global.

Diff:
---
 binutils/objcopy.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/binutils/objcopy.c b/binutils/objcopy.c
index f54ae734198..5fb33b5509a 100644
--- a/binutils/objcopy.c
+++ b/binutils/objcopy.c
@@ -1743,6 +1743,7 @@ filter_symbols (bfd *abfd, bfd *obfd, asymbol **osyms,
 
 	  else if (!undefined
 		   && (flags & BSF_LOCAL)
+		   && !(flags & BSF_FILE)
 		   && is_specified_symbol (name, globalize_specific_htab))
 	    {
 	      flags &= ~BSF_LOCAL;


More information about the Binutils-cvs mailing list