X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=NEWS;h=228ba4fff418da70b0128baa143fa368590b75bf;hb=0f861cd7a2e2be4c59edbfa4aa05b29ea5b67572;hp=29710b5fe5ba56f7f51c346e591496b1e3b20d84;hpb=add57c72c932fbf70c8ba8297154936c908b410e;p=sbcl.git diff --git a/NEWS b/NEWS index 29710b5..228ba4f 100644 --- a/NEWS +++ b/NEWS @@ -2398,11 +2398,35 @@ changes in sbcl-0.8.10 relative to sbcl-0.8.9: to Bruno Haible) changes in sbcl-0.8.11 relative to sbcl-0.8.10: + * minor incompatible change: the sb-grovel contrib now treats C + structures as alien (in the sense of SB-ALIEN) objects rather than + as undistinguished (simple-array (unsigned-byte 8) (*))s. This + has implications for memory management of client code + (sb-grovel-returned objects must now be manually managed) and for + type safety (alien objects now have full types). * new feature: the SB-EXT:MUFFLE-CONDITIONS declaration should be used to control emission of compiler diagnostics, rather than the SB-EXT:INHIBIT-WARNINGS OPTIMIZE quality. See the manual for documentation on this feature. The SB-EXT:INHIBIT-WARNINGS quality should be considered deprecated. + * install.sh now installs the user manual as well + * (not quite a new documentable feature, but worth considering in + the light of the new SB-EXT:MUFFLE-CONDITIONS declaration): the + beginnings of a semantically meaningful condition hierarchy is + under development, for use in SB-EXT:MUFFLE-CONDITIONS and by + IDEs. + * fixed bug: PARSE-NAMESTRING now accepts any valid pathaname + designator as the defaults argument. + * fixed bug: Displaced arrays whose displaced-to array has become + too small now cause ARRAY-DIMENSION to signal an error, providing + for safer bounds-checking. (reported by Bruno Haible) + * fixed bug: DEFCLASS slot definitions with identical :READER and + :WRITER names now signal a reasonable error. (reported by Thomas + Burdick) + * fixed bug: CLOSE :ABORT T on appending stream no longer causes + file deletion. + * fixed bug: Invalid slot specification errors now print correctly. + (thanks to Zach Beane) * fixed bug 320: Shared to local slot value transfers in class redefinitions now happen corrently from superclasses as well. (reported by Bruno Haible) @@ -2415,8 +2439,8 @@ changes in sbcl-0.8.11 relative to sbcl-0.8.10: (reported by Antonio Menezes Leitao) * fixed bug 307: The obsolete instance protocol ensures that subclasses are properly obsoleted. (thanks to Nikodemus Siivola) - * on X86 fixed bug 298, revealed by Paul F. Dietz' test suite: SBCL - can remove dead unknown-values globs from the middle of the stack. + * fixed bug 298, revealed by Paul F. Dietz' test suite: SBCL can + remove dead unknown-values globs from the middle of the stack. * added a new restart to *BREAK-ON-SIGNALS* handling to make it easier to resume long computations after using *BREAK-ON-SIGNALS* to diagnose and fix failures. (thanks to Nikodemus Siivola) @@ -2440,11 +2464,36 @@ changes in sbcl-0.8.11 relative to sbcl-0.8.10: * fixed bug: as reported by Peter Graves on #lisp IRC, passing a NIL in keyword position to MAKE-PACKAGE was not being reported as invalid. + * fixed bug: as reported by Juan Ripoll on cmucl-imp, + MULTIPLE-VALUE-BIND should be able to lexically bind lambda list + keywords. + * fixed bugs 280 and 312: the checking for multiple definitions in a + file is less likely to become confused by uses of inline + functions. + * fixed bug: the #S reader macro performs the keyword coercion + specified for slot names. (reported by Kalle Niemitalo) + * fixed bug: lambda lists may contain symbols whose names start with + & but are not lambda-list-keywords; their occurrence triggers a + STYLE-WARNING. + * fixed bug 321: define-method-combination argument lambda lists do + not cause invalid code to be generated when &optional or &aux + variables have default values. (reported by Bruno Haible) + * fixed bug 327: system subclasses of STRUCTURE-OBJECT or CONDITION + have CLOS classes; this appears also to have fixed reported + instability in stack exhaustion detection. + * fixed bug: the CONTROL-ERROR from ABORT, CONTINUE and + MUFFLE-WARNING when no associated restart is present is now + printable. * optimization: rearranged the expansion of various defining macros so that each expands into only one top-level form in a :LOAD-TOPLEVEL context; this appears to decrease fasl sizes by approximately 10%. + * optimization: used a previously little-used slot in symbols to + cache SXHASH values, yielding a 5-10% compiler speedup. (thanks + to Juho Snellman) * fixed some bugs revealed by Paul Dietz' test suite: + ** MAKE-INSTANCES-OBSOLETE returns the class name when called with + a symbol. ** Fixed an optimization bug related to inheritance of initforms from local to shared slots. ** FILE-POSITION works as specified on BROADCAST-STREAMs. @@ -2460,7 +2509,67 @@ changes in sbcl-0.8.11 relative to sbcl-0.8.10: it so. (thanks to Markus Ziegler) ** on the Alpha, the compiler succeeds in compiling functions returning a known number of arguments greater than 63. + ** fixed handling of invalid NIL arguments in keyword position + in local calls. + ** fixed non-pretty printing of arrays with *PRINT-RADIX* being + true. + ** provided a readably-printable representation for RANDOM-STATE + objects. + ** ensured that pathnames, where they have a namestring, always + print using #P"..." syntax. +changes in sbcl-0.8.12 relative to sbcl-0.8.11: + * minor incompatible change: the system no longer provides + optimization hints (conditions which are TYPEP + SB-EXT:COMPILER-NOTE) for conforming code in default compilation + mode; these hints are still emitted when higher SPEED optimization + is requested. + * new contrib module: a sampling profiler (profiling by statistical + sampling, rather than by instrumenting functions) is available as + the SB-SPROF contrib. (thanks to Gerd Moellmann and Juho Snellman) + * the behaviour of the standard function ED is now customizeable by + third parties through a hook variable: see ED's documentation + string for information on the protocol. + * the compiler no longer emits efficiency notes for (FUNCALL X) + when the type of X is uncertain under default optimization + settings. + * fixed bug 276: mutating a binding of a specialized parameter to a + method to something that is not TYPEP the specializer is now + possible. + * fixed bugs 45d and 118: DOUBLE-FLOAT[-NEGATIVE]-EPSILON now + exhibit the required behaviour on the x86 platform. (thanks to + Peter van Eynde, Eric Marsden and Bruno Haible) + * fixed bug 335: ATANH now computes the inverse hyperbolic tangent + even for difficult arguments. (reported by Peter Graves) + * fixed bug 141a: the backquote printer now descends quoted + structure. + * fixed another bug in backquote printing: no more destructive + modification of the form's list structure. (reported by Brian + Downing) + * fixed bug in INTERRUPT-THREAD: pin the function, so that it cannot + move between its address being taken and the call to + interrupt_thread, fixing a crashing race condition. + * the SB-POSIX contrib implementation has been adjusted so that it + no longer exhibits ridiculously poor performance when constructing + instances corresponding to C structs. + +changes in sbcl-0.8.13 relative to sbcl-0.8.12: + * minor incompatible change: as threatened around sbcl-0.8.0, the + home package of MOP-related symbols is now SB-MOP, not SB-PCL. + The symbols are also exported from SB-PCL for backwards + compatibility, but more so than before SB-PCL should be treated as + an implementation-internal package. + * new feature: SB-PACKAGE-LOCKS. See the fine manual for details, + add :SB-PACKAGE-LOCKS in customize-target-features.lisp to + enable them. + * the SB-SPROF contrib now works on (most) non-x86 architectures. + It is known as of this release not to work on the Alpha, however. + * fixed bug #333: CHECK-TYPE now ensures that the type error + signalled, if any, has the right object to be accessed by + TYPE-ERROR-DATUM. (reported by Tony Martinez) + * fixed a bug: #\Space (and other whitespace characters) are no + longer considered to be macro characters in standard syntax by + GET-MACRO-CHARACTER. planned incompatible changes in 0.8.x: * (not done yet, but planned:) When the profiling interface settles