diff options
author | Andy Wingo <wingo@pobox.com> | 2012-05-17 11:39:35 +0200 |
---|---|---|
committer | Andy Wingo <wingo@pobox.com> | 2013-05-23 14:27:17 +0200 |
commit | 52182d5280cefe18e605b6c40f690badb174ec27 (patch) | |
tree | 895f4eb134062fcd6d9fe099d3fda0b347557b0e /libguile/vm-i-scheme.c | |
parent | eac12024830736409112634d3b16ddaaa2bff05b (diff) | |
download | guile-52182d5280cefe18e605b6c40f690badb174ec27.tar.gz |
remove CONS macro in VM; use scm_cons instead
* libguile/vm-engine.c (CONS): Remove. Callers should use scm_cons
instead, syncing registers beforehand.
(POP_LIST): Adapt, only synchronizing once.
(POP_LIST_MARK, POP_CONS_MARK): Remove unused macros.
* libguile/vm-i-scheme.c (cons):
* libguile/vm-i-system.c (push-rest, bind-rest): Adapt.
Diffstat (limited to 'libguile/vm-i-scheme.c')
-rw-r--r-- | libguile/vm-i-scheme.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/libguile/vm-i-scheme.c b/libguile/vm-i-scheme.c index dce90e326..c12c42ba1 100644 --- a/libguile/vm-i-scheme.c +++ b/libguile/vm-i-scheme.c @@ -131,7 +131,8 @@ VM_DEFINE_FUNCTION (141, vectorp, "vector?", 1) VM_DEFINE_FUNCTION (142, cons, "cons", 2) { ARGS2 (x, y); - CONS (x, x, y); + SYNC_BEFORE_GC (); + x = scm_cons (x, y); RETURN (x); } |