diff --git a/libguile/gc-inline.h b/libguile/gc-inline.h index cb55aa86a..38915dbff 100644 --- a/libguile/gc-inline.h +++ b/libguile/gc-inline.h @@ -59,17 +59,8 @@ scm_inline_gc_freelist_object_size (size_t idx) return (idx + 1U) * SCM_INLINE_GC_GRANULE_BYTES; } -/* The values of these must match the internal POINTERLESS and NORMAL - definitions in libgc, for which unfortunately there are no external - definitions. Alack. */ -typedef enum scm_inline_gc_kind - { - SCM_INLINE_GC_KIND_POINTERLESS, - SCM_INLINE_GC_KIND_NORMAL - } scm_inline_gc_kind; - static inline void * -scm_inline_gc_alloc (void **freelist, size_t idx, scm_inline_gc_kind kind) +scm_inline_gc_alloc (void **freelist, size_t idx, int kind) { void *head = *freelist; @@ -96,7 +87,7 @@ scm_inline_gc_malloc_pointerless (scm_thread *thread, size_t bytes) return GC_malloc_atomic (bytes); return scm_inline_gc_alloc - (&thread->pointerless_freelists[idx], idx, SCM_INLINE_GC_KIND_POINTERLESS); + (&thread->pointerless_freelists[idx], idx, GC_I_PTRFREE); } static inline void * @@ -108,7 +99,7 @@ scm_inline_gc_malloc (scm_thread *thread, size_t bytes) return GC_malloc (bytes); return scm_inline_gc_alloc - (&thread->freelists[idx], idx, SCM_INLINE_GC_KIND_NORMAL); + (&thread->freelists[idx], idx, GC_I_NORMAL); } static inline void * diff --git a/libguile/intrinsics.c b/libguile/intrinsics.c index 99c044cbd..ad937420d 100644 --- a/libguile/intrinsics.c +++ b/libguile/intrinsics.c @@ -472,7 +472,7 @@ allocate_words_with_freelist (scm_thread *thread, size_t freelist_idx) return SCM_PACK_POINTER (scm_inline_gc_alloc (&thread->freelists[freelist_idx], freelist_idx, - SCM_INLINE_GC_KIND_NORMAL)); + GC_I_NORMAL)); } static SCM @@ -487,7 +487,7 @@ allocate_pointerless_words_with_freelist (scm_thread *thread, size_t freelist_id return SCM_PACK_POINTER (scm_inline_gc_alloc (&thread->pointerless_freelists[freelist_idx], freelist_idx, - SCM_INLINE_GC_KIND_POINTERLESS)); + GC_I_PTRFREE)); } static SCM