2014-01-09 Rüdiger Sonderfeld <ruediger@c-plusplus.de>
+ * building.texi (Lisp Libraries): Document `load-prefer-newer'.
+
* files.texi (File Conveniences): Document `image-next-frame',
`image-previous-frame', `image-goto-frame',
`image-increase-speed', `image-decrease-speed',
@findex load
@findex load-library
+@vindex load-prefer-newer
@cindex load path for Emacs Lisp
If an Emacs Lisp file is installed in the Emacs Lisp @dfn{load path}
(defined below), you can load it by typing @kbd{M-x load-library},
searches through each directory in the Emacs Lisp load path, trying to
find a file matching that library name. If the library name is
@samp{@var{foo}}, it tries looking for files named
-@file{@var{foo}.elc}, @file{@var{foo}.el}, and lastly just
-@file{@var{foo}}; the first one found is loaded. This command prefers
-@file{.elc} files over @file{.el} files because compiled files load
-and run faster. If it finds that @file{@var{lib}.el} is newer than
-@file{@var{lib}.elc}, it issues a warning, in case someone made
+@file{@var{foo}.elc}, @file{@var{foo}.el}, and @file{@var{foo}}. The
+default behaviour is to load the first file found. This command
+prefers @file{.elc} files over @file{.el} files because compiled files
+load and run faster. If it finds that @file{@var{lib}.el} is newer
+than @file{@var{lib}.elc}, it issues a warning, in case someone made
changes to the @file{.el} file and forgot to recompile it, but loads
the @file{.elc} file anyway. (Due to this behavior, you can save
unfinished edits to Emacs Lisp source files, and not recompile until
-your changes are ready for use.)
+your changes are ready for use.) However setting
+@code{load-prefer-newer} to a non-@code{nil} value will Emacs load the
+newest version of the file found.
Emacs Lisp programs usually load Emacs Lisp files using the
@code{load} function. This is similar to @code{load-library}, but is
default value from the regexp last history element, or from the symbol
found at point.
++++
*** `load-prefer-newer', affects how the `load' function chooses the
file to load. If this is non-nil, then when both .el and .elc
versions of a file exist, and the caller did not explicitly specify