From a12cbf64bc5860121e005a5237e63584501c7cb2 Mon Sep 17 00:00:00 2001 From: David Robillard Date: Fri, 19 Apr 2019 16:49:25 +0200 Subject: Fix incorrect print format arguments --- src/n3.c | 6 ++++-- src/serd_internal.h | 7 +++++++ 2 files changed, 11 insertions(+), 2 deletions(-) (limited to 'src') diff --git a/src/n3.c b/src/n3.c index 0037c829..1a9bfaeb 100644 --- a/src/n3.c +++ b/src/n3.c @@ -646,10 +646,12 @@ read_IRIREF(SerdReader* reader) if (c <= 0x20) { if (isprint(c)) { r_err(reader, SERD_ERR_BAD_SYNTAX, - "invalid IRI character `%c' (escape %%%02X)\n", c, c); + "invalid IRI character `%c' (escape %%%02X)\n", + c, (unsigned)c); } else { r_err(reader, SERD_ERR_BAD_SYNTAX, - "invalid IRI character (escape %%%02X)\n", c, c); + "invalid IRI character (escape %%%02X)\n", + (unsigned)c); } if (reader->strict) { return pop_node(reader, ref); diff --git a/src/serd_internal.h b/src/serd_internal.h index dfb369b3..73c8113b 100644 --- a/src/serd_internal.h +++ b/src/serd_internal.h @@ -42,6 +42,12 @@ # define MIN(a, b) (((a) < (b)) ? (a) : (b)) #endif +#if defined(__GNUC__) +# define SERD_LOG_FUNC(fmt, arg1) __attribute__((format(printf, fmt, arg1))) +#else +# define SERD_LOG_FUNC(fmt, arg1) +#endif + static const uint8_t replacement_char[] = { 0xEF, 0xBF, 0xBD }; /* File and Buffer Utilities */ @@ -533,6 +539,7 @@ serd_error(SerdErrorSink error_sink, void* handle, const SerdError* e) } } +SERD_LOG_FUNC(3, 4) int r_err(SerdReader* reader, SerdStatus st, const char* fmt, ...); -- cgit v1.2.1