strip syntactic closures for unquoted vector literals

This commit is contained in:
Alex Shinn 2017-01-24 23:49:13 +09:00
parent 9ca33d82f4
commit 421ef0b010

4
eval.c
View file

@ -1132,8 +1132,10 @@ static sexp analyze (sexp ctx, sexp object, int depth, int defok) {
} else if (sexp_nullp(x)) { } else if (sexp_nullp(x)) {
res = sexp_compile_error(ctx, "empty application in source", x); res = sexp_compile_error(ctx, "empty application in source", x);
} else { } else {
if (sexp_pointerp(x)) /* accept vectors and other literals directly, */ if (sexp_pointerp(x)) { /* accept vectors and other literals directly, */
sexp_immutablep(x) = 1; /* but they must be immutable */ sexp_immutablep(x) = 1; /* but they must be immutable */
x = sexp_strip_synclos(ctx , NULL, 1, x);
}
res = x; res = x;
} }