Merge branch 'master' into boehm-demers-weiser-gc
[bpt/guile.git] / libguile / srcprop.c
index efa0b7f..2cbf048 100644 (file)
@@ -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));