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.
+ functions defined in the same file. This also permits the system
+ to warn on static type mismatches and function
+ redefinition. (Currently it does not work with high DEBUG level.)
* 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);
** type checking in branches (194bc).
* VALUES declaration is disabled.
- * a short form of VALUES type specifier has ANSI meaning.
+ * a short form of VALUES type specifier has ANSI meaning (it has
+ increased the number of situations when SBCL cannot perform type
+ checking).
* fixed bug in DEFSTRUCT: once again, naming structure slots with
keywords or constants is permissible.
* STREAM-READ-SEQUENCE and STREAM-WRITE-SEQUENCE now have methods
* 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.
+ * fixed bug 246: increased compilation speed of long
+ MULTIPLE-VALUE-BIND (and likewise of NTH-VALUE with a constant
+ integer argument).
* a contributed module implementing COMPILER-LET and MACROEXPAND-ALL
has been included.
* DEFCONSTANT now throws a condition of type
Raymond Toy)
* bug fix: in macro-like defining macros/special operators the
implicit block does not enclose lambda list.
+ * fixed bugs 10 and 43: VALUES, AND, OR and MEMBER are not suitable as
+ atomic type specifiers, and their use properly signals an error now.
+ * bug fix: an argument count mismatch for a type specifier in code
+ being compiled no longer causes an unhandled error at compile
+ time, but signals a compile-time warning.
+ * fixed simple vector readable printing.
+ * bug fix: DESCRIBE takes more care over whether the class
+ precedence list slot of a class is bound before accessing it.
+ (reported by Markus Krummenacker)
+ * bug fix: FORMATTER can successfully compile pretty-printer format
+ strings which use variants of the ~* directive inside.
+ * bug fix: SEARCH now applies its TEST predicate to the elements of
+ the arguments in the correct order. (thanks to Wolfhard Buss)
* 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
** (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
+ five 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.
** 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.
+ ** SLOT-UNBOUND now correctly initalizes the CELL-ERROR-NAME slot
+ of the UNBOUND-SLOT condition to the name of the slot.
planned incompatible changes in 0.8.x:
* (not done yet, but planned:) When the profiling interface settles