diff options
author | Andy Wingo <wingo@pobox.com> | 2011-05-13 12:51:56 +0200 |
---|---|---|
committer | Andy Wingo <wingo@pobox.com> | 2011-05-13 15:28:08 +0200 |
commit | b2b33168b18c6c4fd65b0e77becba1a66a00dae1 (patch) | |
tree | ca47dc70a7a4f2f7d59b78cb9db2435cd3d98640 /libguile/vm-i-system.c | |
parent | d223c3fcdde81280ea8fb9a4b05897786014bbce (diff) | |
download | guile-b2b33168b18c6c4fd65b0e77becba1a66a00dae1.tar.gz |
more care regarding SCM_PACK and SCM_UNPACK
* libguile/control.c (reify_partial_continuation):
* libguile/eval.c (RETURN_BOOT_CLOSURE):
* libguile/frames.c (scm_frame_num_locals, scm_frame_local_ref)
(scm_frame_local_set_x)
* libguile/frames.h (SCM_FRAME_SET_RETURN_ADDRESS):
(SCM_FRAME_SET_MV_RETURN_ADDRESS, SCM_FRAME_SET_DYNAMIC_LINK):
* libguile/goops.c (scm_class_of, scm_primitive_generic_generic)
(scm_c_extend_primitive_generic, compute_getters_n_setters)
(scm_sys_initialize_object):
* libguile/guardians.c (finalize_guarded):
* libguile/list.c (SCM_I_CONS):
* libguile/macros.c (scm_i_make_primitive_macro)
(scm_make_syntax_transformer):
* libguile/memoize.c (MAKMEMO, SCM_MAKE_MEMOIZER)
(SCM_MAKE_REST_MEMOIZER):
* libguile/modules.c (scm_module_reverse_lookup)
* libguile/print.c (iprin1):
* libguile/promises.c (scm_make_promise)
* libguile/srcprop.c (scm_make_srcprops):
* libguile/vectors.c (scm_c_vector_ref):
* libguile/vm-engine.c (vm_engine)
* libguile/vm-i-scheme.c (REL, add1, sub1):
* libguile/vm-i-system.c (new_frame, call_cc)
* libguile/weaks.h (SCM_WEAK_PAIR_WORD_DELETED_P): Be more careful about
SCM_PACK / SCM_UNPACK.
Diffstat (limited to 'libguile/vm-i-system.c')
-rw-r--r-- | libguile/vm-i-system.c | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/libguile/vm-i-system.c b/libguile/vm-i-system.c index d1ad64fc6..1b4136f3f 100644 --- a/libguile/vm-i-system.c +++ b/libguile/vm-i-system.c @@ -765,9 +765,9 @@ VM_DEFINE_INSTRUCTION (52, new_frame, "new-frame", 0, 0, 3) know that this frame will point to the current fp: it could be placed elsewhere on the stack if captured in a partial continuation, and invoked from some other context. */ - PUSH (0); /* dynamic link */ - PUSH (0); /* mvra */ - PUSH (0); /* ra */ + PUSH (SCM_PACK (0)); /* dynamic link */ + PUSH (SCM_PACK (0)); /* mvra */ + PUSH (SCM_PACK (0)); /* ra */ NEXT; } @@ -1182,9 +1182,9 @@ VM_DEFINE_INSTRUCTION (65, call_cc, "call/cc", 0, 1, 1) cont = scm_i_make_continuation (&first, vm, vm_cont); if (first) { - PUSH (0); /* dynamic link */ - PUSH (0); /* mvra */ - PUSH (0); /* ra */ + PUSH (SCM_PACK (0)); /* dynamic link */ + PUSH (SCM_PACK (0)); /* mvra */ + PUSH (SCM_PACK (0)); /* ra */ PUSH (proc); PUSH (cont); nargs = 1; |