dl/elf: Use format code PRIxGRUB_UINT64_T for 64-bit arg in grub_error()

The macro ELF_R_TYPE does not change the underlying type. Here its argument
is a 64-bit Elf64_Xword. Make sure the format code matches.

For the RISC-V architecture, rel->r_info could be either Elf32_Xword or
Elf64_Xword depending on if 32 or 64-bit RISC-V is being built. So cast
to 64-bit value regardless.

Signed-off-by: Glenn Washburn <development@efficientek.com>
Reviewed-by: Daniel Kiper <daniel.kiper@oracle.com>
This commit is contained in:
Glenn Washburn authored and Daniel Kiper committed 2021-03-10 15:22:18 +01:00
1 parent c95ec30d48
commit d028b1a35e
6 files changed
+13 -7

No files matched your search

+2 -1
View File
@@ -137,7 +137,8 @@ grub_arch_dl_relocate_symbols (grub_dl_t mod, void *ehdr,
break;
default:
return grub_error (GRUB_ERR_NOT_IMPLEMENTED_YET,
N_("relocation 0x%x is not implemented yet"),
N_("relocation 0x%" PRIxGRUB_UINT64_T
" is not implemented yet"),
ELF_R_TYPE (rel->r_info));
}
}