[2/4] sim: igen: mark output funcs with printf attribute
Commit Message
... and fix the legitimate bug that it catches.
---
sim/igen/ld-insn.c | 2 +-
sim/igen/misc.h | 9 +++------
2 files changed, 4 insertions(+), 7 deletions(-)
@@ -448,7 +448,7 @@ parse_insn_words (insn_entry * insn, char *formats)
the same size */
if (f->width != refered_field->width)
error (insn->line,
- "Conditional `%s' of field `%s' should be of size %s\n",
+ "Conditional `%s' of field `%s' should be of size %i\n",
cond->string, f->val_string,
refered_field->width);
}
@@ -36,11 +36,7 @@ enum
#include <stdlib.h>
#include <string.h>
-#if !defined (__attribute__) && (!defined(__GNUC__) || __GNUC__ < 2 || (__GNUC__ == 2 && __GNUC_MINOR__ < 7))
-#define __attribute__(arg)
-#endif
-
-
+#include "ansidecl.h"
#include "filter_host.h"
@@ -52,7 +48,8 @@ struct _line_ref
};
/* Error appends a new line, warning and notify do not */
-typedef void error_func (const line_ref *line, const char *msg, ...);
+typedef void error_func (const line_ref *line, const char *msg, ...)
+ ATTRIBUTE_PRINTF (2, 3);
extern error_func error;
extern error_func warning;