summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--ChangeLog5
-rw-r--r--eval.c12
2 files changed, 9 insertions, 8 deletions
diff --git a/ChangeLog b/ChangeLog
index 035ae2d9..71560856 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2014-04-11 Kaz Kylheku <kaz@kylheku.com>
+
+ * eval.c (make_var_shadowing_env): Remove unnecessary test for
+ colon symbol.
+
2014-04-08 Kaz Kylheku <kaz@kylheku.com>
* eval.c (rangev_func, range_star_v_func): Use numeric
diff --git a/eval.c b/eval.c
index ac6acced..84c45478 100644
--- a/eval.c
+++ b/eval.c
@@ -1378,14 +1378,10 @@ static val make_var_shadowing_env(val menv, val vars)
for (; vars; vars = cdr(vars)) {
val var = car(vars);
-
- if (consp(var)) {
- val sym = car(var);
- if (sym != colon_k)
- ptail = list_collect(ptail, cons(car(var), special_s));
- } else {
- list_collect(ptail, cons(var, special_s));
- }
+
+ ptail = list_collect(ptail, cons(if3(consp(var),
+ car(var),
+ var), special_s));
}
return make_env(shadows, nil, menv);