From 62134ca5e941e5dacd953e2c7aea75090a9fd5ee Mon Sep 17 00:00:00 2001 From: Andy Wingo Date: Mon, 24 Oct 2011 18:45:41 +0200 Subject: squirrely smob marking refactor * libguile/smob.c (smob_mark): No idea what the right thing is to do here. --- libguile/smob.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/libguile/smob.c b/libguile/smob.c index 6dc2dfd83..c678e8014 100644 --- a/libguile/smob.c +++ b/libguile/smob.c @@ -307,13 +307,13 @@ smob_mark (GC_word *addr, struct GC_ms_entry *mark_stack_ptr, /* The first word looks corrupt. */ abort (); - mark_stack_ptr = GC_MARK_AND_PUSH (SCM2PTR (SCM_CELL_OBJECT_1 (cell)), + mark_stack_ptr = GC_MARK_AND_PUSH (SCM_UNPACK_POINTER (SCM_CELL_OBJECT_1 (cell)), mark_stack_ptr, mark_stack_limit, NULL); - mark_stack_ptr = GC_MARK_AND_PUSH (SCM2PTR (SCM_CELL_OBJECT_2 (cell)), + mark_stack_ptr = GC_MARK_AND_PUSH (SCM_UNPACK_POINTER (SCM_CELL_OBJECT_2 (cell)), mark_stack_ptr, mark_stack_limit, NULL); - mark_stack_ptr = GC_MARK_AND_PUSH (SCM2PTR (SCM_CELL_OBJECT_3 (cell)), + mark_stack_ptr = GC_MARK_AND_PUSH (SCM_UNPACK_POINTER (SCM_CELL_OBJECT_3 (cell)), mark_stack_ptr, mark_stack_limit, NULL); @@ -332,7 +332,7 @@ smob_mark (GC_word *addr, struct GC_ms_entry *mark_stack_ptr, if (SCM_HEAP_OBJECT_P (obj)) /* Mark the returned object. */ - mark_stack_ptr = GC_MARK_AND_PUSH (SCM2PTR (obj), + mark_stack_ptr = GC_MARK_AND_PUSH (SCM_UNPACK_POINTER (obj), mark_stack_ptr, mark_stack_limit, NULL); @@ -365,7 +365,7 @@ scm_gc_mark (SCM o) /* The function was not called from a mark procedure. */ abort (); - mark_stack_ptr = GC_MARK_AND_PUSH (SCM2PTR (o), + mark_stack_ptr = GC_MARK_AND_PUSH (SCM_UNPACK_POINTER (o), CURRENT_MARK_PTR, CURRENT_MARK_LIMIT, NULL); SCM_I_CURRENT_THREAD->current_mark_stack_ptr = mark_stack_ptr; -- cgit v1.2.1