PATCH: Avoid warning from -Wjump-misses-init
Ian Lance Taylor
iant@google.com
Sun Jun 21 05:04:00 GMT 2009
"H.J. Lu" <hongjiu.lu@intel.com> writes:
> Index: bfd/elflink.c
> ===================================================================
> --- bfd/elflink.c (revision 6199)
> +++ bfd/elflink.c (working copy)
> @@ -3549,7 +3549,11 @@ elf_link_add_object_symbols (bfd *abfd,
> 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,
> amt = strlen (fnm) + 1;
> anm = bfd_alloc (abfd, amt);
> if (anm == NULL)
> - {
> - error_free_dyn:
> - free (dynbuf);
> - goto error_return;
> - }
> + goto error_free_dyn;
This doesn't seem to me to be a good fix. This code is ugly. If you're
going to touch it, clean it up. error_free_dyn should be at the end of
the function, like all the other error labels.
Ian
More information about the Binutils
mailing list