    { "spam_report",         vtype_stringptr,   &spam_report },
    { "spam_score",          vtype_stringptr,   &spam_score },
 diff --git a/src/src/globals.c b/src/src/globals.c
-index bcbe12d..6e0d3a4 100644
+index 74b6edb..e6f02fb 100644
 --- a/src/src/globals.c
 +++ b/src/src/globals.c
-@@ -1169,6 +1169,7 @@ BOOL    smtp_use_size          = FALSE;
+@@ -1212,6 +1212,7 @@ BOOL    smtp_use_size          = FALSE;
  uschar *spamd_address          = US"127.0.0.1 783";
  uschar *spam_bar               = NULL;
  uschar *spam_report            = NULL;

 extern uschar *spam_score_int;         /* spam_score * 10 (int) */
 #endif
diff --git a/src/src/spam.c b/src/src/spam.c
index 63395f2..d284618 100644
--- a/src/src/spam.c
+++ b/src/src/spam.c
@@ -14,12 +14,20 @@

   };
 
   /* remember expanded spamd_address if needed */
@@ -440,4 +574,126 @@ again:
   };
 }
 
+#ifdef __GNUC__
+static int
+spam_push_line(struct iovec *iov, const int i, const char *fmt, ...)  __attribute__ ((format (printf, 3, 4)));
+#endif
+static int
+spam_push_line(struct iovec *iov, const int i, const char *fmt, ...)
+{
