Subject: 27.0.50; find-face-definition wrong result for default face

From: "Basil L. Contovounesios" <[email-masked]>
Date: Tue, 23 Jan 2018 12:28:10 +0000

Steps to reproduce:

1. emacs -Q
2. M-x find-face-definition RET default RET

Expected result: point at definition of default defface in
lisp/faces.el.

Actual result: point in docstring of face-spec-recalc defun in
lisp/faces.el

Some solution suggestions, in order of increasing complexity:

1. Reword aforementioned docstring to make it look less like a defface,
   e.g. by replacing parens with brackets.

2. Replace find-face-regexp in find-function-regexp-alist with a
   function which repeats the find-face-regexp search until point is
   actually at a defface.

3. ?

If option (2) is entertained, I wonder if this approach should be
generalised to all regexp searches, i.e. including those for defuns,
defvars, etc.

Let me know what you think and whether you would like me to provide a
patch.

Thanks,

-- 
Basil

In GNU Emacs 27.0.50 (build 25, x86_64-pc-linux-gnu, X toolkit, Xaw3d scroll bars)
 of 2018-01-22 built on thunk
Repository revision: c42959cc206bcb52baffd45f892da1b767f0f8c1
Windowing system distributor 'The X.Org Foundation', version 11.0.11905000
System Description: Debian GNU/Linux testing (buster)