mirror of
https://git.savannah.gnu.org/git/guile.git
synced 2025-06-11 06:20:23 +02:00
* eval.c (scm_i_call_closure_0, call_closure_1, call_closure_2):
Partially reverted patch from 2003-04-23 in oder to find a better compromise between readability and debuggability.
This commit is contained in:
parent
d513f5c6b3
commit
6a3f13f070
2 changed files with 18 additions and 17 deletions
|
@ -1,3 +1,9 @@
|
||||||
|
2003-04-27 Dirk Herrmann <D.Herrmann@tu-bs.de>
|
||||||
|
|
||||||
|
* eval.c (scm_i_call_closure_0, call_closure_1, call_closure_2):
|
||||||
|
Partially reverted patch from 2003-04-23 in oder to find a better
|
||||||
|
compromise between readability and debuggability.
|
||||||
|
|
||||||
2003-04-25 Dirk Herrmann <D.Herrmann@tu-bs.de>
|
2003-04-25 Dirk Herrmann <D.Herrmann@tu-bs.de>
|
||||||
|
|
||||||
* eval.c, eval.h, goops.c, goops.h (scm_m_atslot_ref,
|
* eval.c, eval.h, goops.c, goops.h (scm_m_atslot_ref,
|
||||||
|
|
|
@ -3880,11 +3880,10 @@ call_lsubr_0 (SCM proc)
|
||||||
SCM
|
SCM
|
||||||
scm_i_call_closure_0 (SCM proc)
|
scm_i_call_closure_0 (SCM proc)
|
||||||
{
|
{
|
||||||
const SCM env = SCM_ENV (proc);
|
const SCM env = SCM_EXTEND_ENV (SCM_CLOSURE_FORMALS (proc),
|
||||||
const SCM formals = SCM_CLOSURE_FORMALS (proc);
|
SCM_EOL,
|
||||||
const SCM new_env = SCM_EXTEND_ENV (formals, SCM_EOL, env);
|
SCM_ENV (proc));
|
||||||
const SCM body = SCM_CLOSURE_BODY (proc);
|
const SCM result = scm_eval_body (SCM_CLOSURE_BODY (proc), env);
|
||||||
const SCM result = scm_eval_body (body, new_env);
|
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -3986,12 +3985,10 @@ call_cxr_1 (SCM proc, SCM arg1)
|
||||||
static SCM
|
static SCM
|
||||||
call_closure_1 (SCM proc, SCM arg1)
|
call_closure_1 (SCM proc, SCM arg1)
|
||||||
{
|
{
|
||||||
const SCM env = SCM_ENV (proc);
|
const SCM env = SCM_EXTEND_ENV (SCM_CLOSURE_FORMALS (proc),
|
||||||
const SCM formals = SCM_CLOSURE_FORMALS (proc);
|
scm_list_1 (arg1),
|
||||||
const SCM args = scm_list_1 (arg1);
|
SCM_ENV (proc));
|
||||||
const SCM new_env = SCM_EXTEND_ENV (formals, args, env);
|
const SCM result = scm_eval_body (SCM_CLOSURE_BODY (proc), env);
|
||||||
const SCM body = SCM_CLOSURE_BODY (proc);
|
|
||||||
const SCM result = scm_eval_body (body, new_env);
|
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -4067,12 +4064,10 @@ call_lsubr_2 (SCM proc, SCM arg1, SCM arg2)
|
||||||
static SCM
|
static SCM
|
||||||
call_closure_2 (SCM proc, SCM arg1, SCM arg2)
|
call_closure_2 (SCM proc, SCM arg1, SCM arg2)
|
||||||
{
|
{
|
||||||
const SCM env = SCM_ENV (proc);
|
const SCM env = SCM_EXTEND_ENV (SCM_CLOSURE_FORMALS (proc),
|
||||||
const SCM formals = SCM_CLOSURE_FORMALS (proc);
|
scm_list_2 (arg1, arg2),
|
||||||
const SCM args = scm_list_2 (arg1, arg2);
|
SCM_ENV (proc));
|
||||||
const SCM new_env = SCM_EXTEND_ENV (formals, args, env);
|
const SCM result = scm_eval_body (SCM_CLOSURE_BODY (proc), env);
|
||||||
const SCM body = SCM_CLOSURE_BODY (proc);
|
|
||||||
const SCM result = scm_eval_body (body, new_env);
|
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue