A redef is a set!, it doesn't matter what the previous value was.

Fixes issue #285.
This commit is contained in:
Alex Shinn 2015-11-02 23:00:00 +09:00
parent fdc0396962
commit 3992f14101

2
eval.c
View file

@ -141,7 +141,7 @@ sexp sexp_env_cell_define (sexp ctx, sexp env, sexp key,
}
#endif
for (ls=sexp_env_bindings(env); sexp_pairp(ls); ls=sexp_env_next_cell(ls))
if (sexp_car(ls) == key && sexp_cdr(ls) == SEXP_UNDEF) {
if (sexp_car(ls) == key) {
sexp_cdr(ls) = value;
return ls;
}