mirror of
https://git.savannah.gnu.org/git/guile.git
synced 2025-05-20 11:40:18 +02:00
* eval.c (scm_lookupcar1, CEVAL): Use SCM_ILOCP instead of
comparison with SCM_ILOC00. In CEVAL, eliminate goto-label 'checkmacro'.
This commit is contained in:
parent
fbc4223176
commit
f998676709
2 changed files with 9 additions and 7 deletions
|
@ -1,3 +1,9 @@
|
|||
2004-04-03 Dirk Herrmann <dirk@dirk-herrmanns-seiten.de>
|
||||
|
||||
* eval.c (scm_lookupcar1, CEVAL): Use SCM_ILOCP instead of
|
||||
comparison with SCM_ILOC00. In CEVAL, eliminate goto-label
|
||||
'checkmacro'.
|
||||
|
||||
2004-03-31 Kevin Ryde <user42@zip.com.au>
|
||||
|
||||
* simpos.c: Include <signal.h> for SIG_IGN and friends.
|
||||
|
|
|
@ -666,7 +666,7 @@ scm_lookupcar1 (SCM vloc, SCM genv, int check)
|
|||
var = SCM_CAR (vloc);
|
||||
if (SCM_VARIABLEP (var))
|
||||
return SCM_VARIABLE_LOC (var);
|
||||
if (SCM_ITAG7 (var) == SCM_ITAG7 (SCM_ILOC00))
|
||||
if (SCM_ILOCP (var))
|
||||
return scm_ilookup (var, genv);
|
||||
/* We can't cope with anything else than variables and ilocs. When
|
||||
a special form has been memoized (i.e. `let' into `#@let') we
|
||||
|
@ -3596,14 +3596,11 @@ dispatch:
|
|||
}
|
||||
|
||||
|
||||
case SCM_BIT7 (SCM_ILOC00):
|
||||
proc = *scm_ilookup (SCM_CAR (x), env);
|
||||
goto checkmacro;
|
||||
|
||||
|
||||
default:
|
||||
if (SCM_VARIABLEP (SCM_CAR (x)))
|
||||
proc = SCM_VARIABLE_REF (SCM_CAR (x));
|
||||
else if (SCM_ILOCP (SCM_CAR (x)))
|
||||
proc = *scm_ilookup (SCM_CAR (x), env);
|
||||
else if (SCM_CONSP (SCM_CAR (x)))
|
||||
proc = CEVAL (SCM_CAR (x), env);
|
||||
else if (SCM_SYMBOLP (SCM_CAR (x)))
|
||||
|
@ -3679,7 +3676,6 @@ dispatch:
|
|||
else
|
||||
proc = SCM_CAR (x);
|
||||
|
||||
checkmacro:
|
||||
if (SCM_MACROP (proc))
|
||||
goto handle_a_macro;
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue