summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--eval.c2
-rw-r--r--lib.c4
2 files changed, 3 insertions, 3 deletions
diff --git a/eval.c b/eval.c
index 06df270d..a0c610c9 100644
--- a/eval.c
+++ b/eval.c
@@ -4469,7 +4469,7 @@ static val force(val promise)
deref(pstate) = promise_inprogress_s;
ret = funcall(deref(pval));
deref(pstate) = promise_forced_s;
- deref(pval) = ret;
+ set(pval, ret);
return ret;
} else if (deref(pstate) == promise_inprogress_s) {
val form = second(cdr(cd));
diff --git a/lib.c b/lib.c
index aee22096..b4452cbb 100644
--- a/lib.c
+++ b/lib.c
@@ -7249,7 +7249,7 @@ val alist_nremove(val list, val keys)
while (deref(plist)) {
if (memqual(car(car(deref(plist))), keys))
- deref(plist) = cdr(deref(plist));
+ set(plist, cdr(deref(plist)));
else
plist = cdr_l(deref(plist));
}
@@ -7268,7 +7268,7 @@ val alist_nremove1(val list, val key)
while (deref(plist)) {
if (equal(car(car(deref(plist))), key))
- deref(plist) = cdr(deref(plist));
+ set(plist, cdr(deref(plist)));
else
plist = cdr_l(deref(plist));
}