aboutsummaryrefslogtreecommitdiffstats
path: root/src/lisp.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/lisp.h')
-rw-r--r--src/lisp.h18
1 files changed, 11 insertions, 7 deletions
diff --git a/src/lisp.h b/src/lisp.h
index 5f913b72b45..ddaeb0c1517 100644
--- a/src/lisp.h
+++ b/src/lisp.h
@@ -1812,7 +1812,8 @@ bool_vector_uchar_data (Lisp_Object a)
1812INLINE bool 1812INLINE bool
1813bool_vector_bitref (Lisp_Object a, EMACS_INT i) 1813bool_vector_bitref (Lisp_Object a, EMACS_INT i)
1814{ 1814{
1815 eassume (0 <= i && i < bool_vector_size (a)); 1815 eassume (0 <= i);
1816 eassert (i < bool_vector_size (a));
1816 return !! (bool_vector_uchar_data (a)[i / BOOL_VECTOR_BITS_PER_CHAR] 1817 return !! (bool_vector_uchar_data (a)[i / BOOL_VECTOR_BITS_PER_CHAR]
1817 & (1 << (i % BOOL_VECTOR_BITS_PER_CHAR))); 1818 & (1 << (i % BOOL_VECTOR_BITS_PER_CHAR)));
1818} 1819}
@@ -1828,11 +1829,11 @@ bool_vector_ref (Lisp_Object a, EMACS_INT i)
1828INLINE void 1829INLINE void
1829bool_vector_set (Lisp_Object a, EMACS_INT i, bool b) 1830bool_vector_set (Lisp_Object a, EMACS_INT i, bool b)
1830{ 1831{
1831 unsigned char *addr; 1832 eassume (0 <= i);
1832 1833 eassert (i < bool_vector_size (a));
1833 eassume (0 <= i && i < bool_vector_size (a));
1834 addr = &bool_vector_uchar_data (a)[i / BOOL_VECTOR_BITS_PER_CHAR];
1835 1834
1835 unsigned char *addr
1836 = &bool_vector_uchar_data (a)[i / BOOL_VECTOR_BITS_PER_CHAR];
1836 if (b) 1837 if (b)
1837 *addr |= 1 << (i % BOOL_VECTOR_BITS_PER_CHAR); 1838 *addr |= 1 << (i % BOOL_VECTOR_BITS_PER_CHAR);
1838 else 1839 else
@@ -3926,7 +3927,6 @@ build_string (const char *str)
3926 3927
3927extern Lisp_Object pure_cons (Lisp_Object, Lisp_Object); 3928extern Lisp_Object pure_cons (Lisp_Object, Lisp_Object);
3928extern Lisp_Object make_vector (ptrdiff_t, Lisp_Object); 3929extern Lisp_Object make_vector (ptrdiff_t, Lisp_Object);
3929extern struct Lisp_Vector *allocate_vector (ptrdiff_t);
3930extern struct Lisp_Vector *allocate_nil_vector (ptrdiff_t); 3930extern struct Lisp_Vector *allocate_nil_vector (ptrdiff_t);
3931 3931
3932/* Make an uninitialized vector for SIZE objects. NOTE: you must 3932/* Make an uninitialized vector for SIZE objects. NOTE: you must
@@ -3936,7 +3936,11 @@ extern struct Lisp_Vector *allocate_nil_vector (ptrdiff_t);
3936 v = make_uninit_vector (3); 3936 v = make_uninit_vector (3);
3937 ASET (v, 0, obj0); 3937 ASET (v, 0, obj0);
3938 ASET (v, 1, Ffunction_can_gc ()); 3938 ASET (v, 1, Ffunction_can_gc ());
3939 ASET (v, 2, obj1); */ 3939 ASET (v, 2, obj1);
3940
3941 allocate_vector has a similar problem. */
3942
3943extern struct Lisp_Vector *allocate_vector (ptrdiff_t);
3940 3944
3941INLINE Lisp_Object 3945INLINE Lisp_Object
3942make_uninit_vector (ptrdiff_t size) 3946make_uninit_vector (ptrdiff_t size)