I think you want the following (at least it works for me):

Index: src/clos/generic.lsp
===================================================================
RCS file: /cvsroot/ecls/ecl/src/clos/generic.lsp,v
retrieving revision 1.22
diff -r1.22 generic.lsp
199c199
<   (when (and method-class-p (symbolp generic-function-class))
---
>   (when (symbolp generic-function-class)
208,209c208,210
<   (unless (classp method-class)
<     (setf args (list* :method-class (find-class method-class) args)))
---
>   (when method-class-p
>     (unless (classp method-class)
>       (setf args (list* :method-class (find-class method-class) args))))
225c226
<   (when (and method-class-p (symbolp generic-function-class))
---
>   (when (and method-class-p (symbolp method-class))


Pascal

On 30 Nov 2009, at 00:03, Pascal Costanza wrote:


On 29 Nov 2009, at 23:13, Juan Jose Garcia-Ripoll wrote:

2009/11/28 Pascal Costanza <pc@p-cos.net>
Another CLOS bug: The defaulting of the method-class in the ensure-generic-function-using-class methods is incorrect. AMOP says that if the user doesn't provide a default value here, ensure-generic-function-using-class shouldn't do anything here either. However, in the current version of ECL, it defaults to standard-method.

Fixed in CVS.

OK, thanks a lot for the fast recent bug fixes. I'm trying to test them, but unfortunately I now get a different bug.

See the following transcript:

> (use-package :clos)

T
> (defclass my-gf (standard-generic-function)
    ()
    (:metaclass funcallable-standard-class))

#<The FUNCALLABLE-STANDARD-CLASS MY-GF>
> (defgeneric foo (x y z)
    (:generic-function-class my-gf))

#<MY-GF FOO>
> (defgeneric foo (x y z)
    (:generic-function-class my-gf))

MY-GF is not of type SI:INSTANCE.

Available restarts:

1. (RESTART-TOPLEVEL) Go back to Top-Level REPL.

Broken at SI:BYTECODES. [Evaluation of: (DEFGENERIC FOO (X Y Z) (:GENERIC-FUNCTION-CLASS MY-GF))] In: #<process SI:TOP-LEVEL 00000001005c0f60>.


Since in my test suites, generic functions get redefined a lot, it is hard for me to proceed...


Best,
Pascal

-- 
Vrije Universiteit Brussel
Software Languages Lab
Pleinlaan 2, B-1050 Brussel, Belgium






------------------------------------------------------------------------------
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day
trial. Simplify your report design, integration and deployment - and focus on
what you do best, core application coding. Discover what's new with
Crystal Reports now.  http://p.sf.net/sfu/bobj-july_______________________________________________
Ecls-list mailing list
Ecls-list@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/ecls-list

-- 
Vrije Universiteit Brussel
Software Languages Lab
Pleinlaan 2, B-1050 Brussel, Belgium