diff options
author | Kaz Kylheku <kaz@kylheku.com> | 2020-01-28 22:05:13 -0800 |
---|---|---|
committer | Kaz Kylheku <kaz@kylheku.com> | 2020-01-28 22:05:13 -0800 |
commit | 1c19f40086b23d28280334783679d00b119d8b61 (patch) | |
tree | e7571ff59a4a3a1c16c2eec61a2e5b8a1eae56a9 /lib.h | |
parent | 4815f528c228711623a9bcf3dd9626c044a16f45 (diff) | |
download | txr-1c19f40086b23d28280334783679d00b119d8b61.tar.gz txr-1c19f40086b23d28280334783679d00b119d8b61.tar.bz2 txr-1c19f40086b23d28280334783679d00b119d8b61.zip |
compiler: bug in catch: frame level mismatch.
* share/txr/stdlib/compiler.tl (compiler comp-catch): Compile
the try expression and the description in the newly extended
environment rather than the original environment. This is
necessary because the compiled code for both of these is
is placed into the frame level corresponding to the new
environment. Other than the level, the only difference between
the two environment is that nenv has a couple of gensyms.
Thus it is hygienic w.r.t. the try and desc code; the extended
environment can safely be used.
Diffstat (limited to 'lib.h')
0 files changed, 0 insertions, 0 deletions