diff options
Diffstat (limited to 'bfd/elf32-frv.c')
-rw-r--r-- | bfd/elf32-frv.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/bfd/elf32-frv.c b/bfd/elf32-frv.c index de7a1132160..eedc55d6e7d 100644 --- a/bfd/elf32-frv.c +++ b/bfd/elf32-frv.c @@ -1958,16 +1958,16 @@ elf32_frv_relocate_section (output_bfd, info, input_bfd, input_section, { relocation = 0; } - else if ( ! info->executable - && ! info->symbolic - && info->unresolved_syms_in_objects == RM_IGNORE + else if (info->unresolved_syms_in_objects == RM_IGNORE && ELF_ST_VISIBILITY (h->other) == STV_DEFAULT) relocation = 0; else { if (! ((*info->callbacks->undefined_symbol) (info, h->root.root.string, input_bfd, - input_section, rel->r_offset, TRUE))) + input_section, rel->r_offset, + (info->unresolved_syms_in_objects == RM_GENERATE_ERROR + || ELF_ST_VISIBILITY (h->other))))) return FALSE; relocation = 0; } |