From e79ed6b1d7f852614d6bb2e7b2f2c3d32afa4ea2 Mon Sep 17 00:00:00 2001 From: Mark H Weaver Date: Thu, 15 Aug 2013 21:58:41 -0400 Subject: [PATCH] RTL VM: fix multiple value returns. * libguile/vm-engine.c (halt): Fix off-by-one error in retrieving multiple values from the frame. --- libguile/vm-engine.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libguile/vm-engine.c b/libguile/vm-engine.c index 369bb793a..01c3c1142 100644 --- a/libguile/vm-engine.c +++ b/libguile/vm-engine.c @@ -967,7 +967,7 @@ RTL_VM_NAME (SCM vm, SCM program, SCM *argv, size_t nargs_) ret = SCM_EOL; SYNC_BEFORE_GC(); for (n = nvals; n > 0; n--) - ret = scm_cons (LOCAL_REF (5 + n), ret); + ret = scm_cons (LOCAL_REF (5 + n - 1), ret); ret = scm_values (ret); }