summaryrefslogtreecommitdiff
path: root/libguile/procprop.h
diff options
context:
space:
mode:
authorAndy Wingo <wingo@pobox.com>2011-11-15 23:36:07 +0100
committerAndy Wingo <wingo@pobox.com>2011-11-15 23:36:07 +0100
commitf3cf9421cb319e2cb9ffde4ec41cad7fdcafcebc (patch)
tree57bf3d168cfa8280a727faa2c073bbf2d9fb02e2 /libguile/procprop.h
parent020602791b3f929e2d65ffdd8d67977763d6883e (diff)
downloadguile-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.h2
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);