#ifndef _LIBC_SETJMP_H_
#define _LIBC_SETJMP_H_
-#if ARCHDIR_is_x86
-typedef uint32_t jmp_buf[8];
-#elif ARCHDIR_is_x86_64
-typedef uint64_t jmp_buf[16];
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#if defined(__i386__)
+typedef void *jmp_buf[8];
+#elif defined(__amd64__)
+typedef void *jmp_buf[16];
#else
# error "Unknown Architecture"
#endif
extern int setjmp(jmp_buf buf);
extern void longjmp(jmp_buf buf, int val);
+#ifdef __cplusplus
+}
+#endif
+
#endif