summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEric Anholt <eric@anholt.net>2010-09-01 14:39:50 -0700
committerEric Anholt <eric@anholt.net>2010-09-01 17:08:23 -0700
commit3cddc15d9dcf44a0998dd5f29ae6f6d17370584e (patch)
tree86cbeb76ca539edf7b6b318a6832bf7900db6059
parent557a71c50631a232528f654fa8b8e4add0e565d2 (diff)
mesa: Add __printf__ attribute to printf-like functions to get warnings.
-rw-r--r--src/mesa/main/compiler.h5
-rw-r--r--src/mesa/main/imports.h10
2 files changed, 10 insertions, 5 deletions
diff --git a/src/mesa/main/compiler.h b/src/mesa/main/compiler.h
index e0507ccf86..ded69c3106 100644
--- a/src/mesa/main/compiler.h
+++ b/src/mesa/main/compiler.h
@@ -316,6 +316,11 @@ static INLINE GLuint CPU_TO_LE32(GLuint x)
#endif
#endif
+#if (__GNUC__ >= 3)
+#define PRINTFLIKE(f, a) __attribute__ ((format(__printf__, f, a)))
+#else
+#define PRINTFLIKE(f, a)
+#endif
#ifndef NULL
#define NULL 0
diff --git a/src/mesa/main/imports.h b/src/mesa/main/imports.h
index 317e2b7df0..751f206501 100644
--- a/src/mesa/main/imports.h
+++ b/src/mesa/main/imports.h
@@ -566,19 +566,19 @@ extern unsigned int
_mesa_str_checksum(const char *str);
extern int
-_mesa_snprintf( char *str, size_t size, const char *fmt, ... );
+_mesa_snprintf( char *str, size_t size, const char *fmt, ... ) PRINTFLIKE(3, 4);
extern void
-_mesa_warning( __GLcontext *gc, const char *fmtString, ... );
+_mesa_warning( __GLcontext *gc, const char *fmtString, ... ) PRINTFLIKE(2, 3);
extern void
-_mesa_problem( const __GLcontext *ctx, const char *fmtString, ... );
+_mesa_problem( const __GLcontext *ctx, const char *fmtString, ... ) PRINTFLIKE(2, 3);
extern void
-_mesa_error( __GLcontext *ctx, GLenum error, const char *fmtString, ... );
+_mesa_error( __GLcontext *ctx, GLenum error, const char *fmtString, ... ) PRINTFLIKE(3, 4);
extern void
-_mesa_debug( const __GLcontext *ctx, const char *fmtString, ... );
+_mesa_debug( const __GLcontext *ctx, const char *fmtString, ... ) PRINTFLIKE(2, 3);
#if defined(_MSC_VER) && !defined(snprintf)