summaryrefslogtreecommitdiff
path: root/libguile/vm.h
diff options
context:
space:
mode:
authorAndy Wingo <wingo@pobox.com>2010-02-07 14:50:51 +0100
committerAndy Wingo <wingo@pobox.com>2010-02-08 13:35:42 +0100
commit269479e31f70d40a82b75be87c1b2a7363c85696 (patch)
tree8b8f8603e0a5610de57c1258dae7b8e89aa7139b /libguile/vm.h
parent997659f898d94abccdcba3c444b84e3c6f6e963e (diff)
downloadguile-269479e31f70d40a82b75be87c1b2a7363c85696.tar.gz
scm_i_make_continuation takes vm and vm_cont args explicitly
* libguile/continuations.h: * libguile/continuations.c (scm_i_make_continuation): Take VM and VM continuation arguments as well; I'm not convinced that saving all VM continuations was the right thing, and in any case we only ever saved the latest. Running a new VM should create a continuation barrier. * libguile/stacks.c (scm_make_stack): * libguile/vm-i-system.c (call/cc, tail-call/cc): Adapt callers. * libguile/vm.h (scm_i_vm_capture_continuation) (scm_i_vm_reinstate_continuation): Change to be internal, and to only capture and reinstate continuations for a particular VM.
Diffstat (limited to 'libguile/vm.h')
-rw-r--r--libguile/vm.h4
1 files changed, 2 insertions, 2 deletions
diff --git a/libguile/vm.h b/libguile/vm.h
index c121061f3..8540356aa 100644
--- a/libguile/vm.h
+++ b/libguile/vm.h
@@ -98,8 +98,8 @@ struct scm_vm_cont {
#define SCM_VM_CONT_P(OBJ) (SCM_NIMP (OBJ) && SCM_TYP7 (OBJ) == scm_tc7_vm_cont)
#define SCM_VM_CONT_DATA(CONT) ((struct scm_vm_cont *) SCM_CELL_WORD_1 (CONT))
-SCM_API SCM scm_vm_capture_continuations (void);
-SCM_API void scm_vm_reinstate_continuations (SCM conts);
+SCM_INTERNAL SCM scm_i_vm_capture_continuation (SCM vm);
+SCM_INTERNAL void scm_i_vm_reinstate_continuation (SCM vm, SCM cont);
SCM_API SCM scm_load_compiled_with_vm (SCM file);