Index: kernel/generic/include/interrupt.h
===================================================================
--- kernel/generic/include/interrupt.h	(revision 04357767a90c7f3afb5035aee20bc56c354efbb8)
+++ kernel/generic/include/interrupt.h	(revision 9ac2013bb53c62688dcd0e2009ddb5c40df48cc1)
@@ -37,4 +37,5 @@
 
 #include <arch/interrupt.h>
+#include <print.h>
 #include <typedefs.h>
 #include <proc/task.h>
@@ -57,5 +58,6 @@
 extern exc_table_t exc_table[];
 
-extern void fault_if_from_uspace(istate_t *, const char *, ...);
+extern void fault_if_from_uspace(istate_t *, const char *, ...)
+    PRINTF_ATTRIBUTE(2, 3);
 extern iroutine_t exc_register(unsigned int, const char *, bool, iroutine_t);
 extern void exc_dispatch(unsigned int, istate_t *);
Index: kernel/generic/include/panic.h
===================================================================
--- kernel/generic/include/panic.h	(revision 04357767a90c7f3afb5035aee20bc56c354efbb8)
+++ kernel/generic/include/panic.h	(revision 9ac2013bb53c62688dcd0e2009ddb5c40df48cc1)
@@ -37,4 +37,5 @@
 
 #include <typedefs.h>
+#include <print.h>
 
 #define panic(fmt, ...) \
@@ -62,5 +63,6 @@
 
 extern void panic_common(panic_category_t, struct istate *, int,
-    uintptr_t, const char *, ...) __attribute__ ((noreturn));
+    uintptr_t, const char *, ...) __attribute__ ((noreturn))
+    PRINTF_ATTRIBUTE(5, 6);
 
 #endif
Index: uspace/lib/c/include/stdio.h
===================================================================
--- uspace/lib/c/include/stdio.h	(revision 04357767a90c7f3afb5035aee20bc56c354efbb8)
+++ uspace/lib/c/include/stdio.h	(revision 9ac2013bb53c62688dcd0e2009ddb5c40df48cc1)
@@ -41,4 +41,15 @@
 #include <adt/list.h>
 
+#ifndef NVERIFY_PRINTF
+
+#define PRINTF_ATTRIBUTE(start, end) \
+	__attribute__((format(gnu_printf, start, end)))
+
+#else /* NVERIFY_PRINTF */
+
+#define PRINTF_ATTRIBUTE(start, end)
+
+#endif /* NVERIFY_PRINTF */
+
 #define EOF  (-1)
 
@@ -149,12 +160,16 @@
 
 /* Formatted string output functions */
-extern int fprintf(FILE *, const char*, ...);
+extern int fprintf(FILE *, const char*, ...)
+    PRINTF_ATTRIBUTE(2, 3);
 extern int vfprintf(FILE *, const char *, va_list);
 
-extern int printf(const char *, ...);
+extern int printf(const char *, ...)
+    PRINTF_ATTRIBUTE(1, 2);
 extern int vprintf(const char *, va_list);
 
-extern int snprintf(char *, size_t , const char *, ...);
-extern int asprintf(char **, const char *, ...);
+extern int snprintf(char *, size_t , const char *, ...)
+    PRINTF_ATTRIBUTE(3, 4);
+extern int asprintf(char **, const char *, ...)
+    PRINTF_ATTRIBUTE(2, 3);
 extern int vsnprintf(char *, size_t, const char *, va_list);
 
