0.7.7.24:
[sbcl.git] / NEWS
diff --git a/NEWS b/NEWS
index eab5231..12d2d17 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -1191,11 +1191,84 @@ changes in sbcl-0.7.6 relative to sbcl-0.7.5:
     is no longer a static symbol.)
 
 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
+    work yet.
   * 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
+    Raymond Toy)
+  * 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
+    Marco Antinotti)
+  * The fasl file version number has changed again. (because of the
+    bug fix involving the names of PCL MAKE-INSTANCE functions)
+
+changes in sbcl-0.7.8 relative to sbcl-0.7.7:
+  * A beta-quality port to the mips architecture running Linux,
+    based on the old CMUCL backend, has been made.  It has been tested
+    on a big-endian kernel, and works sufficiently well to be able to
+    rebuild itself; it has not been tested in little-endian mode.
+  * fixed bug 120a: The compiler now deals correctly with IFs where
+    the consequent is the same as the alternative, instead of
+    misderiving the return type. (thanks to Alexey Dejneka)
+  * fixed bug 113: Logical pathnames are now dumpable (the logical
+    host is resolved at load-time, throwing an error if it is not
+    found).
+  * fixed bug 174: FORMAT's error message is slightly clearer when a
+    non-printing character is used in a format directive.
+  * fixed several bugs in compiler checking of type declarations, i.e.
+    violations of the Python "declarations are assertions" principle
+    (thanks to Alexey Dejneka)
+  * fixed several bugs in PCL's error checking (thanks to Gerd
+    Moellmann)
+  * fixed bug in printing of FILE-ERROR (thanks to Antonio Martinez)
 
 planned incompatible changes in 0.7.x:
 * When the profiling interface settles down, maybe in 0.7.x, maybe