From d1079217947013dac495a95e433ad5da9f7aa80a Mon Sep 17 00:00:00 2001 From: Andy Wingo Date: Tue, 7 Dec 2010 12:26:07 +0100 Subject: better unbound variable errors in the vm * libguile/vm-i-system.c (variable-ref, toplevel-ref) (long-toplevel-ref): Fixup callers. * libguile/vm-engine.c (vm_error_unbound): Don't use vm-error for unbound vars, use misc-error. Don't include VM: in the string. Take the name directly in finish_args, not as a list. --- libguile/vm-engine.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) (limited to 'libguile/vm-engine.c') diff --git a/libguile/vm-engine.c b/libguile/vm-engine.c index 5b38060d3..2e3a87644 100644 --- a/libguile/vm-engine.c +++ b/libguile/vm-engine.c @@ -139,9 +139,11 @@ VM_NAME (SCM vm, SCM program, SCM *argv, int nargs) goto vm_error; vm_error_unbound: - /* At this point FINISH_ARGS should be a one-element list containing - the name of the unbound variable. */ - err_msg = scm_from_locale_string ("VM: Unbound variable: ~s"); + /* FINISH_ARGS should be the name of the unbound variable. */ + SYNC_ALL (); + err_msg = scm_from_locale_string ("Unbound variable: ~s"); + scm_error_scm (scm_misc_error_key, program, err_msg, + scm_list_1 (finish_args), SCM_BOOL_F); goto vm_error; vm_error_apply_to_non_list: -- cgit v1.2.3