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
* compiler no longer signals WARNING on unknown keyword
:ALLOW-OTHER-KEYS
+changes in sbcl-0.7.10 relative to sbcl-0.7.9:
+ * Support for building SBCL for MIPS platforms running in
+ little-endian mode has now been checked in, and basic
+ functionality on said platforms verified.
+ * minor incompatible change: PCL now records the pathname of a file
+ in which methods and the like are defined, rather than its
+ truename.
+ * minor incompatible change: TRUENAME now considers the truename of
+ a file naming a directory to be the pathname with :DIRECTORY
+ component indicating that directory.
+ * minor incompatible change: a NAMED clause in the extended form of
+ LOOP no longer causes a BLOCK named NIL to surround the LOOP. The
+ reason for the previous behaviour is unclear.
+ * more systematization and improvement of CLOS and MOP conformance
+ in PCL (thanks to Gerd Moellman and Pierre Mai):
+ ** the standard ANSI CL generic function NO-NEXT-METHOD is now
+ implemented;
+ ** DEFINE-METHOD-COMBINATION no longer signals an error for
+ primary methods with no specializers;
+ ** the MOP generic function GENERIC-FUNCTION-DECLARATIONS is now
+ implemented;
+ ** the Readers for Class Metaobjects methods CLASS-DIRECT-SLOTS
+ and CLASS-DIRECT-DEFAULT-INITARGS have been implemented for
+ FORWARD-REFERENCED-CLASSes; error reporting on
+ CLASS-DEFAULT-INITARGS, CLASS-PRECEDENCE-LIST and CLASS-SLOTS
+ has been improved;
+ ** SXHASH on CLOS instances now uses a slot internal to the
+ instance to return different numbers on distinct instances,
+ while preserving the same return value through invocations of
+ CHANGE-CLASS;
+ ** DEFMETHOD signals errors when methods with longer incongruent
+ lambda lists are added to generic functions;
+ ** COMPUTE-CLASS-PRECEDENCE-LIST now has a method specialized on
+ CLASS, as specified in AMOP;
+ ** COMPUTE-SLOTS :AROUND now assigns locations sequentially based
+ on the order returned by the primary method for classes of
+ class STANDARD-CLASS;
+ ** DEFINE-METHOD-COMBINATION now works with the :ARGUMENTS option.
+ * fixed some bugs shown by Paul Dietz' test suite:
+ ** DOLIST puts its body in TAGBODY;
+ ** SET-EXCLUSIVE-OR sends arguments to :TEST function in the
+ correct order;
+ ** MULTIPLE-VALUE-SETQ evaluates side-effectful places before
+ value producing form;
+ ** if more variables are given to PROGV than values, extra
+ variables are bound and made to have no value;
+ ** NSUBSTITUTE on list arguments gets the right answer with
+ :FROM-END;
+ ** ELT signals an error of type TYPE-ERROR when the index argument
+ is not a valid sequence index;
+ ** LOOP signals (at macroexpansion time) an error of type
+ PROGRAM-ERROR when duplicate variable names are found;
+ ** LOOP supports DOWNTO and ABOVE properly; (thanks to Matthew Danish)
+ ** FUNCALL of special-operators now cause an error of type
+ UNDEFINED-FUNCTION;
+ ** PSETQ now works as required in the presence of side-effecting
+ symbol-macro places;
+ ** NCONC accepts any object as its last argument;
+ ** :COUNT argument to sequence functions may be BIGNUM; (thanks to
+ Gerd Moellman)
+ ** loop-for-as-package does not require a package to be explicitely
+ specified;
+ ** LOOP WITH now treats NIL in the d-var-spec correctly as an
+ ignored binding.
+ * fixed bug 166: compiler preserves "there is a way to go"
+ invariant when deleting code.
+ * fixed bug 172: macro lambda lists with required arguments after
+ &REST arguments now cause an error to be signalled. (thanks to
+ Matthew Danish)
+ * fixed Entomotomy PEEK-CHAR-WRONGLY-ECHOS-TO-ECHO-STREAM
+ bug. (thanks to Matthew Danish)
+ * fixed bug 225: STRING-STREAM is now a class. (reported by Gilbert
+ Baumann)
+ * fixed bug 136: CALL-NEXT-METHOD no longer gets confused when
+ arguments are lexically rebound. (thanks to Gerd Moellmann and
+ Pierre Mai)
+ * fixed bug 194: error messages are now more informative when there
+ is no primary method applicable in a call to a generic
+ function. (thanks to Gerd Moellmann)
+ * fixed bug in command line argument checking (thanks to Julian
+ Fondren)
+ * fixed bug in COUNT-IF, making it handle :FROM-END correctly
+ (thanks to Matthew Danish)
+ * incremented fasl file version number, because of the
+ SXHASH-related changes in the layout of CLOS data structures
+
+changes in sbcl-0.7.11 relative to sbcl-0.7.10:
+ * fixed bug 127: DEFSTRUCT now does not clobber old structure
+ accessors that are related by inheritance, as specified in the
+ :CONC-NAME section of the specification of DEFSTRUCT. (thanks to
+ Valtteri Vuorikoski)
+ * The compiler is now able to inline functions that were defined in
+ a complex lexical environment (e.g. inside a MACROLET).
+ * fixed bug in DESCRIBE, which now works on rank-0 arrays. (thanks
+ to Lutz Euler)
+ * Support for the upcoming FreeBSD-5.0 release has been included.
+ (thanks to Dag-Erling Smorgrav)
+ * fixed bug 219: DEFINE-COMPILER-MACRO no longer has compile-time
+ effect when it is not in a toplevel context.
+ * fixed bug 222: DEFMETHOD and SYMBOL-MACROLET interactions now
+ stand a better chance of being correct. (thanks to Gerd
+ Moellmann)
+ * fixed bug in COERCE, which now signals an error on coercing a
+ rational to a bounded real type which excludes the expected
+ answer.
+ * The compiler is now able to derive types more accurately from the
+ COERCE and COMPILE functions.
+ * fixed bug 223: functional binding is considered to be constant
+ only for symbols in the CL package.
+ * fixed bug 231: SETQ did not check the type of a variable being set
+ (reported by Robert E. Brown)
+ * A new optimization for MAKE-INSTANCE has been included, fixing
+ various bugs (including relating to :ALLOCATION :CLASS slots and
+ :DEFAULT-INITARGS over-eager evalueation). (thanks to Gerd
+ Moellmann)
+ * fixed some LOOP bugs revealed by Paul Dietz' test suite:
+ ** As required by ANSI, LOOP now disallows anonymous collection
+ clauses such as COLLECT I in conjunction with aggregate boolean
+ clauses such as THEREIS (= I 1);
+ ** LOOP now signals an error when any variable is reused in the
+ same loop (including the potentially useful construct analogous
+ to WITH A = 1 WITH A = (1+ A);
+ ** IT is only a special loop symbol within the first clause of a
+ conditional loop clause;
+ ** LOOP with a typed iteration variable over a hashtable now
+ signals a type error iff it should.
+ * fixed some other bugs revealed by Paul Dietz' test suite:
+ ** FILE-STREAM now names the class previously known as FD-STREAM;
+ ** in DEFSTRUCT, a bare :CONC-NAME (or a :CONC-NAME with no
+ argument) no longer signals an error;
+ ** likewise in DEFSTRUCT, :CONC-NAME NIL now respects the package
+ of the slot symbol, rather than using the current package
+ ((:CONC-NAME "") continues to intern the slot's name in the
+ current package);
+ * incremented fasl file version number, because of the incompatible
+ change to the DEFSTRUCT-DESCRIPTION structure, and again because
+ of the new implementation of DEFINE-COMPILER-MACRO.
+
+changes in sbcl-0.7.12 relative to sbcl-0.7.11:
+ * fixed bug 62: constraints were not propagated into a loop.
+
planned incompatible changes in 0.7.x:
-* When the profiling interface settles down, maybe in 0.7.x, maybe
- later, it might impact TRACE. They both encapsulate functions, and
- it's not clear yet how e.g. UNPROFILE will interact with TRACE
- and UNTRACE. (This shouldn't matter, though, unless you are
- using profiling. If you never profile anything, TRACE should
- continue to behave as before.)
-* Inlining can now be controlled the ANSI way, without
- MAYBE-INLINE, since the idiom
+ * (not done yet, but planned:) When the profiling interface settles
+ down, maybe in 0.7.x, maybe later, it might impact TRACE. They both
+ encapsulate functions, and it's not clear yet how e.g. UNPROFILE
+ will interact with TRACE
+ and UNTRACE. (This shouldn't matter, though, unless you are
+ using profiling. If you never profile anything, TRACE should
+ continue to behave as before.)
+ * (not done yet, but planned:) Inlining can now be controlled the
+ ANSI way, without MAYBE-INLINE, since the idiom
(DECLAIM (INLINE FOO))
(DEFUN FOO (..) ..)
(DECLAIM (NOTINLINE FOO))
(DEFUN BAR (..) (FOO ..))
(DEFUN BLETCH (..) (DECLARE (INLINE FOO)) (FOO ..))
- now does what ANSI says it should. The CMU-CL-style
- SB-EXT:MAYBE-INLINE declaration is now deprecated and ignored.
+ now does what ANSI says it should. The CMU-CL-style
+ SB-EXT:MAYBE-INLINE declaration is now deprecated and ignored.