Add attribute(format) to *printf to detect ill-formed calls to those functions

This commit is contained in:
apio 2022-09-06 18:25:38 +02:00
parent bd0a24097f
commit c9e13f0128

View File

@ -2,9 +2,11 @@
#include <stdarg.h>
#include <stddef.h>
int printf(const char* fmt, ...);
int sprintf(char* __s, const char* fmt, ...);
int snprintf(char* __s, size_t max, const char* fmt, ...);
#define PRINTF_LIKE(n, m) __attribute__((format(printf, n, m)))
int printf(const char* fmt, ...) PRINTF_LIKE(1, 2);
int sprintf(char* __s, const char* fmt, ...) PRINTF_LIKE(2, 3);
int snprintf(char* __s, size_t max, const char* fmt, ...) PRINTF_LIKE(3, 4);
int vprintf(const char* fmt, va_list ap);
int vsprintf(char* __s, const char* fmt, va_list ap);
int vsnprintf(char* __s, size_t max, const char* fmt, va_list ap);