[v2,3/5] sim: Suppress non-literal printf warning
Commit Message
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).
However, non-literal format string is completely safe here.
We have "include/diagnostics.h" to suppress certain warnings only when
necessary. Because DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL can suppress
warnings when the format string of a printf-like function is not a literal,
this commit adds this macro (only where necessary) to suppress this warning.
sim/ChangeLog:
* common/sim-hw.c (hw_vabort): Suppress non-literal printf warning
by using DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
---
sim/common/sim-hw.c | 3 +++
1 file changed, 3 insertions(+)
@@ -425,10 +425,13 @@ hw_vabort (struct hw *me,
strcat (msg, ": ");
strcat (msg, fmt);
/* report the problem */
+ DIAGNOSTIC_PUSH
+ DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL
sim_engine_vabort (hw_system (me),
STATE_HW (hw_system (me))->cpu,
STATE_HW (hw_system (me))->cia,
msg, ap);
+ DIAGNOSTIC_POP
}
void