GNU bug report logs - #20629
25.0.50; Regression: TAGS broken, can't find anything in C++ files.

Previous Next

Package: emacs;

Reported by: "Jan D." <jan.h.d <at> swipnet.se>

Date: Fri, 22 May 2015 05:59:02 UTC

Severity: normal

Found in version 25.0.50

Done: Eli Zaretskii <eliz <at> gnu.org>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: Eli Zaretskii <eliz <at> gnu.org>
To: Dmitry Gutov <dgutov <at> yandex.ru>
Cc: 20629 <at> debbugs.gnu.org
Subject: bug#20629: 25.0.50; Regression: TAGS broken, can't find anything in C++ files.
Date: Thu, 28 May 2015 17:56:41 +0300
> Cc: 20629 <at> debbugs.gnu.org
> From: Dmitry Gutov <dgutov <at> yandex.ru>
> Date: Thu, 28 May 2015 13:22:01 +0300
> 
> On 05/28/2015 05:50 AM, Eli Zaretskii wrote:
> 
> > I _was_ talking about explicit tag names.
> 
> AFAICS, 'etags -Q' doesn't generate explicit tag names for C++ (for 
> cases we're currently discussing).

Yes, it does.  Try running it on test/etags/cp-src/c.C, for example.

> Only patterns, to be matched implicitly.

Whether "etags -Q" generates explicit tag names or not is orthogonal
to whether it qualifies class members.  The decision depends on the
text surrounding the pattern.

> > Exuberant ctags does have such an option: --extra=+q.
> 
> This brings us to the third option. Here's what the 'ctags -e 
> --extra=+q' output looks like:
> 
> x.cc,210
> class XXXX1,0
> class YYYY8,54
> XX::foo()foo16,98
> XX::foo()XX::foo16,98
> XX::bar()bar22,132
> XX::bar()XX::bar22,132
> YY::bar()bar28,163
> YY::bar()YY::bar28,163
> main(int argc, char *argv[])main34,193

If you mean that producing two entries instead of one under -Q will
produce better results both with xref-find-definitions and with
completion, making the above happen in etags is an easy change, I
think.




This bug report was last modified 9 years and 69 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.