SBCL 0.7.7 has been released. The source tarball is available for
download from SourceForge, and binaries should appear presently.
There are several patches pending which didn't make it into 0.7.7,
* Alexey Dejneka's patch to fix bug 120a
* Antonio Martinez' patch to fix condition setter messages
These (and some less-visible-to-the-user patches as well) will
probably be in the CVS version soon.
from the NEWS file:
changes in sbcl-0.7.7 relative to sbcl-0.7.6:
* An alpha-quality port to the parisc architecture running Linux,
based on the old CMUCL backend, has been made. This, even more so
than the other backends, should be considered still a work in
progress; known problems include that the Linux kernel in 64-bit
mode does not propagate the correct sigcontext structure to
userspace, and consequently SBCL on a parisc64 kernel will not
* fixed bug 189: The compiler now respects NOTINLINE declarations for
functions declared in FLET and LABELS. (I.e. "LET conversion" is
suppressed.) Also now that the compiler is looking at declarations
in the environment, it checks optimization declarations as well,
and suppresses inlining when (> DEBUG SPEED).
* More fixes have been made to treatment of floating point exception
treatment and other Unix signals. In particular, floating point
exceptions no longer cause Bus errors on the SPARC/Linux platform.
* The detection and handling of control stack exhaustion (infinite
or very deeply nested recursion) has changed. Stack exhaustion
detection is now done by write-protecting pages at the OS level
and applies at all optimization settings; when found, a
SB-KERNEL:CONTROL-STACK-EXHAUSTED condition (subclass of
STORAGE-CONDITION) is signalled, so stack exhaustion can no longer
be caught using IGNORE-ERRORS.
* Bugs 65, 70, and 109 fixed: The compiler now preserves invariants
correctly when transforming recursive LABELS functions to LETs.
(thanks to Alexey Dejneka)
* Bug 48a./b. fixed: SYMBOL-MACROLET now refuses to bind symbols
that are names of constants or global variables.
* Bug fix: DEFINE-ALIEN-ROUTINE now declaims the correct FTYPE for
alien routines with docstrings.
* Bug 184 fixed: Division of ratios by the integer 0 now signals an
error of type DIVISION-BY-ZERO. (thanks to Wolfhard Buss and
* Bug fix: Errors in PARSE-INTEGER are now of type PARSE-ERROR.
(thanks to Eric Marsden)
* Bug fix: COERCE to (COMPLEX FLOAT) of rationals now returns an
object of type (COMPLEX FLOAT). (thanks to Wolfhard Buss)
* Bug fix: The SPARC backend can now compile functions involving
LOGAND and stack-allocated arguments. (thanks to Raymond Toy)
* Bug fix: We no longer segfault on passing a non-FILE-STREAM stream
to a functions expecting a PATHNAME-DESIGNATOR.
* Bug fix: DEFGENERIC now enforces the ANSI restrictions on its
lambda lists. (thanks to Alexey Dejneka)
* Bug fix: changed encoding of PCL's internal MAKE-INSTANCE
functions so that EXPORTing the name of the class doesn't cause
MAKE-INSTANCE functions from earlier DEFCLASSes to get lost (thanks
to Antonio Martinez for reporting this)
* Bug 192 fixed: The internal primitive DATA-VECTOR-REF can now be
constant-folded without failing an assertion. (thanks to Einar
Floystad Dorum for reporting this)
* Bugs 123 and 165 fixed: array specializations on as-yet-undefined
types are now dealt with more correctly by the compiler.
* Minor incompatible change: COMPILE-FILE-PATHNAME now merges its
OUTPUT-FILE argument with its INPUT-FILE argument, resulting in
behaviour analogous to RENAME-FILE. This puts its behaviour more
in line with ANSI's wording on COMPILE-FILE-PATHNAME. (thanks to
* The fasl file version number has changed again. (because of the
bug fix involving the names of PCL MAKE-INSTANCE functions)
William Harold Newman <william.newman@...>
"It is surprising that we did as little damage as we did."
PGP key fingerprint 85 CE 1C BA 79 8D 51 8C B9 25 FB EE E0 C3 E5 7C