summaryrefslogtreecommitdiffstats
path: root/unwind.c
diff options
context:
space:
mode:
authorKaz Kylheku <kaz@kylheku.com>2017-02-04 08:08:51 -0800
committerKaz Kylheku <kaz@kylheku.com>2017-02-04 08:08:51 -0800
commitd3acb1e10243875a1c836068679e902146f6740e (patch)
treec1b332dbfe116a90ea0748e82f97eaa33026f1bc /unwind.c
parent15b0c9ffb9f0fdb9429ed3f0ef33f63aef398f91 (diff)
downloadtxr-d3acb1e10243875a1c836068679e902146f6740e.tar.gz
txr-d3acb1e10243875a1c836068679e902146f6740e.tar.bz2
txr-d3acb1e10243875a1c836068679e902146f6740e.zip
Replace sys:cp-origin with smarter function.
sys:cp-origin blindly propagates macro origin into a tree structure, and has to perform a complicated circularity check to avoid introducing cycles We replace it with a new function which looks only for invocations of the local setter, getter or deleter macros within the tree structure and sets the macro origin only into those forms. * share/txr/stdlib/place.tl (sys:cp-origin): Function removed. (sys:propagate-ancestor): New function. (call-update-expander, call-clobber-expander, call-delete-expander): Use new function.
Diffstat (limited to 'unwind.c')
0 files changed, 0 insertions, 0 deletions