summaryrefslogtreecommitdiff
path: root/src/intervals.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/intervals.h')
-rw-r--r--src/intervals.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/intervals.h b/src/intervals.h
index d19a92a4608..aa914ceff98 100644
--- a/src/intervals.h
+++ b/src/intervals.h
@@ -37,9 +37,15 @@ Boston, MA 02111-1307, USA. */
/* True if an interval pointer is null, or is a Lisp_Buffer or
Lisp_String pointer (meaning it points to the owner of this
interval tree). */
+#ifdef NO_UNION_TYPE
#define NULL_INTERVAL_P(i) ((i) == NULL_INTERVAL \
|| BUFFERP ((Lisp_Object)(i)) \
|| STRINGP ((Lisp_Object)(i)))
+#else
+#define NULL_INTERVAL_P(i) ((i) == NULL_INTERVAL \
+ || BUFFERP ((Lisp_Object){(EMACS_INT)(i)}) \
+ || STRINGP ((Lisp_Object){(EMACS_INT)(i)}))
+#endif
/* True if this interval has no right child. */
#define NULL_RIGHT_CHILD(i) ((i)->right == NULL_INTERVAL)