/* ldctor.c -- constructor support routines
- Copyright (C) 1991-2016 Free Software Foundation, Inc.
+ Copyright (C) 1991-2018 Free Software Foundation, Inc.
By Steve Chamberlain <sac@cygnus.com>
This file is part of the GNU Binutils.
{
if (p->reloc != reloc)
{
- einfo (_("%P%X: Different relocs used in set %s\n"),
+ einfo (_("%X%P: different relocs used in set %s\n"),
h->root.string);
return;
}
&& strcmp (bfd_get_target (section->owner),
bfd_get_target (p->elements->section->owner)) != 0)
{
- einfo (_("%P%X: Different object file formats composing set %s\n"),
+ einfo (_("%X%P: different object file formats composing set %s\n"),
h->root.string);
return;
}
{
if (bfd_link_relocatable (&link_info))
{
- einfo (_("%P%X: %s does not support reloc %s for set %s\n"),
+ einfo (_("%X%P: %s does not support reloc %s for set %s\n"),
bfd_get_target (link_info.output_bfd),
bfd_get_reloc_code_name (p->reloc),
p->h->root.string);
p->reloc);
if (howto == NULL)
{
- einfo (_("%P%X: %s does not support reloc %s for set %s\n"),
- bfd_get_target (p->elements->section->owner),
- bfd_get_reloc_code_name (p->reloc),
- p->h->root.string);
+ /* See PR 20911 for a reproducer. */
+ if (p->elements->section->owner == NULL)
+ einfo (_("%X%P: special section %s does not support reloc %s for set %s\n"),
+ bfd_get_section_name (link_info.output_bfd, p->elements->section),
+ bfd_get_reloc_code_name (p->reloc),
+ p->h->root.string);
+ else
+ einfo (_("%X%P: %s does not support reloc %s for set %s\n"),
+ bfd_get_target (p->elements->section->owner),
+ bfd_get_reloc_code_name (p->reloc),
+ p->h->root.string);
continue;
}
}
size = QUAD;
break;
default:
- einfo (_("%P%X: Unsupported size %d for set %s\n"),
+ einfo (_("%X%P: unsupported size %d for set %s\n"),
bfd_get_reloc_size (howto), p->h->root.string);
size = LONG;
break;
}
if (e->name != NULL)
- minfo ("%T\n", e->name);
+ minfo ("%pT\n", e->name);
else
minfo ("%G\n", e->section->owner, e->section, e->value);
}