[movitz-cvs] CVS movitz/losp/muerte

ffjeld ffjeld at common-lisp.net
Mon Nov 19 20:39:52 UTC 2007


Update of /project/movitz/cvsroot/movitz/losp/muerte
In directory clnet:/tmp/cvs-serv8104

Modified Files:
	arithmetic-macros.lisp 
Log Message:
Fix compiler-macro <=%3op so as not to assume that the host fixnum
type is the same as movitz' fixnum. This caused the host compiler to
fail on e.g. 64-bit lisps.


--- /project/movitz/cvsroot/movitz/losp/muerte/arithmetic-macros.lisp	2007/04/01 19:22:22	1.19
+++ /project/movitz/cvsroot/movitz/losp/muerte/arithmetic-macros.lisp	2007/11/19 20:39:52	1.20
@@ -10,7 +10,7 @@
 ;;;; Author:        Frode Vatvedt Fjeld <frodef at acm.org>
 ;;;; Created at:    Sat Jul 17 13:42:46 2004
 ;;;;                
-;;;; $Id: arithmetic-macros.lisp,v 1.19 2007/04/01 19:22:22 ffjeld Exp $
+;;;; $Id: arithmetic-macros.lisp,v 1.20 2007/11/19 20:39:52 ffjeld Exp $
 ;;;;                
 ;;;;------------------------------------------------------------------
 
@@ -110,8 +110,12 @@
        ((minusp min)
 	`(let ((x ,x))
 	   (and (<= ,min x) (<= x ,max))))
-       ((or (not (typep min 'fixnum))
-	    (not (typep max 'fixnum)))
+       ((or (not (<= movitz:+movitz-most-negative-fixnum+
+		     min
+		     movitz:+movitz-most-positive-fixnum+))
+	    (not (<= movitz:+movitz-most-negative-fixnum+
+		     max
+		     movitz:+movitz-most-positive-fixnum+)))
 	`(let ((x ,x))
 	   (and (<=%2op ,min x)
 		(<=%2op x ,max))))




More information about the Movitz-cvs mailing list