changes in sbcl-1.1.14 relative to sbcl-1.1.13:
* optimization: complicated TYPEP tests are less opaque to the type
propagation pass. (lp#1229340)
* optimization: [N]BUTLAST perform a single pass over the list. (lp#1245697)
* optimization: EQUALP on structures with raw slots (double-float/complex)
no longer conses and is faster.
* optimization: RESTART-CASE expands to more compact code.
Thanks to Jan Moringen. (lp#1249055)
* enhancement: Top-level defmethod without defgeneric no longer causes
undefined-function warnings in subsequent forms. (lp#503095)
* enhancement: Better error messages for system errors on Windows.
* enhancement: run-sbcl.sh is usefully handled by rlwrap. Thanks to William
Cushing. (lp#1249183)
* enhancement: new function SB-EXT:ASSERT-VERSION->= accepts a version
specification (multiple integer arguments) and signals a continuable error
if the current SBCL version is lower (older) than the specification.
(lp#674372)
* enhancement: better ARRAY-RANK result derivation. (lp#1252108)
* bug fix: EQUALP now compares correctly structures with raw slots larger
than a single word.
* bug fix: contribs couldn't be built on Windows with MinGW.
* bug fix: Better pathname handling on Windows. (lp#922117)
* bug fix: OPEN reports a more meaningful error when an existing file is
opened for output with :if-exists :new-version. Thanks to Philip
Munksgaard. (lp#455381)
* bug fix: DEFSTRUCTs with NIL as a slot name no longer cause strange
CLOS-related errors. (lp#633911)
* bug fix: GC deadlocks caused by concurrent consing on Windows.
changes in sbcl-1.1.13 relative to sbcl-1.1.12:
* optimization: better distribution of SXHASH over small conses of related
values. (lp#309443)
* other improvements to SXHASH:
** use the whole of the positive-fixnum range for SXHASH of fixnums
* enhancement: The error message when calling an undefined alien function
includes the name of the function on x86-64.
* enhancement: sb-ext:run-program now supports :environment on Windows.
* enhancement: ASDF is no longer required to load contribs at runtime.
(lp#1132254)
* enhancement: when called with a symbol, FIND-RESTART no longer calls
COMPUTE-RESTARTS, making it faster and cons less (lp#769615)
* enhancement: FIND-RESTART and COMPUTE-RESTARTS handle huge restart
clusters better in some cases
* enhancement: SOME/ANY/other quantification higher-order functions no
longer cons. (lp#1070635)
* bug fix: forward references to classes in fasls can now be loaded.
(lp#746132)
* bug fix: don't warn on a interpreted->compiled function redefinition
from the same location. (patch by Douglas Katzman, lp#1042405)
* bug fix: Create vectors of proper internal length when reading literal
vectors from FASLs. (Reported by Jan Moringen)
* bug fix: COMPILE can now succefully compile setf functions.
(Reported by Douglas Katzman)
* bug fix: run-program performs more correct escaping of arguments on
Windows. (lp#1239242)
* bug fix: function-lambda-expression on generic functions returns the
actual name.
* bug fix: (the [type] [constant]) now warns when [constant] matches
[type] except for the number of values. (Reported by Nathan Trapuzzano
on sbcl-help)
* bug fix: signal errors in required cases of slot-definition initialization
protocol. (lp#309072)
* bug fix: run-sbcl.sh works better in the presence of symlinks on OS X.
(thanks to Stelian Ionescu, lp#1242643)
* bug fix: when given a restart object, FIND-RESTART checks whether the
restart is active and, when a condition is supplied, whether the restart
is associated to a different condition (lp#774410)
changes in sbcl-1.1.12 relative to sbcl-1.1.11:
* enhancement: Add sb-bsd-sockets:socket-shutdown, for calling
shutdown(3). (thanks to Jan Moringen, lp#1207483)
* enhancement: document extensible sequences. (thanks to Jan Moringen,
lp#994528)
* optimization: EQUAL and EQUALP transforms are smarter.
(thanks to Elias Martenson, lp#1220084)
* optimization: CHAR-EQUAL is faster for constant and base-char arguments.
* bug fix: probe-file now can access symlinks to pipes and sockets in
/proc/pid/fd on Linux. (reported by Eric Schulte)
* bug fix: SBCL can now be built on Solaris x86-64.
* bug fix: Floating point exceptions do not persist on Solaris anymore.
* bug fix: (setf . a) is pprinted correctly (reported by Douglas Katzman).
* bug fix: handle compiler-error in LOAD when it's not run from inside EVAL.
(lp#1219601)
* bug fix: SB-GMP:MPZ-POW no longer segfaults given a non-bignum base.
(thanks to Stephan Frank)
* bug fix: space allocation of result bignums in SB-GMP is more accurate.
(thanks to Stephan Frank, lp#1206191)
* bug fix: sb-safepoint can now reliably handle signal interruptions of
foreign code. (lp#1133018)
* bug fix: the compiler-macro for MAKE-INSTANCE when emitting "fallback"
constructors no longer fails to merge actual and default initargs
(thanks to Jan Moringen, lp#1179858)
* bug fix: the compiler-macro for MAKE-INSTANCE when emitting "fallback"
constructors handles non-KEYWORD initialization arguments more correctly.
* bug fix: loading the SB-SIMPLE-STREAMS contributed module no longer
clobbers FILE-NAMESTRING. (thanks to Anton Kovalenko, lp#884603)
* bug fix: class definitions with CPLs inconsistent with their metaclasses
are less likely to destroy the object system's integrity. (lp#309076)
* bug fix: restart clause parsing in RESTART-CASE is more in line with the
standard. (lp#1203585, thanks to Jan Moringen)
* bug fix: silence a note from RESTART-CASE under high-SPEED optimization
settings. (lp#1023721)
* bug fix: getting the order of arguments to
SB-MOP:SET-FUNCALLABLE-INSTANCE-FUNCTION wrong produces a sensible error
rather than a failed AVER. (reported by Paul Nathan)
* bug fix: Parsing of &optional/&key/&rest arguments now never overwrites
arguments during copying on x86 and x86-64; it may still happen on other
platforms when there are more fixed arguments than stack slots.
(reported by Jan Moringen)