Subject: describe-variable vs. not necessarily soul origins

From: [email-masked]
Date: Sat, 28 Jun 2008 00:03:01 +0800

describe-variable shows e.g.,

  kill-emacs-hook is a variable defined in `C source code'.
  Its value is
  (w3m-arrived-shutdown
   (lambda nil
     (sleep-for 5))
   #[nil "\300\301!\207"
         [server-mode -1]
         2])

The problems are: Saying

  kill-emacs-hook is a variable defined in `C source code'.
  Its value is

is misleading, as it looks like you are saying "this is the definition
as found in the C source code" when in fact it has been modified
since.

So maybe say
  Its CURRENT value is

Or if you keep track of whether it has been modified or not, than say
two different things accordingly.

P.S., saying
   #[nil "\300\301!\207"
         [server-mode -1]
         2])
presents the user with unexplained octal gobbledygook.

And maybe even add a list of all the files that altered the variable,
so one can track down just what put that byte-compiled stuff there
(that one doesn't see with emacs -Q).