Skip to content
Snippets Groups Projects
Commit 5f1fcac9 authored by rtoy's avatar rtoy
Browse files

From Gerd Moellman, cmucl-imp, 2005-05-15:

    This is another small fix for a problem Bruno reported:

    ;; 3.4.10 Define-method-combination Arguments Lambda Lists
    (progn
      (define-method-combination w-args ()
	((method-list *))
	(:arguments arg1 arg2 &aux (extra :extra))
	`(progn , <at> (mapcar #'(lambda (method) `(call-method ,method))
    method-list)))
      (defgeneric mc-test-w-args (p1 p2 s)
	(:method-combination w-args)
	(:method ((p1 number) (p2 t) s)
	  (vector-push-extend (list 'number p1 p2) s))
	(:method ((p1 string) (p2 t) s)
	  (vector-push-extend (list 'string p1 p2) s))
	(:method ((p1 t) (p2 t) s) (vector-push-extend (list t p1 p2) s)))
      (let ((s (make-array 10 :adjustable t :fill-pointer 0)))
	(mc-test-w-args 1 2 s)
	s))
    Expected: #((NUMBER 1 2) (T 1 2))
    Got:      ERROR: Lambda-variable is not a symbol: (EXTRA :EXTRA).
parent 15ae4620
No related branches found
No related tags found
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment