diff options
author | Kaz Kylheku <kaz@kylheku.com> | 2017-01-23 22:30:43 -0800 |
---|---|---|
committer | Kaz Kylheku <kaz@kylheku.com> | 2017-01-23 22:30:43 -0800 |
commit | 2177a9682d17b059987a5684ce36bfee8a8b07e1 (patch) | |
tree | 7eb565f098d4860a73aa7024768ddfc40a699285 /checkman.txr | |
parent | 9968bec40de5a53d86607491594a339a1b92eb95 (diff) | |
download | txr-2177a9682d17b059987a5684ce36bfee8a8b07e1.tar.gz txr-2177a9682d17b059987a5684ce36bfee8a8b07e1.tar.bz2 txr-2177a9682d17b059987a5684ce36bfee8a8b07e1.zip |
bugfix: :whole and :form allow destructuring.
In bind_macro_params allow the argument of :whole and :form
to be a destructuring pattern. Yet, in expand_params, we
are wrongly requiring it to be a bindable symbol, thus
blocking the feature.
* eval.c (expand_opt_params_rec): Only require the argument
of a keyword to be a bindable symbol if that keyword is :env.
(expand_params_rec): Some refactoring here not to recursively
expand keyword as parameters, removing a hacky test in the
atom case. Also car_ex is renamed to param_ex. Other than
that, same fix as in expand_opt_params_rec.
Diffstat (limited to 'checkman.txr')
0 files changed, 0 insertions, 0 deletions