From a7129c48cf54c09f9a3465a58e78fbc434b0e86c Mon Sep 17 00:00:00 2001 From: Ken Raeburn Date: Tue, 5 Apr 1994 18:16:37 +0000 Subject: [PATCH] (s_reserve): If section passed isn't bss, don't spew remainder of input file in error message. (tc_gen_reloc): If bfd_reloc_type_lookup returns null, print error message with reloc type and try to process remainder of file. --- gas/config/tc-sparc.c | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/gas/config/tc-sparc.c b/gas/config/tc-sparc.c index 4274dedbc97..7574e16be00 100644 --- a/gas/config/tc-sparc.c +++ b/gas/config/tc-sparc.c @@ -202,7 +202,7 @@ s_reserve (ignore) if (strncmp (input_line_pointer, ",\"bss\"", 6) != 0 && strncmp (input_line_pointer, ",\".bss\"", 7) != 0) { - as_bad ("bad .reserve segment: `%s'", input_line_pointer); + as_bad ("bad .reserve segment -- expected BSS segment", input_line_pointer); return; } @@ -2110,7 +2110,13 @@ tc_gen_reloc (section, fixp) abort (); } reloc->howto = bfd_reloc_type_lookup (stdoutput, code); - assert (reloc->howto != 0); + if (reloc->howto == 0) + { + as_bad_where (fixp->fx_file, fixp->fx_line, + "internal error: can't export reloc type %d", + fixp->fx_r_type); + return 0; + } assert (!fixp->fx_pcrel == !reloc->howto->pc_relative); /* @@ Why fx_addnumber sometimes and fx_offset other times? */ -- 2.30.2