1.0.40.6: call an appropriate existing ctor from MAKE-INSTANCE (CLASS)
[sbcl.git] / NEWS
diff --git a/NEWS b/NEWS
index 0c99a05..b17d87e 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -1,14 +1,53 @@
 ;;;; -*- coding: utf-8; fill-column: 78 -*-
-changes relative to sbcl-1.0.37:
-  * INCOMPATIBLE CHANGE: Thread names are now restricted to SIMPLE-STRINGs
+changes relative to sbcl-1.0.40:
+  * optimization: validity of observed keyword initargs to MAKE-INSTANCE is
+    cached, leading to many fewer expensive calls to
+    COMPUTE-APPLICABLE-METHODS.
+  * optimization: in the (unoptimized) general method for MAKE-INSTANCE on a
+    CLASS argument, search for and call an appropriate optimized ctor function
+    if it exists.
+  * bug fix: WRITE always returns the correct value.
+
+changes in sbcl-1.0.40 relative to sbcl-1.0.39:
+  * bug fix: readdir now works on :inode64 darwin builds (lp#592897)
+  * bug fix: Name conflicts between symbols passed as arguments to a single
+    call to IMPORT no longer add multiple symbols with the same name to the
+    package (detectable via DO-SYMBOLS).
+  * bug fix: support building without the dlshim on darwin x86 and x86-64
+    (lp#533470).
+  * bug fix: TRACE :ENCAPSULATE NIL now works on ppc/linux.
+
+changes in sbcl-1.0.39 relative to sbcl-1.0.38:
+  * bug fix: Backtrace from undefined function on x86 and x86-64 now show
+    the calling frame.
+  * bug fix: linkage-table entries on PPC now no longer overflow their
+    space allocation (potentially causing crashes if they are written out
+    of order).
+  * bug fix: Scrub control stack after scavenging in gencgc on non-x86oid
+    platforms, preventing the GC from seeing stale pointers on the control
+    stack in subsequent GCs (which would, and does, break invariants).
+  * bug fix: 32-bit unicode external formats now work on big-endian systems.
+  * bug fix: Literal characters with code points greater than about 32767
+    now work on PPC UNICODE builds.
+  * bug fix: Any noise left by SSE operations (sqrt and conversions) in the
+    high order bits are explicitly cleared out. In some contrived situations,
+    this could lead to wrong results in mixed real/complex float arithmetic.
+  * bug fix: Fix function/macro redefinition warnings when building with
+    clisp.  (lp#576787, thanks to Josh Elsasser)
+  * new platform: experimental support for ppc/openbsd (thanks to Josh
+    Elsasser).
+  * bug fix: Floating-point traps now work on ppc/linux.
+
+changes in sbcl-1.0.38 relative to sbcl-1.0.37:
+  * incompatible change: Thread names are now restricted to SIMPLE-STRINGs
     like for any other thread-related datastructure, MUTEX, etc. (lp#547095)
-  * DEPRECATION: the SB-QUEUE contrib was merged into the SB-CONCURRENCY
+  * deprecation: the SB-QUEUE contrib was merged into the SB-CONCURRENCY
     contrib module. New code should depend on SB-CONCURRENCY, not SB-QUEUE.
-  * DEPRECATION: SB-THEAD:GET-MUTEX was deprecated in favor of
+  * deprecation: SB-THEAD:GET-MUTEX was deprecated in favor of
     SB-THREAD:GRAB-MUTEX.
-  * new contrib: SB-CONCURRENCY is a new contrib; it's supposed to contain
-    additional data structures and tools for concurrent programming; at the
-    moment it contains a lock-free queue, and a lock-free mailbox
+  * new contributed module: SB-CONCURRENCY is a new contrib; it's supposed to
+    contain additional data structures and tools for concurrent programming;
+    at the moment it contains a lock-free queue, and a lock-free mailbox
     implementation.
   * new feature: added SB-THREAD:GRAB-MUTEX; it's like the now deprecated
     GET-MUTEX but takes &key rather than &optional parameters.  Also added
@@ -47,6 +86,8 @@ changes relative to sbcl-1.0.37:
     some of CL-PPCRE's macros. (lp#570079)
   * enhancement: our machine code is slightly less hostile to valgrind on 
     x86-64.
+  * enhancement: up-to-date versions of NetBSD-current are supported.  (Thanks
+    to Robert Swindells and Aleksej Saushev)
   * bug fix: correct restart text for the continuable error in MAKE-PACKAGE.
   * bug fix: a rare case of startup-time page table corruption.
   * bug fix: a semaphore with multiple waiters and some of them unwinding due
@@ -78,6 +119,10 @@ changes relative to sbcl-1.0.37:
   * bug fix: Maybe restore buildability on Alpha.
   * bug fix: READ-BYTE isn't inline anymore, fixing weird streams failures. 
     (lp#569404)
+  * bug fix: RANDOM-STATE can be printed readably again.
+  * bug fix: Unreadable objects were sometimes printed like #<\nFoo>.
+  * bug fix: Using EQL with non-constant values of constant type (e.g. EQL
+    types) could result in type mismatches during compilation.
 
 changes in sbcl-1.0.37 relative to sbcl-1.0.36:
   * enhancement: Backtrace from THROW to uncaught tag on x86oids now shows