* (logAND x (ash x -7)) doesn't give a very good hash...
* Reported by Faré Rideau on #lisp
* bug fix: an &environment argument with the correct variable information
is passed to macros that are expanded during byte compilation
(reported by Samium Gromoff)
+ * bug fix: a logical error was causing the hash function for bignums to
+ have excessive amounts of collisions (reported by Faré Rideau)
* improvement: the x86-64/darwin port now passes all tests and
should be considered non-experimental.
* improvement: a style-warning is signaled for CASE (etc) clauses with
(let ((xi (%bignum-ref x i)))
(mixf result
(logand most-positive-fixnum
- xi
- (ash xi -7)))))
+ (logxor xi
+ (ash xi -7))))))
result))
;;; versions which break binary compatibility. But it certainly should
;;; be incremented for release versions which break binary
;;; compatibility.
-(def!constant +fasl-file-version+ 72)
+(def!constant +fasl-file-version+ 73)
;;; (description of versions before 0.9.0.1 deleted in 0.9.17)
;;; 56: (2005-05-22) Something between 0.9.0.1 and 0.9.0.14. My money is
;;; on 0.9.0.6 (MORE CASE CONSISTENCY).
;;; 70: (2006-09-13) changes to *PSEUDO-ATOMIC* on x86 and x86-64
;;; 71: (2006-11-19) CLOS calling convention changes
;;; 72: (2006-12-05) Added slot to the primitive function type
+;;; 73: (2007-04-13) Changed a hash function
;;; the conventional file extension for our fasl files
(declaim (type simple-string *fasl-file-type*))
;;; checkins which aren't released. (And occasionally for internal
;;; versions, especially for internal versions off the main CVS
;;; branch, it gets hairier, e.g. "0.pre7.14.flaky4.13".)
-"1.0.4.82"
+"1.0.4.83"