PR23566, false uninitialized warning
Alan Modra
amodra@gmail.com
Thu Aug 23 14:56:00 GMT 2018
PR 23566
* emultempl/elf32.em (before_allocation): Warning fix.
diff --git a/ld/emultempl/elf32.em b/ld/emultempl/elf32.em
index 5160e2449b..e7943e362c 100644
--- a/ld/emultempl/elf32.em
+++ b/ld/emultempl/elf32.em
@@ -1680,11 +1680,6 @@ gld${EMULATION_NAME}_append_to_separated_string (char **to, char *op_arg)
}
}
-#if defined(__GNUC__) && GCC_VERSION < 4006
- /* Work around a GCC uninitialized warning bug fixed in GCC 4.6. */
-static struct bfd_link_hash_entry ehdr_start_empty;
-#endif
-
/* This is called after the sections have been attached to output
sections, but before any sizes or addresses have been set. */
@@ -1695,13 +1690,11 @@ gld${EMULATION_NAME}_before_allocation (void)
asection *sinterp;
bfd *abfd;
struct elf_link_hash_entry *ehdr_start = NULL;
-#if defined(__GNUC__) && GCC_VERSION < 4006
- /* Work around a GCC uninitialized warning bug fixed in GCC 4.6. */
- struct bfd_link_hash_entry ehdr_start_save = ehdr_start_empty;
-#else
struct bfd_link_hash_entry ehdr_start_save;
-#endif
+ /* The memset is here only to silence brain-dead compiler warnings
+ that the variable may be used uninitialized. */
+ memset (&ehdr_start_save, 0, sizeof ehdr_start_save);
if (is_elf_hash_table (link_info.hash))
{
_bfd_elf_tls_setup (link_info.output_bfd, &link_info);
--
Alan Modra
Australia Development Lab, IBM
More information about the Binutils
mailing list