2009-06-19 H.J. Lu <hongjiu.lu@intel.com>
authorH.J. Lu <hjl.tools@gmail.com>
Sat, 20 Jun 2009 13:13:11 +0000 (13:13 +0000)
committerH.J. Lu <hjl.tools@gmail.com>
Sat, 20 Jun 2009 13:13:11 +0000 (13:13 +0000)
* elflink.c (elf_link_add_object_symbols): Avoid warning
from -Wjump-misses-init in gcc 4.5.0.

bfd/ChangeLog
bfd/elflink.c

index 8931e757b2f74749971ea0287fad7e649b795200..f01de47a7970ab6a85ca849b054113a946f22495 100644 (file)
@@ -1,3 +1,8 @@
+2009-06-19  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * elflink.c (elf_link_add_object_symbols): Avoid warning
+       from -Wjump-misses-init in gcc 4.5.0.
+
 2009-06-19  H.J. Lu  <hongjiu.lu@intel.com>
 
        * elf32-i386.c (elf_i386_check_relocs): Properly check local
index 2366dd4047841de1adabb672e3a3beebf9892f76..9932186de9615e8c536666aef26bb413ab9b1acd 100644 (file)
@@ -3549,7 +3549,11 @@ elf_link_add_object_symbols (bfd *abfd, struct bfd_link_info *info)
          unsigned long shlink;
 
          if (!bfd_malloc_and_get_section (abfd, s, &dynbuf))
-           goto error_free_dyn;
+           {
+error_free_dyn:
+             free (dynbuf);
+             goto error_return;
+           }
 
          elfsec = _bfd_elf_section_from_bfd_section (abfd, s);
          if (elfsec == SHN_BAD)
@@ -3633,11 +3637,7 @@ elf_link_add_object_symbols (bfd *abfd, struct bfd_link_info *info)
                  amt = strlen (fnm) + 1;
                  anm = bfd_alloc (abfd, amt);
                  if (anm == NULL)
-                   {
-                   error_free_dyn:
-                     free (dynbuf);
-                     goto error_return;
-                   }
+                   goto error_free_dyn;
                  memcpy (anm, fnm, amt);
                  n->name = anm;
                  n->by = abfd;