From d895f6c12f474476321322ed08e7c768be006287 Mon Sep 17 00:00:00 2001 From: Gemini Lasswell Date: Tue, 2 May 2017 10:19:12 +0300 Subject: [PATCH] Fix Edebug specs for 'cl-defmethod' and 'defmethod' * lisp/emacs-lisp/cl-generic.el (cl-defmethod): Change Edebug spec to make Edebug generate a new symbol for each method (Bug#24753) and to support a string following :extra (Bug#23995). * lisp/emacs-lisp/eieio-compat.el (defmethod): Change Edebug spec to make Edebug generate a new symbol for each method (Bug#24753). --- lisp/emacs-lisp/cl-generic.el | 7 ++++--- lisp/emacs-lisp/eieio-compat.el | 4 ++-- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/lisp/emacs-lisp/cl-generic.el b/lisp/emacs-lisp/cl-generic.el index e15c94242fb..107d520b1e9 100644 --- a/lisp/emacs-lisp/cl-generic.el +++ b/lisp/emacs-lisp/cl-generic.el @@ -413,10 +413,11 @@ The set of acceptable TYPEs (also called \"specializers\") is defined (declare (doc-string 3) (indent 2) (debug (&define ; this means we are defining something - [&or name ("setf" :name setf name)] + [&or symbolp ("setf" symbolp)] ;; ^^ This is the methods symbol - [ &optional keywordp ] ; this is key :before etc - list ; arguments + [ &optional keywordp ; this is key :before etc + &optional stringp ] ; :extra can be followed by a string + listp ; arguments [ &optional stringp ] ; documentation string def-body))) ; part to be debugged (let ((qualifiers nil)) diff --git a/lisp/emacs-lisp/eieio-compat.el b/lisp/emacs-lisp/eieio-compat.el index d6eb0b416f8..fe65ae02623 100644 --- a/lisp/emacs-lisp/eieio-compat.el +++ b/lisp/emacs-lisp/eieio-compat.el @@ -105,10 +105,10 @@ Summary: (declare (doc-string 3) (obsolete cl-defmethod "25.1") (debug (&define ; this means we are defining something - [&or name ("setf" :name setf name)] + [&or symbolp ("setf" symbolp)] ;; ^^ This is the methods symbol [ &optional symbolp ] ; this is key :before etc - list ; arguments + listp ; arguments [ &optional stringp ] ; documentation string def-body ; part to be debugged ))) -- 2.39.5