diff options
author | Kaz Kylheku <kaz@kylheku.com> | 2018-03-20 06:54:53 -0700 |
---|---|---|
committer | Kaz Kylheku <kaz@kylheku.com> | 2018-03-20 06:54:53 -0700 |
commit | 910bfe70001096784fdd008db12e8f27503f590d (patch) | |
tree | a4de06a43c81874dcffd685541bbec7937138943 | |
parent | 46041496359dc5738c467815d4868549d3550e40 (diff) | |
download | txr-910bfe70001096784fdd008db12e8f27503f590d.tar.gz txr-910bfe70001096784fdd008db12e8f27503f590d.tar.bz2 txr-910bfe70001096784fdd008db12e8f27503f590d.zip |
compiler: let bugfix: wrong output register designated.
* share/txr/stdlib/compiler.tl (compiler comp-let): The
returned fragment must specify boreg not oreg, because
the output is either in oreg or bfrag.oreg.
-rw-r--r-- | share/txr/stdlib/compiler.tl | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/share/txr/stdlib/compiler.tl b/share/txr/stdlib/compiler.tl index 33f02a2c..13d453d3 100644 --- a/share/txr/stdlib/compiler.tl +++ b/share/txr/stdlib/compiler.tl @@ -344,7 +344,7 @@ fvars (uni fvars frag.fvars))))))))) (bfrag me.(comp-progn oreg nenv body)) (boreg (if env.(out-of-scope bfrag.oreg) oreg bfrag.oreg))) - (new (frag oreg + (new (frag boreg (append code bfrag.code (maybe-mov boreg bfrag.oreg) ^((end ,boreg))) |