XEmacs 21.4.5 "Civil Service".
[chise/xemacs-chise.git.1] / src / lisp.h
index 98e82d9..484a7df 100644 (file)
@@ -380,6 +380,10 @@ typedef EMACS_INT Extcount;
 /*     structure/other typedefs    */
 /* ------------------------------- */
 
+/* Counts of bytes or array elements */
+typedef EMACS_INT Memory_count;
+typedef EMACS_INT Element_count;
+
 typedef struct lstream Lstream;
 
 typedef unsigned int face_index;
@@ -581,7 +585,7 @@ enum Lisp_Type
 
 #define INT_VALBITS (BITS_PER_EMACS_INT - INT_GCBITS)
 #define VALBITS (BITS_PER_EMACS_INT - GCBITS)
-#define EMACS_INT_MAX ((EMACS_INT) ((1UL << INT_VALBITS) -1UL))
+#define EMACS_INT_MAX ((EMACS_INT) ((1UL << (INT_VALBITS - 1)) -1UL))
 #define EMACS_INT_MIN (-(EMACS_INT_MAX) - 1)
 
 #ifdef USE_UNION_TYPE
@@ -2147,6 +2151,8 @@ void debug_ungcpro(char *, int, struct gcpro *);
 
 extern Lisp_Object_ptr_dynarr *staticpros;
 
+void register_post_gc_action (void (*fun) (void *), void *arg);
+
 /* Call staticpro (&var) to protect static variable `var'. */
 void staticpro (Lisp_Object *);