aboutsummaryrefslogtreecommitdiff
path: root/gdb/exceptions.c
diff options
context:
space:
mode:
authorAndrew Cagney <cagney@redhat.com>2005-01-14 20:24:20 +0000
committerAndrew Cagney <cagney@redhat.com>2005-01-14 20:24:20 +0000
commit05ff989b0b012d3c83f5908dd9750e01a74cc3de (patch)
tree01150b5017065db5946397f6128232d7aa5fee3c /gdb/exceptions.c
parent35695fd6e5451726c124a1048a7f260f02cbcd1e (diff)
downloadgdb-05ff989b0b012d3c83f5908dd9750e01a74cc3de.zip
gdb-05ff989b0b012d3c83f5908dd9750e01a74cc3de.tar.gz
gdb-05ff989b0b012d3c83f5908dd9750e01a74cc3de.tar.bz2
2005-01-14 Andrew Cagney <cagney@gnu.org>
* linespec.c (symtab_from_filename, decode_variable): Use throw_error instead of error_silent. * breakpoint.c (do_captured_parse_breakpoint): Change return type to void. (break_command_1): Use catch_exception and check the error return status. * exceptions.c (throw_error): New function. (throw_vsilent): Delete function. * exceptions.h (throw_error): Declare. (throw_vsilent): Delete declaration. * utils.c (error_silent): Delete function. * defs.h (error_silent): Delete declaration.
Diffstat (limited to 'gdb/exceptions.c')
-rw-r--r--gdb/exceptions.c17
1 files changed, 7 insertions, 10 deletions
diff --git a/gdb/exceptions.c b/gdb/exceptions.c
index 781864b..aed10a8 100644
--- a/gdb/exceptions.c
+++ b/gdb/exceptions.c
@@ -1,8 +1,8 @@
/* Exception (throw catch) mechanism, for GDB, the GNU debugger.
Copyright 1986, 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1995,
- 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004 Free Software
- Foundation, Inc.
+ 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005 Free
+ Software Foundation, Inc.
This file is part of GDB.
@@ -401,15 +401,12 @@ throw_vfatal (const char *fmt, va_list ap)
}
NORETURN void
-throw_vsilent (const char *fmt, va_list ap)
+throw_error (enum errors error, const char *fmt, ...)
{
- struct exception e;
- e.reason = RETURN_ERROR;
- e.error = GENERIC_ERROR;
- xfree (last_message);
- last_message = xstrvprintf (fmt, ap);
- e.message = last_message;
- throw_exception (e);
+ va_list args;
+ va_start (args, fmt);
+ print_and_throw (RETURN_ERROR, error, error_pre_print, fmt, args);
+ va_end (args);
}
/* Call FUNC() with args FUNC_UIOUT and FUNC_ARGS, catching any