shithub: sl

Download patch

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;