Subject: bug#10416: 24.0.92; #'test-completion is inconsistent with symbol hash keys in COLLECTION

From: Aidan Kehoe <[email-masked]>
Date: Mon, 2 Jan 2012 00:11:41 +0000

Ar an chéad lá de mí Eanair, scríobh Stefan Monnier: 

 > >  (try-completion "del-alist" #s(hash-table size 145 test equal rehash-size 1.5 rehash-threshold 0.8 data (del-alist hello "delay-mode-hooks" everyone "delete" everyone)))
 > >  => t ;; as expected and documented
 > 
 > >  (all-completions "del-alist" #s(hash-table size 145 test equal rehash-size 1.5 rehash-threshold 0.8 data (del-alist hello "delay-mode-hooks" everyone "delete" everyone)))
 > >  => ("del-alist") ;; as expected and documented
 > 
 > These are bugs.  The Elisp manual is pretty clear about it:
 > 
 >      If COLLECTION is a hash table, then the keys that are strings are
 >      the possible completions.  Other keys are ignored.

And the docstrings of #'try-completion and #'all-completion are equally
clear, and contradict that. They both say the following:

‘If COLLECTION is a hash-table, all the keys that are strings or symbols
are the possible completions.’

-- 
‘Iodine deficiency was endemic in parts of the UK until, through what has been
described as “an unplanned and accidental public health triumph”, iodine was
added to cattle feed to improve milk production in the 1930s.’
(EN Pearce, Lancet, June 2011)