summaryrefslogtreecommitdiffstats
path: root/vm.c
diff options
context:
space:
mode:
authorKaz Kylheku <kaz@kylheku.com>2018-04-01 10:47:14 -0700
committerKaz Kylheku <kaz@kylheku.com>2018-04-01 10:47:14 -0700
commit4567fe9b8c9937414ee7f3367279f2e204159438 (patch)
tree9b0dbf0dce71c05ef916a41822a41ff524cc944e /vm.c
parenta90b5a19094bd2fc0178897afa3c385227a96ad1 (diff)
downloadtxr-4567fe9b8c9937414ee7f3367279f2e204159438.tar.gz
txr-4567fe9b8c9937414ee7f3367279f2e204159438.tar.bz2
txr-4567fe9b8c9937414ee7f3367279f2e204159438.zip
compiler: bugfix: incorrect jmp in catch.
* share/txr/stdlib/compiler.tl (comp-catch): The emitted code doesn't handle the normal non-exception path. It assumes that only the frame established with the earlier frame instruction needs to be terminated; but in fact the catch intruction's frame has to be ended also. Thus we don't need the frame-end label; all exit cases jump too the handler-end label in front of the two end instructions.
Diffstat (limited to 'vm.c')
0 files changed, 0 insertions, 0 deletions