Silence ARI for valid calls to abort

There are a handful of spots in gdb that validly call abort.  This
patch adds the appropriate ARI marker to these lines, to silence the
ARI report.  This also removes the "fix" call for "abort" from
gdb_ari.sh; it was incorrect and now is not needed.

gdb/ChangeLog
2019-12-13  Tom Tromey  <tromey@adacore.com>

	* contrib/ari/gdb_ari.sh: Remove "fix" call for abort.
	* utils.c (abort_with_message, dump_core, internal_vproblem): Add
	ARI marker to abort.
	* event-top.c (handle_sigsegv): Add ARI marker to abort.

Change-Id: I09ce6aa5010bbe4e5bb73ffdb727481be39d34d6
This commit is contained in:
Tom Tromey 2019-12-05 08:08:39 -07:00
parent 8aaaf7577f
commit 036003a671
4 changed files with 11 additions and 5 deletions

View File

@ -1,3 +1,10 @@
2019-12-13 Tom Tromey <tromey@adacore.com>
* contrib/ari/gdb_ari.sh: Remove "fix" call for abort.
* utils.c (abort_with_message, dump_core, internal_vproblem): Add
ARI marker to abort.
* event-top.c (handle_sigsegv): Add ARI marker to abort.
2019-12-13 Tom Tromey <tromey@adacore.com>
* contrib/ari/gdb_ari.sh: Fix floatformat_from_double text.

View File

@ -647,7 +647,6 @@ FNR == 1 {
BEGIN { doc["abort"] = "\
Do not use abort, instead use internal_error; GDB should never abort"
category["abort"] = ari_regression
fix("abort", "gdb/utils.c", 3)
}
/(^|[^_[:alnum:]])abort[[:space:]]*\(/ {
fail("abort")

View File

@ -881,7 +881,7 @@ handle_sigsegv (int sig)
install_handle_sigsegv ();
if (thread_local_segv_handler == nullptr)
abort ();
abort (); /* ARI: abort */
thread_local_segv_handler (sig);
}

View File

@ -186,7 +186,7 @@ abort_with_message (const char *msg)
else
fputs_unfiltered (msg, gdb_stderr);
abort (); /* NOTE: GDB has only three calls to abort(). */
abort (); /* ARI: abort */
}
/* Dump core trying to increase the core soft limit to hard limit first. */
@ -200,7 +200,7 @@ dump_core (void)
setrlimit (RLIMIT_CORE, &rlim);
#endif /* HAVE_SETRLIMIT */
abort (); /* NOTE: GDB has only three calls to abort(). */
abort (); /* ARI: abort */
}
/* Check whether GDB will be able to dump core using the dump_core
@ -320,7 +320,7 @@ internal_vproblem (struct internal_problem *problem,
does not fix this problem. This is the solution suggested
at http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25509. */
if (write (STDERR_FILENO, msg, sizeof (msg)) != sizeof (msg))
abort (); /* NOTE: GDB has only three calls to abort(). */
abort (); /* ARI: abort */
exit (1);
}
}