chiark / gitweb /
log: move #pragma around the function
authorMichal Schmidt <mschmidt@redhat.com>
Thu, 19 Jan 2012 12:00:34 +0000 (13:00 +0100)
committerMichal Schmidt <mschmidt@redhat.com>
Thu, 19 Jan 2012 12:00:34 +0000 (13:00 +0100)
Koen reported errors with gcc 4.5.4 for arm:
src/log.c:624:9: error: #pragma GCC diagnostic not allowed inside
functions

src/log.c

index f65e8d1006d0c9a0b155e85c70e9a0e3853cfc43..1a6ea7e5a84fbb2b97303f2b2775ce4e62bfde80 100644 (file)
--- a/src/log.c
+++ b/src/log.c
@@ -618,13 +618,12 @@ int log_meta(
         return r;
 }
 
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wformat-nonliteral"
 _noreturn_ static void log_assert(const char *text, const char *file, int line, const char *func, const char *format) {
         static char buffer[LINE_MAX];
 
-#pragma GCC diagnostic push
-#pragma GCC diagnostic ignored "-Wformat-nonliteral"
         snprintf(buffer, sizeof(buffer), format, text, file, line, func);
-#pragma GCC diagnostic pop
 
         char_array_0(buffer);
         log_abort_msg = buffer;
@@ -632,6 +631,7 @@ _noreturn_ static void log_assert(const char *text, const char *file, int line,
         log_dispatch(LOG_CRIT, file, line, func, buffer);
         abort();
 }
+#pragma GCC diagnostic pop
 
 void log_assert_failed(const char *text, const char *file, int line, const char *func) {
         log_assert(text, file, line, func, "Assertion '%s' failed at %s:%u, function %s(). Aborting.");