0.8.4.23:
[sbcl.git] / NEWS
diff --git a/NEWS b/NEWS
index 30e4b50..69147bb 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -2031,8 +2031,8 @@ changes in sbcl-0.8.4 relative to sbcl-0.8.3:
   * fixed bug 285: TRUNCATE on bignum arguments, and indeed bignum
     arithmetic in general, is now much more reliable on the PPC
     platform.
-  * bug fix: LOGCOUNT on (UNSIGNED-BYTE 64) objects on the Alpha platform
-    now returs the right answer.
+  * bug fix: LOGCOUNT on (UNSIGNED-BYTE 64) objects on the Alpha 
+    platform now returns the right answer.
   * optimization: restored some effective method precomputation in
     CLOS (turned off by an ANSI fix in sbcl-0.8.3); the amount of
     precomputation is now tunable.
@@ -2054,17 +2054,29 @@ changes in sbcl-0.8.4 relative to sbcl-0.8.3:
     MEMBER-types to numeric.
   * bug fix: COMPILE-FILE must bind *READTABLE*. (reported by Doug
     McNaught)
-  * bug fix: (SETF AREF) on byte-sized-element arrays with constant index
-    argument now works properly on the Alpha platform.
+  * bug fix: (SETF AREF) on byte-sized-element arrays with constant 
+    index argument now works properly on the Alpha platform.
   * bug fix: floating point exception treatment on the Alpha platform
     is improved.
-  * bug fix: FILE-POSITION works much better on string input and output
-    streams.  (thanks to Nikodemus Siivola)
+  * bug fix: FILE-POSITION works much better on string input and 
+    output streams.  (thanks to Nikodemus Siivola)
+  * bug fix: many threading/garbage collection symptoms sorted.  
+    SB-THREAD:INTERRUPT-THREAD now safe to call on a thread that 
+    might be pseudo-atomic.
+  * internal change: Stopping for GC is now done with signals not 
+    ptrace. GC is now done in whichever thread wanted it, instead of
+    in the parent. 
+  * bug fix: GC hooks (missing since 0.8) reinstated, so finalizers 
+    work again.
   * bug fix: result form in DO is not contained in the implicit
     TAGBODY.
   * incompatible change: ICR structure is changed; the value part of
     CONTINUATION is now called LVAR; corresponding functions are
     renamed (e.g. SB-C::CONTINUATION-TYPE has become SB-C::LVAR-TYPE).
+  * added type deriver for ISQRT (thanks to Robert E. Brown).
+  * bug fix: better support for loading from the command line when an
+    initialization file sets (READTABLE-CASE *READTABLE*).  (thanks 
+    to Adam Warner)
   * fixed some bugs revealed by Paul Dietz' test suite:
     ** the RETURN clause in LOOP is now equivalent to DO (RETURN ...).
     ** ROUND and FROUND now give the right answer when given very
@@ -2089,7 +2101,45 @@ changes in sbcl-0.8.4 relative to sbcl-0.8.3:
        an error during type derivation.
     ** bignum multiplication on the Alpha platform now returns the
        right answer.
-  * builds on SuSE AMD64, although still generates a 32-bit binary.
+  * porting: The system now builds on SuSE AMD64, although it still
+    generates a 32-bit binary.
+  * .fasl file incompatibility: The fasl file version number has
+    been incremented (because of the changes to internal compiler
+    data structures referred to above).
+
+changes in sbcl-0.8.5 relative to sbcl-0.8.4:
+  * in full calls compiler does not generate checks for declared
+    argument types for all arguments.
+  * fix bug 282: compiler does not trust type assertions while passing
+    arguments to a full call.
+  * fix bug 261: compiler allows NIL or "no value" to be accepted for
+    &OPTIONAL VALUES type parameter.
+  * fix bug 214: algorithm for noting rejected templates is now more
+    similar to that of template seletion. (also reported by rydis on
+    #lisp)
+  * fixed bug 141b: printing backquoted information readably and prettily
+    inserts a space where necessary.
+  * bug fix: obviously wrong type specifiers such as (FIXNUM 1) or
+    (CHARACTER 10) are now reported as errors, rather than propagated
+    as unknown types.  (reported by piso on #lisp)
+  * bug fix: the :IF-EXISTS argument to OPEN now behaves correctly
+    with values NIL and :ERROR.  (thanks to Milan Zamazal)
+  * fixed bug 191c: CLOS now does proper keyword argument checking as
+    described in CLHS 7.6.5 and 7.6.5.1.
+  * compiler enhancement: SIGNUM is now better able to derive the type
+    of its result.
+  * type declarations inside WITH-SLOTS are checked.  (reported by
+    salex on #lisp)
+  * fixed some bugs revealed by Paul Dietz' test suite:
+    ** incorrect optimization of TRUNCATE for a positive first
+       argument and negative second.
+    ** compiler failure in let-convertion during flushing dead code.
+    ** compiler failure while deriving type of TRUNCATE on an
+       interval, containing 0.
+    ** ASH of a negative bignum by a negative bignum count now returns
+       -1, not 0.
+    ** intersection of CONS types now canonicalizes properly, fixing
+       inconsistencies in SUBTYPEP.
 
 planned incompatible changes in 0.8.x:
   * (not done yet, but planned:) When the profiling interface settles