diff options
author | Kaz Kylheku <kaz@kylheku.com> | 2017-02-03 10:24:52 -0800 |
---|---|---|
committer | Kaz Kylheku <kaz@kylheku.com> | 2017-02-03 10:24:52 -0800 |
commit | 1bfffad44c05952bb43231b231d9bd5e33cf2d57 (patch) | |
tree | 59016bce6864f1c359c8e7bc3d431bdb1dd16605 /syslog.h | |
parent | 7d68c07f9f0f776065519dd8afa937000b3e7ba8 (diff) | |
download | txr-1bfffad44c05952bb43231b231d9bd5e33cf2d57.tar.gz txr-1bfffad44c05952bb43231b231d9bd5e33cf2d57.tar.bz2 txr-1bfffad44c05952bb43231b231d9bd5e33cf2d57.zip |
Forbid lexical function mutation.
* eval.c (expand_lisp1_setq): New static function.
(op_setqf): Check that the function binding which was
found is the global one. If not, throw an error that lexical
functions can't be mutated.
(do_expand): Handle sys:lisp1-setq operator expansion
seprately from the other setq operators, via the new function,
which enforces an expansion-time check against mutation
of lexical functions.
Diffstat (limited to 'syslog.h')
0 files changed, 0 insertions, 0 deletions