Subject: Re: bug#66021: 30.0.50; error from C-h k with closure

From: Eli Zaretskii <[email-masked]>
Date: Sat, 16 Sep 2023 09:38:34 +0300

> From: Gerd Möllmann <[email-masked]>
> Date: Sat, 16 Sep 2023 08:01:13 +0200
> 
> With emacs -Q, evaluate
> 
>   (keymap-global-set "<f2>" (lambda () (interactive) (message "<f2>")))
> 
> then C-h k and press f2.  This signals an error
> 
>   help-fns--signature: Wrong type argument: symbolp, (closure ...

The backtrace is below.  Andrea, can you please look into this?  is
testing for symbolp the right fix there?

  Debugger entered--Lisp error: (wrong-type-argument symbolp (closure (t) nil (interactive) (message "<f2>")))
    comp-function-type-spec((closure (t) nil (interactive) (message "<f2>")))
    help-fns--signature((closure (t) nil (interactive) (message "<f2>")) nil (closure (t) nil (interactive) (message "<f2>")) (closure (t) nil (interactive) (message "<f2>")) #<buffer *scratch*>)
    describe-function-1((closure (t) nil (interactive) (message "<f2>")))
    #f(compiled-function () #<bytecode 0x1193c126adc3c31d>)()
    help--window-setup("*Help*" #f(compiled-function () #<bytecode 0x1193c126adc3c31d>))
    describe-key((([f2] . [f2])))
    funcall-interactively(describe-key (([f2] . [f2])))
    call-interactively(describe-key nil nil)
    command-execute(describe-key)