aboutsummaryrefslogtreecommitdiff
path: root/arch/powerpc/xmon/nonstdio.h
diff options
context:
space:
mode:
authorMathieu Malaterre <malat@debian.org>2018-03-25 11:06:47 +0200
committerMichael Ellerman <mpe@ellerman.id.au>2018-05-25 12:04:36 +1000
commite70d8f55268ba95f00c61857df2bab638365f10f (patch)
tree59612895eef9d3225e6c57529624d6c080cc0cc1 /arch/powerpc/xmon/nonstdio.h
parent6671683db8540e5766f44a1089549c168730ae41 (diff)
powerpc/xmon: Add __printf annotation to xmon_printf()
This allows the compiler to verify the format strings vs the types of the arguments. Update the other prototype declarations in asm/xmon.h. Silence warnings (triggered at W=1) by adding relevant __printf attribute. Move #define at bottom of the file to prevent conflict with gcc attribute. Solves the original warning: arch/powerpc/xmon/nonstdio.c:178:2: error: function might be possible candidate for ‘gnu_printf’ format attribute In turn this uncovered many formatting errors in xmon.c, all fixed in this patch. Signed-off-by: Mathieu Malaterre <malat@debian.org> [mpe: Always use px not p, fixup the 44x specific code, tweak change log] Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Diffstat (limited to 'arch/powerpc/xmon/nonstdio.h')
-rw-r--r--arch/powerpc/xmon/nonstdio.h8
1 files changed, 4 insertions, 4 deletions
diff --git a/arch/powerpc/xmon/nonstdio.h b/arch/powerpc/xmon/nonstdio.h
index 2202ec61972c..e8deac6c84e2 100644
--- a/arch/powerpc/xmon/nonstdio.h
+++ b/arch/powerpc/xmon/nonstdio.h
@@ -1,13 +1,13 @@
/* SPDX-License-Identifier: GPL-2.0 */
#define EOF (-1)
-#define printf xmon_printf
-#define putchar xmon_putchar
-
extern void xmon_set_pagination_lpp(unsigned long lpp);
extern void xmon_start_pagination(void);
extern void xmon_end_pagination(void);
extern int xmon_putchar(int c);
extern void xmon_puts(const char *);
extern char *xmon_gets(char *, int);
-extern void xmon_printf(const char *, ...);
+extern __printf(1, 2) void xmon_printf(const char *fmt, ...);
+
+#define printf xmon_printf
+#define putchar xmon_putchar