bfd/
authorAlan Modra <amodra@gmail.com>
Tue, 22 Mar 2005 14:49:16 +0000 (14:49 +0000)
committerAlan Modra <amodra@gmail.com>
Tue, 22 Mar 2005 14:49:16 +0000 (14:49 +0000)
* elflink.c (elf_link_add_object_symbols): Set SEC_EXCLUDE on
.gnu.warning.* sections.
ld/
* emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation): Set
SEC_EXCLUDE on .gnu.warning sections.

bfd/ChangeLog
bfd/elflink.c
ld/ChangeLog
ld/emultempl/elf32.em

index ff69b17e830aaecb27cf42f6c9541905f3070f2e..046266defbbf8ad22c27bde19d4d1faa12cddfcc 100644 (file)
@@ -1,3 +1,8 @@
+2005-03-23  Alan Modra  <amodra@bigpond.net.au>
+
+       * elflink.c (elf_link_add_object_symbols): Set SEC_EXCLUDE on
+       .gnu.warning.* sections.
+
 2005-03-22  Alan Modra  <amodra@bigpond.net.au>
 
        * elf32-ppc.c (elf_linker_section_pointers_t): Remove
index 277395a9b5b9c1a6f2e66202ec3ca474cd5caf60..783d9b9ea16b5bd7053aa00e4e5bd009a5785342 100644 (file)
@@ -3240,6 +3240,10 @@ elf_link_add_object_symbols (bfd *abfd, struct bfd_link_info *info)
                  /* Clobber the section size so that the warning does
                     not get copied into the output file.  */
                  s->size = 0;
+
+                 /* Also set SEC_EXCLUDE, so that symbols defined in
+                    the warning section don't get copied to the output.  */
+                 s->flags |= SEC_EXCLUDE;
                }
            }
        }
index 0c8c209b5804a0d9e2b194561e4b2d3b70c59772..1378cb53761f1ec32df9be0effe8b3dea699d448 100644 (file)
@@ -1,3 +1,8 @@
+2005-03-23  Alan Modra  <amodra@bigpond.net.au>
+
+       * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation): Set
+       SEC_EXCLUDE on .gnu.warning sections.
+
 2005-03-22  Alan Modra  <amodra@bigpond.net.au>
 
        * scripttempl/elf.sc (SBSS): Don't provide sbss start and end syms.
index 1acedb456b2901cad05158bd2f0ea2c6007930ad..00805d53d560e79c18799838f71e5e4cdf53d5c5 100644 (file)
@@ -1105,6 +1105,10 @@ ${ELF_INTERPRETER_SET_DEFAULT}
        /* Clobber the section size, so that we don't waste copying the
           warning into the output file.  */
        s->size = 0;
+
+       /* Also set SEC_EXCLUDE, so that symbols defined in the warning
+          section don't get copied to the output.  */
+       s->flags |= SEC_EXCLUDE;
       }
   }
 }