* fluids.c, guardians.c, srcprop.c, threads.c: Added #include
[bpt/guile.git] / libguile / srcprop.c
index 195b699..25f08f9 100644 (file)
@@ -1,4 +1,4 @@
-/*     Copyright (C) 1995,1996, 1997 Free Software Foundation
+/*     Copyright (C) 1995,1996,1997,1998 Free Software Foundation
  * 
  * This program is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
@@ -46,6 +46,7 @@
 #include <stdio.h>
 #include "_scm.h"
 #include "smob.h"
+#include "genio.h"
 #include "alist.h"
 #include "debug.h"
 #include "hashtab.h"
@@ -86,7 +87,6 @@ static SCM
 marksrcprops (obj)
      SCM obj;
 {
-  SCM_SETGC8MARK (obj);
   scm_gc_mark (SRCPROPFNAME (obj));
   scm_gc_mark (SRCPROPCOPY (obj));
   return SRCPROPPLIST (obj);
@@ -306,19 +306,25 @@ scm_set_source_property_x (obj, key, datum)
     }
   else if (scm_i_line == key)
     {
+      SCM_ASSERT (SCM_INUMP (datum),
+                 datum, SCM_ARG3, s_set_source_property_x);
       if (SCM_NIMP (p) && SRCPROPSP (p))
-       SETSRCPROPLINE (p, datum);
+       SETSRCPROPLINE (p, SCM_INUM (datum));
       else
        SCM_WHASHSET (scm_source_whash, h,
-                 scm_make_srcprops (datum, 0, SCM_UNDEFINED, SCM_UNDEFINED, p));
+                     scm_make_srcprops (SCM_INUM (datum), 0,
+                                        SCM_UNDEFINED, SCM_UNDEFINED, p));
     }
   else if (scm_i_column == key)
     {
+      SCM_ASSERT (SCM_INUMP (datum),
+                 datum, SCM_ARG3, s_set_source_property_x);
       if (SCM_NIMP (p) && SRCPROPSP (p))
-       SETSRCPROPCOL (p, datum);
+       SETSRCPROPCOL (p, SCM_INUM (datum));
       else
        SCM_WHASHSET (scm_source_whash, h,
-                 scm_make_srcprops (0, datum, SCM_UNDEFINED, SCM_UNDEFINED, p));
+                     scm_make_srcprops (0, SCM_INUM (datum),
+                                        SCM_UNDEFINED, SCM_UNDEFINED, p));
     }
   else if (scm_i_filename == key)
     {