[Bese-devel] Re: call/cc multiple-value-call test

Marco Baringer mb at bese.it
Sat Mar 4 13:27:10 UTC 2006


Kilian Sprotte <ml13 at onlinehome.de> writes:

> Hi,
>
> I have added a test case to call-cc.lisp that passes on openmcl, but
> fails equally on sbcl and clisp:
>
> Failure Details:
> --------------------------------
> MULTIPLE-VALUE-CALL.2 []:
>       2 was not EQUAL to (1 2 3).
> --------------------------------
>
> It looks like this:
>
> (test multiple-value-call.2
>   (let ((cont (with-call/cc
> 		(multiple-value-bind (&rest args)
> 		    (let/cc k k)
> 		  args))))
>     (is (equal '(1 2 3) (kall cont 1 2 3)))))

multiple-value-bind does not take a destructuring-bind list, what
you're actually doing is bindng &rest to 1 and args to 2 and ignoring
3. this should _not_ pass, i'll investigate openmcl and see why it's
doing what it's doing.

-- 
-Marco
Ring the bells that still can ring.
Forget the perfect offering.
There is a crack in everything.
That's how the light gets in.
	-Leonard Cohen




More information about the bese-devel mailing list