summaryrefslogtreecommitdiff
path: root/lisp/emacs-lisp/bytecomp.el
diff options
context:
space:
mode:
authorEli Zaretskii <eliz@gnu.org>2019-06-07 22:06:01 +0300
committerEli Zaretskii <eliz@gnu.org>2019-06-07 22:06:01 +0300
commit77f96e2cc1da30730f79d5935eaf5d23e53f37ad (patch)
tree3def25baacae463f3e48d7b233f26a44a71aef1d /lisp/emacs-lisp/bytecomp.el
parentdec525017013b448f23eb645b11068862c1038d6 (diff)
parent9f4c945b5cfb2e26a65ca10453591536c8fb0ff4 (diff)
downloademacs-77f96e2cc1da30730f79d5935eaf5d23e53f37ad.tar.gz
Merge branch 'master' of git.savannah.gnu.org:/srv/git/emacs
Diffstat (limited to 'lisp/emacs-lisp/bytecomp.el')
-rw-r--r--lisp/emacs-lisp/bytecomp.el4
1 files changed, 3 insertions, 1 deletions
diff --git a/lisp/emacs-lisp/bytecomp.el b/lisp/emacs-lisp/bytecomp.el
index dfbda8d43e3..38cce14fd62 100644
--- a/lisp/emacs-lisp/bytecomp.el
+++ b/lisp/emacs-lisp/bytecomp.el
@@ -1401,7 +1401,9 @@ when printing the error message."
(defun byte-compile-callargs-warn (form)
(let* ((def (or (byte-compile-fdefinition (car form) nil)
(byte-compile-fdefinition (car form) t)))
- (sig (byte-compile--function-signature (or def (car form))))
+ (sig (cond (def (byte-compile--function-signature def))
+ ((subrp (symbol-function (car form)))
+ (subr-arity (symbol-function (car form))))))
(ncall (length (cdr form))))
;; Check many or unevalled from subr-arity.
(if (and (cdr-safe sig)