Use format(gnu_printf, ...) for windows build with __USE_MINGW_ANSI_STDIO
With __USE_MINGW_ANSI_STDIO mingw compiler uses its own replacement
printf*/scanf* libraries instead of Microsoft's ones which aren't always
C99 compatible. Declare "archetype" of attribute format to gnu_printf
because the default "printf" in mingw follows MS standard.
One result is that "%z" (a gnu-extension) is accepted w/o warning by
mingw compiler
Change-Id: I3e92f34e2a1e8d664b4f1f55d450f7c2790671f3
diff --git a/include/android/log.h b/include/android/log.h
index f5b1900..ad36bd2 100644
--- a/include/android/log.h
+++ b/include/android/log.h
@@ -98,8 +98,12 @@
*/
int __android_log_print(int prio, const char *tag, const char *fmt, ...)
#if defined(__GNUC__)
+#if __USE_MINGW_ANSI_STDIO
+ __attribute__ ((format(gnu_printf, 3, 4)))
+#else
__attribute__ ((format(printf, 3, 4)))
#endif
+#endif
;
/*
@@ -117,8 +121,12 @@
const char *fmt, ...)
#if defined(__GNUC__)
__attribute__ ((noreturn))
+#if __USE_MINGW_ANSI_STDIO
+ __attribute__ ((format(gnu_printf, 3, 4)))
+#else
__attribute__ ((format(printf, 3, 4)))
#endif
+#endif
;
#ifdef __cplusplus