summaryrefslogtreecommitdiff
path: root/libguile/gsubr.c
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2009-02-16 01:00:49 +0100
committerLudovic Courtès <ludo@gnu.org>2009-03-02 00:20:43 +0100
commit54d14084e229f90b75475a866e3f458be30fa233 (patch)
treef9762726165af120436199f63abc84bf225005d8 /libguile/gsubr.c
parente20d7001c3f7150400169fecb0bf0eefdf122fe2 (diff)
downloadguile-54d14084e229f90b75475a866e3f458be30fa233.tar.gz
Change `scm_gsubr_apply ()' to take the gsubr as its first argument.
* libguile/gsubr.c (scm_gsubr_apply): Make SELF the first argument instead of the first element of ARGS. * libguile/gsubr.h: Update. * libguile/eval.i.c (CEVAL): Update.
Diffstat (limited to 'libguile/gsubr.c')
-rw-r--r--libguile/gsubr.c4
1 files changed, 1 insertions, 3 deletions
diff --git a/libguile/gsubr.c b/libguile/gsubr.c
index 91852d5b8..cc9bc39a5 100644
--- a/libguile/gsubr.c
+++ b/libguile/gsubr.c
@@ -179,16 +179,14 @@ scm_c_define_gsubr_with_generic (const char *name,
SCM
-scm_gsubr_apply (SCM args)
+scm_gsubr_apply (SCM self, SCM args)
#define FUNC_NAME "scm_gsubr_apply"
{
- SCM self = SCM_CAR (args);
SCM (*fcn)() = SCM_SUBRF (self);
SCM v[SCM_GSUBR_MAX];
unsigned int typ = SCM_GSUBR_TYPE (self);
long i, n = SCM_GSUBR_REQ (typ) + SCM_GSUBR_OPT (typ) + SCM_GSUBR_REST (typ);
- args = SCM_CDR (args);
for (i = 0; i < SCM_GSUBR_REQ (typ); i++) {
if (scm_is_null (args))
scm_wrong_num_args (SCM_SNAME (self));