BFD/ELF: Correct a `remove' global shadowing error for pre-4.8 GCC
authorMaciej W. Rozycki <macro@mips.com>
Tue, 10 Jul 2018 23:42:43 +0000 (00:42 +0100)
committerMaciej W. Rozycki <macro@mips.com>
Tue, 10 Jul 2018 23:42:43 +0000 (00:42 +0100)
Remove `-Wshadow' compilation errors:

cc1: warnings being treated as errors
.../bfd/elflink.c: In function 'bfd_elf_final_link':
.../bfd/elflink.c:11722: error: declaration of 'remove' shadows a global declaration
/usr/include/stdio.h:154: error: shadowed declaration is here

which for versions of GCC before 4.8 prevent support for ELF targets
from being built.  See also GCC PR c/53066.

bfd/
* elflink.c (bfd_elf_final_link): Rename `remove' local variable
to `remove_section'.

bfd/ChangeLog
bfd/elflink.c

index b0671b3ccbb37fd86775ffff6abfd186dd09c904..dd6ecd959d74b5f45277e216bea61ff94f66528e 100644 (file)
@@ -1,3 +1,8 @@
+2018-07-10  Maciej W. Rozycki  <macro@mips.com>
+
+       * elflink.c (bfd_elf_final_link): Rename `remove' local variable
+       to `remove_section'.
+
 2018-07-10  Alan Modra  <amodra@gmail.com>
 
        * elf32-xgate.h: Delete.
index aabbf7f667b9bdac39dc6128be6e5c8527c2b075..b24fb95848d6990a2496600d910a400b2648a58c 100644 (file)
@@ -11719,7 +11719,7 @@ bfd_elf_final_link (bfd *abfd, struct bfd_link_info *info)
   std_attrs_section = get_elf_backend_data (abfd)->obj_attrs_section;
   for (o = abfd->sections; o != NULL; o = o->next)
     {
-      bfd_boolean remove = FALSE;
+      bfd_boolean remove_section = FALSE;
 
       if ((std_attrs_section && strcmp (o->name, std_attrs_section) == 0)
          || strcmp (o->name, ".gnu.attributes") == 0)
@@ -11743,14 +11743,14 @@ bfd_elf_final_link (bfd *abfd, struct bfd_link_info *info)
          if (attr_size)
            attr_section = o;
          else
-           remove = TRUE;
+           remove_section = TRUE;
        }
       else if ((o->flags & SEC_GROUP) != 0 && o->size == 0)
        {
          /* Remove empty group section from linker output.  */
-         remove = TRUE;
+         remove_section = TRUE;
        }
-      if (remove)
+      if (remove_section)
        {
          o->flags |= SEC_EXCLUDE;
          bfd_section_list_remove (abfd, o);