X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=NEWS;h=5c54d08284d6329558a707c8efe3eab04e18c259;hb=7f13323739a0d2b474bfd5c740942db5a78349d6;hp=11f5fd3d7f69ffd1a7e2b641518e7e8057aec1ce;hpb=c68bb6b62d2813eb5af3cb7d4502625990a933d6;p=sbcl.git diff --git a/NEWS b/NEWS index 11f5fd3..5c54d08 100644 --- a/NEWS +++ b/NEWS @@ -1766,12 +1766,20 @@ changes in sbcl-0.8.0 relative to sbcl-0.8alpha.0 not a COMPILER-ERROR (followed by some other strange error on choosing the CONTINUE restart). * bug fix: make.sh and friends are now more consistent in the way that - they for GNU "make". + they look for GNU "make". changes in sbcl-0.8.1 relative to sbcl-0.8.0: * minor incompatible change: some nonsensical specialized lambda lists (used in DEFMETHOD) which were previously ignored now signal errors. + * minor incompatible change: the system is now aware of the types of + variables in the COMMON-LISP package, and will signal errors for + most violations of these type constraints (where previously they + were silently accepted). + * minor incompatible change: COMPILE-FILE now uses the freedom + afforded (ANSI 3.2.2.3) to use derived function types for + functions defined in the same file. This also permits the system + to warn on static type mismatches and function redefinition. * changes in type checking closed the following bugs: ** type checking of unused values (192b, 194d, 203); ** template selection based on unsafe type assertions (192c, 236); @@ -1783,10 +1791,54 @@ changes in sbcl-0.8.1 relative to sbcl-0.8.0: * STREAM-READ-SEQUENCE and STREAM-WRITE-SEQUENCE now have methods defined on the relevant FUNDAMENTAL-BINARY-{INPUT,OUTPUT}-STREAM classes. (thanks to Antonio Martinez) + * improved ANSIness in DESCRIBE: The DESCRIBE function no longer + outputs FRESH-LINE or TERPRI, and no longer converts its stream + argument to a pretty-print stream. Instead, it leaves any such + operations to DESCRIBE-OBJECT methods. + * bug fix: APROPOS now respects the EXTERNAL-ONLY flag. (reported + by Teemu Kalvas) + * bug fix: NIL is now a valid destructuring argument in DEFMACRO + lambda lists. (thanks to David Lichteblau) + * bug fix: defining a generic function with a :METHOD-CLASS being a + subclass of STANDARD-METHOD no longer causes stack exhaustion. + (thanks to Gerd Moellmann) + * increased compilation speed of long MULTIPLE-VALUES-BIND. + * a contributed module implementing COMPILER-LET and MACROEXPAND-ALL + has been included. + * DEFCONSTANT now throws a condition of type + SB-EXT:DEFCONSTANT-UNEQL if it is being asked to redefine a + constant to a non-EQL value; CONTINUE and ABORT restarts + respectively change and preserve the value. + * fixed bug 63: the code walker, part of the implementation of CLOS, + is better at handling symbol macros. + * bug fix: there is no longer a type named LENGTH. (reported by + Raymond Toy) * fixed some bugs revealed by Paul Dietz' test suite: ** NIL is now allowed as a structure slot name. ** arbitrary numbers, not just reals, are allowed in certain circumstances in LOOP for-as-arithmetic clauses. + ** multiple class redefinitions before slot access no longer + causes a type error. + ** (SETF FIND-CLASS) now accepts NIL as an argument to remove the + association between the name and a class. + ** generic functions with non-standard method-combination and over + six methods all of which return constants no longer return NIL + after the first few invocations. (thanks to Gerd Moellmann) + ** CALL-NEXT-METHOD with no arguments now passes the original + values of the arguments, even in the presence of assignment. + ** functions [N]SUBST*, LAST, NRECONC, [N]SUBLIS may return any + object. + ** DISASSEMBLE works with closures and funcallable instances. + ** ADD-METHOD now returns the generic function, not the new + method. + ** FIND-METHOD signals an error if the lengths of the specializers + is incompatible with the generic function, even if the ERRORP + argument is true. + ** TYPE-OF returns recognizeable subtypes of all built-in-types of + which its argument is a member. + ** DEFCLASS only redefines the class named by its class-name + argument if that name is the proper name of the class; + otherwise, it creates a new class. planned incompatible changes in 0.8.x: * (not done yet, but planned:) When the profiling interface settles