* Downgrade addr2line fatal errors to non-fatal
@ 2023-03-06 3:30 Alan Modra
0 siblings, 0 replies; only message in thread
From: Alan Modra @ 2023-03-06 3:30 UTC (permalink / raw)
To: binutils
* addr2line.c (slurp_symtab): Don't exit on errors.
(process_file): Likewise.
diff --git a/binutils/addr2line.c b/binutils/addr2line.c
index 1fe9ce2a780..afe116a235c 100644
--- a/binutils/addr2line.c
+++ b/binutils/addr2line.c
@@ -130,7 +130,10 @@ slurp_symtab (bfd *abfd)
dynamic = true;
}
if (storage < 0)
- bfd_fatal (bfd_get_filename (abfd));
+ {
+ bfd_nonfatal (bfd_get_filename (abfd));
+ return;
+ }
syms = (asymbol **) xmalloc (storage);
if (dynamic)
@@ -138,7 +141,7 @@ slurp_symtab (bfd *abfd)
else
symcount = bfd_canonicalize_symtab (abfd, syms);
if (symcount < 0)
- bfd_fatal (bfd_get_filename (abfd));
+ bfd_nonfatal (bfd_get_filename (abfd));
/* If there are no symbols left after canonicalization and
we have not tried the dynamic symbols then give them a go. */
@@ -446,21 +449,27 @@ process_file (const char *file_name, const char *section_name,
abfd->flags |= BFD_DECOMPRESS;
if (bfd_check_format (abfd, bfd_archive))
- fatal (_("%s: cannot get addresses from archive"), file_name);
+ {
+ non_fatal (_("%s: cannot get addresses from archive"), file_name);
+ return 1;
+ }
if (! bfd_check_format_matches (abfd, bfd_object, &matching))
{
bfd_nonfatal (bfd_get_filename (abfd));
if (bfd_get_error () == bfd_error_file_ambiguously_recognized)
list_matching_formats (matching);
- xexit (1);
+ return 1;
}
if (section_name != NULL)
{
section = bfd_get_section_by_name (abfd, section_name);
if (section == NULL)
- fatal (_("%s: cannot find section %s"), file_name, section_name);
+ {
+ non_fatal (_("%s: cannot find section %s"), file_name, section_name);
+ return 1;
+ }
}
else
section = NULL;
--
Alan Modra
Australia Development Lab, IBM
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2023-03-06 3:30 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-03-06 3:30 Downgrade addr2line fatal errors to non-fatal Alan Modra
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).