1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-06-11 22:31:12 +02:00

* eval.c (SCM_CEVAL, scm_unmemocar): SCM_PACK/UNPACK corrections.

This commit is contained in:
Mikael Djurfeldt 2000-03-22 02:12:13 +00:00
parent 15237f3002
commit a963f78704

View file

@ -414,7 +414,7 @@ scm_unmemocar (SCM form, SCM env)
return form; return form;
c = SCM_CAR (form); c = SCM_CAR (form);
if (1 == (SCM_UNPACK (c) & 7)) if (1 == (SCM_UNPACK (c) & 7))
SCM_SETCAR (form, SCM_CAR (c - 1)); SCM_SETCAR (form, SCM_GLOC_SYM (c));
#ifdef MEMOIZE_LOCALS #ifdef MEMOIZE_LOCALS
#ifdef DEBUG_EXTENSIONS #ifdef DEBUG_EXTENSIONS
else if (SCM_ILOCP (c)) else if (SCM_ILOCP (c))
@ -2421,7 +2421,8 @@ dispatch:
while (SCM_NIMP (arg2)) while (SCM_NIMP (arg2))
{ {
proc = SCM_GLOC_VAL (SCM_CAR (t.arg1)); proc = SCM_GLOC_VAL (SCM_CAR (t.arg1));
SCM_SETCDR (SCM_CAR (t.arg1) - 1L, SCM_CAR (arg2)); SCM_SETCDR (SCM_PACK (SCM_UNPACK (SCM_CAR (t.arg1)) - 1L),
SCM_CAR (arg2));
SCM_SETCAR (arg2, proc); SCM_SETCAR (arg2, proc);
t.arg1 = SCM_CDR (t.arg1); t.arg1 = SCM_CDR (t.arg1);
arg2 = SCM_CDR (arg2); arg2 = SCM_CDR (arg2);
@ -2441,7 +2442,8 @@ dispatch:
arg2 = SCM_CDAR (env); arg2 = SCM_CDAR (env);
while (SCM_NIMP (arg2)) while (SCM_NIMP (arg2))
{ {
SCM_SETCDR (SCM_CAR (t.arg1) - 1L, SCM_CAR (arg2)); SCM_SETCDR (SCM_PACK (SCM_UNPACK (SCM_CAR (t.arg1)) - 1L),
SCM_CAR (arg2));
t.arg1 = SCM_CDR (t.arg1); t.arg1 = SCM_CDR (t.arg1);
arg2 = SCM_CDR (arg2); arg2 = SCM_CDR (arg2);
} }