summaryrefslogtreecommitdiff
path: root/libguile/continuations.c
diff options
context:
space:
mode:
authorAndy Wingo <wingo@pobox.com>2013-11-21 17:21:37 +0100
committerAndy Wingo <wingo@pobox.com>2013-11-21 17:21:37 +0100
commit5515edc5f21e042ade15cf508300c496ce2f4818 (patch)
tree5b3158516c0c736474123f84593bbd56666369b7 /libguile/continuations.c
parent050a40db5b0b09f0b00d4d68aac67827c7f9b1ac (diff)
downloadguile-5515edc5f21e042ade15cf508300c496ce2f4818.tar.gz
Heap frame "stack holders" are raw scm_vm / scm_vm_cont pointers
* libguile/frames.h (struct scm_frame): stack_holder is a void*. * libguile/frames.c (scm_i_frame_stack_base, scm_i_frame_offset): Expect stack_holder to be the raw struct scm_vm or scm_vm_cont. * libguile/continuations.c (scm_i_continuation_to_frame): * libguile/stacks.c (scm_make_stack) * libguile/vm.c (vm_dispatch_hook): Adapt creators.
Diffstat (limited to 'libguile/continuations.c')
-rw-r--r--libguile/continuations.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/libguile/continuations.c b/libguile/continuations.c
index 31e36441a..ff118df24 100644
--- a/libguile/continuations.c
+++ b/libguile/continuations.c
@@ -177,7 +177,7 @@ scm_i_continuation_to_frame (SCM continuation)
if (scm_is_true (cont->vm_cont))
{
struct scm_vm_cont *data = SCM_VM_CONT_DATA (cont->vm_cont);
- return scm_c_make_frame (SCM_VM_FRAME_KIND_CONT, cont->vm_cont,
+ return scm_c_make_frame (SCM_VM_FRAME_KIND_CONT, data,
(data->fp + data->reloc) - data->stack_base,
(data->sp + data->reloc) - data->stack_base,
data->ra);