diff options
author | Michael Meissner <gnu@the-meissners.org> | 1997-03-28 20:48:12 +0000 |
---|---|---|
committer | Michael Meissner <gnu@the-meissners.org> | 1997-03-28 20:48:12 +0000 |
commit | 8902803f752535d841d0f94202a9a59334e27182 (patch) | |
tree | 0c465d86df02e135d469a4316a1d0417255c9716 | |
parent | b26ac9e1e8e06d070cc6a23d1f60b926c326243d (diff) | |
download | gdb-8902803f752535d841d0f94202a9a59334e27182.zip gdb-8902803f752535d841d0f94202a9a59334e27182.tar.gz gdb-8902803f752535d841d0f94202a9a59334e27182.tar.bz2 |
Fix faulty assumption that va_list is a pointer type
-rw-r--r-- | gdb/remote-sim.c | 16 | ||||
-rw-r--r-- | include/callback.h | 13 |
2 files changed, 19 insertions, 10 deletions
diff --git a/gdb/remote-sim.c b/gdb/remote-sim.c index 339b39c..64dbb5d 100644 --- a/gdb/remote-sim.c +++ b/gdb/remote-sim.c @@ -55,9 +55,9 @@ static void gdb_os_flush_stderr PARAMS ((host_callback *)); /* printf_filtered is depreciated */ static void gdb_os_printf_filtered PARAMS ((host_callback *, const char *, ...)); -static void gdb_os_vprintf_filtered PARAMS ((host_callback *, const char *, void *)); +static void gdb_os_vprintf_filtered PARAMS ((host_callback *, const char *, va_list)); -static void gdb_os_evprintf_filtered PARAMS ((host_callback *, const char *, void *)); +static void gdb_os_evprintf_filtered PARAMS ((host_callback *, const char *, va_list)); static void gdb_os_error PARAMS ((host_callback *, const char *, ...)); @@ -268,15 +268,15 @@ gdb_os_printf_filtered (p, va_alist) /* VARARGS */ static void #ifdef ANSI_PROTOTYPES -gdb_os_vprintf_filtered (host_callback *p, const char *format, void *ap) +gdb_os_vprintf_filtered (host_callback *p, const char *format, va_list ap) #else gdb_os_vprintf_filtered (p, format, ap) host_callback *p; char *format; - void *ap; + va_list ap; #endif { - vfprintf_filtered (gdb_stdout, format, (va_list)ap); + vfprintf_filtered (gdb_stdout, format, ap); } /* GDB version of error evprintf_filtered. */ @@ -284,15 +284,15 @@ gdb_os_vprintf_filtered (p, format, ap) /* VARARGS */ static void #ifdef ANSI_PROTOTYPES -gdb_os_evprintf_filtered (host_callback *p, const char *format, void *ap) +gdb_os_evprintf_filtered (host_callback *p, const char *format, va_list ap) #else gdb_os_evprintf_filtered (p, format, ap) host_callback *p; char *format; - void *ap; + va_list ap; #endif { - vfprintf_filtered (gdb_stderr, format, (va_list)ap); + vfprintf_filtered (gdb_stderr, format, ap); } /* GDB version of error callback. */ diff --git a/include/callback.h b/include/callback.h index 944a1b7..b2a7fe2 100644 --- a/include/callback.h +++ b/include/callback.h @@ -20,6 +20,15 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ #ifndef CALLBACK_H #define CALLBACK_H +#ifndef va_start +#include <ansidecl.h> +#ifdef ANSI_PROTOTYPES +#include <stdarg.h> +#else +#include <varargs.h> +#endif +#endif + typedef struct host_callback_struct host_callback; #define MAX_CALLBACK_FDS 10 @@ -53,10 +62,10 @@ struct host_callback_struct /* Talk to the user on a console. The `void *' is actually `va_list *'. */ - void (*vprintf_filtered) PARAMS ((host_callback *, const char *, void *)); + void (*vprintf_filtered) PARAMS ((host_callback *, const char *, va_list)); /* Same as vprintf_filtered but to stderr. */ - void (*evprintf_filtered) PARAMS ((host_callback *, const char *, void *)); + void (*evprintf_filtered) PARAMS ((host_callback *, const char *, va_list)); /* Print an error message and "exit". In the case of gdb "exiting" means doing a longjmp back to the main |