diff options
Diffstat (limited to 'src/eval.c')
| -rw-r--r-- | src/eval.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/src/eval.c b/src/eval.c index 8ee259110f4..566be0c2a83 100644 --- a/src/eval.c +++ b/src/eval.c | |||
| @@ -3302,6 +3302,16 @@ clear_unwind_protect (ptrdiff_t count) | |||
| 3302 | previous value without invoking it. */ | 3302 | previous value without invoking it. */ |
| 3303 | 3303 | ||
| 3304 | void | 3304 | void |
| 3305 | set_unwind_protect (ptrdiff_t count, void (*func) (Lisp_Object), | ||
| 3306 | Lisp_Object arg) | ||
| 3307 | { | ||
| 3308 | union specbinding *p = specpdl + count; | ||
| 3309 | p->unwind.kind = SPECPDL_UNWIND; | ||
| 3310 | p->unwind.func = func; | ||
| 3311 | p->unwind.arg = arg; | ||
| 3312 | } | ||
| 3313 | |||
| 3314 | void | ||
| 3305 | set_unwind_protect_ptr (ptrdiff_t count, void (*func) (void *), void *arg) | 3315 | set_unwind_protect_ptr (ptrdiff_t count, void (*func) (void *), void *arg) |
| 3306 | { | 3316 | { |
| 3307 | union specbinding *p = specpdl + count; | 3317 | union specbinding *p = specpdl + count; |