mirror of
https://github.com/espressif/binutils-gdb.git
synced 2025-06-23 03:29:47 +08:00
* ldlang.c (lang_check): Emit fatal error if relocatable link
between different object flavours with relocations in input.
This commit is contained in:
12
ld/ldlang.c
12
ld/ldlang.c
@ -3520,6 +3520,18 @@ lang_check ()
|
||||
bfd_printable_name (input_bfd), input_bfd,
|
||||
bfd_printable_name (output_bfd));
|
||||
}
|
||||
else if (link_info.relocateable
|
||||
/* In general it is not possible to perform a relocatable
|
||||
link between differing object formats when the input
|
||||
file has relocations, because the relocations in the
|
||||
input format may not have equivalent representations in
|
||||
the output format (and besides BFD does not translate
|
||||
relocs for other link purposes than a final link). */
|
||||
&& bfd_get_flavour (input_bfd) != bfd_get_flavour (output_bfd)
|
||||
&& (bfd_get_file_flags (input_bfd) & HAS_RELOC) != 0)
|
||||
einfo (_("%P%F: Relocatable linking with relocations from format %s (%B) to format %s (%B) is not supported\n"),
|
||||
bfd_get_target (input_bfd), input_bfd,
|
||||
bfd_get_target (output_bfd), output_bfd);
|
||||
else if (bfd_count_sections (input_bfd))
|
||||
{
|
||||
/* If the input bfd has no contents, it shouldn't set the
|
||||
|
Reference in New Issue
Block a user