GNU bug report logs -
#44494
etags.el xref-location-marker does not handle TAGS references to .el.gz files
Previous Next
Reported by: Pierre Rouleau <prouleau001 <at> gmail.com>
Date: Fri, 6 Nov 2020 23:24:02 UTC
Severity: normal
Tags: confirmed, patch
Merged with 2807
Done: Stefan Monnier <monnier <at> iro.umontreal.ca>
Bug is archived. No further changes may be made.
Full log
Message #35 received at 44494 <at> debbugs.gnu.org (full text, mbox):
> From: Pierre Rouleau <prouleau001 <at> gmail.com>
> Date: Sat, 7 Nov 2020 10:39:41 -0500
> Cc: dgutov <at> yandex.ru, 44494 <at> debbugs.gnu.org
>
> One difference is that when using find-tag is using code from etags.el exclusively:
> - find-tag-noselect
> . - find-tag-in-order , which tries different predicates and the one that succeeds is
> tag-implicit-name-match-p
> . - it identifies the cc-bytecomp.el.gz
> .- calls etags-goto-tag-location
The Xref etags backend also uses tag-implicit-name-match-p:
(defvar etags-xref-find-definitions-tag-order '(tag-exact-match-p
tag-implicit-name-match-p)
"Tag order used in `xref-backend-definitions' to look for definitions.
If you want `xref-find-definitions' to find the tagged files by their
file name, add `tag-partial-file-name-match-p' to the list value.")
> When using xref-find-definition the xref backend is used. It's not the same code.
> The xref backend code for elisp does not find it. The backend code for etags does not find it either.
> It tries to open cc-bytecomp.el as its the file name it gets from the TAGS file.
> It detects the file not being present and reports it as missing, assuming the file have been removed.
>
> To me the 2 sets of code look very different.
They share some of the code, at least when xref-etags-mode is used.
So it sounds like some information found by tag-implicit-name-match-p
doesn't get handed back to Xref?
For the Xref's own ELisp backend, we will probably need to code
something in xref.el.
This bug report was last modified 1 year and 219 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.