summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--libguile/ChangeLog7
-rw-r--r--libguile/gdbint.c2
-rw-r--r--libguile/guardians.c6
3 files changed, 11 insertions, 4 deletions
diff --git a/libguile/ChangeLog b/libguile/ChangeLog
index 98be38ad2..080381c41 100644
--- a/libguile/ChangeLog
+++ b/libguile/ChangeLog
@@ -1,5 +1,12 @@
2000-03-31 Dirk Herrmann <D.Herrmann@tu-bs.de>
+ * gdbint.c (gdb_maybe_valid_type_p), guardians.c (TCONC_EMPTYP,
+ scm_guardian_zombify): Use SCM_EQ_P to compare SCM values.
+
+ * guardians.c (GUARDIAN): Use SCM_CELL_WORD_1 for raw data.
+
+2000-03-31 Dirk Herrmann <D.Herrmann@tu-bs.de>
+
* ports.h (scm_port): Change type of stream member to scm_bits_t.
* gdbint.c (unmark_port, remark_port), ports.c (scm_markstream),
diff --git a/libguile/gdbint.c b/libguile/gdbint.c
index 1ce183094..ce07314de 100644
--- a/libguile/gdbint.c
+++ b/libguile/gdbint.c
@@ -169,7 +169,7 @@ int
gdb_maybe_valid_type_p (SCM value)
{
if (SCM_IMP (value) || scm_cellp (value))
- return scm_tag (value) != SCM_MAKINUM (-1);
+ return (! SCM_EQ_P (scm_tag (value), SCM_MAKINUM (-1)));
return 0;
}
diff --git a/libguile/guardians.c b/libguile/guardians.c
index 563ac0abb..5d49b4973 100644
--- a/libguile/guardians.c
+++ b/libguile/guardians.c
@@ -87,7 +87,7 @@ do { \
(tc).head = SCM_CDR ((tc).head); \
} while (0)
-#define TCONC_EMPTYP(tc) ((tc).head == (tc).tail)
+#define TCONC_EMPTYP(tc) (SCM_EQ_P ((tc).head, (tc).tail))
typedef struct tconc_t
{
@@ -102,7 +102,7 @@ typedef struct guardian_t
struct guardian_t *next;
} guardian_t;
-#define GUARDIAN(x) ((guardian_t *) SCM_CDR (x))
+#define GUARDIAN(x) ((guardian_t *) SCM_CELL_WORD_1 (x))
#define GUARDIAN_LIVE(x) (GUARDIAN (x)->live)
#define GUARDIAN_ZOMBIES(x) (GUARDIAN (x)->zombies)
#define GUARDIAN_NEXT(x) (GUARDIAN (x)->next)
@@ -205,7 +205,7 @@ scm_guardian_zombify ()
SCM *prev_ptr = &g->live.head;
SCM pair = g->live.head;
- while (pair != tconc_tail)
+ while (! SCM_EQ_P (pair, tconc_tail))
{
SCM next_pair = SCM_CDR (pair);