mirror of
https://git.savannah.gnu.org/git/guile.git
synced 2025-06-14 15:40:19 +02:00
fix error handling in variable-ref family of instructions
* libguile/vm-i-system.c (variable-ref, variable-set, variable-bound?): Check that the argument is actually a variable. Thanks to Kevin Holmes for the report. * libguile/vm-engine.c (vm_engine): Error handling down here. * THANKS: Update.
This commit is contained in:
parent
4914fe1963
commit
dce0252bf2
3 changed files with 34 additions and 5 deletions
|
@ -153,6 +153,12 @@ VM_NAME (SCM vm, SCM program, SCM *argv, int nargs)
|
|||
scm_list_1 (finish_args), SCM_BOOL_F);
|
||||
goto vm_error;
|
||||
|
||||
vm_error_not_a_variable:
|
||||
SYNC_ALL ();
|
||||
scm_error (scm_arg_type_key, func_name, "Not a variable: ~S",
|
||||
scm_list_1 (finish_args), scm_list_1 (finish_args));
|
||||
goto vm_error;
|
||||
|
||||
vm_error_apply_to_non_list:
|
||||
SYNC_ALL ();
|
||||
scm_error (scm_arg_type_key, "apply", "Apply to non-list: ~S",
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue