tag name | sbcl_0_9_16 (396b0b3f02bfdf648b2a5a93dfa6583f9da0b30c) |
tag date | 2006-08-25 21:26:42 +0300 |
tagged by | William Harold Newman <william.newman@airmail.net> |
tagged object | commit 6d26ba9710... |
changes in sbcl-0.9.16 relative to sbcl-0.9.15:
* feature: implemented the READER-METHOD-CLASS and
WRITER-METHOD-CLASS portion of the Class Initialization Protocol
as specified by AMOP.
* incompatible change: variable SB-EXT:*USE-IMPLEMENTATION-TYPES*
no longer exists.
* optimization: faster LOGCOUNT implementation on x86 and x86-64
(thanks to Lutz Euler)
* optimization: hashing of general arrays and vectors has been
improved. (reported by Any Fingerhut)
* enhancement: SB-INTROSPECT is now able to find definitions of
profiled functions. (thanks to Troels Henriksen)
* enhancement: compiler-macro expansion applies now to FUNCALL forms
as well, allowing compiler-macros for SETF-functions to expand.
* enhancement: step-instrumentation no longer wraps known
single-value functions with multiple-value context, allowing
better type inference.
* fixed bug #337: use of MAKE-METHOD in method combination now works
even in the presence of user-defined method classes. (reported by
Bruno Haible and Pascal Costanza)
* fixed bug #339(c): if there are applicable methods not part of any
long-form method-combination group, call INVALID-METHOD-ERROR.
(reported by Bruno Haible)
* fixed bug #361: the :FUNCTION initarg in the protocol for
initialization of methods can now be used to override
internally-produced optimized functions. (reported by Bruno
Haible)
* bug fix: extensions of MAKE-METHOD-LAMBDA which wrap the
system-provided lambda expression no longer cause warnings about
unbound #:|pv-table| symbols.
* bug fix: improved the handling of type declarations and the
detection of violations for keyword arguments with non-constant
defaults.
* bug fix: potentially erronous calls to PATHNAME and
MERGE-PATHNAMES were being flushed in some cases.
(reported by Richard Kreuter)
* bug fix: compiled calls to TYPEP were mishandling obsolete
instances. (reported by James Bielman and Attila Lendvai)
* bug fix: format strings with ~> without matching ~< no longer
trigger an AVER, but signal an understandable error instead.
(reported by Antonio Martinez)
* bug fix: specifying an output-file without a pathname-type for
COMPILE-FILE or COMPILE-FILE-PATHNAME resulted in using the type
of input-file instead of "fasl". (reported by Robert Dodier)
* bug fix: compiler-macro lambda-list parsing of FUNCALL forms.
(reported by James Y Knight).
* bug fix: compiler-macros-function did not consider the environment
argument for shadowing by local functions.
* bug fix: compiler-macros expansion was inhibited by local INLINE
declarations.
* bug fix: inline expansions of known functions were subject to
step-instrumentation in high debug policies, leading to problems
with type-inference.
* bug fix: compiler failed to differentiate between different CONS
types in some cases.
* bug fix: fixed input, output and error redirection in RUN-PROGRAM
for win32. (thanks to Mike Thomas and Yaroslav Kavenchuk)
* bug fix: #368: incorrect use of expressed vs. upgraded array
element type.
* bug fix: #306a: more precise unions of array types.
* thread-safety improvements:
** CONDITION-WAIT could return early on Linux, if the thread was
interrupted and subsequently continued with SIGCONT.
** STABLE-SORT and ADJUST-ARRAY were not reentrant.