diff --git a/libguile/ChangeLog b/libguile/ChangeLog index 10af47b93..c3a351dd1 100644 --- a/libguile/ChangeLog +++ b/libguile/ChangeLog @@ -1,3 +1,7 @@ +2004-06-13 Han-Wen Nienhuys + + * eval.c (unmemoize_exprs): use SCM_CONSP for the loop condition. + 2004-06-06 Dirk Herrmann * list.[ch] (scm_i_finite_list_copy): New internal function to diff --git a/libguile/eval.c b/libguile/eval.c index bb56db39a..5ff0cd062 100644 --- a/libguile/eval.c +++ b/libguile/eval.c @@ -580,13 +580,13 @@ unmemoize_exprs (const SCM exprs, const SCM env) SCM result = SCM_EOL; SCM expr_idx; - for (expr_idx = exprs; !SCM_NULLP (expr_idx); expr_idx = SCM_CDR (expr_idx)) + for (expr_idx = exprs; SCM_CONSP (expr_idx); expr_idx = SCM_CDR (expr_idx)) { const SCM expr = SCM_CAR (expr_idx); const SCM um_expr = unmemoize_expression (expr, env); result = scm_cons (um_expr, result); } - + return scm_reverse_x (result, SCM_UNDEFINED); }