summaryrefslogtreecommitdiffstats
path: root/eval.c
diff options
context:
space:
mode:
authorKaz Kylheku <kaz@kylheku.com>2023-05-16 21:03:00 -0700
committerKaz Kylheku <kaz@kylheku.com>2023-05-16 21:03:00 -0700
commitb1ed6c8d93d70a531af99963a245fc44c5f7855c (patch)
treeaed7914652dc9fac09f117b2fc903b2306f0dbcb /eval.c
parentb4fbc45099b678583dc4e8b84a725adb5428a354 (diff)
downloadtxr-b1ed6c8d93d70a531af99963a245fc44c5f7855c.tar.gz
txr-b1ed6c8d93d70a531af99963a245fc44c5f7855c.tar.bz2
txr-b1ed6c8d93d70a531af99963a245fc44c5f7855c.zip
with-compile-options: reimplement using compiler-let
The with-compile-opts macro is rewritten such that it cad occur inside code that is being compiled, and change compiler options for individual subexpressions. It continues to work as before in scripted build steps such as when calls to (compile-file ...) are wrapped in it. However, for the time being, that now only works in interpreted code, because with this change, when a with-compile-opts form is compiled, it no longer arranges for the binding of *compile-opts* to be visible to the subforms; the binding affects the compiler's own environment. * stdlib/compiler.tl (with-compile-opts): Rewrite. * txr.1: Documented.
Diffstat (limited to 'eval.c')
0 files changed, 0 insertions, 0 deletions