Subject: Re: bug#55491: All completion fragments get added to obarray

From: Lars Ingebrigtsen <[email-masked]>
Date: Fri, 20 May 2022 02:03:23 +0200

Poking at this some more, this behaviour comes from:

(defun elisp-completion-at-point ()
[...]
           (fun-sym (condition-case nil
                        (save-excursion
                          (up-list -1)
                          (forward-char 1)
                          (and (memq (char-syntax (char-after)) '(?w ?_))
                               (read (current-buffer))))
                      (error nil))))

That `read' there is interning `ohno' when hitting `C-M-i' after:

(ohno

And that's unnecessary -- we don't actually need the fun-sym; we're just
checking whether we're looking at `ignore-error'.  So I've now fixed
this in Emacs 29.

Note that completion in emacs-lisp-mode may still intern stuff, but not
as gratuitously as before. 

-- 
(domestic pets only, the antidote for overdose, milk.)
   bloggy blog: http://lars.ingebrigtsen.no