summaryrefslogtreecommitdiff
path: root/bfd/elf32-sh64.c
diff options
context:
space:
mode:
authorAlan Modra <amodra@bigpond.net.au>2002-10-11 08:33:11 +0000
committerAlan Modra <amodra@bigpond.net.au>2002-10-11 08:33:11 +0000
commit1fe1537187058697547bd6155b713986813378f3 (patch)
tree2da28bb892d4d73c736152edb4a08146123249ee /bfd/elf32-sh64.c
parent976c92ec4249ff7e307bcf278a49e90f78f0d768 (diff)
downloadgdb-1fe1537187058697547bd6155b713986813378f3.tar.gz
Fix numerous occurrences of
warning: dereferencing type-punned pointer will break strict-aliasing rules
Diffstat (limited to 'bfd/elf32-sh64.c')
-rw-r--r--bfd/elf32-sh64.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/bfd/elf32-sh64.c b/bfd/elf32-sh64.c
index 7a38fb22410..844a6a43e27 100644
--- a/bfd/elf32-sh64.c
+++ b/bfd/elf32-sh64.c
@@ -411,16 +411,19 @@ sh64_elf_add_symbol_hook (abfd, info, sym, namep, flagsp, secp, valp)
if (h == NULL)
{
/* No previous datalabel symbol. Make one. */
+ struct bfd_link_hash_entry *bh = NULL;
+ struct elf_backend_data *bed = get_elf_backend_data (abfd);
+
if (! _bfd_generic_link_add_one_symbol (info, abfd, dl_name,
flags, *secp, *valp,
*namep, false,
- get_elf_backend_data (abfd)->collect,
- (struct bfd_link_hash_entry **) &h))
+ bed->collect, &bh))
{
free (dl_name);
return false;
}
+ h = (struct elf_link_hash_entry *) bh;
h->elf_link_hash_flags &=~ ELF_LINK_NON_ELF;
h->type = STT_DATALABEL;
}