ref: 82f8b2003d533576f36209b48ca7b78e71074faf
parent: 56a7e5d3286e98575fb9862a5a9310e7bcaf7708
author: Sigrid Solveig Haflínudóttir <sigrid@ftrv.se>
date: Fri Mar 10 11:31:56 EST 2023
fixnum(x): put the shift in the right place
--- a/flisp.h
+++ b/flisp.h
@@ -54,7 +54,7 @@
#define tag(x) ((x)&0x7)
#define ptr(x) ((void*)((x)&(~(value_t)0x7)))
#define tagptr(p,t) (((value_t)(p)) | (t))
-#define fixnum(x) ((value_t)(((fixnum_t)(x))<<2))
+#define fixnum(x) ((value_t)((fixnum_t)(x))<<2)
#define numval(x) (((fixnum_t)(x))>>2)
#if defined(BITS64)
#define fits_fixnum(x) (((x)>>61) == 0 || (~((x)>>61)) == 0)