diff options
author | Kaz Kylheku <kaz@kylheku.com> | 2017-02-08 19:18:57 -0800 |
---|---|---|
committer | Kaz Kylheku <kaz@kylheku.com> | 2017-02-08 19:18:57 -0800 |
commit | 6b5958a0731236ea9c51e0d0b47fb408a14d5d09 (patch) | |
tree | 57549c92d4c1b82578a99d6ec3538b26ca6fc7a6 /share | |
parent | ea58260489e6de6a7d44c57254dcc10d8656d8ee (diff) | |
download | txr-6b5958a0731236ea9c51e0d0b47fb408a14d5d09.tar.gz txr-6b5958a0731236ea9c51e0d0b47fb408a14d5d09.tar.bz2 txr-6b5958a0731236ea9c51e0d0b47fb408a14d5d09.zip |
New system function: expand-with-free-refs.
This interface to the expander returns not only the expanded
form, but also a list of the free variables and functions
occurring in that form.
This interface to the expander works by installing a handler
which intercepts and muffles warnings. When a warning occurs
indicating an unbound variable or function, the information is
retained. The expander then returns the information along
with the expanded form.
* eval.c (gather_free_refs): New static function.
(expand_with_free_refs): New function.
(eval_init): Register sys:expand-with-free-refs intrinsic.
Diffstat (limited to 'share')
0 files changed, 0 insertions, 0 deletions