Subject: Autoloads fake functions in foreign packages

From: Tim Landscheidt <[email-masked]>
Date: Wed, 01 Feb 2017 22:52:43 +0000

With Gnus v5.13/GNU Emacs 25.1.1 (x86_64-redhat-linux-gnu,
GTK+ Version 3.22.4) of 2016-12-15, after loading
gnus-art.el, C-h f w3 TAB completes to
w3m-toggle-inline-images even though I have not installed
the w3m package.  This is due to gnus-art.el's:

| (autoload 'w3m-toggle-inline-images "w3m")

AFAIUI, this should be rewritten as:

| (declare-function w3m-toggle-inline-images "w3m")

so that the compiler remains quiet, but the function does
not falsely appear to be existing.

There are a lot of these in Gnus (cf. "git grep
'^[^;]*(autoload' -- lisp/gnus
':(exclude)lisp/gnus/ChangeLog.*'") and Emacs overall, so a
larger clean-up might be useful.