Merge branch 'feature/native-comp' into into trunk

This commit is contained in:
Andrea Corallo 2021-04-25 20:06:22 +02:00
commit 289000eee7
77 changed files with 15419 additions and 255 deletions

View file

@ -1870,6 +1870,8 @@ ARGLIST can also be t or a string of the form \"(FUN ARG1 ARG2 ...)\"."
(error "Unrecognized usage format"))
(help--make-usage-docstring 'fn arglist)))))
(declare-function subr-native-lambda-list "data.c")
(defun help-function-arglist (def &optional preserve-names)
"Return a formal argument list for the function DEF.
If PRESERVE-NAMES is non-nil, return a formal arglist that uses
@ -1885,6 +1887,10 @@ 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))
((and (featurep 'nativecomp)
(subrp def)
(listp (subr-native-lambda-list 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