[armedbear-devel] Questions about r14452 (Fix cl-cont)
ehuels at gmail.com
Tue Apr 2 19:14:10 UTC 2013
On Tue, Apr 2, 2013 at 8:08 PM, Rudolf Schlatte <rudi at constantly.at> wrote:
> What makes me suspicious is the output of
> (describe (make-instance 'funcallable-standard-object))
> (describe (make-instance 'standard-generic-function))
> There's a layout called layoutFuncallableStandardClass, defined in
> StandardClass.java, which has NAME as first slot, but that's for class
> objects with metaclass funcallable-standard-class, not for instances of
> these classes. I'll think a bit in the next days and try to either resolve
> my doubts or come up with another fix for the problem. Maybe I'm simply
> confused; wouldn't be the first time. :)
Well, to some extent I can see your problem. Indeed there seem to be no
slots in the 'MOP:FUNCALLABLE-STANDARD-OBJECT class. The
layoutFuncallableStandardClass is what confused me, but that's indeed the
layout of the metaclass.
So, you're correct that the fix works by accident. The solution should be
to add a slot by the name 'MOP::NAME to the FUNCALLABLE-STANDARD-OBJECT.
That slot can contain the name of the object (ie function) for which the
item is defined. In that case, we should probably remove the direct slot
MOP::NAME on the standard generic function, since it's already defined on
the superclass if we decide to do that.
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the armedbear-devel