summaryrefslogtreecommitdiff
path: root/lisp/help-fns.el
diff options
context:
space:
mode:
authorStefan Monnier <monnier@iro.umontreal.ca>2022-10-16 12:01:47 -0400
committerStefan Monnier <monnier@iro.umontreal.ca>2022-10-16 12:01:47 -0400
commit13d6e8fa54843b0b087e5a9c266e4b7e0d709c3f (patch)
tree1c09984f5d78c711416d7748bf83051789a0ac00 /lisp/help-fns.el
parent0e5fc2345d8ec72fd8f7ad51ce1e42040e0e91da (diff)
downloademacs-13d6e8fa54843b0b087e5a9c266e4b7e0d709c3f.tar.gz
cl-generic: Fix `advertised-calling-convention` declarations
* lisp/emacs-lisp/cl-generic.el (cl-generic-define-method): Preserve the `advertised-calling-convention`, if any (bug#58563). * lisp/subr.el (declare): Warn when we hit this. * lisp/emacs-lisp/byte-run.el (get-advertised-calling-convention): New fun. * lisp/progmodes/elisp-mode.el (elisp-get-fnsym-args-string): * lisp/help-fns.el (help-fns--signature): * lisp/emacs-lisp/bytecomp.el (byte-compile-fdefinition): Use it. * test/lisp/emacs-lisp/cl-generic-tests.el (cl-generic-tests--acc): New fun. (cl-generic-tests--advertised-calling-convention-bug58563): New test.
Diffstat (limited to 'lisp/help-fns.el')
-rw-r--r--lisp/help-fns.el2
1 files changed, 1 insertions, 1 deletions
diff --git a/lisp/help-fns.el b/lisp/help-fns.el
index eef895ae88b..e29f763dabc 100644
--- a/lisp/help-fns.el
+++ b/lisp/help-fns.el
@@ -669,7 +669,7 @@ the C sources, too."
"Insert usage at point and return docstring. With highlighting."
(if (keymapp function)
doc ; If definition is a keymap, skip arglist note.
- (let* ((advertised (gethash real-def advertised-signature-table t))
+ (let* ((advertised (get-advertised-calling-convention real-def))
(arglist (if (listp advertised)
advertised (help-function-arglist real-def)))
(usage (help-split-fundoc doc function)))