sim/ppc: Add ATTRIBUTE_PRINTF

Clang generates a warning if the format string of a printf-like function is
not a literal ("-Wformat-nonliteral").  On the default configuration, it
causes a build failure (unless "--disable-werror" is specified).

To avoid warnings on the printf-like wrapper, it requires proper
__attribute__((format)) and we have ATTRIBUTE_PRINTF macro for this reason.

This commit adds ATTRIBUTE_PRINTF to the printf-like functions.

For the error function defined in sim_calls.c, the ATTRIBUTE_NORETURN
has been moved to the function declaration.
This commit is contained in:
Tsukasa OI 2022-10-06 06:36:32 +00:00 committed by Andrew Burgess
parent 7f9495b213
commit 3efe5b4d9e
3 changed files with 7 additions and 8 deletions

View File

@ -30,8 +30,8 @@
#include "ansidecl.h"
#include "filter_filename.h"
extern void error
(const char *msg, ...);
extern void error (const char *msg, ...)
ATTRIBUTE_NORETURN ATTRIBUTE_PRINTF (1, 2);
#define ASSERT(EXPRESSION) \
do { \
@ -47,8 +47,8 @@ do { \
extern void *zalloc
(long size);
extern void dumpf
(int indent, const char *msg, ...);
extern void dumpf (int indent, const char *msg, ...)
ATTRIBUTE_PRINTF (2, 3);
extern unsigned target_a2i
(int ms_bit_nr,

View File

@ -31,9 +31,8 @@
void sim_io_printf_filtered
(const char *msg, ...) ATTRIBUTE_PRINTF_1;
void ATTRIBUTE_NORETURN error
(const char *msg, ...);
extern void error (const char *msg, ...)
ATTRIBUTE_NORETURN ATTRIBUTE_PRINTF (1, 2);
/* External environment:

View File

@ -388,7 +388,7 @@ sim_io_error (SIM_DESC sd, const char *fmt, ...)
/****/
void ATTRIBUTE_NORETURN
void
error (const char *msg, ...)
{
va_list ap;