diff options
author | Kaz Kylheku <kaz@kylheku.com> | 2019-08-08 00:06:15 -0700 |
---|---|---|
committer | Kaz Kylheku <kaz@kylheku.com> | 2019-08-08 00:06:15 -0700 |
commit | d45b3f4989157587b7a0e71833784610a8dc19c5 (patch) | |
tree | eaaf17bceaea294062c1c3a464a5fbdbdee9c07e | |
parent | c0955134aee2e9ccab11e6b38be95416d25046a9 (diff) | |
download | txr-d45b3f4989157587b7a0e71833784610a8dc19c5.tar.gz txr-d45b3f4989157587b7a0e71833784610a8dc19c5.tar.bz2 txr-d45b3f4989157587b7a0e71833784610a8dc19c5.zip |
pop: improve expansion.
* share/txr/stdlib/place.tl (pop): Use alet for binding the
temporary rather than let, so that if (,getter) expands to a
symbol, it will disappear.
-rw-r--r-- | share/txr/stdlib/place.tl | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/share/txr/stdlib/place.tl b/share/txr/stdlib/place.tl index 303548da..20405396 100644 --- a/share/txr/stdlib/place.tl +++ b/share/txr/stdlib/place.tl @@ -275,7 +275,7 @@ (defmacro pop (place :env env) (with-gensyms (tmp) (with-update-expander (getter setter) place env - ^(let ((,tmp (,getter))) + ^(alet ((,tmp (,getter))) (prog1 (car ,tmp) (,setter (cdr ,tmp))))))) (defmacro pushnew (new-item place :env env : |