diff options
Diffstat (limited to 'share')
-rw-r--r-- | share/txr/stdlib/compiler.tl | 16 |
1 files changed, 7 insertions, 9 deletions
diff --git a/share/txr/stdlib/compiler.tl b/share/txr/stdlib/compiler.tl index 280fe753..a4c985e8 100644 --- a/share/txr/stdlib/compiler.tl +++ b/share/txr/stdlib/compiler.tl @@ -1419,10 +1419,9 @@ ^((set ,curs (or (car ,obj-var) (sys:upenv ,init-form))) (cond - ((and ,obj-var - (prog1 - (neq (set ,curs (car ,obj-var)) :) - (set ,obj-var (cdr ,obj-var)))) + (,obj-var + (set ,curs (car ,obj-var)) + (set ,obj-var (cdr ,obj-var)) ,*(if pres-p ^((set ,pres-p t)))) (t @@ -1434,11 +1433,10 @@ (when pres-p (push pres-p vars)) ^((cond - ((and ,obj-var - (prog1 - (neq (set ,p (car ,obj-var)) :) - (set ,obj-var (cdr ,obj-var)))) - ,*(if pres-p + (,obj-var + (set ,p (car ,obj-var)) + (set ,obj-var (cdr ,obj-var)) + ,*(if pres-p ^((set ,pres-p t)))) (t ,*(if init-form |