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
+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.
2019-12-13 Tom Tromey <tromey@adacore.com>
* contrib/ari/gdb_ari.sh: Fix floatformat_from_double text.
BEGIN { doc["abort"] = "\
Do not use abort, instead use internal_error; GDB should never abort"
category["abort"] = ari_regression
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")
}
/(^|[^_[:alnum:]])abort[[:space:]]*\(/ {
fail("abort")
install_handle_sigsegv ();
if (thread_local_segv_handler == nullptr)
install_handle_sigsegv ();
if (thread_local_segv_handler == nullptr)
+ abort (); /* ARI: abort */
thread_local_segv_handler (sig);
}
thread_local_segv_handler (sig);
}
else
fputs_unfiltered (msg, gdb_stderr);
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. */
}
/* Dump core trying to increase the core soft limit to hard limit first. */
setrlimit (RLIMIT_CORE, &rlim);
#endif /* HAVE_SETRLIMIT */
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
}
/* Check whether GDB will be able to dump core using the dump_core
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))
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 */