From ba3efd844fa999b14a09ca2747563dd939f40b0c Mon Sep 17 00:00:00 2001 From: Juan Jose Garcia Ripoll Date: Tue, 16 Feb 2010 21:52:07 +0100 Subject: [PATCH] Fixed the CALL-NEXT-METHOD closure. --- src/clos/method.lsp | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/src/clos/method.lsp b/src/clos/method.lsp index d5a6ee3a2..e9642199f 100644 --- a/src/clos/method.lsp +++ b/src/clos/method.lsp @@ -103,17 +103,16 @@ (when in-closure-p (setf plist '(:needs-next-method-p FUNCTION)) (setf real-body - `((let* ((.combined-method-args. - (locally (declare (special .combined-method-args.)) - (if (listp .combined-method-args.) - .combined-method-args. - (apply #'list .combined-method-args.)))) + `((let* ((.closed-combined-method-args. + (if (listp .combined-method-args.) + .combined-method-args. + (apply #'list .combined-method-args.))) (.next-methods. *next-methods*)) (flet ((call-next-method (&rest args) (unless .next-methods. (error "No next method")) (funcall (car .next-methods.) - (or args .combined-method-args.) + (or args .closed-combined-method-args.) (rest .next-methods.))) (next-method-p () .next-methods.))