On Thu, 2005-01-13 at 01:16 +0100, Sverker Wiberg wrote:
> On Wed, 2005-01-12 at 22:51 +0000, Christophe Rhodes wrote:
> > Sverker Wiberg <[EMAIL PROTECTED]> writes:
> > 
> > > However, the above defclass doesn't work in CMUCL; as I get the error
> > >
> > >    Type-error in KERNEL::OBJECT-NOT-TYPE-ERROR-HANDLER:
> > >       :DYNAMIC is not of type (MEMBER :CLASS :INSTANCE)
> > >       [Condition of type TYPE-ERROR]
> > >
> > > which agrees with both the HyperSpec and CLtL2 in that the :allocation
> > > slot option is either :class or :instance.

[...]

> > Seriously, I think that how you did it is essentially how you're meant
> > to do it; that CLtS-conforming code requires :class or :instance
> > allocation doesn't mean that implementations purporting to conform to
> > (some of) the MOP can't allow you to use other allocation types.

[...]

> So, here goes: This is a bug in the MOP implementation of CMUCL
> 19a!

And here is a first patch to correct the bug, with test cases snarfed
from Steel Bank CL (thanks!). It fails at the dynamic-slot-subclass case
in tests/mop-2.impure-cload.lisp (when I do the defclass I get "Internal
error: In get-accessor-method-function."), so I disabled that case. This
should be fixed as well; but I won't do it today.

/Sverker



-- Binary/unsupported file stripped by Listar --
-- Type: text/x-patch
-- File: diff



Reply via email to