diff options
author | Kaz Kylheku <kaz@kylheku.com> | 2021-12-14 22:35:06 -0800 |
---|---|---|
committer | Kaz Kylheku <kaz@kylheku.com> | 2021-12-14 22:35:06 -0800 |
commit | f56d0211640a4cae6181bb7e7aac8aacfa2f6ab5 (patch) | |
tree | bb828f122285551e89702845f560ef0087a0d2be /arith.c | |
parent | 8b5cba427098511aaec8ba061d056d960bccfad9 (diff) | |
download | txr-f56d0211640a4cae6181bb7e7aac8aacfa2f6ab5.tar.gz txr-f56d0211640a4cae6181bb7e7aac8aacfa2f6ab5.tar.bz2 txr-f56d0211640a4cae6181bb7e7aac8aacfa2f6ab5.zip |
compiler: fix broken (compile '(lambda ...)).
* stdlib/compiler.tl (compile): The symbol-function function
returns true for lambda and that's where we are handling
lambda expressions. However, the (set (symbol-function ...) ...)
then fails: that requires a function name that designates
a mutable function location. Let's restructure the code with
match-case, and handle the lambda pattern separately via
compile-toplevel.
Diffstat (limited to 'arith.c')
0 files changed, 0 insertions, 0 deletions