Provisioning syscall and helper program (XCC)
[akaros.git] / kern / src / printfmt.c
index 5d4fc83..90e7486 100644 (file)
@@ -2,8 +2,12 @@
 // used in common by printf, sprintf, fprintf, etc.
 // This code is also used by both the kernel and user programs.
 
-#include <arch/types.h>
-#include <ros/error.h>
+#ifdef __SHARC__
+#pragma nosharc
+#endif
+
+#include <ros/common.h>
+#include <error.h>
 #include <stdio.h>
 #include <string.h>
 #include <stdarg.h>
@@ -279,7 +283,11 @@ int vsnprintf(char *buf, int n, const char *fmt, va_list ap)
        b.buf = buf;
 
        // print the string to the buffer
-       vprintfmt(sprintputch, (sprintbuf_t *NONNULL*NONNULL)&bp, fmt, ap);
+       #ifdef __DEPUTY__
+       vprintfmt((void*)sprintputch, (sprintbuf_t *NONNULL*NONNULL)&bp, fmt, ap);
+       #else
+       vprintfmt((void*)sprintputch, (void*)&bp, fmt, ap);
+       #endif
 
        // null terminate the buffer
        *b.buf = '\0';