[Openmcl-devel] (SETF FIND-CLASS)

Leslie P. Polzer sky at viridian-project.de
Wed May 6 04:55:24 PDT 2009


Gary Byers wrote:

> The primary method on (SETF CLASS-NAME) uses (SETF CCL::%CLASS-PROPER-NAME)
> to update the internal proper-name slot.  (It's defined around line 1700
> in "ccl/level-1/l1-clos.lisp".)  That method also worries about whether
> the name's status as a type specifier changes and whether that conflicts
> with type specifiers defined with DEFTYPE.

I'm not sure to what extent it influences the callers of
CCL::%CLASS-PROPER-NAME but its behavior does not match the
spec definition of a proper name:

? (defclass foo nil nil)
#<STANDARD-CLASS FOO>
? (defmethod class-name ((class (eql (find-class 'foo)))) 'zoo)
#<STANDARD-METHOD CLASS-NAME ((EQL #<STANDARD-CLASS ZOO>))>
? (ccl::%class-proper-name (find-class 'foo))
FOO

It should probably return NIL instead of FOO after the redefinition
of CLASS-NAME. With a grain of salt, of course -- it's an internal
function and thus is not directly affected by the spec.

  Leslie

-- 
http://www.linkedin.com/in/polzer




More information about the Openmcl-devel mailing list