summaryrefslogtreecommitdiffstats
path: root/sysif.h
diff options
context:
space:
mode:
authorKaz Kylheku <kaz@kylheku.com>2017-02-03 10:24:52 -0800
committerKaz Kylheku <kaz@kylheku.com>2017-02-03 10:24:52 -0800
commit1bfffad44c05952bb43231b231d9bd5e33cf2d57 (patch)
tree59016bce6864f1c359c8e7bc3d431bdb1dd16605 /sysif.h
parent7d68c07f9f0f776065519dd8afa937000b3e7ba8 (diff)
downloadtxr-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 'sysif.h')
0 files changed, 0 insertions, 0 deletions