summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--source3/include/includes.h5
-rw-r--r--source3/tdb/tdb.h8
2 files changed, 11 insertions, 2 deletions
diff --git a/source3/include/includes.h b/source3/include/includes.h
index 56624e5198..58cb39790f 100644
--- a/source3/include/includes.h
+++ b/source3/include/includes.h
@@ -45,10 +45,11 @@
#undef HAVE_TERMIOS_H
#endif
-#ifdef __GNUC__
+#if (__GNUC__ >= 3)
/** Use gcc attribute to check printf fns. a1 is the 1-based index of
* the parameter containing the format, and a2 the index of the first
- * argument. **/
+ * argument. Note that some gcc 2.x versions don't handle this
+ * properly **/
#define PRINTF_ATTRIBUTE(a1, a2) __attribute__ ((format (__printf__, a1, a2)))
#else
#define PRINTF_ATTRIBUTE(a1, a2)
diff --git a/source3/tdb/tdb.h b/source3/tdb/tdb.h
index 3db676a633..e8a6d201c5 100644
--- a/source3/tdb/tdb.h
+++ b/source3/tdb/tdb.h
@@ -32,7 +32,15 @@ extern "C" {
#endif
#ifndef PRINTF_ATTRIBUTE
+/** Use gcc attribute to check printf fns. a1 is the 1-based index of
+ * the parameter containing the format, and a2 the index of the first
+ * argument. Note that some gcc 2.x versions don't handle this
+ * properly **/
+#if (__GNUC__ >= 3)
#define PRINTF_ATTRIBUTE(a1, a2) __attribute__ ((format (__printf__, a1, a2)))
+#else
+#define PRINTF_ATTRIBUTE(a1, a2)
+#endif
#endif
/* flags to tdb_store() */