0.8.3.18:
[sbcl.git] / NEWS
diff --git a/NEWS b/NEWS
index d0da2bc..45ccbdf 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -1944,9 +1944,18 @@ changes in sbcl-0.8.3 relative to sbcl-0.8.2:
   * Compiler code deletion notes now signal a condition of type
     SB-EXT:CODE-DELETION-NOTE (a subtype of SB-EXT:COMPILER-NOTE) with
     an associated MUFFLE-WARNING restart.
-  * bug fix: WITH-OUTPUT-TO-STRING (and MAKE-STRING-OUTPUT-STREAM) now
-    accept and act upon their :ELEMENT-TYPE keyword argument.
-    (reported by Edi Weitz)
+  * The compiler now performs limited argument count validation of
+    constant format strings in FORMAT, and where appropriate in ERROR, 
+    CERROR and WARN.  (thanks to Gerd Moellmann)
+  * New ASDF-INSTALL contrib can be used for automatic download and 
+    installation of third-party Lisp code from CCLAN or other sites
+    via CLiki.
+  * Threaded builds (:SB-THREAD) now support SB-THREAD:INTERRUPT-THREAD,
+    which forces another thread to execute a function supplied by the
+    caller.
+  * bug 75 fix: WITH-OUTPUT-TO-STRING (and MAKE-STRING-OUTPUT-STREAM)
+    now accept and act upon their :ELEMENT-TYPE keyword argument.
+    (reported by Martin Atzmueller, Edi Weitz)
   * bug fix: FILE-POSITION now accepts position designators up to
     ARRAY-DIMENSION-LIMIT or the extreme of the off_t range, whichever
     is the greater.  (thanks to Patrik Nordebo)
@@ -1956,6 +1965,64 @@ changes in sbcl-0.8.3 relative to sbcl-0.8.2:
     printable.  (reported by Eric Marsden)
   * bug fix in sb-posix: mmap() now works on systems with a 64-bit
     off_t, including Darwin and FreeBSD.  (thanks to Andreas Fuchs)
+  * x86 bug fix in control stack exhaustion checking: now shows backtrace
+  * bug fix in WITH-TIMEOUT: now the body can have more than one form.
+    (thanks to Stig Sandoe)
+  * bug fix in READ-SEQUENCE: READ-SEQUENCE following PEEK-CHAR or
+    UNREAD-CHAR now correctly includes the unread character in the
+    target sequence.  (thanks to Gerd Moellmann)
+  * bug fix in threaded builds: the system can now be suspended and
+    resumed by shell job control with minimal disruption.
+  * bug fixes in times and timezones >2038AD
+  * better handling of "where is GNU make?" problem in build scripts
+    (thanks to Nikodemus Siivola)
+  * new optimization: inside a named function any reference to a
+    function with the same name is considered to be a self-reference;
+    this behaviour is controlled with SB-C::RECOGNIZE-SELF-CALLS
+    optimization quality.
+  * new optimization on x86: logical functions and + now have
+    optimized (UNSIGNED-BYTE 32) versions, which are automatically
+    used when the result is truncated to 32 bits.
+  * VALUES declaration is partially enabled.
+  * fixes in SB-GROVEL (thanks to Andreas Fuchs)
+  * fixed some bugs revealed by Paul Dietz' test suite:
+    ** The system now obeys the constraint imposed by
+       UPGRADED-ARRAY-ELEMENT-TYPE that the upgraded array element
+       types form a lattice under type intersection.
+    ** FFLOOR, FTRUNCATE, FCEILING and FROUND work with integers.
+    ** ASSOC now ignores NIL elements in an alist.
+    ** CEILING now gives the right answer with MOST-NEGATIVE-FIXNUM
+       and (1+ MOST-POSITIVE-FIXNUM) answers.
+    ** The addition of a method with invalid qualifiers to a generic
+       function does not cause an error to be signalled immediately;
+       a warning is signalled, and the error is generated only on
+       calling the generic function.
+  * changed .fasl file version number, in part to add type codes for
+    new array subtypes UNSIGNED-BYTE 7, 15, 29, and 31 mandated by 
+    obscure ANSI requirements
+
+changes in sbcl-0.8.4 relative to sbcl-0.8.3:
+  * fixed compiler performance when processing loops with a step >1;
+  * bug fix: DOCUMENTATION now retrieves generic function
+    documentation.  Also, DOCUMENTATION and (SETF DOCUMENTATION)
+    support has been systematized, and now supports the methods
+    specified by ANSI, along with a default method and a method for
+    slot documentation.  (reported by Nathan Froyd)
+  * bug fix: effective methods associated with a generic function are
+    no longer cached over a change of that generic function's method
+    combination.  (reported by Andreas Fuchs)
+  * bug fix: RUN-PROGRAM now does not fail if some element in $PATH
+    names a non-existent directory.  (thanks to Andreas Fuchs)
+  * 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.
+  * optimization: compiler-internal data structure use has been
+    reviewed, and changes have been made that should improve the
+    performance of the compiler by about 20%.
+  * microoptimization: the compiler is better able to make use of the
+    x86 LEA instruction for multiplication by constants.
+  * bug fix: in some situations compiler did not report usage of
+    generic arithmetic in (SPEED 3) policy.
 
 planned incompatible changes in 0.8.x:
   * (not done yet, but planned:) When the profiling interface settles