diff options
Diffstat (limited to 'place.tl')
-rw-r--r-- | place.tl | 6 |
1 files changed, 4 insertions, 2 deletions
@@ -202,8 +202,10 @@ (,setter-1 ,tmp)))))) (defmacro push (new-item place :env env) - (with-update-expander (getter setter) place env - ^(,setter (cons ,new-item (,getter))))) + (with-gensyms (new-sym) + ^(let ((,new-sym ,new-item)) + ,(with-update-expander (getter setter) place env + ^(,setter (cons ,new-sym (,getter))))))) (defmacro pop (place :env env) (with-gensyms (tmp) |