From 651d4345926ca821f98f771a756e0e3000e957a1 Mon Sep 17 00:00:00 2001 From: Christophe Rhodes Date: Sun, 23 Mar 2003 17:25:06 +0000 Subject: [PATCH] 0.7.13.pcl-class.8 Let CLASS objects be dumpable ... MAKE-LOAD-FORM method from Gerd Moellmann --- TODO.pcl-class | 13 ------------- src/pcl/defs.lisp | 10 ++++++++++ version.lisp-expr | 2 +- 3 files changed, 11 insertions(+), 14 deletions(-) diff --git a/TODO.pcl-class b/TODO.pcl-class index c196c1c..92b5fb6 100644 --- a/TODO.pcl-class +++ b/TODO.pcl-class @@ -3,19 +3,6 @@ [ fixed the (CLASS-PROTOTYPE (FIND-CLASS 'NULL)) issue; more general fix for other built-in-classes can be done in mainline post-merge ] -** SB-MOP - -Now that a CL:CLASS is a real CLOS class, it might be worth giving -SB-PCL the SB-MOP nickname, since it now is in the region of -conforming to AMOP. - -** LEGAL-CLASS-NAME-P - -NIL is probably not a legal class name. Hmm, except that - (FIND-CLASS NIL NIL) -still probably doesn't want to be an error (ASDF executes this -internally, for a start). - ** DOCUMENTATION/DESCRIBE-OBJECT Can be done post-merge, but some of these methods talk about diff --git a/src/pcl/defs.lisp b/src/pcl/defs.lisp index 9b4bb43..515a222 100644 --- a/src/pcl/defs.lisp +++ b/src/pcl/defs.lisp @@ -518,6 +518,16 @@ :initform nil :reader class-predicate-name))) +(def!method make-load-form ((class class) &optional env) + ;; FIXME: should we not instead pass ENV to FIND-CLASS? Probably + ;; doesn't matter while all our environments are the same... + (declare (ignore env)) + (let ((name (class-name class))) + (unless (and name (eq (find-class name nil) class)) + (error "~@" + class)) + `(find-class ',name))) + ;;; The class PCL-CLASS is an implementation-specific common ;;; superclass of all specified subclasses of the class CLASS. (defclass pcl-class (class) diff --git a/version.lisp-expr b/version.lisp-expr index 1761dd7..384d694 100644 --- a/version.lisp-expr +++ b/version.lisp-expr @@ -18,4 +18,4 @@ ;;; versions, especially for internal versions off the main CVS ;;; branch, it gets hairier, e.g. "0.pre7.14.flaky4.13".) -"0.7.13.pcl-class.7" +"0.7.13.pcl-class.8" -- 1.7.10.4