Update of /project/movitz/cvsroot/movitz/losp/muerte In directory common-lisp.net:/tmp/cvs-serv18015
Modified Files: integers.lisp Log Message: Minor fix to logior compiler-macro.
Date: Fri Jun 11 16:26:38 2004 Author: ffjeld
Index: movitz/losp/muerte/integers.lisp diff -u movitz/losp/muerte/integers.lisp:1.37 movitz/losp/muerte/integers.lisp:1.38 --- movitz/losp/muerte/integers.lisp:1.37 Thu Jun 10 12:25:05 2004 +++ movitz/losp/muerte/integers.lisp Fri Jun 11 16:26:38 2004 @@ -9,7 +9,7 @@ ;;;; Created at: Wed Nov 8 18:44:57 2000 ;;;; Distribution: See the accompanying file COPYING. ;;;; -;;;; $Id: integers.lisp,v 1.37 2004/06/10 19:25:05 ffjeld Exp $ +;;;; $Id: integers.lisp,v 1.38 2004/06/11 23:26:38 ffjeld Exp $ ;;;; ;;;;------------------------------------------------------------------
@@ -1526,13 +1526,13 @@ 0 (reduce #'logior integers)))))
-(define-compiler-macro logior (&whole form &rest integers) +(define-compiler-macro logior (&whole form &rest integers &environment env) (let ((constant-folded-integers (loop for x in integers with folded-constant = 0 - if (and (movitz:movitz-constantp x) - (not (zerop (movitz::movitz-eval x)))) + if (and (movitz:movitz-constantp x env) + (not (zerop (movitz:movitz-eval x env)))) do (setf folded-constant - (logior folded-constant (movitz::movitz-eval x))) + (logior folded-constant (movitz:movitz-eval x env))) else collect x into non-constants finally (return (if (= 0 folded-constant) non-constants