* elflink.c (_bfd_elf_default_action_discarded): Return 0 for
authorAlan Modra <amodra@gmail.com>
Wed, 15 Feb 2006 14:12:54 +0000 (14:12 +0000)
committerAlan Modra <amodra@gmail.com>
Wed, 15 Feb 2006 14:12:54 +0000 (14:12 +0000)
debug sections.
(elf_link_input_bfd): Adjust comments.

bfd/ChangeLog
bfd/elflink.c

index 57b71cd91657a090ad69e76d4fc1810112eda30d..c3479f07c315593fa7399617d6d80ee789238022 100644 (file)
@@ -1,3 +1,9 @@
+2006-02-16  Alan Modra  <amodra@bigpond.net.au>
+
+       * elflink.c (_bfd_elf_default_action_discarded): Return 0 for
+       debug sections.
+       (elf_link_input_bfd): Adjust comments.
+
 2006-02-10  H.J. Lu  <hongjiu.lu@intel.com>
 
        * elf.c (copy_private_bfd_data): Minor update.
index 0336a29137ee11dd939f7dcce0b11200417272e6..bbd377053edb1935f78cc80412f79c958068d1f1 100644 (file)
@@ -6691,7 +6691,7 @@ unsigned int
 _bfd_elf_default_action_discarded (asection *sec)
 {
   if (sec->flags & SEC_DEBUGGING)
-    return PRETEND;
+    return 0;
 
   if (strcmp (".eh_frame", sec->name) == 0)
     return 0;
@@ -7007,8 +7007,7 @@ elf_link_input_bfd (struct elf_final_link_info *finfo, bfd *input_bfd)
             from discarded sections and section symbols from
             removed link-once sections.  Complain about relocs
             against discarded sections.  Zero relocs against removed
-            link-once sections.  Preserve debug information as much
-            as we can.  */
+            link-once sections.  */
          if (!elf_section_ignore_discarded_relocs (o))
            {
              Elf_Internal_Rela *rel, *relend;
@@ -7080,16 +7079,11 @@ elf_link_input_bfd (struct elf_final_link_info *finfo, bfd *input_bfd)
                           sym_name, o, input_bfd, sec, sec->owner);
 
                      /* Try to do the best we can to support buggy old
-                        versions of gcc.  If we've warned, or this is
-                        debugging info, pretend that the symbol is
+                        versions of gcc.  Pretend that the symbol is
                         really defined in the kept linkonce section.
                         FIXME: This is quite broken.  Modifying the
                         symbol here means we will be changing all later
-                        uses of the symbol, not just in this section.
-                        The only thing that makes this half reasonable
-                        is that we warn in non-debug sections, and
-                        debug sections tend to come after other
-                        sections.  */
+                        uses of the symbol, not just in this section.  */
                      if (action & PRETEND)
                        {
                          asection *kept;