aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGemini Lasswell2017-05-02 10:19:12 +0300
committerEli Zaretskii2017-05-02 10:19:12 +0300
commitd895f6c12f474476321322ed08e7c768be006287 (patch)
tree160833a5a2fb0479389112a998e7a7471e7eb8b3
parentb7c5af2bbda9f972b659389b061ef4c09bfba796 (diff)
downloademacs-d895f6c12f474476321322ed08e7c768be006287.tar.gz
emacs-d895f6c12f474476321322ed08e7c768be006287.zip
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).
-rw-r--r--lisp/emacs-lisp/cl-generic.el7
-rw-r--r--lisp/emacs-lisp/eieio-compat.el4
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
413 (declare (doc-string 3) (indent 2) 413 (declare (doc-string 3) (indent 2)
414 (debug 414 (debug
415 (&define ; this means we are defining something 415 (&define ; this means we are defining something
416 [&or name ("setf" :name setf name)] 416 [&or symbolp ("setf" symbolp)]
417 ;; ^^ This is the methods symbol 417 ;; ^^ This is the methods symbol
418 [ &optional keywordp ] ; this is key :before etc 418 [ &optional keywordp ; this is key :before etc
419 list ; arguments 419 &optional stringp ] ; :extra can be followed by a string
420 listp ; arguments
420 [ &optional stringp ] ; documentation string 421 [ &optional stringp ] ; documentation string
421 def-body))) ; part to be debugged 422 def-body))) ; part to be debugged
422 (let ((qualifiers nil)) 423 (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:
105 (declare (doc-string 3) (obsolete cl-defmethod "25.1") 105 (declare (doc-string 3) (obsolete cl-defmethod "25.1")
106 (debug 106 (debug
107 (&define ; this means we are defining something 107 (&define ; this means we are defining something
108 [&or name ("setf" :name setf name)] 108 [&or symbolp ("setf" symbolp)]
109 ;; ^^ This is the methods symbol 109 ;; ^^ This is the methods symbol
110 [ &optional symbolp ] ; this is key :before etc 110 [ &optional symbolp ] ; this is key :before etc
111 list ; arguments 111 listp ; arguments
112 [ &optional stringp ] ; documentation string 112 [ &optional stringp ] ; documentation string
113 def-body ; part to be debugged 113 def-body ; part to be debugged
114 ))) 114 )))