diff --git a/pcl/methods.lisp b/pcl/methods.lisp index c11ea010269f9d9b43338bd13977c2c6f0b661a4..53a26e2c495414709e5393c8496fb8637e5f6851 100644 --- a/pcl/methods.lisp +++ b/pcl/methods.lisp @@ -26,7 +26,7 @@ ;;; (file-comment - "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/pcl/methods.lisp,v 1.35 2003/05/28 08:50:39 gerd Exp $") + "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/pcl/methods.lisp,v 1.36 2003/06/04 08:47:03 gerd Exp $") (in-package :pcl) @@ -397,8 +397,11 @@ (defmethod find-method ((gf standard-generic-function) qualifiers specializers &optional (errorp t)) - (real-get-method gf qualifiers - (parse-specializers specializers) errorp)) + (let ((nreq (count-gf-required-parameters gf))) + (when (/= (length specializers) nreq) + (error "~@<The generic function ~s takes ~d required argument~p.~@:>" + gf nreq nreq)) + (real-get-method gf qualifiers (parse-specializers specializers) errorp))) ;;; ;;;