From 616317ff1d368f008517ce7c793aacb871a106dc Mon Sep 17 00:00:00 2001 From: Andrea Corallo Date: Tue, 14 May 2024 09:58:42 +0200 Subject: [PATCH] * Allow for optional function name parameter in 'ftype' declaration * lisp/emacs-lisp/byte-run.el (defun-declarations-alist): Allow for optional function name parameter in 'ftype' declaration. (cherry picked from commit b87670b56460185bec902806daa52b05faa5d26d) --- lisp/emacs-lisp/byte-run.el | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/lisp/emacs-lisp/byte-run.el b/lisp/emacs-lisp/byte-run.el index 04cb183699f..4b5ba474bc2 100644 --- a/lisp/emacs-lisp/byte-run.el +++ b/lisp/emacs-lisp/byte-run.el @@ -223,7 +223,11 @@ So far, FUNCTION can only be a symbol, not a lambda expression." val))))) (defalias 'byte-run--set-function-type - #'(lambda (f _args val) + #'(lambda (f _args val &optional f2) + (when (and f2 (not (eq f2 f))) + (error + "`%s' does not match top level function `%s' inside function type \ +declaration" f2 f)) (list 'function-put (list 'quote f) ''function-type (list 'quote val)))) -- 2.39.5