690 |
|
|
691 |
(x nil) (x c)) |
(x nil) (x c)) |
692 |
|
|
693 |
|
(defclass defgeneric.29.class.1 () ()) |
694 |
|
(defclass defgeneric.29.class.2 () ()) |
695 |
|
(defclass defgeneric.29.class.3 |
696 |
|
(defgeneric.29.class.1 defgeneric.29.class.2) |
697 |
|
()) |
698 |
|
|
699 |
|
(deftest defgeneric.29 |
700 |
|
(let ((fn |
701 |
|
(eval '(defgeneric defgeneric.fun.29 (x &key) |
702 |
|
(:method ((x defgeneric.29.class.1) &key foo) foo) |
703 |
|
(:method ((x defgeneric.29.class.2) &key bar) bar))))) |
704 |
|
(let ((x (make-instance 'defgeneric.29.class.3))) |
705 |
|
(values |
706 |
|
(funcall fn x) |
707 |
|
(funcall fn x :foo 'a) |
708 |
|
(funcall fn x :bar 'b) |
709 |
|
(funcall fn x :foo 'a :bar 'b) |
710 |
|
(funcall fn x :bar 'b :foo 'a)))) |
711 |
|
nil a nil a a) |
712 |
|
|
713 |
|
|