summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/lisp.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/lisp.h b/src/lisp.h
index 818b6e1163f..e51f2f64e56 100644
--- a/src/lisp.h
+++ b/src/lisp.h
@@ -3086,3 +3086,9 @@ extern Lisp_Object Vdirectory_sep_char;
#endif
#define min(a, b) ((a) < (b) ? (a) : (b))
#define max(a, b) ((a) > (b) ? (a) : (b))
+
+/* Return a fixnum or float, depending on whether VAL fits in a Lisp
+ fixnum. */
+
+#define make_fixnum_or_float(val) \
+ (FIXNUM_OVERFLOW_P (val) ? make_float (val) : make_number (val))