aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--bfd/ChangeLog13
-rw-r--r--bfd/coffcode.h2
-rw-r--r--bfd/elf32-rx.c1
-rw-r--r--bfd/elfxx-ia64.c10
-rw-r--r--bfd/vms-alpha.c2
5 files changed, 21 insertions, 7 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index 7c513d8..eebb219 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,3 +1,16 @@
+2011-01-18 Pierre Muller <muller@ics.u-strasbg.fr>
+
+ Fix compilation for mingw64.
+ * coffcode.h (coff_slurp_symbol_table): Add intptr_t intermediate
+ typecast to avoid warning.
+ * elf32-rx.c: Add "bfd_stdint.h" include required for int32_t type
+ usage.
+ * elfxx-ia64.c (elfNN_ia64_relax_br): Use intptr_t typeacast instead
+ of long for pointer to avoid warning.
+ (elfNN_ia64_relax_brl): Idem.
+ (elfNN_ia64_install_value): Idem.
+ * vms-alpha.c (_bfd_vms_slurp_etir): Idem.
+
2011-01-17 Richard Sandiford <richard.sandiford@linaro.org>
* elf32-arm.c (elf32_arm_check_relocs): Check needs_plt rather than
diff --git a/bfd/coffcode.h b/bfd/coffcode.h
index 70f9851..5500f01 100644
--- a/bfd/coffcode.h
+++ b/bfd/coffcode.h
@@ -4852,7 +4852,7 @@ coff_slurp_symbol_table (bfd * abfd)
to the symbol instead of the index. FIXME: This
should use a union. */
src->u.syment.n_value =
- (long) (native_symbols + src->u.syment.n_value);
+ (long) (intptr_t) (native_symbols + src->u.syment.n_value);
dst->symbol.value = src->u.syment.n_value;
src->fix_value = 1;
break;
diff --git a/bfd/elf32-rx.c b/bfd/elf32-rx.c
index 7855d5e..0a5e12c 100644
--- a/bfd/elf32-rx.c
+++ b/bfd/elf32-rx.c
@@ -20,6 +20,7 @@
#include "sysdep.h"
#include "bfd.h"
+#include "bfd_stdint.h"
#include "libbfd.h"
#include "elf-bfd.h"
#include "elf/rx.h"
diff --git a/bfd/elfxx-ia64.c b/bfd/elfxx-ia64.c
index d42ad89..26e5919 100644
--- a/bfd/elfxx-ia64.c
+++ b/bfd/elfxx-ia64.c
@@ -636,7 +636,7 @@ elfNN_ia64_relax_br (bfd_byte *contents, bfd_vma off)
bfd_byte *hit_addr;
hit_addr = (bfd_byte *) (contents + off);
- br_slot = (long) hit_addr & 0x3;
+ br_slot = (intptr_t) hit_addr & 0x3;
hit_addr -= br_slot;
t0 = bfd_getl64 (hit_addr + 0);
t1 = bfd_getl64 (hit_addr + 8);
@@ -738,7 +738,7 @@ elfNN_ia64_relax_brl (bfd_byte *contents, bfd_vma off)
bfd_vma t0, t1, i0, i1, i2;
hit_addr = (bfd_byte *) (contents + off);
- hit_addr -= (long) hit_addr & 0x3;
+ hit_addr -= (intptr_t) hit_addr & 0x3;
t0 = bfd_getl64 (hit_addr);
t1 = bfd_getl64 (hit_addr + 8);
@@ -3874,7 +3874,7 @@ elfNN_ia64_install_value (bfd_byte *hit_addr, bfd_vma v,
switch (opnd)
{
case IA64_OPND_IMMU64:
- hit_addr -= (long) hit_addr & 0x3;
+ hit_addr -= (intptr_t) hit_addr & 0x3;
t0 = bfd_getl64 (hit_addr);
t1 = bfd_getl64 (hit_addr + 8);
@@ -3903,7 +3903,7 @@ elfNN_ia64_install_value (bfd_byte *hit_addr, bfd_vma v,
break;
case IA64_OPND_TGT64:
- hit_addr -= (long) hit_addr & 0x3;
+ hit_addr -= (intptr_t) hit_addr & 0x3;
t0 = bfd_getl64 (hit_addr);
t1 = bfd_getl64 (hit_addr + 8);
@@ -3928,7 +3928,7 @@ elfNN_ia64_install_value (bfd_byte *hit_addr, bfd_vma v,
break;
default:
- switch ((long) hit_addr & 0x3)
+ switch ((intptr_t) hit_addr & 0x3)
{
case 0: shift = 5; break;
case 1: shift = 14; hit_addr += 3; break;
diff --git a/bfd/vms-alpha.c b/bfd/vms-alpha.c
index 309c3a2..322de62 100644
--- a/bfd/vms-alpha.c
+++ b/bfd/vms-alpha.c
@@ -1709,7 +1709,7 @@ _bfd_vms_slurp_etir (bfd *abfd, struct bfd_link_info *info)
#if VMS_DEBUG
_bfd_vms_debug (4, "etir: %s(%d)\n",
_bfd_vms_etir_name (cmd), cmd);
- _bfd_hexdump (8, ptr, cmd_length - 4, (long) ptr);
+ _bfd_hexdump (8, ptr, cmd_length - 4, (intptr_t) ptr);
#endif
switch (cmd)