* objects.texi (General Escape Syntax): Clarify the explanation of
escape sequences.
(Non-ASCII in Strings): Clarify when a string is unibyte vs
multibyte. Hex escapes do not automatically make a string multibyte.
* doc/lispref/eval.texi (Special Forms): No longer special forms:
defmacro, defun, save-window-excursion, with-output-to-temp-buffer.
* doc/lispref/functions.texi (Defining Functions): Defun is now a macro.
Defalias is a function.
* windows.texi (Basic Windows): Reformulate description of live,
internal and valid windows.
(Cyclic Window Ordering): Describe new argument of
get-lru-window and get-largest-window. Add description of
window-in-direction.
* doc/lispref/variables.texi (Generalized Variables): New section,
adapted from misc/cl.texi.
* doc/lispref/elisp.texi (Top): Add Generalized Variables to menu.
* doc/lispref/lists.texi (List Elements, List Variables):
Mention generalized variables.
* doc/misc/cl.texi (Control Structure): Update for setf now being in core.
(Setf Extensions): Rename from Basic Setf. Move much of the
former content to lispref/variables.texi.
(Modify Macros): Move pop, push details to lispref/variables.texi.
(Customizing Setf): Copyedits for setf etc being in core.
(Modify Macros, Efficiency Concerns, Porting Common Lisp):
Further namespaces updates.
* doc/emacs/dired.texi (Dired Deletion, Marks vs Flags): Document Emacs 24.3
changes to the mark and unmark commands.
(Comparison in Dired): Document chages to dired-diff. Remove M-=,
which is no longer bound to dired-backup-diff.
* doc/emacs/mule.texi (Text Coding): set-buffer-file-coding-system can now
be invoked from the mode line.
* lisp/dired.el (dired-mark, dired-unmark, dired-flag-file-deletion):
Doc fix.
These instances were missed the first time around.
Problem reported by Glenn Morris in <http://bugs.gnu.org/12706#25>.
* doc/lispintro/emacs-lisp-intro.texi (Files List):
* doc/lispref/buffers.texi (Modification Time):
* doc/lispref/files.texi (Testing Accessibility, File Attributes):
* doc/lispref/intro.texi (Version Info):
* doc/lispref/os.texi (Time of Day):
* doc/misc/emacs-mime.texi (time-date):
Update for new time stamp format (HIGH LOW MICROSEC PICOSEC).
* doc/misc/emacs-mime.texi (time-date):
Also, fix bogus time stamp and modernize a bit.
* doc/lispref/functions.texi (Anonymous Functions): Explicitly list the
docstring, declare, and interactive arguments to lambda.
(Defining Functions): Likewise for defun.
(Inline Functions): Likewise for defsubst.
(Declare Form): Tweak description.
* doc/lispref/macros.texi (Defining Macros): defmacro is now a macro.
Explicitly list the docstring and declare arguments.
* emacs-lisp/byte-run.el (defsubst): Doc fix.
* doc/lispref/files.texi (File Attributes): Describe it.
(Magic File Names): Use it.
* etc/NEWS: Document the change.
* lisp/files.el (remote-file-name-inhibit-cache):
* lisp/time.el (display-time-file-nonempty-p): Use it.
* lisp/files.el (after-find-file): Don't chase links before calling
file-exists-p, as file-exists-p already does the right thing.
* src/dired.c (directory_files_internal, Ffile_attributes):
New arg follow_symlinks. All uses changed.
src/keyboard.c (timer_check_2): Move calculation of 'timers' and
'idle_timers' from here ...
(timer_check): ... to here. Use Fcopy_sequence to copy the timer
lists, to avoid infloops when the timer does something stupid,
like reinvoke itself with the same or smaller time-out.
lisp/emacs-lisp/timer.el (run-with-idle-timer)
(timer-activate-when-idle): Warn against reinvoking an idle timer
from within its own timer action.
doc/lispref/os.texi (Idle Timers): Warn against reinvoking an idle timer
from within its own timer action.
The porting part of this patch fixes bugs on non-IEEE platforms
with frexp, ldexp, logb.
* admin/CPP-DEFINES (HAVE_CBRT, HAVE_LOGB, logb): Remove.
* configure.ac (logb, cbrt): Do not check for these functions,
as they are not being used.
* doc/lispref/numbers.texi (Float Basics, Arithmetic Operations, Math Functions):
Document that / and mod (with floating point arguments), along
with asin, acos, log, log10, expt and sqrt, return special values
instead of signaling exceptions.
(Float Basics): Document that logb operates on the absolute value
of its argument.
(Math Functions): Document that (log ARG BASE) also returns NaN if
BASE is negative. Document that (expt X Y) returns NaN if X is a
finite negative number and Y a finite non-integer.
* etc/NEWS: Document NaNs versus signaling-error change.
* src/data.c, src/lisp.h (Qdomain_error, Qsingularity_error, Qunderflow_error):
Now static.
* src/floatfns.c: Simplify discussion of functions that Emacs doesn't
support, by removing commented-out code and briefly listing the
C89 functions excluded. The commented-out stuff was confusing
maintenance, e.g., we thought we needed cbrt but it was commented out.
(logb): Remove decl; no longer needed.
(isfinite): New macro, if not already supplied.
(isnan): Don't replace any existing macro.
(Ffrexp, Fldexp): Define even if !HAVE_COPYSIGN, as frexp and ldexp
are present on all C89 platforms.
(Ffrexp): Do not special-case zero, as frexp does the right thing
for that case.
(Flogb): Do not use logb, as it doesn't have the desired meaning
on hosts that use non-base-2 floating point. Instead, stick with
frexp, which is C89 anyway. Do not pass an infinity or a NaN to
frexp, to avoid getting an unspecified result.
* lisp/replace.el (query-replace-map): Bind four new symbols for
requesting window scrolling.
* lisp/subr.el (y-or-n-p): Handle the window-scrolling bindings in
query-replace-map.
* lisp/custom.el (custom-theme-load-confirm): Use y-or-n-p.
* lisp/window.el (scroll-other-window-down): Make the arg optional.
* lisp/emacs-lisp/map-ynp.el (map-y-or-n-p): Don't bind scrolling keys
since they are now in query-replace-map.
* doc/lispref/minibuf.texi (Yes-or-No Queries): Document recentering and
scrolling in y-or-n-p. Remove gratuitous example.
* doc/lispref/searching.texi (Search and Replace): Document window scrolling
entries in query-replace-map.
Fixes: debbugs:8948