From: Juho S. <js...@us...> - 2007-04-14 09:27:34
|
Update of /cvsroot/sbcl/sbcl In directory sc8-pr-cvs8.sourceforge.net:/tmp/cvs-serv20336 Modified Files: NEWS version.lisp-expr Log Message: 1.0.4.84: better EQUAL hash-tables, revert 0.9.15.21 (non-compliant SXHASH) * The value of SXHASH on non-string/bitvector arrays should not change when the contents of the array change (clhs sxhash, clhs 18.1.2.2). So the commit in 0.9.15.21 is invalid. * But luckily nothing requires us to use SXHASH for our own tables. Change the definition of EQUAL-HASH to punt to EQ-HASH for data types where EQUAL == EQL Index: NEWS =================================================================== RCS file: /cvsroot/sbcl/sbcl/NEWS,v retrieving revision 1.1178 retrieving revision 1.1179 diff -u -d -r1.1178 -r1.1179 --- NEWS 13 Apr 2007 22:37:36 -0000 1.1178 +++ NEWS 14 Apr 2007 09:27:22 -0000 1.1179 @@ -49,8 +49,14 @@ * 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 + * bug fix: a logic error was causing the hash function for bignums to have excessive amounts of collisions (reported by Faré Rideau) + * bug fix: modifying the contents of an array could change the return + value of SXHASH on that array, which is only allowed for strings + and bit vectors (bug introduced in 0.9.16) + * optimization: EQUAL hash tables no longer use SXHASH for objects + of all data types, but instead use an EQL hash for types for which + EQUAL is the same as EQL * 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 Index: version.lisp-expr =================================================================== RCS file: /cvsroot/sbcl/sbcl/version.lisp-expr,v retrieving revision 1.3338 retrieving revision 1.3339 diff -u -d -r1.3338 -r1.3339 --- version.lisp-expr 13 Apr 2007 22:37:37 -0000 1.3338 +++ version.lisp-expr 14 Apr 2007 09:27:22 -0000 1.3339 @@ -17,4 +17,4 @@ ;;; 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.83" +"1.0.4.84" |