When with emacs -Q I put the following snippet into *scratch*
(defun foo ()
(ignore))
move point to somewhere on "foo" and do
M-: (funcall eldoc-documentation-function)
I get the following backtrace:
Debugger entered--Lisp error: (void-function nil)
nil(:patient)
eldoc--make-callback(:patient)
eldoc-documentation-default()
funcall(eldoc-documentation-default)
eval((funcall eldoc-documentation-function) t)
eval-expression((funcall eldoc-documentation-function) nil nil 127)
funcall-interactively(eval-expression (funcall
eldoc-documentation-function) nil nil 127)
call-interactively(eval-expression nil nil)
command-execute(eval-expression)
If I do the same thing with Emacs 27 I get
#("defun: (NAME ARGLIST &optional DOCSTRING DECL &rest BODY)" 0 5 (face
font-lock-keyword-face) 8 12 (face eldoc-highlight-function-argument))