From: Christophe R. <cr...@us...> - 2003-05-19 10:51:37
|
Update of /cvsroot/sbcl/sbcl In directory sc8-pr-cvs1:/tmp/cvs-serv32414 Modified Files: version.lisp-expr NEWS package-data-list.lisp-expr Log Message: 0.8alpha.0.36: A little tender loving care, applied to conditions: ... make the implementation of DEFINE-CONDITION agree with the documentation string: allow :DOCUMENTATION slot options to work. ... ANSI (and pfdietz :-) wants SLOT-EXISTS-P to work on conditions; hook condition objects into CLOS enough to talk about existence of slots: (new classes CONDITION-{EFFECTIVE,DIRECT}-SLOT-DEFINITION, CONDITION-CLASS, etc) ... it's a bit ridiculous to have SLOT-EXISTS-P working on conditions, and then not be able to do SLOT-VALUE, so do the work necessary to make CONDITION objects more-or-less fully understood by PCL: (new methods on COMPUTE-SLOTS, ALLOCATE-INSTANCE, SLOT-VALUE-USING-CLASS and friends; new clauses in internal functions such as GET-OPTIMIZED-STD-SLOT-VALUE-USING-CLASS-METHOD-FUNCTION; adjustment of the braid to set up CLOS knowledge of the new class hierarchy). Index: version.lisp-expr =================================================================== RCS file: /cvsroot/sbcl/sbcl/version.lisp-expr,v retrieving revision 1.978 retrieving revision 1.979 diff -u -d -r1.978 -r1.979 --- version.lisp-expr 18 May 2003 15:49:11 -0000 1.978 +++ version.lisp-expr 19 May 2003 10:51:32 -0000 1.979 @@ -17,4 +17,4 @@ ;;; checkins which aren't released. (And occasionally for internal ;;; versions, especially for internal versions off the main CVS ;;; branch, it gets hairier, e.g. "0.pre7.14.flaky4.13".) -"0.8alpha.0.35" +"0.8alpha.0.36" Index: NEWS =================================================================== RCS file: /cvsroot/sbcl/sbcl/NEWS,v retrieving revision 1.305 retrieving revision 1.306 diff -u -d -r1.305 -r1.306 --- NEWS 18 May 2003 14:42:33 -0000 1.305 +++ NEWS 19 May 2003 10:51:33 -0000 1.306 @@ -1720,6 +1720,13 @@ no longer has any effect, as the code controlled by this feature has been deleted. (As far as we know, no-one has ever built using this feature, and its semantics were confused in any case). + * minor incompatible change: as a consequence of making + SLOT-EXISTS-P work on conditions (as required by the ANSI + specification), SLOT-VALUE, (SETF SLOT-VALUE) and SLOT-BOUNDP + likewise have the expected behaviour on conditions. Users should + note, however, that such behaviour is not required by the ANSI + specification, and so use of this behaviour may render their code + unportable. * SB-MOP:DIRECT-SLOT-DEFINITION-CLASS and SB-MOP:EFFECTIVE-SLOT-DEFINITION-CLASS now have the specified-by-AMOP lambda list of (CLASS &REST INITARGS). @@ -1742,6 +1749,8 @@ ** ALLOCATE-INSTANCE now works on structure classes defined via DEFSTRUCT (and not just by those from DEFCLASS :METACLASS STRUCTURE-CLASS). + ** SLOT-EXISTS-P now works on conditions, as well as structures + and CLOS instances. planned incompatible changes in 0.8.x: * (not done yet, but planned:) When the profiling interface settles Index: package-data-list.lisp-expr =================================================================== RCS file: /cvsroot/sbcl/sbcl/package-data-list.lisp-expr,v retrieving revision 1.217 retrieving revision 1.218 diff -u -d -r1.217 -r1.218 --- package-data-list.lisp-expr 8 May 2003 11:17:25 -0000 1.217 +++ package-data-list.lisp-expr 19 May 2003 10:51:33 -0000 1.218 @@ -1348,7 +1348,7 @@ "%FUNCALLABLE-INSTANCE-FUN" "SYMBOL-HASH" "BUILT-IN-CLASSOID" - "CONDITION-CLASSOID-P" + "CONDITION-CLASSOID-P" "CONDITION-CLASSOID-SLOTS" "MAKE-UNDEFINED-CLASSOID" "FIND-CLASSOID" "CLASSOID" "CLASSOID-DIRECT-SUPERCLASSES" "MAKE-LAYOUT" "REDEFINE-LAYOUT-WARNING" "SLOT-CLASSOID" @@ -1361,6 +1361,13 @@ "NAMESTRING-PARSE-ERROR" "NAMESTRING-PARSE-ERROR-OFFSET" "DESCRIBE-CONDITION" + "CONDITION-READER-FUNCTION" "CONDITION-WRITER-FUNCTION" + + "CONDITION-SLOT-ALLOCATION" "CONDITION-SLOT-DOCUMENTATION" + "CONDITION-SLOT-INITARGS" "CONDITION-SLOT-INITFORM" + "CONDITION-SLOT-INITFORM-P" "CONDITION-SLOT-NAME" + "CONDITION-SLOT-READERS" "CONDITION-SLOT-WRITERS" + "!COLD-INIT" "!UNINTERN-INIT-ONLY-STUFF" "!GLOBALDB-COLD-INIT" "!FDEFN-COLD-INIT" "!TYPE-CLASS-COLD-INIT" "!TYPEDEFS-COLD-INIT" |