mirror of
https://git.savannah.gnu.org/git/guile.git
synced 2025-06-24 12:20:20 +02:00
scm_c_make_frame takes struct scm_frame as arg
* libguile/frames.h: * libguile/frames.c (scm_c_make_frame): Adapt to take a const struct scm_frame as the argument. Adapt callers. * libguile/continuations.c: * libguile/stacks.c: Adapt callers.
This commit is contained in:
parent
44d9705464
commit
8de051da47
4 changed files with 25 additions and 23 deletions
|
@ -179,11 +179,15 @@ scm_i_continuation_to_frame (SCM continuation)
|
|||
|
||||
if (scm_is_true (cont->vm_cont))
|
||||
{
|
||||
struct scm_frame frame;
|
||||
struct scm_vm_cont *data = SCM_VM_CONT_DATA (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);
|
||||
|
||||
frame.stack_holder = data;
|
||||
frame.fp_offset = (data->fp + data->reloc) - data->stack_base;
|
||||
frame.sp_offset = (data->sp + data->reloc) - data->stack_base;
|
||||
frame.ip = data->ra;
|
||||
|
||||
return scm_c_make_frame (SCM_VM_FRAME_KIND_CONT, &frame);
|
||||
}
|
||||
else
|
||||
return SCM_BOOL_F;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue