Mark _printflike_ things so we get format warnings.
authorEmil Mikulic <emikulic@gmail.com>
Sat, 25 Jan 2014 07:31:10 +0000 (18:31 +1100)
committerEmil Mikulic <emikulic@gmail.com>
Sat, 25 Jan 2014 14:07:28 +0000 (01:07 +1100)
daylog.c
err.h
http.c
str.h

index fe1928f..02fb180 100644 (file)
--- a/daylog.c
+++ b/daylog.c
@@ -9,6 +9,7 @@
 
 #define _GNU_SOURCE 1 /* for O_NOFOLLOW on Linux */
 
+#include "cdefs.h"
 #include "err.h"
 #include "daylog.h"
 #include "str.h"
@@ -55,6 +56,7 @@ static time_t tomorrow(time_t t_before) {
 }
 
 /* Warns on error. */
+static void daylog_write(const char *format, ...) _printflike_(1, 2);
 static void daylog_write(const char *format, ...) {
    int fd;
    ssize_t wr;
diff --git a/err.h b/err.h
index 842595a..3ace2b9 100644 (file)
--- a/err.h
+++ b/err.h
@@ -27,6 +27,6 @@ void warn(const char *format, ...) _printflike_(1, 2);
 void warnx(const char *format, ...) _printflike_(1, 2);
 
 void verbosef(const char *format, ...) _printflike_(1, 2);
-void dverbosef(const char *format _unused_, ...);
+void dverbosef(const char *format _unused_, ...) _printflike_(1, 2);
 
 /* vim:set ts=3 sw=3 tw=78 expandtab: */
diff --git a/http.c b/http.c
index 1da660b..cc2f116 100644 (file)
--- a/http.c
+++ b/http.c
@@ -407,6 +407,9 @@ static void generate_header(struct connection *conn,
 /* ---------------------------------------------------------------------------
  * A default reply for any (erroneous) occasion.
  */
+static void default_reply(struct connection *conn,
+    const int errcode, const char *errname, const char *format, ...)
+    _printflike_(4, 5);
 static void default_reply(struct connection *conn,
     const int errcode, const char *errname, const char *format, ...)
 {
diff --git a/str.h b/str.h
index 92cb78f..80e9e23 100644 (file)
--- a/str.h
+++ b/str.h
@@ -16,6 +16,8 @@
  * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
  */
 
+#include "cdefs.h"
+
 #include <sys/types.h>
 #include <stdarg.h>
 
@@ -39,10 +41,12 @@ void str_appendstr(struct str *buf, const struct str *s);
 void str_append(struct str *buf, const char *s);
 #endif
 
-size_t xvasprintf(char **result, const char *format, va_list va);
-size_t xasprintf(char **result, const char *format, ...);
-void str_appendf(struct str *buf, const char *format, ...);
-void str_vappendf(struct str *s, const char *format, va_list va);
+size_t xvasprintf(char **result, const char *format, va_list va)
+   _printflike_(2, 0);
+size_t xasprintf(char **result, const char *format, ...) _printflike_(2, 3);
+void str_vappendf(struct str *s, const char *format, va_list va)
+   _printflike_(2, 0);
+void str_appendf(struct str *s, const char *format, ...) _printflike_(2, 3);
 
 struct str *length_of_time(const time_t t);
 ssize_t str_write(const struct str * const buf, const int fd);