summaryrefslogtreecommitdiff
path: root/libguile/smob.h
diff options
context:
space:
mode:
authorJim Blandy <jimb@red-bean.com>1996-09-10 02:30:27 +0000
committerJim Blandy <jimb@red-bean.com>1996-09-10 02:30:27 +0000
commit16cd1abdd41f4712ac660b21a142a1def2505e87 (patch)
tree8116944cea297e1c4538f066d2213776d450e190 /libguile/smob.h
parent8f899f69718572c4839614513337cc208747c32f (diff)
downloadguile-16cd1abdd41f4712ac660b21a142a1def2505e87.tar.gz
* smob.h: Use PROTO instead of #if __STDC__.
* smob.h: #include "ports.h", "genio.h", and "print.h", since anyone who uses this file will need them to define the smob printing functions. Also, get markers.h, since people will need to #define the mark functions. * smob.h (scm_ptobfuns, SCM_PTOBNUM): Definitions moved... * ports.h: ... to here. * debug.h: Don't #include "options.h"; the compiler won't be able to find that once the headers are installed; instead, #include "libguile/options.h". * gc.h: Same, with marksweep.h. * mbstrings.h: Same, with symbols.h. * scmhob.h: Same, with _scm.h. * smob.h: Same, with params.h.
Diffstat (limited to 'libguile/smob.h')
-rw-r--r--libguile/smob.h40
1 files changed, 10 insertions, 30 deletions
diff --git a/libguile/smob.h b/libguile/smob.h
index fdb5d839c..99d1bfd72 100644
--- a/libguile/smob.h
+++ b/libguile/smob.h
@@ -44,7 +44,7 @@
*/
#include "libguile/__scm.h"
-#include "params.h"
+#include "libguile/params.h"
@@ -58,24 +58,6 @@ typedef struct scm_smobfuns
SCM (*equalp) SCM_P ((SCM, SCM));
} scm_smobfuns;
-typedef struct scm_ptobfuns
-{
- SCM (*mark) ();
- int (*free) ();
- int (*print) ();
- SCM (*equalp) ();
- int (*fputc) ();
- int (*fputs) ();
- scm_sizet (*fwrite) ();
- int (*fflush) ();
- int (*fgetc) ();
- int (*fclose) ();
-
-
-
-} scm_ptobfuns;
-
-
#define SCM_SMOBNUM(x) (0x0ff & (SCM_CAR(x)>>8));
@@ -85,19 +67,17 @@ extern scm_sizet scm_numsmob;
extern scm_smobfuns *scm_smobs;
-#ifdef __STDC__
-extern long scm_newsmob (scm_smobfuns *smob);
-extern void scm_smob_prehistory (void);
-
-#else /* STDC */
-extern long scm_newsmob ();
-extern void scm_smob_prehistory ();
-
-#endif /* STDC */
-
-
+/* Everyone who uses smobs needs to print. */
+#include "libguile/ports.h"
+#include "libguile/genio.h"
+#include "libguile/print.h"
+/* ... and they all need to GC. */
+#include "libguile/markers.h"
+
+extern long scm_newsmob PROTO ((scm_smobfuns *smob));
+extern void scm_smob_prehistory PROTO ((void));
#endif /* SMOBH */