* lisp/progmodes/python.el: Avoid building unneeded markers.
(python-font-lock-keywords, python-indent-dedent-line)
(python-fill-paren, python-shell-completion-complete-or-indent):
Prefer point over point-marker.
(inferior-python-mode): Remove redundant completion settings.
doc/emacs copyedits re rectangle-mark-mode

* doc/emacs/killing.texi (Rectangles): Copyedits re rectangle-mark-mode.
(CUA Bindings): Mention rectangle-mark-mode.
Doc tweaks re multi-monitor

* doc/lispref/frames.texi (Multiple Terminals): Copyedits re multiple monitors.

* lisp/frame.el (frame-monitor-attributes, display-monitor-attributes-list):
Doc fixes.
* lisp/erc/erc.el (erc-channel-receive-names): Silence compiler warning.
(erc-format-@nick, erc-update-modes): Idem.
Merge trivially safe differences from standalone CC-mode.
* lisp/progmodes/cc-mode.el (c-initialize-cc-mode): Don't quote a symbol
just to then pass it to `symbol-value'.
(prog-mode): Provide fallback definition, if needed.
* lisp/progmodes/cc-langs.el: Always load `cl'.  Don't load `cl-lib'.
Remove "cl-" prefix accordingly.
* lisp/progmodes/cc-fonts.el (c-font-lock-invalid-string): Use integerp or
characterp depending on the type of characters.
(c-font-lock-enum-tail): Remove unused var `start'.
* lisp/progmodes/cc-engine.el: Load CL at compile-time.
(c-declare-lang-variables): Use mapcan.
(c-append-to-state-cache): Remove unused var `ce+1'.
(c-parse-state-state): Make buffer-local.
(c-ssb-lit-begin): Remove unused var `pps-end-pos'.
(c-just-after-func-arglist-p): Remove unused var `end'.
* lisp/progmodes/cc-defs.el: Load cc-fix if delete-dups is undefined.
(c-<-as-paren-syntax, c->-as-paren-syntax): Move definition earlier.
(c-make-keywords-re): Use delete-dups.
(c-get-current-file): Avoid file-name-base.
* lisp/progmodes/cc-cmds.el (c-electric-lt-gt): Remove unused var
`close-paren-inserted'.
* lisp/progmodes/cc-awk.el (c-forward-sws): Remove unused declaration.
* doc/lispref/windows.texi (Window Sizes, Resizing Windows): Copyedits.
Small doc/ fixes re @var usage.

* doc/emacs/cmdargs.texi (Misc X):
* doc/emacs/display.texi (Optional Mode Line):
* doc/emacs/misc.texi (emacsclient Options):
* doc/emacs/vc1-xtra.texi (VC Delete/Rename):
* doc/lispref/buffers.texi (Buffer List):
* doc/lispref/display.texi (Image Descriptors, Defining Images):
* doc/lispref/functions.texi (Core Advising Primitives):
Small fixes re @var usage.
Small copyedits for doc/lispref

* doc/lispref/display.texi (Scroll Bars):
* doc/lispref/modes.texi (Header Lines): Copyedits.
* doc/misc/vip.texi (Other Vi Commands): Markup fix.
* doc/lispref/commands.texi (Generic Commands): Copyedits.
Merge from emacs-24; up to r117553
* configure.ac: Silence warning with some old Xrandr.h.
* lisp/files.el (auto-mode-alist): Use sh-mode for .zsh files.
Add documentation for horizontal scroll bars and fix some minor issues.

* buffer.c (scroll_bar_width, scroll_bar_height): Fix
doc-strings.
* window.c (Fset_window_scroll_bars): Fix doc-string.
(Fwindow_scroll_bars): Have it return what the doc-string says.

* window.el (window-full-height-p): Make it behave correctly for
minibuffer window.
(window-current-scroll-bars): Fix code.
(fit-frame-to-buffer): Use window-scroll-bar-height instead of
window-scroll-bars.
* frame.el (frame-current-scroll-bars): Fix doc-string.
* scroll-bar.el (toggle-horizontal-scroll-bar): New command.

* frames.texi (Scroll Bars): Describe use of horizontal scroll
bars.

* display.texi (Scroll Bars): Add description of horizontal scroll
bars and associated functions.
* frames.texi (Layout Parameters): Add horizontal scroll bar
entries.  Remove paragraph on "combined fringe widths".
* windows.texi (Window Sizes): Describe affects of horizontal
scroll bars on window layout and sizes.  Fix description of
window-full-height-p.
(Resizing Windows): Mention horizontal scroll bar.
Fix Gtk+ tearoff not present on Customize Emacs and not at menu top.

* gtkutil.c (create_menus): Only add tearoffs to empty menus.
(xg_update_submenu): Remove has_tearoff_p, pass 1 to create_menus
for add_tearoff_p.
* lisp/startup.el (command-line): Handle altered user-emacs-directory
in load-path warning.
Merge package-x-test.el into package-test.el, to avoid running tests twice

* test/automated/package-x-test.el: Remove file...
* test/automated/package-test.el: ... merge package-x-test.el.
* admin/authors.el (authors-renamed-files-alist): Add package-x-test.el
* apropos.el (apropos-symbols-internal): Avoid error with non-symbol properties.
* lisp/net/ntlm.el (ntlm-build-auth-request): Add NTLM2 Session support.