diff src/lisp.h @ 165:5a88923fcbfe r20-3b9

Import from CVS: tag r20-3b9
author cvs
date Mon, 13 Aug 2007 09:44:42 +0200
parents 6b37e6ddd302
children 8eaf7971accc
line wrap: on
line diff
--- a/src/lisp.h	Mon Aug 13 09:43:39 2007 +0200
+++ b/src/lisp.h	Mon Aug 13 09:44:42 2007 +0200
@@ -674,11 +674,6 @@
 # define EMACS_UINT unsigned int
 #endif
 
-/* Cast pointers to this type to compare them.  Some machines want int.  */
-#ifndef PNTR_COMPARISON_TYPE
-# define PNTR_COMPARISON_TYPE unsigned int
-#endif
-
 /* Overridden by m/next.h */
 #ifndef ASSERT_VALID_POINTER
 # define ASSERT_VALID_POINTER(pnt) (assert ((((EMACS_UINT) pnt) & 3) == 0))
@@ -1855,6 +1850,23 @@
 #define IS_ANY_SEP(_c_) (IS_DIRECTORY_SEP (_c_))
 #endif
 
+#ifdef HAVE_INTTYPES_H
+#include <inttypes.h>
+#elif SIZEOF_VOID_P == SIZEOF_INT
+typedef int intptr_t;
+typedef unsigned int uintptr_t;
+#elif SIZEOF_VOID_P == SIZEOF_LONG
+typedef long intptr_t;
+typedef unsigned long uintptr_t;
+#elif defined(SIZEOF_LONG_LONG) && SIZEOF_VOID_P == SIZEOF_LONG_LONG
+typedef long long intptr_t;
+typedef unsigned long long uintptr_t;
+#else
+/* Just pray. May break, may not. */
+typedef char *intptr_t;
+typedef char *uintptr_t;
+#endif
+
 #include "emacsfns.h"
 
 #endif /* _XEMACS_LISP_H_ */