GNU bug report logs - #1085
23.0.60; all-completions, try-completion inconsistent: Info-read-node-name-1

Previous Next

Package: emacs;

Reported by: "Drew Adams" <drew.adams <at> oracle.com>

Date: Sat, 4 Oct 2008 23:05:04 UTC

Severity: normal

Done: Chong Yidong <cyd <at> stupidchicken.com>

Bug is archived. No further changes may be made.

Full log


Message #30 received at submit <at> emacsbugs.donarmstrong.com (full text, mbox):

From: Stefan Monnier <monnier <at> iro.umontreal.ca>
To: Drew Adams <drew.adams <at> oracle.com>
Cc: 1085 <at> debbugs.gnu.org, <emacs-pretest-bug <at> gnu.org>
Subject: Re: bug#1085: 23.0.60; all-completions, try-completion inconsistent: Info-read-node-name-1
Date: Sun, 05 Oct 2008 19:36:19 -0400
> Lisp code needs to be able to depend on the fact that the valid
> completions returned by `all-completions' have the common prefix
> that is returned by `try-completion' (which must in turn have the
> input as its prefix).

This fact has simply never been true in general.
It's true as long as the completion table is not a function, but
otherwise all bets are off.

In practice the main case where this "invariant" does not hold is when
the completion table is the one for file names, where all-completions
returns names that do not "full" (i.e. do not include the directory
name).  But other cases exist.

For code that needs to live with this problem (e.g. minibuffer.el),
Emacs-23 introduces a new way to call the completion table function with
a `boundary' argument.


        Stefan





This bug report was last modified 15 years and 343 days ago.

Previous Next


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