From 29a7725f0d556014aaec66d2d329ab5d2de93c5d Mon Sep 17 00:00:00 2001 From: Kaz Kylheku Date: Tue, 20 Mar 2018 06:54:53 -0700 Subject: 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. --- share/txr/stdlib/compiler.tl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) 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))) -- cgit v1.2.3