* configure.in (GC_LISP_OBJECT_ALIGNMENT): Remove.
This is now done by src/alloc.c.
* src/alloc.c (GC_LISP_OBJECT_ALIGNMENT): Use offsetof, not __alignof__
or sizeof. __alignof__ gives the wrong answer on Fedora x86-64
with GCC 4.6.1 when configured with CC='gcc -m32' --with-wide-int;
this makes Emacs dump core during garbage collection on rare
occasions. sizeof is obviously inferior to offsetof here, so
stick with offsetof.
(GC_POINTER_ALIGNMENT): New macro.
(mark_memory): Omit 3rd (offset) arg; caller changed.
Don't assume EMACS_INT alignment is the same as pointer alignment.
gnus.texi (Gnus Utility Functions): Add more references and explanations (bug#9683).
ecomplete.el (ecomplete-display-matches): Use a local keymap to handle bindings.
gnus-win.el (gnus-configure-windows): Protect against reading ephemeral groups outside of Gnus.
* doc/emacs/misc.texi (emacsclient Options): Document how emacsclient
runs the Emacs daemon.
* doc/man/emacsclient.1: Document how -a "" starts the daemon.
Fixes: debbugs:9674
* window.el (window-point-1, set-window-point-1): New functions.
(window-in-direction, record-window-buffer, window-state-get-1)
(display-buffer-record-window): Use window-point-1 instead of
window-point.
(set-window-buffer-start-and-point): Use set-window-point-1.
* window.el (frame-auto-hide-function): New option replacing
frame-auto-delete. Suggested by Stefan Monnier.
(window--delete): Call frame-auto-hide-function instead of
investigating frame-auto-delete.
(pcomplete--common-suffix): Remove.
(pcomplete--common-quoted-suffix): Use comint--common-suffix instead.
(pcomplete--table-subvert): Sync with comint--table-subvert.
(pcomplete--entries): Use comint-completion-file-name-table.
* lisp/comint.el (comint-unquote-filename): Simplify.
(comint-completion-file-name-table): New function.
(comint--complete-file-name-data): Use it.
* src/dired.c (file_name_completion): Don't expand file name.
(Ffile_name_completion, Ffile_name_all_completions): Expand file name
before checking file name handler.
Fixes: debbugs:9616
(pcmpl-gnu-tar-buffer): Remove.
(pcmpl-gnu-with-file-buffer): Use it to avoid leaving the tar's buffer
avoid. Make sure pcomplete-suffix-list is only changed temporarily.
Don't look inside the tar's file is it's too large.
Fixes: debbugs:9643
This fixes a Y2038 bug on 64-bit hosts.
* buffer.c (reset_buffer):
* fileio.c (Fdo_auto_save, Fset_buffer_auto_saved)
(Fclear_buffer_auto_save_failure):
Use 0, not -1, to represent an unset failure time, since time_t
might not be signed.
* alloc.c (XMALLOC_OVERRUN_CHECK_OVERHEAD, XMALLOC_OVERRUN_CHECK_SIZE):
Move back here from lisp.h, but with their new implementations.
(XMALLOC_BASE_ALIGNMENT, COMMON_MULTIPLE, XMALLOC_HEADER_ALIGNMENT)
(XMALLOC_OVERRUN_SIZE_SIZE): Move these new lisp.h macros here.
* charset.c (charset_table_init): New static var.
(syms_of_charset): Use it instead of xmalloc. This removes a
dependency on glibc malloc internals. See Eli Zaretskii's comment in
<http://lists.gnu.org/archive/html/emacs-devel/2011-09/msg00815.html>.
* lisp.h (XMALLOC_OVERRUN_CHECK_OVERHEAD, XMALLOC_OVERRUN_CHECK_SIZE):
Move back to alloc.c.
(XMALLOC_BASE_ALIGNMENT, COMMON_MULTIPLE, XMALLOC_HEADER_ALIGNMENT)
(XMALLOC_OVERRUN_SIZE_SIZE): Move to alloc.c.