diff options
author | Andy Wingo <wingo@pobox.com> | 2011-11-15 23:36:07 +0100 |
---|---|---|
committer | Andy Wingo <wingo@pobox.com> | 2011-11-15 23:36:07 +0100 |
commit | f3cf9421cb319e2cb9ffde4ec41cad7fdcafcebc (patch) | |
tree | 57bf3d168cfa8280a727faa2c073bbf2d9fb02e2 /libguile/procprop.h | |
parent | 020602791b3f929e2d65ffdd8d67977763d6883e (diff) | |
download | guile-f3cf9421cb319e2cb9ffde4ec41cad7fdcafcebc.tar.gz |
better debuggability for interpreted procedures
* libguile/procprop.c (scm_set_procedure_minimum_arity_x): New
function, allows a user to override a function's arity.
(scm_i_procedure_arity): Look up in the overrides table first.
* libguile/procprop.h: Add scm_set_procedure_minimum_arity_x.
* module/ice-9/eval.scm (primitive-eval): Override arity of "general
closures".
* test-suite/tests/procprop.test ("procedure-arity"): Add tests.
Based on a patch from Stefan Israelsson Tampe. Test based on work by
Patrick Bernaud.
Diffstat (limited to 'libguile/procprop.h')
-rw-r--r-- | libguile/procprop.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/libguile/procprop.h b/libguile/procprop.h index c8c156a25..919fa4d3a 100644 --- a/libguile/procprop.h +++ b/libguile/procprop.h @@ -36,6 +36,8 @@ SCM_API SCM scm_sym_system_procedure; SCM_INTERNAL int scm_i_procedure_arity (SCM proc, int *req, int *opt, int *rest); +SCM_API SCM scm_set_procedure_minimum_arity_x (SCM proc, SCM req, SCM opt, + SCM rest); SCM_API SCM scm_procedure_minimum_arity (SCM proc); SCM_API SCM scm_procedure_properties (SCM proc); SCM_API SCM scm_set_procedure_properties_x (SCM proc, SCM alist); |