summaryrefslogtreecommitdiff
path: root/lisp/help.el
diff options
context:
space:
mode:
authorAndrea Corallo <akrl@sdf.org>2020-08-31 22:06:49 +0200
committerAndrea Corallo <akrl@sdf.org>2020-08-31 22:36:58 +0200
commitc6f42387e32a4e99cd9ddd203ab51f3c5694054e (patch)
treeefa4bc89b6a8cbd12cacc997fef5e78a47a10913 /lisp/help.el
parentbce9cad4213f9af8be08311ac2b93add5c93a997 (diff)
downloademacs-c6f42387e32a4e99cd9ddd203ab51f3c5694054e.tar.gz
emacs-c6f42387e32a4e99cd9ddd203ab51f3c5694054e.tar.bz2
emacs-c6f42387e32a4e99cd9ddd203ab51f3c5694054e.zip
Fix describe function arglist for native compiled lisp/d (bug#42572)
* lisp/help.el (help-function-arglist): Handle the case of native compiled lisp/d. * src/data.c (syms_of_data): Register new subrs. (Fsubr_native_dyn_p, Fsubr_native_lambda_list): New primitives. * test/src/comp-tests.el (comp-tests-dynamic-help-arglist): New test.
Diffstat (limited to 'lisp/help.el')
-rw-r--r--lisp/help.el1
1 files changed, 1 insertions, 0 deletions
diff --git a/lisp/help.el b/lisp/help.el
index 1b0149616f2..01817ab95db 100644
--- a/lisp/help.el
+++ b/lisp/help.el
@@ -1337,6 +1337,7 @@ the same names as used in the original source code, when possible."
((and (byte-code-function-p def) (listp (aref def 0))) (aref def 0))
((eq (car-safe def) 'lambda) (nth 1 def))
((eq (car-safe def) 'closure) (nth 2 def))
+ ((subr-native-dyn-p def) (subr-native-lambda-list def))
((or (and (byte-code-function-p def) (integerp (aref def 0)))
(subrp def) (module-function-p def))
(or (when preserve-names