summaryrefslogtreecommitdiff
path: root/gdb/gdbserver/utils.c
diff options
context:
space:
mode:
Diffstat (limited to 'gdb/gdbserver/utils.c')
-rw-r--r--gdb/gdbserver/utils.c22
1 files changed, 22 insertions, 0 deletions
diff --git a/gdb/gdbserver/utils.c b/gdb/gdbserver/utils.c
index 88cc1e02304..607bef26e86 100644
--- a/gdb/gdbserver/utils.c
+++ b/gdb/gdbserver/utils.c
@@ -96,3 +96,25 @@ warning (const char *string,...)
fprintf (stderr, "\n");
va_end (args);
}
+
+ATTR_NORETURN static void
+internal_verror (const char *file, int line, const char *fmt, va_list ap)
+{
+ fprintf (stderr, "\
+%s:%d: \n\
+A problem internal to gdbserver has been detected,\n\
+further debugging may prove unreliable.", file, line);
+ vfprintf (stderr, fmt, ap);
+ fprintf (stderr, "aborting.\n");
+
+ abort (); /* NOTE: gdbserver has only one call to abort(). */
+}
+
+void
+internal_error_file_line (const char *file, int line, const char *string, ...)
+{
+ va_list ap;
+ va_start (ap, string);
+ internal_verror (file, line, string, ap);
+ va_end (ap);
+}