Subject: bug#74727: [PATCH] ; * lisp/apropos.el (apropos-library): Fix typo.

From: Dmitry Gutov <[email-masked]>
Date: Sun, 8 Dec 2024 03:54:19 +0200

Hi Eshel,

On 07/12/2024 15:31, Eshel Yaron wrote:
> This patch fixes the issue described below, which IIUC originates in a
> mere typo in commit 671862f6b3089c3a503c1b6936a821ad54429359
> 
> 1. emacs -Q
> 2. M-x apropos-library elisp-mode RET
> 3. The*Apropos* buffer incorrectly lists methods that elisp-mode.el
>     defines as if they were_features_ provided by the library.
>     Accordingly, clicking on one of those references yields an error such
>     as "Unknown library `xref-backend-definitions'"

Thanks! That's a good suggestion.

If you've started testing this area, though, do you know of a case when 
dropping this case - like:

diff --git a/lisp/apropos.el b/lisp/apropos.el
index 0655fecd0e8..9af8a7269ae 100644
--- a/lisp/apropos.el
+++ b/lisp/apropos.el
@@ -733,7 +733,7 @@ apropos-library
          ('t nil)                     ; Skip "was an autoload" entries.
          ;; FIXME: Print information about each individual method: both
          ;; its docstring and specializers (bug#21422).
-        ('cl-defmethod (push (cadr x) provides))
+        ;; ('cl-defmethod (push (cadr x) provides))
          ;; FIXME: Add extension point (bug#72616).
  	(_ (let ((sym (or (cdr-safe x) x)))
  	     (and sym (symbolp sym)

...does not work just as well?

 From what I see now, any 'cl-defmethod' entry in load-history is 
accompanied by a 'defun' entry anyway. And the original report 
(https://debbugs.gnu.org/21422) was about an error being raised, but I 
can't reproduce it now after commenting this line out.