Subject: bug#11718: 24.1.50; `all-completions' returns results with wrong case

From: Stefan Monnier <[email-masked]>
Date: Sat, 23 Jun 2012 00:38:12 -0400

> I have a directory "~/Trash".  If I eval
>    (let ((completion-ignore-case t))
>      (all-completions "~/tra" 'read-file-name-internal 
>                       'file-exists-p nil))
> in emacs -Q, I get
>   (#("trash/" 0 3 (face completions-common-part)))
> Note the wrong lower case of the result.

While not strictly wrong, it is indeed an undesirable result.  I'll try
and see how to fix it.

> Not sure if this is really a bug, but, at least, this change in
> behavior is documented nowhere, and it causes a completion bug in
> Icicles.

Sounds like it hits a real Icicles bug: there are rather few guarantees
about the actual case of the returned string when completion-ignore-case
is set.  So while we do want to fix the problem, code should not
assume anything about the particular case of the return string (which
is only considered to be a "cosmetic" issue).

        Stefan