From 3612b8750e075aeb2fe164b1cfd29d57d9492b78 Mon Sep 17 00:00:00 2001 From: pk Date: Wed, 16 Mar 1994 18:40:35 +0000 Subject: [PATCH] as_bad(): don't use error messages as a format string in printf(). Use vararg parameter declaration that gcc actually compiles correctly. --- gnu/usr.bin/gas/messages.c | 19 ++++++++----------- 1 file changed, 8 insertions(+), 11 deletions(-) diff --git a/gnu/usr.bin/gas/messages.c b/gnu/usr.bin/gas/messages.c index b1ba3f764a2d..5fc06bb1e641 100644 --- a/gnu/usr.bin/gas/messages.c +++ b/gnu/usr.bin/gas/messages.c @@ -18,7 +18,7 @@ the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifndef lint -static char rcsid[] = "$Id: messages.c,v 1.3 1993/10/02 20:57:45 pk Exp $"; +static char rcsid[] = "$Id: messages.c,v 1.4 1994/03/16 18:40:35 pk Exp $"; #endif #include /* define stderr */ @@ -281,24 +281,22 @@ char *format; */ #ifndef NO_STDARG -void as_bad(Format) -const char *Format; +void as_bad(const char *Format, ...) { va_list args; char buffer[200]; + va_start(args, Format); + vsprintf(buffer, Format, args); + va_end(args); + ++error_count; as_where(); - va_start(args, Format); - fprintf(stderr,"Error: "); + fprintf(stderr,"Error: %s\n", buffer); - vsprintf(buffer, Format, args); - fprintf(stderr,buffer); #ifndef NO_LISTING listing_error(buffer); #endif - va_end(args); - (void) putc('\n', stderr); } /* as_bad() */ #else #ifndef NO_VARARGS @@ -358,8 +356,7 @@ char *format; */ #ifndef NO_STDARG -void as_fatal(Format) -const char *Format; +void as_fatal(const char *Format, ...) { va_list args;