summaryrefslogtreecommitdiff
path: root/libguile/eq.c
diff options
context:
space:
mode:
Diffstat (limited to 'libguile/eq.c')
-rw-r--r--libguile/eq.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/libguile/eq.c b/libguile/eq.c
index 923fa77a1..75025598c 100644
--- a/libguile/eq.c
+++ b/libguile/eq.c
@@ -303,6 +303,9 @@ scm_equal_p (SCM x, SCM y)
else
goto generic_equal;
}
+ if (SCM_POINTER_P (x) && SCM_POINTER_P (y))
+ return scm_from_bool (SCM_POINTER_VALUE (x) == SCM_POINTER_VALUE (y));
+
/* This ensures that types and scm_length are the same. */
if (SCM_CELL_TYPE (x) != SCM_CELL_TYPE (y))
{