diff options
author | Kaz Kylheku <kaz@kylheku.com> | 2018-03-19 06:59:27 -0700 |
---|---|---|
committer | Kaz Kylheku <kaz@kylheku.com> | 2018-03-19 06:59:27 -0700 |
commit | dbcca06d216201506c20cb3b3aa2524e46fbb746 (patch) | |
tree | 0dcaa4075efb18f0721e0d5113c570273c2251d1 /arith.h | |
parent | f79d41823aa5c266e356fa0b792ad5cc58162d7d (diff) | |
download | txr-dbcca06d216201506c20cb3b3aa2524e46fbb746.tar.gz txr-dbcca06d216201506c20cb3b3aa2524e46fbb746.tar.bz2 txr-dbcca06d216201506c20cb3b3aa2524e46fbb746.zip |
compiler: bug: inappropriate clobber in block.
* share/txr/stdlib/compiler.tl (compiler comp-block): Don't
use bfrag.oreg as the output register of block.
Firstly, bfrag.oreg might be (t 0) which is read-only.
Worse, bfrag.oreg could just be a variable from which
the block obtains its return value; we mustn't clobber
that location with block's dynamic return value. Not only
mustn't but possibly we cannot: the location could be
out of scope!
Diffstat (limited to 'arith.h')
0 files changed, 0 insertions, 0 deletions