shithub: femtolisp

Download patch

ref: c093439fad6423c9545d73d5cc9fb6b7c2b9dd2d
parent: 0619fc6c8de5628a3682b0888c53e11a09889f54
author: Sigrid Solveig Haflínudóttir <[email protected]>
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)