changes in sbcl-1.0.55 relative to sbcl-1.0.54: * enhancements to
building SBCL using make.sh: ** --fancy can be specified to enable
all supported feature enhancements. ** --with-<feature> and
--without-<feature> can be used to specify which features to
build with. ** --arch option can be used to specify the
architecture to build for. (Mainly useful for building 32-bit
SBCL's on x86-64 hosts, not full-blows cross-compilation.) *
enhancement: extended package prefix syntax
<pkgname>::<form-in-package> which allows specifying name of the
default interning package for the whole form. * enhancement: when
*READ-EVAL* is true, arrays with element type other than T can be
printed readably using #.-based syntax. (Thanks to Robert Brown) *
enhancement: MAKE-ALIEN signals a storage-condition instead of
returning a null alien when malloc() fails. (lp#891268) *
enhancement: SB-EXT:PRINT-UNREADABLY restart for PRINT-NOT-READABLE
conditions can be conveniently accessed through function with the same
name, analogously to CONTINUE. * enhancement:
SB-EXT:*SUPPRESS-PRINT-ERRORS* can be used to suppress errors from
the printer by type, causing an error marker to be printed instead.
(Thanks to Attila Lendvai) * enhancement: BACKTRACE and DESCRIBE now
bind *PRINT-CIRCLE* to T, and generally behave better when errors
occur during printing. * enhancement: the test runner now takes a
--report-skipped-tests argument to report the individual tests
skipped as well as the number of skipped tests. * enhancement:
undefined functions now appear in backtraces as ("undefined
function") instead of ("bogus stack frame") on x86oids. *
enhancement: detected deadlocks no longer cause stderr to be spammed,
and deadlock errors are reported in an easier-to-decipher manner.
* enhancement: DESCRIBE on type designators reports the expansion in
more cases. * enhancement: SBCL now provides either an explicit
:BIG-ENDIAN or :LITTLE-ENDIAN in *FEATURES*, instead of :BIG-ENDIAN
being implied by lack of the :LITTLE-ENDIAN feature. (Thanks to
Luís Oliveira, lp#901661) * enhancement: better disassembly of
segment-prefixes on x86 and other instruction prefixes (e.g. LOCK)
on x86 and x86-64. * optimization: FIND and POSITION on bit-vectors
are orders of magnitude faster (assuming KEY and TEST are not used,
or are sufficiently trivial.) * optimization: SUBSEQ on vectors of
unknown element type is substantially faster. (lp#902537) *
optimization: specialized arrays with non-zero :INITIAL-ELEMENT can
be stack-allocated. (lp#902351) * optimization: the compiler is
smarter about representation selection for floating point constants
used in full calls. * optimization: the compiler no longer refuses to
coerce large fixnums to single floats inline, except on x86 where
this limitation is still necessary. * bug fix: deadlock detection
could report the same deadlock twice, for two different threads.
Now a single deadlock is reported exactly once. * bug fix:
interval-arithmetic division during type derivation did not account
for signed zeros. * bug fix: compiler error when typechecking a call
to a function with non-constant keyword arguments. * bug fix:
misoptimization of TRUNCATE causing erratic behaviour. * bug fix:
condition slot accessors no longer cause undefined function
style-warnings when used in the :REPORT clause of the DEFINE-CONDITION
form that defines them. (lp#896379) * bug fix: DEFGENERIC warns
about unsupported declarations, as specified by ANSI. (lp#894202)
* bug fix: SUBTYPEP tests involving forward-referenced classes no
longer bogusly report NIL, T. * bug fix: bogus style-warnings for
DEFMETHOD forms that both declared some required arguments ignored
and performed assignments to others. (lp#898331) * bug fix:
*EVALUATOR-MODE* :COMPILE treated (LET () ...) identically to
(LOCALLY ...) leading to internally inconsistent toplevel-formness. *
bug fix: non-toplevel DEFSTRUCT signaled a style warning for unknown
type. * bug fix: redefining a function whose previous definition
contained an unknown type no longer causes a style-warning.
(lp#806243) * bug fix: undefined functions now appear in backtraces
as ("undefined function") instead of ("bogus stack frame") on
non-x86oids. * bug fix: backtraces are no longer cut off at
("undefined function") when called under certain circumstances
(involving a caller-allocated stack frame) on PPC. * bug fix:
RUN-PROGRAM leaked a file-descriptor per call on non-Windows
systems. (regression since 1.0.53) * bug fix: GC deadlocks from
dladdr() on certain platforms. * bug fix: broken standard streams no
longer automatically cause recursive errors on debugger entry. *
bug fix: build ignored --dynamic-space-size=<size> argument to make.sh
(regression since 1.0.53) * bug fix: attempts to stack allocate a
required argument to a function with an external entry point caused
compiler-errors. * bug fix: compiler notes for failed stack
allocation for a function argument no longer claim to be unable to
stack allocate the function. * bug fix: COERCE now signals a
type-error on several coercions to subtypes of CHARACTER that are
forbidden according to ANSI. (lp#841312) * bug fix: missing
failure-to-stack-allocate compiler notes for some forms of
MAKE-ARRAY with dynamic-extent. (lp#902351) * bug fix: some of the
compile-time side-effects of DEFCLASS were not caught by package
locks.
--
Juho Snellman
|