summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--libguile/struct.c32
-rw-r--r--libguile/struct.h4
2 files changed, 1 insertions, 35 deletions
diff --git a/libguile/struct.c b/libguile/struct.c
index b7a0016ed..a31ab0629 100644
--- a/libguile/struct.c
+++ b/libguile/struct.c
@@ -306,7 +306,7 @@ scm_alloc_struct (int n_words, int n_extra, const char *what)
p = (scm_t_bits *) (((scm_t_bits) p + 7) & ~7);
/* Initialize a few fields as described above. */
- p[scm_struct_i_free] = (scm_t_bits) scm_struct_free_standard;
+ p[scm_struct_i_free] = (scm_t_bits) 0;
p[scm_struct_i_ptr] = (scm_t_bits) block;
p[scm_struct_i_n_words] = n_words;
p[scm_struct_i_flags] = 0;
@@ -346,36 +346,6 @@ struct_finalizer_trampoline (GC_PTR ptr, GC_PTR unused_data)
-void
-scm_struct_free_0 (scm_t_bits * vtable SCM_UNUSED,
- scm_t_bits * data SCM_UNUSED)
-{
-}
-
-void
-scm_struct_free_light (scm_t_bits * vtable, scm_t_bits * data)
-{
- size_t n = vtable [scm_struct_i_size] & ~SCM_STRUCTF_MASK;
- scm_gc_free (data, n, "struct");
-}
-
-void
-scm_struct_free_standard (scm_t_bits * vtable SCM_UNUSED, scm_t_bits * data)
-{
- size_t n = (data[scm_struct_i_n_words] + scm_struct_n_extra_words)
- * sizeof (scm_t_bits) + 7;
- scm_gc_free ((void *) data[scm_struct_i_ptr], n, "heavy struct");
-}
-
-void
-scm_struct_free_entity (scm_t_bits * vtable SCM_UNUSED, scm_t_bits * data)
-{
- size_t n = (data[scm_struct_i_n_words] + scm_struct_entity_n_extra_words)
- * sizeof (scm_t_bits) + 7;
- scm_gc_free ((void *) data[scm_struct_i_ptr], n, "entity struct");
-}
-
-
SCM_DEFINE (scm_make_struct, "make-struct", 2, 0, 1,
(SCM vtable, SCM tail_array_size, SCM init),
diff --git a/libguile/struct.h b/libguile/struct.h
index 04f5e3e02..515e05997 100644
--- a/libguile/struct.h
+++ b/libguile/struct.h
@@ -84,10 +84,6 @@ SCM_API SCM scm_struct_table;
SCM_API scm_t_bits * scm_alloc_struct (int n_words, int n_extra,
const char *what);
-SCM_API void scm_struct_free_0 (scm_t_bits * vtable, scm_t_bits * data);
-SCM_API void scm_struct_free_light (scm_t_bits * vtable, scm_t_bits * data);
-SCM_API void scm_struct_free_standard (scm_t_bits * vtable, scm_t_bits * data);
-SCM_API void scm_struct_free_entity (scm_t_bits * vtable, scm_t_bits * data);
SCM_API SCM scm_make_struct_layout (SCM fields);
SCM_API SCM scm_struct_p (SCM x);
SCM_API SCM scm_struct_vtable_p (SCM x);