summaryrefslogtreecommitdiff
path: root/libguile/vm-engine.c
diff options
context:
space:
mode:
authorAndy Wingo <wingo@pobox.com>2018-06-27 17:40:46 +0200
committerAndy Wingo <wingo@pobox.com>2018-06-27 17:40:46 +0200
commit7e11c992f3f7f73c74a06d98db845fe71a2af1e2 (patch)
treeb9b150510085344717799d9cc7cb3e1c25d39fb2 /libguile/vm-engine.c
parent294e627c6b76f3b496c9f205fce2e128f4731d1c (diff)
downloadguile-7e11c992f3f7f73c74a06d98db845fe71a2af1e2.tar.gz
bind-rest inst uses cons-rest intrinsic
* libguile/vm-engine.c (bind-rest): Use cons-rest intrinsic to build the rest list.
Diffstat (limited to 'libguile/vm-engine.c')
-rw-r--r--libguile/vm-engine.c8
1 files changed, 1 insertions, 7 deletions
diff --git a/libguile/vm-engine.c b/libguile/vm-engine.c
index 7e4bd8966..73f42f3da 100644
--- a/libguile/vm-engine.c
+++ b/libguile/vm-engine.c
@@ -1130,13 +1130,7 @@ VM_NAME (scm_thread *thread, jmp_buf *registers, int resume)
else
{
SYNC_IP ();
-
- while (nargs-- > dst)
- {
- rest = scm_inline_cons (thread, FP_REF (nargs), rest);
- FP_SET (nargs, SCM_UNDEFINED);
- }
-
+ rest = scm_vm_intrinsics.cons_rest (thread, dst);
RESET_FRAME (dst + 1);
}