Fix "format not a string literal" errors With GCC 6.1. https://bugzilla.libsdl.org/show_bug.cgi?id=3375
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42
diff --git a/src/SDL_error.c b/src/SDL_error.c
index ace5cc3..452d531 100644
--- a/src/SDL_error.c
+++ b/src/SDL_error.c
@@ -116,6 +116,8 @@ SDL_SetError(SDL_PRINTF_FORMAT_STRING const char *fmt, ...)
return -1;
}
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wformat-nonliteral"
/* This function has a bit more overhead than most error functions
so that it supports internationalization and thread-safe errors.
*/
@@ -216,6 +218,7 @@ SDL_GetErrorMsg(char *errstr, int maxlen)
}
return (errstr);
}
+#pragma GCC diagnostic pop
/* Available for backwards compatibility */
const char *
diff --git a/src/test/SDL_test_log.c b/src/test/SDL_test_log.c
index 097372e..69696f8 100644
--- a/src/test/SDL_test_log.c
+++ b/src/test/SDL_test_log.c
@@ -50,6 +50,8 @@
*
* \return Ascii representation of the timestamp in localtime in the format '08/23/01 14:55:02'
*/
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wformat-nonliteral"
char *SDLTest_TimestampToString(const time_t timestamp)
{
time_t copy;
@@ -64,6 +66,7 @@ char *SDLTest_TimestampToString(const time_t timestamp)
return buffer;
}
+#pragma GCC diagnostic pop
/*
* Prints given message with a timestamp in the TEST category and INFO priority.