X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;ds=sidebyside;f=NEWS;h=652184563b306e04bc565a6a67fc2018e55408be;hb=943f38e6232a69ab1bbcfb2c86801eea391f8ae1;hp=241d0013ece745656138bcf0679db64108d3e0cd;hpb=8fc5fda05f92d69c95b47e4ad7561d91dab18c3e;p=sbcl.git diff --git a/NEWS b/NEWS index 241d001..6521845 100644 --- a/NEWS +++ b/NEWS @@ -489,26 +489,130 @@ changes in sbcl-0.6.8 relative to sbcl-0.6.7: O(M*N*N) time when any of the sequence arguments were LISTs.) * The QUIT :UNIX-CODE keyword argument has been renamed to QUIT :UNIX-STATUS. (The old name still works, but is deprecated.) -* Raymond Wiker's port of CMU CL's RUN-PROGRAM has been added. - ?? What about the undefined symbols in run-program.lisp? - SB-UNIX:UNIX-DUP - SB-UNIX:UNIX-IOCTL - SB-UNIX:UNIX-PIPE -?? The debugger now flushes standard output streams before it begins +* Raymond Wiker's patches to port RUN-PROGRAM from CMU CL to SBCL + have been added. +* Raymond Wiker's patches to port dynamic loading from Linux to + FreeBSD have been added. +* The BUGS file is now more nearly up to date, thanks in large part + to Martin Atzmueller's review of it. +* The debugger now flushes standard output streams before it begins its output ("debugger invoked" and so forth). -?? FINISH-OUTPUT now works better than it did before. (It used to - have trouble with characters which weren't followed by a linefeed.) - ?? Remember to remove this from BUGS. -?? The patch for the SUBSEQ bug reported on the cmucl-imp mailing - list 12 September 2000 has been applied to SBCL. -?? Martin Atzmueller's versions of two CMU CL patches, as posted on - sbcl-devel 13 September 2000, have been installed. (The patches fix - a bug in SUBSEQ and .) -?? A bug in signal handling which kept TRACE from working on OpenBSD +* The core version number and fasl file version number have both + been incremented, because of incompatible changes in the layout + of static symbols. +* FINISH-OUTPUT is now called more consistently on QUIT. (It + used to not be called for a saved Lisp image.) +* Martin Atzmueller's version of a patch to fix a compiler crash, + as posted on sbcl-devel 13 September 2000, has been installed. +* Instead of installing Martin Atzmueller's patch for the + compiler transform for SUBSEQ, I deleted the compiler transform, + and transforms for some similar consing operations. +* A bug in signal handling which kept TRACE from working on OpenBSD has been fixed. - ?? Remember to remove this from the port-specific section of BUGS. -?? The signal handling bug reported by Martin Atzmueller on - sbcl-devel 13 September 2000, which caused the debugger to - get confused after a Ctrl-C interrupt under ILISP, has been fixed. -?? added enough DEFTRANSFORMs to allow (SXHASH 'FOO) to be optimized +* added enough DEFTRANSFORMs to allow (SXHASH 'FOO) to be optimized away by constant folding +* The system now defines its address space constants in one place + (in the Lisp sources), and propagates them automatically elsewhere + (through GENESIS and the sbcl.h file). Therefore, patching the + address map is less unnecessarily tedious and error-prone. The + Lisp names of address space constants have also been systematized. +* CVS tags like dollar-Header-dollar have been removed from + the sources, because they have never saved me trouble and + they've been source of trouble working with patches and other + diff-related operations. +* fixed the PROG1-vs.-PROGN bug in HANDLER-BIND (reported by + ole.rohne@cern.ch on cmucl-help@cons.org 2000-10-25) + +changes in sbcl-0.6.9 relative to sbcl-0.6.8: + +* DESCRIBE now works on CONDITION objects. +* The debugger now handles errors which arise when trying to print + *DEBUG-CONDITION*, so that it's less likely to fall into infinite + regress. +* The build system now uses an additional file, customize-target-features.lisp, + to allow local modifications to the target *FEATURES* list. (The point of + this is that now I can set up a custom configuration, e.g. with :SB-SHOW + debugging features enabled, without having to worry about propagating it + into everyone's system when I do a "cvs update".) When no + customize-target-features.lisp file exists, the target *FEATURES* list + should be constructed the same way as before. +* fixed bugs in DEFCONSTANT ANSI-compatibility: + ** DEFCONSTANT now tests reassignments using EQL, not EQUAL, in order to + warn about behavior which is undefined under the ANSI spec. Note: This + is specified by ANSI, but it's not very popular with programmers. + If it causes you problems, take a look at the new SB-INT:DEFCONSTANT-EQX + macro in the SBCL sources for an example of a workaround which you + might use to make portable ANSI-standard code which does what you want. + ** DEFCONSTANT's implementation is now based on EVAL-WHEN instead of on + pre-ANSI IR1 translation magic, so it does the ANSI-specified thing + when it's used as a non-toplevel form. (This is required in order + to implement the DEFCONSTANT-EQX macro.) + ** (DEFCONSTANT X 1) (DEFVAR X) (SETF X 2) no longer "works". + ** Unfortunately, non-toplevel DEFCONSTANT forms can still do some + funny things, due to bugs in the implementation of EVAL-WHEN + (bug #IR1-3). This probably won't be fixed until 0.7.x. (Fortunately, + non-toplevel DEFCONSTANTs are uncommon.) +* The core file version number and fasl file version number have been + incremented, because the old noncompliant DEFCONSTANT behavior involved + calling functions which no longer exist, and because I also took the + opportunity to chop an unsupported slot out of the DEBUG-SOURCE structure. +* fixed bug 1 (error handling before read-eval-print loop starts), and + redid debugger restarts and related debugger commands somewhat while + doing so: + ** The QUIT debugger command is gone, since it did something + rather different than the SB-EXT:QUIT command, and since it never + worked properly outside the main toplevel read/eval/print loop. + Invoking the new TOPLEVEL restart provides the same functionality. + ** The GO debugger command is also gone, since you can just invoke + the CONTINUE restart directly instead. + ** The TOP debugger command is also gone, since it's redundant with the + FRAME 0 command, and since it interfered with abbreviations for the + TOPLEVEL restart. +* The system now recovers better from non-PACKAGE values of the *PACKAGE* + variable. +* The system now understands compound CONS types (e.g. (CONS FIXNUM T)) + as required by ANSI. (thanks to Douglas Crosher's CMU CL patches, with + some porting work by Martin Atzmueller) +* Martin Atzmueller reviewed the CMU CL mailing lists and came back + with a boatload of patches which he ported to SBCL. Now that those + have been applied, + ** The system tries to make sure that its low-priority messages + are prefixed by semicolons, to help people who like to use + syntax highlighting in their ILISP buffer. (This patch + was originally due to Raymond Toy.) + ** The system now optimizes INTEGER-LENGTH better, thanks to more + patches originally written by Raymond Toy. + ** The compiler understands coercion between single-value and + multiple-VALUES type expressions better, getting rid of some very + weird behavior, thanks to patches originally by Robert MacLachlan + and Douglas Crosher. + ** The system understands ANSI-style non-KEYWORD &KEY arguments in + lambda lists, thanks to a patch originally by Pierre Mai. + ** The system no longer bogusly warns about "abbreviated type + declarations". + ** The compiler gets less confused by inlining and RETURN-FROM, + thanks to some patches originally by Tim Moore. + ** The system no longer hangs when dumping circular lists to fasl + files, thanks to a patch originally from Douglas Crosher. +* Martin Atzmueller also fixed ROOM, so that it no longer fails with an + undefined function error. +* gave up on fixing bug 3 (forbidden-by-ANSI warning for type mismatch + in structure slot initforms) for now, documented workaround instead:-| +* fixed bug 4 (no WARNING for DECLAIM FTYPE of slot accessor function) +* fixed bug 5: added stubs for various Gray stream functions called + in the not-a-CL:STREAM case, so that even when Gray streams aren't + installed, at least appropriate type errors are generated +* fixed bug 8: better reporting of various PROGRAM-ERRORs +* fixed bug 9: IGNORE and IGNORABLE now work reasonably and more + consistently in DEFMETHOD forms. +* removed bug 21 from BUGS, since Martin Atzmueller points out that + it doesn't seem to affect SBCL after all +* The C runtime system now builds with better optimization and many + fewer warnings, thanks to lots of cleanups by Martin Atzmueller. + +planned incompatible changes in 0.7.x: +* The debugger prompt sequence now goes "5]", "5[2]", "5[3]", etc. + as you get deeper into recursive calls to the debugger command loop, + instead of the old "5]", "5]]", "5]]]" sequence. (I was motivated + to do this when ILISP and SBCL got into arguments which left me + deeply nested in the debugger.)