mirror of
https://github.com/ashinn/chibi-scheme.git
synced 2025-05-20 14:19:18 +02:00
define can redefine a syntax binding
This commit is contained in:
parent
e6ba6e59a5
commit
a14d03b1a3
1 changed files with 3 additions and 1 deletions
4
eval.c
4
eval.c
|
@ -659,7 +659,9 @@ static sexp analyze_define (sexp ctx, sexp x) {
|
|||
value = analyze_lambda(ctx, tmp);
|
||||
} else
|
||||
value = analyze(ctx, sexp_caddr(x));
|
||||
ref = analyze_var_ref(ctx, name, &varenv);
|
||||
tmp = sexp_env_cell_loc(env, name, &varenv);
|
||||
if (!tmp) tmp = sexp_env_cell_create(ctx, env, name, SEXP_UNDEF, &varenv);
|
||||
ref = sexp_make_ref(ctx, name, tmp);
|
||||
if (sexp_exceptionp(ref)) {
|
||||
res = ref;
|
||||
} else if (sexp_exceptionp(value)) {
|
||||
|
|
Loading…
Add table
Reference in a new issue