| Index: fusl/include/setjmp.h
|
| diff --git a/fusl/include/setjmp.h b/fusl/include/setjmp.h
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..2d43abf84f54ad9fc9501e0204816579c9b0de99
|
| --- /dev/null
|
| +++ b/fusl/include/setjmp.h
|
| @@ -0,0 +1,41 @@
|
| +#ifndef _SETJMP_H
|
| +#define _SETJMP_H
|
| +
|
| +#ifdef __cplusplus
|
| +extern "C" {
|
| +#endif
|
| +
|
| +#include <features.h>
|
| +
|
| +#include <bits/setjmp.h>
|
| +
|
| +typedef struct __jmp_buf_tag {
|
| + __jmp_buf __jb;
|
| + unsigned long __fl;
|
| + unsigned long __ss[128/sizeof(long)];
|
| +} jmp_buf[1];
|
| +
|
| +#if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \
|
| + || defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) \
|
| + || defined(_BSD_SOURCE)
|
| +typedef jmp_buf sigjmp_buf;
|
| +int sigsetjmp (sigjmp_buf, int);
|
| +_Noreturn void siglongjmp (sigjmp_buf, int);
|
| +#endif
|
| +
|
| +#if defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) \
|
| + || defined(_BSD_SOURCE)
|
| +int _setjmp (jmp_buf);
|
| +_Noreturn void _longjmp (jmp_buf, int);
|
| +#endif
|
| +
|
| +int setjmp (jmp_buf);
|
| +_Noreturn void longjmp (jmp_buf, int);
|
| +
|
| +#define setjmp setjmp
|
| +
|
| +#ifdef __cplusplus
|
| +}
|
| +#endif
|
| +
|
| +#endif
|
|
|