FALSE), /* pcrel_offset */
};
-static void
+static bfd_boolean
rtype_to_howto (bfd *abfd, arelent *cache_ptr, Elf_Internal_Rela *dst)
{
unsigned int indx = ELF32_R_TYPE (dst->r_info);
if (indx >= (unsigned int) R_68K_max)
{
/* xgettext:c-format */
- _bfd_error_handler (_("%pB: invalid relocation type %d"),
- abfd, (int) indx);
- indx = R_68K_NONE;
+ _bfd_error_handler (_("%pB: unsupported relocation type %#x"),
+ abfd, indx);
+ bfd_set_error (bfd_error_bad_value);
+ return FALSE;
}
cache_ptr->howto = &howto_table[indx];
+ return TRUE;
}
#define elf_info_to_howto rtype_to_howto
if (got->n_slots[R_8] > ELF_M68K_R_8_MAX_N_SLOTS_IN_GOT (info))
/* xgettext:c-format */
_bfd_error_handler (_("%pB: GOT overflow: "
- "Number of relocations with 8-bit "
+ "number of relocations with 8-bit "
"offset > %d"),
abfd,
ELF_M68K_R_8_MAX_N_SLOTS_IN_GOT (info));
else
/* xgettext:c-format */
_bfd_error_handler (_("%pB: GOT overflow: "
- "Number of relocations with 8- or 16-bit "
+ "number of relocations with 8- or 16-bit "
"offset > %d"),
abfd,
ELF_M68K_R_8_16_MAX_N_SLOTS_IN_GOT (info));
{
_bfd_error_handler
/* xgettext:c-format */
- (_("%pB(%pA+%#Lx): %s relocation not permitted in shared object"),
- input_bfd, input_section, rel->r_offset, howto->name);
+ (_("%pB(%pA+%#" PRIx64 "): "
+ "%s relocation not permitted in shared object"),
+ input_bfd, input_section, (uint64_t) rel->r_offset,
+ howto->name);
return FALSE;
}
{
_bfd_error_handler
/* xgettext:c-format */
- (_("%pB(%pA+%#Lx): unresolvable %s relocation against symbol `%s'"),
+ (_("%pB(%pA+%#" PRIx64 "): "
+ "unresolvable %s relocation against symbol `%s'"),
input_bfd,
input_section,
- rel->r_offset,
+ (uint64_t) rel->r_offset,
howto->name,
h->root.root.string);
return FALSE;
_bfd_error_handler
((sym_type == STT_TLS
/* xgettext:c-format */
- ? _("%pB(%pA+%#Lx): %s used with TLS symbol %s")
+ ? _("%pB(%pA+%#" PRIx64 "): %s used with TLS symbol %s")
/* xgettext:c-format */
- : _("%pB(%pA+%#Lx): %s used with non-TLS symbol %s")),
+ : _("%pB(%pA+%#" PRIx64 "): %s used with non-TLS symbol %s")),
input_bfd,
input_section,
- rel->r_offset,
+ (uint64_t) rel->r_offset,
howto->name,
name);
}
{
_bfd_error_handler
/* xgettext:c-format */
- (_("%pB(%pA+%#Lx): reloc against `%s': error %d"),
+ (_("%pB(%pA+%#" PRIx64 "): reloc against `%s': error %d"),
input_bfd, input_section,
- rel->r_offset, name, (int) r);
+ (uint64_t) rel->r_offset, name, (int) r);
return FALSE;
}
}
/* We can only relocate absolute longword relocs at run time. */
if (ELF32_R_TYPE (irel->r_info) != (int) R_68K_32)
{
- *errmsg = _("unsupported reloc type");
+ *errmsg = _("unsupported relocation type");
bfd_set_error (bfd_error_bad_value);
goto error_return;
}