From 8b7968f7c4ac8c07cad6a1a0891d38cf239a2839 Mon Sep 17 00:00:00 2001 From: Stefan Weil Date: Thu, 23 Sep 2010 21:28:05 +0200 Subject: [PATCH] Use GCC_FMT_ATTR (format checking) Signed-off-by: Stefan Weil Signed-off-by: Blue Swirl --- audio/audio.h | 2 +- disas.c | 3 ++- hw/mips_fulong2e.c | 3 ++- hw/mips_malta.c | 3 ++- json-parser.c | 3 ++- monitor.c | 3 ++- monitor.h | 3 ++- qemu-char.h | 3 ++- qemu-error.h | 2 +- qemu-img.c | 2 +- qerror.c | 6 ++++-- qerror.h | 2 +- qjson.h | 4 ++-- slirp/slirp.h | 2 +- 14 files changed, 25 insertions(+), 16 deletions(-) diff --git a/audio/audio.h b/audio/audio.h index 39a063131..a70fda97e 100644 --- a/audio/audio.h +++ b/audio/audio.h @@ -86,7 +86,7 @@ typedef struct QEMUAudioTimeStamp { uint64_t old_ts; } QEMUAudioTimeStamp; -void AUD_vlog (const char *cap, const char *fmt, va_list ap); +void AUD_vlog (const char *cap, const char *fmt, va_list ap) GCC_FMT_ATTR(2, 0); void AUD_log (const char *cap, const char *fmt, ...) GCC_FMT_ATTR(2, 3); void AUD_help (void); diff --git a/disas.c b/disas.c index 79a98ded8..afe331fdb 100644 --- a/disas.c +++ b/disas.c @@ -349,7 +349,8 @@ monitor_read_memory (bfd_vma memaddr, bfd_byte *myaddr, int length, return 0; } -static int monitor_fprintf(FILE *stream, const char *fmt, ...) +static int GCC_FMT_ATTR(2, 3) +monitor_fprintf(FILE *stream, const char *fmt, ...) { va_list ap; va_start(ap, fmt); diff --git a/hw/mips_fulong2e.c b/hw/mips_fulong2e.c index 61ca9c420..df80ef6c2 100644 --- a/hw/mips_fulong2e.c +++ b/hw/mips_fulong2e.c @@ -76,7 +76,8 @@ static struct _loaderparams { const char *initrd_filename; } loaderparams; -static void prom_set(uint32_t* prom_buf, int index, const char *string, ...) +static void GCC_FMT_ATTR(3, 4) prom_set(uint32_t* prom_buf, int index, + const char *string, ...) { va_list ap; int32_t table_addr; diff --git a/hw/mips_malta.c b/hw/mips_malta.c index 1cb7880cd..096908943 100644 --- a/hw/mips_malta.c +++ b/hw/mips_malta.c @@ -654,7 +654,8 @@ static void write_bootloader (CPUState *env, uint8_t *base, } -static void prom_set(uint32_t* prom_buf, int index, const char *string, ...) +static void GCC_FMT_ATTR(3, 4) prom_set(uint32_t* prom_buf, int index, + const char *string, ...) { va_list ap; int32_t table_addr; diff --git a/json-parser.c b/json-parser.c index 70b9b6f96..6c06ef91a 100644 --- a/json-parser.c +++ b/json-parser.c @@ -91,7 +91,8 @@ static int token_is_escape(QObject *obj, const char *value) /** * Error handler */ -static void parse_error(JSONParserContext *ctxt, QObject *token, const char *msg, ...) +static void GCC_FMT_ATTR(3, 4) parse_error(JSONParserContext *ctxt, + QObject *token, const char *msg, ...) { va_list ap; va_start(ap, msg); diff --git a/monitor.c b/monitor.c index e602480eb..377ab378c 100644 --- a/monitor.c +++ b/monitor.c @@ -316,7 +316,8 @@ void monitor_print_filename(Monitor *mon, const char *filename) } } -static int monitor_fprintf(FILE *stream, const char *fmt, ...) +static int GCC_FMT_ATTR(2, 3) monitor_fprintf(FILE *stream, + const char *fmt, ...) { va_list ap; va_start(ap, fmt); diff --git a/monitor.h b/monitor.h index 185cc3e81..4a6cf8260 100644 --- a/monitor.h +++ b/monitor.h @@ -49,7 +49,8 @@ int monitor_read_bdrv_key_start(Monitor *mon, BlockDriverState *bs, int monitor_get_fd(Monitor *mon, const char *fdname); -void monitor_vprintf(Monitor *mon, const char *fmt, va_list ap); +void monitor_vprintf(Monitor *mon, const char *fmt, va_list ap) + GCC_FMT_ATTR(2, 0); void monitor_printf(Monitor *mon, const char *fmt, ...) GCC_FMT_ATTR(2, 3); void monitor_print_filename(Monitor *mon, const char *filename); void monitor_flush(Monitor *mon); diff --git a/qemu-char.h b/qemu-char.h index 6ea01ba17..18ad12bb5 100644 --- a/qemu-char.h +++ b/qemu-char.h @@ -76,7 +76,8 @@ CharDriverState *qemu_chr_open_opts(QemuOpts *opts, void (*init)(struct CharDriverState *s)); CharDriverState *qemu_chr_open(const char *label, const char *filename, void (*init)(struct CharDriverState *s)); void qemu_chr_close(CharDriverState *chr); -void qemu_chr_printf(CharDriverState *s, const char *fmt, ...); +void qemu_chr_printf(CharDriverState *s, const char *fmt, ...) + GCC_FMT_ATTR(2, 3); int qemu_chr_write(CharDriverState *s, const uint8_t *buf, int len); void qemu_chr_send_event(CharDriverState *s, int event); void qemu_chr_add_handlers(CharDriverState *s, diff --git a/qemu-error.h b/qemu-error.h index 531ec63fe..4d5c53700 100644 --- a/qemu-error.h +++ b/qemu-error.h @@ -30,7 +30,7 @@ void loc_set_none(void); void loc_set_cmdline(char **argv, int idx, int cnt); void loc_set_file(const char *fname, int lno); -void error_vprintf(const char *fmt, va_list ap); +void error_vprintf(const char *fmt, va_list ap) GCC_FMT_ATTR(1, 0); void error_printf(const char *fmt, ...) GCC_FMT_ATTR(1, 2); void error_printf_unless_qmp(const char *fmt, ...) GCC_FMT_ATTR(1, 2); void error_print_loc(void); diff --git a/qemu-img.c b/qemu-img.c index 4e035e44c..578b8ebe8 100644 --- a/qemu-img.c +++ b/qemu-img.c @@ -39,7 +39,7 @@ typedef struct img_cmd_t { /* Default to cache=writeback as data integrity is not important for qemu-tcg. */ #define BDRV_O_FLAGS BDRV_O_CACHE_WB -static void error(const char *fmt, ...) +static void GCC_FMT_ATTR(1, 2) error(const char *fmt, ...) { va_list ap; va_start(ap, fmt); diff --git a/qerror.c b/qerror.c index 0af3ab32b..ac2cdafa6 100644 --- a/qerror.c +++ b/qerror.c @@ -218,7 +218,8 @@ QError *qerror_new(void) return qerr; } -static void qerror_abort(const QError *qerr, const char *fmt, ...) +static void GCC_FMT_ATTR(2, 3) qerror_abort(const QError *qerr, + const char *fmt, ...) { va_list ap; @@ -233,7 +234,8 @@ static void qerror_abort(const QError *qerr, const char *fmt, ...) abort(); } -static void qerror_set_data(QError *qerr, const char *fmt, va_list *va) +static void GCC_FMT_ATTR(2, 0) qerror_set_data(QError *qerr, + const char *fmt, va_list *va) { QObject *obj; diff --git a/qerror.h b/qerror.h index f2984dd10..943a24b4e 100644 --- a/qerror.h +++ b/qerror.h @@ -34,7 +34,7 @@ typedef struct QError { QError *qerror_new(void); QError *qerror_from_info(const char *file, int linenr, const char *func, - const char *fmt, va_list *va); + const char *fmt, va_list *va) GCC_FMT_ATTR(4, 0); QString *qerror_human(const QError *qerror); void qerror_print(QError *qerror); void qerror_report_internal(const char *file, int linenr, const char *func, diff --git a/qjson.h b/qjson.h index 7eef35735..70d0afba5 100644 --- a/qjson.h +++ b/qjson.h @@ -18,9 +18,9 @@ #include "qobject.h" #include "qstring.h" -QObject *qobject_from_json(const char *string); +QObject *qobject_from_json(const char *string) GCC_FMT_ATTR(1, 0); QObject *qobject_from_jsonf(const char *string, ...) GCC_FMT_ATTR(1, 2); -QObject *qobject_from_jsonv(const char *string, va_list *ap); +QObject *qobject_from_jsonv(const char *string, va_list *ap) GCC_FMT_ATTR(1, 0); QString *qobject_to_json(const QObject *obj); diff --git a/slirp/slirp.h b/slirp/slirp.h index 6c7488c9a..462292d57 100644 --- a/slirp/slirp.h +++ b/slirp/slirp.h @@ -263,7 +263,7 @@ void if_start(struct ttys *); long gethostid(void); #endif -void lprint(const char *, ...); +void lprint(const char *, ...) GCC_FMT_ATTR(1, 2); #ifndef _WIN32 #include -- 2.39.2