aboutsummaryrefslogtreecommitdiffstats
path: root/src/lisp.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/lisp.h')
-rw-r--r--src/lisp.h19
1 files changed, 4 insertions, 15 deletions
diff --git a/src/lisp.h b/src/lisp.h
index 23ff89a9778..c3efabaf528 100644
--- a/src/lisp.h
+++ b/src/lisp.h
@@ -589,15 +589,19 @@ INLINE void set_sub_char_table_contents (Lisp_Object, ptrdiff_t,
589 Lisp_Object); 589 Lisp_Object);
590 590
591/* Defined in bignum.c. */ 591/* Defined in bignum.c. */
592extern int check_int_nonnegative (Lisp_Object);
593extern intmax_t check_integer_range (Lisp_Object, intmax_t, intmax_t);
592extern double bignum_to_double (Lisp_Object) ATTRIBUTE_CONST; 594extern double bignum_to_double (Lisp_Object) ATTRIBUTE_CONST;
593extern Lisp_Object make_bigint (intmax_t); 595extern Lisp_Object make_bigint (intmax_t);
594extern Lisp_Object make_biguint (uintmax_t); 596extern Lisp_Object make_biguint (uintmax_t);
597extern uintmax_t check_uinteger_max (Lisp_Object, uintmax_t);
595 598
596/* Defined in chartab.c. */ 599/* Defined in chartab.c. */
597extern Lisp_Object char_table_ref (Lisp_Object, int); 600extern Lisp_Object char_table_ref (Lisp_Object, int);
598extern void char_table_set (Lisp_Object, int, Lisp_Object); 601extern void char_table_set (Lisp_Object, int, Lisp_Object);
599 602
600/* Defined in data.c. */ 603/* Defined in data.c. */
604extern AVOID args_out_of_range_3 (Lisp_Object, Lisp_Object, Lisp_Object);
601extern AVOID wrong_type_argument (Lisp_Object, Lisp_Object); 605extern AVOID wrong_type_argument (Lisp_Object, Lisp_Object);
602extern Lisp_Object default_value (Lisp_Object symbol); 606extern Lisp_Object default_value (Lisp_Object symbol);
603 607
@@ -3002,20 +3006,6 @@ CHECK_FIXNAT (Lisp_Object x)
3002 CHECK_TYPE (FIXNATP (x), Qwholenump, x); 3006 CHECK_TYPE (FIXNATP (x), Qwholenump, x);
3003} 3007}
3004 3008
3005#define CHECK_RANGED_INTEGER(x, lo, hi) \
3006 do { \
3007 CHECK_FIXNUM (x); \
3008 if (! ((lo) <= XFIXNUM (x) && XFIXNUM (x) <= (hi))) \
3009 args_out_of_range_3 (x, INT_TO_INTEGER (lo), INT_TO_INTEGER (hi)); \
3010 } while (false)
3011#define CHECK_TYPE_RANGED_INTEGER(type, x) \
3012 do { \
3013 if (TYPE_SIGNED (type)) \
3014 CHECK_RANGED_INTEGER (x, TYPE_MINIMUM (type), TYPE_MAXIMUM (type)); \
3015 else \
3016 CHECK_RANGED_INTEGER (x, 0, TYPE_MAXIMUM (type)); \
3017 } while (false)
3018
3019INLINE double 3009INLINE double
3020XFLOATINT (Lisp_Object n) 3010XFLOATINT (Lisp_Object n)
3021{ 3011{
@@ -3581,7 +3571,6 @@ extern uintmax_t cons_to_unsigned (Lisp_Object, uintmax_t);
3581 3571
3582extern struct Lisp_Symbol *indirect_variable (struct Lisp_Symbol *); 3572extern struct Lisp_Symbol *indirect_variable (struct Lisp_Symbol *);
3583extern AVOID args_out_of_range (Lisp_Object, Lisp_Object); 3573extern AVOID args_out_of_range (Lisp_Object, Lisp_Object);
3584extern AVOID args_out_of_range_3 (Lisp_Object, Lisp_Object, Lisp_Object);
3585extern AVOID circular_list (Lisp_Object); 3574extern AVOID circular_list (Lisp_Object);
3586extern Lisp_Object do_symval_forwarding (lispfwd); 3575extern Lisp_Object do_symval_forwarding (lispfwd);
3587enum Set_Internal_Bind { 3576enum Set_Internal_Bind {