Subject: Re: bug#21681: [PATCH] Fix formatting of lexical-binding at eof warning

From: Noam Postavsky <[email-masked]>
Date: Wed, 14 Oct 2015 22:30:43 -0400

On 10/14/15, Eli Zaretskii <[email-masked]> wrote:
> Having now looked at the code, I actually don't understand why the
> documentation says the symbol should be a custom group.

I would speculate it's a way to encourage some convergence of warning
types, so that users are able to suppress several at once.

I did an rgrep on the Emacs source tree for display-warning|lwarn,
only 2 calls pass a list for TYPE, both in lisp/progmodes/python.el:

./lisp/progmodes/python.el:2247:
          (lwarn
           '(python python-shell-prompt-regexp)
./lisp/progmodes/python.el:3443:
       (t (lwarn
           '(python python-shell-completion-native-turn-on-maybe)

There are several mistaken uses of :warning or :error, and the rest
use a general symbol that says little beyond which package a warning
might be coming from; around half are custom groups, but none very
specific.

Symbols used:

(get 'alloc          'custom-group) ;=> ((gc-cons-threshold custom-variable)
(get 'todo           'custom-group) ;=> nil
(get 'org            'custom-group) ;=> ((org-babel custom-group)...
(get 'initialization 'custom-group) ;=> ((user-emacs-directory-warning
custom-variable)...
(get 'url            'custom-group) ;=> ((url-file custom-group)...
(get 'gnus-server    'custom-group) ;=> nil
(get 'mule           'custom-group) ;=> ((keyboard-coding-system
custom-variable)...
(get 'server         'custom-group) ;=> ((server-use-tcp custom-variable)...
(get 'file-error     'custom-group) ;=> nil
(get 'rmail          'custom-group) ;=> nil
(get 'check-declare  'custom-group) ;=> nil
(get 'smie           'custom-group) ;=> ((smie-blink-matching-inners
custom-variable)...
(get 'bytecomp       'custom-group) ;=> ((emacs-lisp-file-regexp
custom-variable)...
(get 'mail           'custom-group) ;=> ((mail-host-address custom-variable)...
(get 'python         'custom-group) ;=> nil
(get 'erc            'custom-group) ;=> nil
(get 'soap-client    'custom-group) ;=> nil
(get 'custom         'custom-group) ;=> nil
(get 'bzrmerge       'custom-group) ;=> nil