diff options
author | Andy Wingo <wingo@pobox.com> | 2010-01-30 15:45:37 +0100 |
---|---|---|
committer | Andy Wingo <wingo@pobox.com> | 2010-01-31 20:40:21 +0100 |
commit | 4f66bcdeff1f5e3d1dd44d745188b91942b04d33 (patch) | |
tree | 6c5bc7557ba61cef2d88244ee72a35cff59943a3 /libguile/vm-engine.c | |
parent | 17d819d4c43701e0e0e92f6c2001343d4730db83 (diff) | |
download | guile-4f66bcdeff1f5e3d1dd44d745188b91942b04d33.tar.gz |
initial VM support for delimited continuations and dynamic-wind
* libguile/vm-i-system.c (prompt, wind, throw, unwind):
New instructions, for implementing dynamic-wind and delimited
continuations.
* libguile/vm.c: Add some stub support for the new instructions.
* libguile/vm-engine.c: Some new error conditions.
Diffstat (limited to 'libguile/vm-engine.c')
-rw-r--r-- | libguile/vm-engine.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/libguile/vm-engine.c b/libguile/vm-engine.c index c46834b2e..75dd613ed 100644 --- a/libguile/vm-engine.c +++ b/libguile/vm-engine.c @@ -214,6 +214,12 @@ VM_NAME (SCM vm, SCM program, SCM *argv, int nargs) /* shouldn't get here */ goto vm_error; + vm_error_not_a_thunk: + SYNC_ALL (); + scm_wrong_type_arg_msg (FUNC_NAME, 1, finish_args, "thunk"); + /* shouldn't get here */ + goto vm_error; + vm_error_no_values: err_msg = scm_from_locale_string ("Zero values returned to single-valued continuation"); finish_args = SCM_EOL; |