ref: 656ccd1c81fb6b571da0eb85f101635e3a8c387d
parent: bc6c865b6f48a1d19172c7e8d9545fa0a4d41247
author: Sigrid Solveig Haflínudóttir <sigrid@ftrv.se>
date: Wed Mar 12 00:55:32 EDT 2025
posix: use sigjmp_buf
--- a/src/dos/platform.h
+++ b/src/dos/platform.h
@@ -31,6 +31,7 @@
#define USED(x) ((void)(x))
#define nelem(x) (int)(sizeof(x)/sizeof((x)[0]))
+typedef jmp_buf sl_jmp_buf;
#define sl_setjmp(e) setjmp((e))
#define sl_longjmp(e, v) longjmp((e), (v))
--- a/src/macos/platform.h
+++ b/src/macos/platform.h
@@ -34,6 +34,7 @@
#define USED(x) ((void)(x))
#define nelem(x) (int)(sizeof(x)/sizeof((x)[0]))
+typedef jmp_buf sl_jmp_buf;
#define sl_setjmp(e) setjmp((e))
#define sl_longjmp(e, v) longjmp((e), (v))
--- a/src/plan9/platform.h
+++ b/src/plan9/platform.h
@@ -25,6 +25,7 @@
int sl_popcount(unsigned int w);
int sl_clz(unsigned int x);
+typedef jmp_buf sl_jmp_buf;
#define sl_setjmp(e) setjmp((e))
#define sl_longjmp(e, v) longjmp((e), (v))
--- a/src/posix/platform.h
+++ b/src/posix/platform.h
@@ -61,6 +61,7 @@
#endif
#endif
+typedef sigjmp_buf sl_jmp_buf;
#define sl_setjmp(e) sigsetjmp((e), 0)
#define sl_longjmp(e, v) siglongjmp((e), (v))
--- a/src/sl.h
+++ b/src/sl.h
@@ -233,7 +233,7 @@
typedef struct _ectx_t {
sl_readstate *rdst;
struct _ectx_t *prev;
- jmp_buf buf;
+ sl_jmp_buf buf;
sl_v *sp;
sl_v *frame;
int ngchnd;