diff --git a/include/asterisk/astmm.h b/include/asterisk/astmm.h
index 4487c17aa3d2ba8d756c892957169b1d276cf88e..f2a632e3c7186f983f06ab2540686da7f522f9d5 100644
--- a/include/asterisk/astmm.h
+++ b/include/asterisk/astmm.h
@@ -43,9 +43,10 @@ void __ast_free(void *ptr, const char *file, int lineno, const char *func);
 void *__ast_realloc(void *ptr, size_t size, const char *file, int lineno, const char *func);
 char *__ast_strdup(const char *s, const char *file, int lineno, const char *func);
 char *__ast_strndup(const char *s, size_t n, const char *file, int lineno, const char *func);
-int __ast_asprintf(const char *file, int lineno, const char *func, char **strp, const char *format, ...);
-int __ast_vasprintf(char **strp, const char *format, va_list ap, const char *file, int lineno, const char *func);
-
+int __ast_asprintf(const char *file, int lineno, const char *func, char **strp, const char *format, ...)
+	__attribute__ ((format (printf, 5, 6)));
+int __ast_vasprintf(char **strp, const char *format, va_list ap, const char *file, int lineno, const char *func)
+	__attribute__ ((format (printf, 2, 0)));
 void __ast_mm_init(void);