summaryrefslogtreecommitdiffstats
path: root/newlib/libc/include/machine/setjmp.h
diff options
context:
space:
mode:
Diffstat (limited to 'newlib/libc/include/machine/setjmp.h')
-rw-r--r--newlib/libc/include/machine/setjmp.h6
1 files changed, 5 insertions, 1 deletions
diff --git a/newlib/libc/include/machine/setjmp.h b/newlib/libc/include/machine/setjmp.h
index 52b39e2da..7ffb7d7e6 100644
--- a/newlib/libc/include/machine/setjmp.h
+++ b/newlib/libc/include/machine/setjmp.h
@@ -267,7 +267,11 @@ extern "C" {
#endif
/* POSIX sigsetjmp/siglongjmp macros */
-typedef int sigjmp_buf[_JBLEN+2];
+#ifdef _JBTYPE
+typedef _JBTYPE sigjmp_buf[_JBLEN+1+(sizeof (sigset_t)/sizeof (_JBTYPE))];
+#else
+typedef int sigjmp_buf[_JBLEN+1+(sizeof (sigset_t)/sizeof (int))];
+#endif
#define _SAVEMASK _JBLEN
#define _SIGMASK (_JBLEN+1)