diff options
author | Martin Hunt <hunt@redhat.com> | 1999-02-09 22:18:52 +0000 |
---|---|---|
committer | Martin Hunt <hunt@redhat.com> | 1999-02-09 22:18:52 +0000 |
commit | 945df66affccebedf7f9bcc6b5d88850224aa241 (patch) | |
tree | 59f862918c9f0cd674368ab5ec4e5144cd06180c /gdb/gdbtk.c | |
parent | 8741159f8a410c65eaf66564a006812910a68b86 (diff) | |
download | binutils-945df66affccebedf7f9bcc6b5d88850224aa241.zip binutils-945df66affccebedf7f9bcc6b5d88850224aa241.tar.gz binutils-945df66affccebedf7f9bcc6b5d88850224aa241.tar.bz2 |
1999-02-09 Martin Hunt <hunt@cygnus.com>
* gdbtk-hooks.c: Remove gdbtk_ignorable_warning prototype.
It is in gdbtk.h.
(report_error): New function. Displays debugging information
if a hook function fails. All hook functions should probably
call this.
(gdbtk_warning): Call report_error() if there is a problem.
(gdbtk_register_changed): Call report_error() if there is a problem.
(gdbtk_memory_changed): Call report_error() if there is a problem.
(gdbtk_ignorable_warning): Pass along class argument. If there
is a problem, call report_error().
* gdbtk-cmds.c: Remove TclDebug prototype. It is in gdbtk.h.
(gdb_loadfile): Add class name to gdbtk_ignorable_warning call.
* gdbtk.c (TclDebug): Add "priority" argument. Calls "dbug"
instead of "debug". Removed non-ANSI ifdefs.
* gdbtk.h: Fixed protos for gdbtk_ignorable_warning and TclDebug.
Diffstat (limited to 'gdb/gdbtk.c')
-rw-r--r-- | gdb/gdbtk.c | 42 |
1 files changed, 24 insertions, 18 deletions
diff --git a/gdb/gdbtk.c b/gdb/gdbtk.c index eaa150e..f69a549 100644 --- a/gdb/gdbtk.c +++ b/gdb/gdbtk.c @@ -196,32 +196,38 @@ close_bfds () */ void -#ifdef ANSI_PROTOTYPES -TclDebug (const char *fmt, ...) -#else -TclDebug (va_alist) - va_dcl -#endif +TclDebug (char level, const char *fmt, ...) { va_list args; - char buf[512], *v[2], *merge; - -#ifdef ANSI_PROTOTYPES + char buf[512], *v[3], *merge, *priority; + + switch (level) + { + case 'W': + priority = "W"; + break; + case 'E': + priority = "E"; + break; + case 'X': + priority = "X"; + break; + default: + priority = "I"; + } + va_start (args, fmt); -#else - char *fmt; - va_start (args); - fmt = va_arg (args, char *); -#endif - v[0] = "debug"; - v[1] = buf; + v[0] = "dbug"; + v[1] = priority; + v[2] = buf; vsprintf (buf, fmt, args); va_end (args); - merge = Tcl_Merge (2, v); - Tcl_Eval (gdbtk_interp, merge); + merge = Tcl_Merge (3, v); + if (Tcl_Eval (gdbtk_interp, merge) != TCL_OK) + Tcl_BackgroundError(gdbtk_interp); Tcl_Free (merge); } |