* lisp/progmodes/eglot.el (eglot-imenu): Bail out if no
capability.
(mapcar (lambda (c) (apply #'dfs c)) children))))))
(mapcar (lambda (s) (apply #'dfs s)) res)))
-(defun eglot-imenu ()
+(cl-defun eglot-imenu ()
"Eglot's `imenu-create-index-function'.
Returns a list as described in docstring of `imenu--index-alist'."
+ (unless (eglot--server-capable :textDocument/documentSymbol)
+ (cl-return-from eglot-imenu))
(let* ((res (eglot--request (eglot--current-server-or-lose)
:textDocument/documentSymbol
`(:textDocument