[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
master a325584: Improve Edebug symbols for inlined secondary methods (Bu
From: |
Philipp Stephani |
Subject: |
master a325584: Improve Edebug symbols for inlined secondary methods (Bug#42671) |
Date: |
Sun, 2 Aug 2020 16:08:33 -0400 (EDT) |
branch: master
commit a325584281c4d8552917fcb97caed449acb7ee65
Author: Philipp Stephani <phst@google.com>
Commit: Philipp Stephani <phst@google.com>
Improve Edebug symbols for inlined secondary methods (Bug#42671)
* lisp/emacs-lisp/cl-generic.el (cl-defgeneric): Include qualifiers in
Edebug symbol name.
* test/lisp/emacs-lisp/cl-generic-tests.el
(cl-defgeneric/edebug/method): Adapt unit test.
---
lisp/emacs-lisp/cl-generic.el | 2 +-
test/lisp/emacs-lisp/cl-generic-tests.el | 28 +++++++++++++++-------------
2 files changed, 16 insertions(+), 14 deletions(-)
diff --git a/lisp/emacs-lisp/cl-generic.el b/lisp/emacs-lisp/cl-generic.el
index 640eb6b..02da07d 100644
--- a/lisp/emacs-lisp/cl-generic.el
+++ b/lisp/emacs-lisp/cl-generic.el
@@ -220,7 +220,7 @@ DEFAULT-BODY, if present, is used as the body of a default
method.
;; requires larger changes to
;; Edebug.
:unique "cl-generic-:method@"
- [&rest atom]
+ [&rest cl-generic-method-qualifier]
cl-generic-method-args lambda-doc
def-body)]]
def-body)))
diff --git a/test/lisp/emacs-lisp/cl-generic-tests.el
b/test/lisp/emacs-lisp/cl-generic-tests.el
index fc39e34..5aa5878 100644
--- a/test/lisp/emacs-lisp/cl-generic-tests.el
+++ b/test/lisp/emacs-lisp/cl-generic-tests.el
@@ -256,7 +256,8 @@ Edebug symbols (Bug#42672)."
(with-temp-buffer
(dolist (form '((cl-defgeneric cl-defgeneric/edebug/method/1 (_)
(:method ((_ number)) 1)
- (:method ((_ string)) 2))
+ (:method ((_ string)) 2)
+ (:method :around ((_ number)) 3))
(cl-defgeneric cl-defgeneric/edebug/method/2 (_)
(:method ((_ number)) 3))))
(print form (current-buffer)))
@@ -272,18 +273,19 @@ Edebug symbols (Bug#42672)."
;; Make generated symbols reproducible.
(gensym-counter 10000))
(eval-buffer)
- (should (equal (reverse instrumented-names)
- ;; The generic function definitions come after
- ;; the method definitions because their body ends
- ;; later.
- ;; FIXME: We'd rather have names such as
- ;; `cl-defgeneric/edebug/method/1 ((_ number))',
- ;; but that requires further changes to Edebug.
- (list (intern "cl-generic-:method@10000 ((_ number))")
- (intern "cl-generic-:method@10001 ((_ string))")
- 'cl-defgeneric/edebug/method/1
- (intern "cl-generic-:method@10002 ((_ number))")
- 'cl-defgeneric/edebug/method/2))))))
+ (should (equal
+ (reverse instrumented-names)
+ ;; The generic function definitions come after the
+ ;; method definitions because their body ends later.
+ ;; FIXME: We'd rather have names such as
+ ;; `cl-defgeneric/edebug/method/1 ((_ number))', but
+ ;; that requires further changes to Edebug.
+ (list (intern "cl-generic-:method@10000 ((_ number))")
+ (intern "cl-generic-:method@10001 ((_ string))")
+ (intern "cl-generic-:method@10002 :around ((_ number))")
+ 'cl-defgeneric/edebug/method/1
+ (intern "cl-generic-:method@10003 ((_ number))")
+ 'cl-defgeneric/edebug/method/2))))))
(provide 'cl-generic-tests)
;;; cl-generic-tests.el ends here
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- master a325584: Improve Edebug symbols for inlined secondary methods (Bug#42671),
Philipp Stephani <=