diff options
Diffstat (limited to 'libguile/srcprop.c')
-rw-r--r-- | libguile/srcprop.c | 11 |
1 files changed, 2 insertions, 9 deletions
diff --git a/libguile/srcprop.c b/libguile/srcprop.c index efa0b7f30..2cbf04894 100644 --- a/libguile/srcprop.c +++ b/libguile/srcprop.c @@ -34,6 +34,7 @@ #include "libguile/ports.h" #include "libguile/root.h" #include "libguile/weaks.h" +#include "libguile/gc.h" #include "libguile/validate.h" #include "libguile/srcprop.h" @@ -95,13 +96,6 @@ SCM_GLOBAL_SYMBOL (scm_sym_breakpoint, "breakpoint"); scm_t_bits scm_tc16_srcprops; -static SCM -srcprops_mark (SCM obj) -{ - scm_gc_mark (SRCPROPCOPY (obj)); - return SRCPROPPLIST (obj); -} - static int srcprops_print (SCM obj, SCM port, scm_print_state *pstate) { @@ -212,7 +206,7 @@ SCM_DEFINE (scm_set_source_properties_x, "set-source-properties!", 2, 0, 0, else if (!scm_is_pair (obj)) SCM_WRONG_TYPE_ARG(1, obj); handle = scm_hashq_create_handle_x (scm_source_whash, obj, plist); - SCM_SETCDR (handle, plist); + return plist; } #undef FUNC_NAME @@ -328,7 +322,6 @@ void scm_init_srcprop () { scm_tc16_srcprops = scm_make_smob_type ("srcprops", 0); - scm_set_smob_mark (scm_tc16_srcprops, srcprops_mark); scm_set_smob_print (scm_tc16_srcprops, srcprops_print); scm_source_whash = scm_make_weak_key_hash_table (scm_from_int (2047)); |