From: Alan Modra Date: Fri, 22 Aug 2008 06:07:45 +0000 (+0000) Subject: * symbols.c (symbol_clone): Ensure clones are not external. X-Git-Tag: binutils-2_19-branchpoint~134 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=73e24c6845aa23ed023402152501009ed1dcc62f;p=platform%2Fupstream%2Fbinutils.git * symbols.c (symbol_clone): Ensure clones are not external. --- diff --git a/gas/ChangeLog b/gas/ChangeLog index ba0fe13..3066c52 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,5 +1,9 @@ 2008-08-22 Alan Modra + * symbols.c (symbol_clone): Ensure clones are not external. + +2008-08-22 Alan Modra + * config/tc-hppa.c (md_begin): Set BSF_KEEP for "dummy_symbol". 2008-08-21 Richard Henderson diff --git a/gas/symbols.c b/gas/symbols.c index 3020710..84f394c 100644 --- a/gas/symbols.c +++ b/gas/symbols.c @@ -596,13 +596,20 @@ symbol_clone (symbolS *orgsymP, int replace) symbol_lastP = newsymP; else if (orgsymP->sy_next) orgsymP->sy_next->sy_previous = newsymP; + + /* Symbols that won't be output can't be external. */ + S_CLEAR_EXTERNAL (orgsymP); orgsymP->sy_previous = orgsymP->sy_next = orgsymP; debug_verify_symchain (symbol_rootP, symbol_lastP); symbol_table_insert (newsymP); } else - newsymP->sy_previous = newsymP->sy_next = newsymP; + { + /* Symbols that won't be output can't be external. */ + S_CLEAR_EXTERNAL (newsymP); + newsymP->sy_previous = newsymP->sy_next = newsymP; + } return newsymP; }