* net/tramp-sh.el (tramp-perl-encode): Use "read STDIN" instead of
"<STDIN>".  This is binary safe.
diary-header-line-format: Use keybinding of diary-show-all-entries in the diary buffer
* src/data.c (Fsymbol_value): Doc fix re lexical-binding.
* src/data.c (Fboundp): Doc fix re lexical-binding.
Buffer Menu doc fixes.
* buff-menu.el (Buffer-menu-delete-backwards, Buffer-menu-mode)
(buffer-menu): Doc fix.
* simple.el (transient-mark-mode): Doc fix.
Fix for jka-compr-compression-info-list not including version extension

* lisp/jka-cmpr-hook.el (jka-compr-get-compression-info):
Remove any version extension before checking filename. 
(jka-compr-compression-info-list): Belated :version bump.
* lisp/icomplete.el: Change separator; add ido-style commands.
(icomplete-show-key-bindings): Remove custom var.
(icomplete-get-keys): Remove function.
(icomplete-forward-completions, icomplete-backward-completions):
New commands.
(icomplete-minibuffer-map): New var.
(icomplete-minibuffer-setup): Use it.
(icomplete-exhibit): Don't delay if the list of completions is known.
(icomplete-separator): New custom.
(icomplete-completions): Use it.
* lisp/minibuffer.el (completion-all-sorted-completions): Delete duplicates.
(minibuffer-force-complete-and-exit): New command.
(minibuffer--complete-and-exit): New function extracted from
minibuffer-complete-and-exit.
(minibuffer-complete-and-exit): Use it.
New ERC option to avoid sending accidentally-pasted text to the server.

* erc.el (erc-last-input-time): New variable.
(erc-accidental-paste-threshold-seconds): New option to avoid
sending accidentally-pasted text to the server.
(erc-send-current-line): Use it.

Also,

* erc.el (erc-lurker-cleanup, erc-lurker-p): Use float-time.
Relax existing-registration check in vc-register (tiny change).

* vc/vc.el (vc-register): Allow registering a file which is already
registered with a different backend.
* longlines.el (longlines-wrap-line, longlines-encode-region): Preserve text properties.
* textmodes/fill.el (fill-region-as-paragraph): Handle overshoot by move-to-column.
* progmodes/grep.el (grep-compute-defaults): Do not pass the -e flag to xargs
for compatibility with BSD xargs.
* vc/vc-git.el (vc-git-command): Disable the pager.
Improve buffer name default for C-u M-x shell.

* shell.el (shell): For C-u M-x shell, use an inactive shell
buffer as the default.
In Shell mode, reapply ansi colorization if the mode is re-enabled.

* shell.el (shell-apply-ansi-color, shell-reapply-ansi-color): New functions.
(shell-mode): Use them to reapply ansi colorization if Shell mode is re-enabled.
Fix commentary to buffer_shared_and_changed.
Fix compilation problems with 64-bit MSVC compiler.

 src/w32fns.c: Remove prototype of atof.
 (syspage_mask): Declared DWORD_PTR, for compatibility with 64-bit
 builds.
 (file_dialog_callback): Declared UINT_PTR.
 src/w32common.h (syspage_mask): Declare DWORD_PTR, for compatibility
 with 64-bit builds.
 src/w32.c (FILE_DEVICE_FILE_SYSTEM, METHOD_BUFFERED)
 (FILE_ANY_ACCESS, CTL_CODE) [_MSC_VER]: Define only if not already
 defined.
Defcustom :version fixes

* lisp/icomplete.el (icomplete-separator): Fix :version.

* lisp/erc/erc.el (erc-accidental-paste-threshold-seconds): Add :version.
src/doc.c: Fix bug#13034.
(Fdocumentation): Re-add handling of function-documentation,
accidentally removed in revno:110851.