diff options
-rw-r--r-- | ltrace-elf.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/ltrace-elf.c b/ltrace-elf.c index 2bfe819..89ddc3a 100644 --- a/ltrace-elf.c +++ b/ltrace-elf.c @@ -823,8 +823,10 @@ read_module(struct library *lib, struct Process *proc, filename); return -1; } - lte.entry_addr = (GElf_Addr)entry; - lte.bias = (GElf_Addr)entry - lte.ehdr.e_entry; + /* XXX The double cast should be removed when + * arch_addr_t becomes integral type. */ + lte.entry_addr = (GElf_Addr)(uintptr_t)entry; + lte.bias = (GElf_Addr)(uintptr_t)entry - lte.ehdr.e_entry; } else { GElf_Phdr phdr; |