1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-05-01 04:10:18 +02:00

Eliminate uses of GC_PTR, a holdover from libgc 6.x.

* libguile/bdw-gc.h (GC_PTR): Don't define.
* libguile/finalizers.c (scm_i_set_finalizer): Use void* instead of
  GC_PTR.
* libguile/foreign.c (pointer_finalizer_trampoline): Likewise.
* libguile/guardians.c (finalize_guarded, scm_i_guard): Likewise.
* libguile/numbers.c (finalize_bignum): Likewise.
* libguile/ports.c (finalize_port, finalize_iconv_descriptors): Likewise.
* libguile/smob.c (finalize_smob): Likewise.
* libguile/struct.c (struct_finalizer_trampoline): Likewise.
* libguile/weak-set.c (move_weak_entry, resize_set):
  (weak_set_add_x, weak_set_remove_x): Likewise, but also change some
  casts that should've been GC_PTR* to void**, and don't cast pointer
  values to void*.
* libguile/weak-table.c (register_disappearing_links):
  (unregister_disappearing_links, move_disappearing_links): Likewise.
* libguile/weak-vector.c (scm_c_weak_vector_set_x): Likewise.
This commit is contained in:
Ken Raeburn 2012-05-20 16:08:54 -04:00
parent ea17899018
commit 499f3de0d7
11 changed files with 34 additions and 38 deletions

View file

@ -171,13 +171,12 @@ scm_c_weak_vector_set_x (SCM wv, size_t k, SCM x)
elts = SCM_I_VECTOR_WELTS (wv);
if (prev && SCM_HEAP_OBJECT_P (SCM_PACK_POINTER (prev)))
GC_unregister_disappearing_link ((GC_PTR) &elts[k]);
GC_unregister_disappearing_link ((void **) &elts[k]);
elts[k] = x;
if (SCM_HEAP_OBJECT_P (x))
SCM_I_REGISTER_DISAPPEARING_LINK ((GC_PTR) &elts[k],
(GC_PTR) SCM2PTR (x));
SCM_I_REGISTER_DISAPPEARING_LINK ((void **) &elts[k], SCM2PTR (x));
}