Jakub Jelinek 21b973
2009-08-06  Jakub Jelinek  <jakub@redhat.com>
Jakub Jelinek 21b973
	    Alan Modra  <amodra@bigpond.net.au>
Jakub Jelinek 21b973
Jakub Jelinek 21b973
	PR binutils/10492
Jakub Jelinek 21b973
	* elf.c (sym_is_global): Return true even for BSF_GNU_UNIQUE
Jakub Jelinek 21b973
	symbols.
Jakub Jelinek 21b973
	* elf32-mips.c (mips_elf_sym_is_global): Likewise.
Jakub Jelinek 21b973
	* elfn32-mips.c (mips_elf_sym_is_global): Likewise.
Jakub Jelinek 21b973
Jakub Jelinek 21b973
--- bfd/elf.c.jj	2009-08-06 14:20:38.000000000 +0200
Jakub Jelinek 21b973
+++ bfd/elf.c	2009-08-06 14:41:06.000000000 +0200
Jakub Jelinek 21b973
@@ -3084,7 +3084,7 @@ sym_is_global (bfd *abfd, asymbol *sym)
Jakub Jelinek 21b973
   if (bed->elf_backend_sym_is_global)
Jakub Jelinek 21b973
     return (*bed->elf_backend_sym_is_global) (abfd, sym);
Jakub Jelinek 21b973
 
Jakub Jelinek 21b973
-  return ((sym->flags & (BSF_GLOBAL | BSF_WEAK)) != 0
Jakub Jelinek 21b973
+  return ((sym->flags & (BSF_GLOBAL | BSF_WEAK | BSF_GNU_UNIQUE)) != 0
Jakub Jelinek 21b973
 	  || bfd_is_und_section (bfd_get_section (sym))
Jakub Jelinek 21b973
 	  || bfd_is_com_section (bfd_get_section (sym)));
Jakub Jelinek 21b973
 }
Jakub Jelinek 21b973
--- bfd/elf32-mips.c.jj	2009-08-06 14:17:48.000000000 +0200
Jakub Jelinek 21b973
+++ bfd/elf32-mips.c	2009-08-06 14:41:52.000000000 +0200
Jakub Jelinek 21b973
@@ -1450,7 +1450,7 @@ mips_elf_sym_is_global (bfd *abfd ATTRIB
Jakub Jelinek 21b973
   if (SGI_COMPAT (abfd))
Jakub Jelinek 21b973
     return (sym->flags & BSF_SECTION_SYM) == 0;
Jakub Jelinek 21b973
   else
Jakub Jelinek 21b973
-    return ((sym->flags & (BSF_GLOBAL | BSF_WEAK)) != 0
Jakub Jelinek 21b973
+    return ((sym->flags & (BSF_GLOBAL | BSF_WEAK | BSF_GNU_UNIQUE)) != 0
Jakub Jelinek 21b973
 	    || bfd_is_und_section (bfd_get_section (sym))
Jakub Jelinek 21b973
 	    || bfd_is_com_section (bfd_get_section (sym)));
Jakub Jelinek 21b973
 }
Jakub Jelinek 21b973
--- bfd/elfn32-mips.c.jj	2008-11-19 15:50:38.000000000 +0100
Jakub Jelinek 21b973
+++ bfd/elfn32-mips.c	2009-08-06 14:42:32.000000000 +0200
Jakub Jelinek 21b973
@@ -2289,7 +2289,7 @@ mips_elf_sym_is_global (bfd *abfd ATTRIB
Jakub Jelinek 21b973
   if (SGI_COMPAT (abfd))
Jakub Jelinek 21b973
     return (sym->flags & BSF_SECTION_SYM) == 0;
Jakub Jelinek 21b973
   else
Jakub Jelinek 21b973
-    return ((sym->flags & (BSF_GLOBAL | BSF_WEAK)) != 0
Jakub Jelinek 21b973
+    return ((sym->flags & (BSF_GLOBAL | BSF_WEAK | BSF_GNU_UNIQUE)) != 0
Jakub Jelinek 21b973
 	    || bfd_is_und_section (bfd_get_section (sym))
Jakub Jelinek 21b973
 	    || bfd_is_com_section (bfd_get_section (sym)));
Jakub Jelinek 21b973
 }