Source is available in SourceForge CVS and on the SourceForge File
Some readers of this list might not have heard the sad news of the
death of Thiemo Seufer in a car accident on December the 26th; the
SBCL community, along with many others (as described in an obituary at
<http://lwn.net/Articles/313092/>) mourns the loss of a colleague and
Best wishes to all,
changes in sbcl-1.0.24 relative to 1.0.23:
* new feature: ARRAY-STORAGE-VECTOR provides access to the underlying data
vector of a multidimensional SIMPLE-ARRAY.
* new feature: the system now signals a continuable error if standard
readtable modification is attempted. (thanks to Tobias Rittweiler)
* new feature: DIRECTORY has been extended with a non-standard keyword
argument :RESOLVE-SYMLINKS. (thanks to TC-Rucho)
* enhancement: SB-BSD-SOCKETS:MAKE-SOCKET-STREAM keyword argument handling
has been robustified and documented better. (thanks to Robert Goldman)
* optimization: faster generic arithmetic dispatch on x86 and x86-64.
* optimization: FORMAT ~D and ~F are now approximately 5% faster.
* tradeoff: constant FORMAT control strings are now compiled unless
SPACE > SPEED (previously only when SPEED > SPACE.)
* bug fix: Red Hat Enterprise 3 mmap randomization workaround. (thanks
to Thomas Burdick)
* bug fix: DEFCLASS and ENSURE-CLASS-USING-CLASS are now expected to
be thread safe.
* bug fix: lexical type declarations are now correctly reported by
SB-CLTL2. (reported by Larry D'Anna)
* bug fix: STRING-TO-OCTETS did not handle :START properly when
using UTF-8 as external format. (thanks to Luis Oliveira)
* bug fix: errors from invalid fill-pointer values to (SETF FILL-POINTER)
are signalled correctly. (thanks to Stas Boukarev)
* bug fix: SET-MACRO-CHARACTER accepts NIL as the readtable
designator. (thanks to Tobias Rittweiler)
* bug fix: SET-DISPATCH-MACRO-CHARACTER accepts NIL as the readtable
designator, and returns T instead of the function. (thanks to
* bug fix: direct superclasses of STANDARD-CLASS and
FUNCALLABLE-STANDARD-CLASS now default to STANDARD-OBJECT and
FUNCALLABLE-STANDARD-OBJECT as required by AMOP.
* bug fix: compiling a call to SLOT-VALUE with a constant slot-name
when no class with the named slot yet exists no longer causes a
* bug fix: :ALLOCATION :CLASS slots are type-checked properly
in safe code. (reported by Didier Verna)
* bug fix: #430; nested structure constructors can stack allocate.
* bug fix: on some 64-bit platforms dynamic space size was truncated
to #xffff0000 bytes. (reported by Benjamin Lambert)
* bug fix: setting *READ-SUPPRESS* to T no longer renders the default
REPL unusable. (reported by Daniel Herring)
* bug fix: return values of READ-SEQUENCE did not take :START into
account on file streams, regressions since 18.104.22.168. (reported by
Thomas Russ, patch by Paul Khuong)
* bug fix: using SET or (SETF SYMBOL-VALUE) to change the value of a
method specializer used to confuse permuation vector optimization.
* bug fix: system inserted bogus implicit type declarations for local
special variables in DEFMETHOD bodies.
* bug fix: #354; duplicated frames in backtraces due to
non-tail-call-optimized XEPs to functions with return type NIL
have been elimited.
* bug fix: #357; MAKE-INSTANCE/SHARED-INITIALIZE now
initializes structure object slots according to DEFSTRUCT initforms,
and DEFSTRUCT forms :INCLUDEind structure classes defined using
DEFCLASS :METACLASS STRUCTURE-CLASS now inherit their initforms.
(reported by Bruno Haible and Stephen Wilson)
* bug fix: #395; fill-pointer output streams used now support
element-type BASE-CHAR as well.
* bug fix: compiler error when attempting to derive return value of
ARRAY-ELEMENT-TYPE when the array type was a union of intersection
* bug fix: address-spaces overlapped on OpenBSD. (thanks to Josh
* bug fix: Mac OS X binaries should now be portable between Leopard