diff --git a/bfd/ChangeLog b/bfd/ChangeLog index e9d27c7b4a..e7d0e94e2d 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,8 @@ +2009-08-07 Tom Tromey + + * elf32-microblaze.c (microblaze_elf_check_relocs): Avoid strict + aliasing error. + 2009-08-06 Michael Eager * Makefile.am: Add cpu-microblaze.{lo,c}, elf32-microblaze.{lo,c}. diff --git a/bfd/elf32-microblaze.c b/bfd/elf32-microblaze.c index 5b1a71b4b2..c975e76800 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;