diff options
author | Andy Wingo <wingo@pobox.com> | 2009-08-21 00:54:34 +0200 |
---|---|---|
committer | Andy Wingo <wingo@pobox.com> | 2009-12-01 21:00:25 +0100 |
commit | a4ac184963d503b9b9cd6a5ead7d8720ee4cad66 (patch) | |
tree | 22e7db2f3177bbc01ce15eceb869803dd3cf86eb /libguile/eval.i.c | |
parent | 95e59982049ef822933445746a6b78de8f737cb4 (diff) | |
download | guile-a4ac184963d503b9b9cd6a5ead7d8720ee4cad66.tar.gz |
Don't double-include eval.i.c -- let's only build deval.
* libguile/eval.c (SCM_I_XEVAL, SCM_I_XEVALCAR): No more debug_p args,
we are always debugging. Adapt all callers.
(ceval_letrec_inits): For some reason this function is used by deval.
No idea why. Pull it out here.
* libguile/eval.i.c (SCM_APPLY): scm_dapply is scm_apply.
Diffstat (limited to 'libguile/eval.i.c')
-rw-r--r-- | libguile/eval.i.c | 32 |
1 files changed, 4 insertions, 28 deletions
diff --git a/libguile/eval.i.c b/libguile/eval.i.c index 681169878..616f95e65 100644 --- a/libguile/eval.i.c +++ b/libguile/eval.i.c @@ -35,7 +35,7 @@ #define EVAL_DEBUGGING_P 1 #define CEVAL deval /* Substitute all uses of ceval */ -#define SCM_APPLY scm_dapply +#define SCM_APPLY scm_apply #define PREP_APPLY(p, l) \ { ++debug.info; debug.info->a.proc = p; debug.info->a.args = l; } @@ -71,7 +71,7 @@ deval_args (SCM l, SCM env, SCM proc, SCM *lloc) SCM *results = lloc; while (scm_is_pair (l)) { - const SCM res = SCM_I_XEVALCAR (l, env, 1); + const SCM res = SCM_I_XEVALCAR (l, env); *lloc = scm_list_1 (res); lloc = SCM_CDRLOC (*lloc); @@ -106,30 +106,6 @@ deval_args (SCM l, SCM env, SCM proc, SCM *lloc) -static void -ceval_letrec_inits (SCM env, SCM init_forms, SCM **init_values_eol) -{ - SCM argv[10]; - int i = 0, imax = sizeof (argv) / sizeof (SCM); - - while (!scm_is_null (init_forms)) - { - if (imax == i) - { - ceval_letrec_inits (env, init_forms, init_values_eol); - break; - } - argv[i++] = SCM_I_XEVALCAR (init_forms, env, 0); - init_forms = SCM_CDR (init_forms); - } - - for (i--; i >= 0; i--) - { - **init_values_eol = scm_list_1 (argv[i]); - *init_values_eol = SCM_CDRLOC (**init_values_eol); - } -} - static SCM scm_ceval_args (SCM l, SCM env, SCM proc) { @@ -161,8 +137,8 @@ scm_eval_args (SCM l, SCM env, SCM proc) -#define EVAL(x, env) SCM_I_XEVAL(x, env, EVAL_DEBUGGING_P) -#define EVALCAR(x, env) SCM_I_XEVALCAR(x, env, EVAL_DEBUGGING_P) +#define EVAL(x, env) SCM_I_XEVAL(x, env) +#define EVALCAR(x, env) SCM_I_XEVALCAR(x, env) |