aboutsummaryrefslogtreecommitdiff
path: root/bfd
diff options
context:
space:
mode:
Diffstat (limited to 'bfd')
-rw-r--r--bfd/ChangeLog5
-rw-r--r--bfd/elf32-microblaze.c5
2 files changed, 8 insertions, 2 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index e9d27c7..e7d0e94 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,3 +1,8 @@
+2009-08-07 Tom Tromey <tromey@redhat.com>
+
+ * elf32-microblaze.c (microblaze_elf_check_relocs): Avoid strict
+ aliasing error.
+
2009-08-06 Michael Eager <eager@eagercon.com>
* Makefile.am: Add cpu-microblaze.{lo,c}, elf32-microblaze.{lo,c}.
diff --git a/bfd/elf32-microblaze.c b/bfd/elf32-microblaze.c
index 5b1a71b..c975e76 100644
--- a/bfd/elf32-microblaze.c
+++ b/bfd/elf32-microblaze.c
@@ -2121,6 +2121,7 @@ microblaze_elf_check_relocs (bfd * abfd,
asection *s;
Elf_Internal_Sym *isym;
+ void *vpp;
isym = bfd_sym_from_r_symndx (&htab->sym_sec,
abfd, r_symndx);
@@ -2131,8 +2132,8 @@ microblaze_elf_check_relocs (bfd * abfd,
if (s == NULL)
return FALSE;
- head = ((struct elf32_mb_dyn_relocs **)
- &elf_section_data (s)->local_dynrel);
+ vpp = &elf_section_data (s)->local_dynrel;
+ head = (struct elf32_mb_dyn_relocs **) vpp;
}
p = *head;