From f8b26a187d8b60ab3c04de0fbd9e8765f376490a Mon Sep 17 00:00:00 2001 From: David Malcolm Date: Tue, 27 Jun 2023 17:20:41 -0400 Subject: [PATCH 80/98] FIXME: add c-c++-common/analyzer/printf.c --- gcc/testsuite/c-c++-common/analyzer/printf.c | 66 ++++++++++++++++++++ 1 file changed, 66 insertions(+) create mode 100644 gcc/testsuite/c-c++-common/analyzer/printf.c diff --git a/gcc/testsuite/c-c++-common/analyzer/printf.c b/gcc/testsuite/c-c++-common/analyzer/printf.c new file mode 100644 index 000000000000..78de1dd28d56 --- /dev/null +++ b/gcc/testsuite/c-c++-common/analyzer/printf.c @@ -0,0 +1,66 @@ +/* FIXME + https://en.cppreference.com/w/c/io/fprintf + https://en.cppreference.com/w/c/io/vfprintf +*/ +#if 0 +int printf( const char *format, ... ); + (until C99) +int printf( const char *restrict format, ... ); + (since C99) + (2) +int fprintf( FILE *stream, const char *format, ... ); + (until C99) +int fprintf( FILE *restrict stream, const char *restrict format, ... ); + (since C99) + (3) +int sprintf( char *buffer, const char *format, ... ); + (until C99) +int sprintf( char *restrict buffer, const char *restrict format, ... ); + (since C99) +int snprintf( char *restrict buffer, size_t bufsz, + const char *restrict format, ... ); + (4) (since C99) +int printf_s( const char *restrict format, ... ); + (5) (since C11) +int fprintf_s( FILE *restrict stream, const char *restrict format, ... ); + (6) (since C11) +int sprintf_s( char *restrict buffer, rsize_t bufsz, + const char *restrict format, ... ); + (7) (since C11) +int snprintf_s( char *restrict buffer, rsize_t bufsz, + const char *restrict format, ... ); + (8) (since C11) + +int vprintf( const char *format, va_list vlist ); + (until C99) +int vprintf( const char *restrict format, va_list vlist ); + (since C99) + (2) +int vfprintf( FILE *stream, const char *format, va_list vlist ); + (until C99) +int vfprintf( FILE *restrict stream, const char *restrict format, + va_list vlist ); + (since C99) + (3) +int vsprintf( char *buffer, const char *format, va_list vlist ); + (until C99) +int vsprintf( char *restrict buffer, const char *restrict format, + va_list vlist ); + (since C99) +int vsnprintf( char *restrict buffer, size_t bufsz, + const char *restrict format, va_list vlist ); + (4) (since C99) +int vprintf_s( const char *restrict format, va_list vlist ); + (5) (since C11) +int vfprintf_s( FILE *restrict stream, const char *restrict format, + va_list vlist ); + (6) (since C11) +int vsprintf_s( char *restrict buffer, rsize_t bufsz, + const char *restrict format, va_list vlist ); + (7) (since C11) +int vsnprintf_s( char *restrict buffer, rsize_t bufsz, + const char *restrict format, va_list vlist ); + (8) (since C11) +#endif + +/* FIXME: or should we use formatting attributes? */ -- 2.49.0