Subject: bug#32512: xref--read-identifier using etags backend should honor case-fold-search

From: Ludovic Brenta <[email-masked]>
Date: Thu, 23 Aug 2018 17:11:18 +0100

Package: emacs
Version: 26.1
Severity: wishlist

Hello,

Suppose I have a file named foo-bar.adb containing:

package Foo.Bar is
end Foo.Bar;

and this has been tagged with etags, which is the backend in use for 
xref.

Now:
(a)
M-. foo.bar/b => jumps to foo-bar.adb line 1, "package Foo.Bar is".

but

(b)
M-. foo.bar <TAB> => "no match"

In (a), xref-find-definition took whatever my input was and honored
case-fold-search, which is t, to find the definition of the package.

But when I type <TAB> asking for possible completions, 
xref--read-identifier
is case-sensitive whether I like it or not.  Indeed:

(c)
M-. Foo.Bar <TAB> => produces the desired completion Foo.Bar/b

The inconsistency between (a) and (b) is anti-ergonomic.

I looked for a variable, separate from case-fold-search, that would
control the case sensitivity of completion in this case, but I couldn't
find one.

-- 
Ludovic Brenta.