From: Ian Lance Taylor Date: Tue, 2 Jun 1998 19:30:09 +0000 (+0000) Subject: * elf32-mips.c (mips_elf_relocate_section): If we issue an X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=d212bfa7230080ae4bea66f530a1c56dc99fc052;p=binutils-gdb.git * elf32-mips.c (mips_elf_relocate_section): If we issue an undefined symbol error, don't also issue an overflow error. --- diff --git a/bfd/ChangeLog b/bfd/ChangeLog index 30b719b0bb2..794b4c19f1f 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,8 @@ +Tue Jun 2 15:29:35 1998 Ian Lance Taylor + + * elf32-mips.c (mips_elf_relocate_section): If we issue an + undefined symbol error, don't also issue an overflow error. + Tue Jun 2 13:51:00 1998 Geoff Keating * elf32-ppc.c (ppc_elf_relocate_section): The target of an diff --git a/bfd/elf32-mips.c b/bfd/elf32-mips.c index b503c4f7777..854fa275839 100644 --- a/bfd/elf32-mips.c +++ b/bfd/elf32-mips.c @@ -4988,8 +4988,10 @@ mips_elf_relocate_section (output_bfd, info, input_bfd, input_section, { bfd_vma relocation; boolean local; + boolean undefined_error; /* This is a final link. */ + undefined_error = false; sym = NULL; if (r_symndx < extsymoff || (elf_bad_symtab (input_bfd) @@ -5084,6 +5086,7 @@ mips_elf_relocate_section (output_bfd, info, input_bfd, input_section, (info, h->root.root.string, input_bfd, input_section, rel->r_offset))) return false; + undefined_error = true; relocation = 0; } } @@ -5573,6 +5576,12 @@ mips_elf_relocate_section (output_bfd, info, input_bfd, input_section, && h->root.type == bfd_link_hash_undefweak) r = bfd_reloc_ok; + /* If we've already issued an error for an undefined symbol, + don't issue another useless error. */ + if (undefined_error + && (r == bfd_reloc_undefined || r == bfd_reloc_overflow)) + r = bfd_reloc_ok; + if (SGI_COMPAT (abfd) && scpt != NULL && (input_section->flags & SEC_ALLOC) != 0)