thing to do.)
changes in sbcl-0.7.9 relative to sbcl-0.7.8:
- * fixed bug: VALUES-LIST is no longer optimized away
+ * minor incompatible change: The runtime (the Unix executable named
+ "sbcl") is now much pickier about the .core files it will load.
+ Essentially it now requires .core files to descend from the same
+ build (not just the same sources or LISP-IMPLEMENTATION-VERSION)
+ as the runtime does. (The intent is to prevent the crashes which
+ can occur, and which can even be reported as mysterious failures,
+ when people patch the sources or change the build parameters
+ without changing LISP-IMPLEMENTATION-VERSION, then mix and match
+ sbcl and .core files.)
+ * fixed bug: VALUES-LIST is no longer optimized away.
* fixed bug 142: The FFI conversion of C string values to Lisp
string values no longer conses excessively. (thanks to Nathan
Froyd porting Raymond Toy's fix to CMU CL)
- * improved MOP conformance in PCL (thanks to Nathan Froyd porting
- Gerd Moellman's work in CMU CL)
+ * began to systematize and improve MOP conformance in PCL (thanks to
+ Nathan Froyd, Gerd Moellman and Pierre Mai):
+ ** SLOT-DEFINITION-ALLOCATION now returns :CLASS, not the class
+ itself;
+ ** GENERIC-FUNCTION-ARGUMENT-PRECEDENCE-ORDER is now implemented;
+ ** FINALIZE-INHERITANCE is now called on class finalization;
+ ** DOCUMENTATION and (SETF DOCUMENTATION) now have the correct
+ argument precedence order.
+ * fixed bug 202: The compiler no longer fails on functions whose
+ derived types contradict their declared type.
+ * DEFMACRO is implemented via EVAL-WHEN instead of IR1 translation,
+ so it can be non-toplevel.
+ * The fasl file version number has changed (because of the new
+ implementation of DEFMACRO).
+ * (mostly) fixed bugs 46b and 46c: sequence functions now check, in
+ safe code, that any length requirement by their type-specifier
+ argument is valid. The exceptions to this are described in bug
+ 213.
+ * fixed bugs 46h and 46i: TWO-WAY- and CONCATENATED-STREAM creation
+ functions now check the types of their inputs as required by ANSI.
+ * fixed bug 48c: SYMBOL-MACROLET signals PROGRAM-ERROR when an
+ introduced symbol is DECLAREd to be SPECIAL.
+ * fixed reading of (COMPLEX DOUBLE-FLOAT) literals from fasl files
+ * fixed bug: :COUNT argument to sequence functions may be negative
+ * fixed bug: body of DO-SYMBOLS may contain declarations
+ * fixed bug: PUSHNEW now evaluates its arguments from left to right
+ (reported by Paul F. Dietz, fixed by Gerd Moellman)
+ * fixed bug: PUSH, PUSHNEW and POP now evaluate a place given by a
+ symbol macro only once
+ * fixed printing of call frame when argument list is unavailable
+ * fixed bug: :ALLOW-OTHER-KEYS is an allowed keyword name
+ * compiler no longer signals WARNING on unknown keyword
+ :ALLOW-OTHER-KEYS
planned incompatible changes in 0.7.x:
* When the profiling interface settles down, maybe in 0.7.x, maybe