I have code very like the following in CMUCL:
(deftype hash-type () '(unsigned-byte 32)) (defparameter hash-code 0) (declaim (type hash-type hash-code)) (defun foo( x ) (declare (type hash-type x)) (setf hash-code (logxor hash-code x))) this always gives me a warning : note: doing unsigned work to integer conversion (cost 20) for: the second argument of SET it doesn't seem to matter if i make hash-type fixnum or not. This whole operation is quite expensive and happens deep in an inner loop in my code. The warning seems to indicate to me that the xor takes place just fine, then the result is being unboxed for some reason?!? dave __________________________________________________ Do you Yahoo!? Y! Web Hosting - Let the expert host your web site http://webhosting.yahoo.com/
