From 598d363666e7b84f3dd5bf0f4cca83e856d77b1b Mon Sep 17 00:00:00 2001 From: Jan Kratochvil Date: Fri, 22 Mar 2013 20:39:29 +0000 Subject: gdb/ * exceptions.h (enum errors): New entry TARGET_CLOSE_ERROR. * remote.c (trace_error): Remove the special handling of '2'. (readchar) (readchar) (getpkt_or_notif_sane_1): Use TARGET_CLOSE_ERROR for them. (remote_get_trace_status): Call throw_exception if EX is TARGET_CLOSE_ERROR. * utils.c (perror_with_name): Rename to ... (throw_perror_with_name): ... here. New parameter errcode, describe it in the function comment. (perror_with_name): New function wrapper. * utils.h (enum errors): New stub declaration. (throw_perror_with_name): New declaration. gdb/testsuite/ * gdb.server/server-kill.c: New file. * gdb.server/server-kill.exp: New file. --- gdb/utils.c | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) (limited to 'gdb/utils.c') diff --git a/gdb/utils.c b/gdb/utils.c index a28c782..a222c59 100644 --- a/gdb/utils.c +++ b/gdb/utils.c @@ -966,11 +966,11 @@ add_internal_problem_command (struct internal_problem *problem) } /* Print the system error message for errno, and also mention STRING - as the file name for which the error was encountered. - Then return to command level. */ + as the file name for which the error was encountered. Use ERRCODE + for the thrown exception. Then return to command level. */ void -perror_with_name (const char *string) +throw_perror_with_name (enum errors errcode, const char *string) { char *err; char *combined; @@ -987,7 +987,15 @@ perror_with_name (const char *string) bfd_set_error (bfd_error_no_error); errno = 0; - error (_("%s."), combined); + throw_error (errcode, _("%s."), combined); +} + +/* See throw_perror_with_name, ERRCODE defaults here to GENERIC_ERROR. */ + +void +perror_with_name (const char *string) +{ + throw_perror_with_name (GENERIC_ERROR, string); } /* Print the system error message for ERRCODE, and also mention STRING -- cgit v1.1