]> git.eshelyaron.com Git - emacs.git/commitdiff
Merge from trunk, BVAR and other variable adjustments.
authorMartin Rudalics <rudalics@gmx.at>
Fri, 25 Feb 2011 11:21:57 +0000 (12:21 +0100)
committerMartin Rudalics <rudalics@gmx.at>
Fri, 25 Feb 2011 11:21:57 +0000 (12:21 +0100)
89 files changed:
1  2 
doc/lispref/ChangeLog
doc/lispref/buffers.texi
doc/lispref/display.texi
doc/lispref/elisp.texi
doc/lispref/frames.texi
doc/lispref/locals.texi
doc/lispref/positions.texi
doc/lispref/windows.texi
lisp/ChangeLog
lisp/apropos.el
lisp/bindings.el
lisp/bookmark.el
lisp/buff-menu.el
lisp/calc/calc-help.el
lisp/calendar/calendar.el
lisp/calendar/solar.el
lisp/cmuscheme.el
lisp/cus-edit.el
lisp/cus-start.el
lisp/dired.el
lisp/ehelp.el
lisp/electric.el
lisp/emacs-lisp/elint.el
lisp/erc/ChangeLog
lisp/erc/erc-speedbar.el
lisp/eshell/eshell.el
lisp/files.el
lisp/frame.el
lisp/gnus/ChangeLog
lisp/gnus/message.el
lisp/help-mode.el
lisp/help.el
lisp/ielm.el
lisp/info.el
lisp/international/mule-diag.el
lisp/isearch.el
lisp/loadup.el
lisp/mail/reporter.el
lisp/mail/sendmail.el
lisp/man.el
lisp/mh-e/ChangeLog
lisp/mh-e/mh-comp.el
lisp/minibuffer.el
lisp/net/ange-ftp.el
lisp/net/rlogin.el
lisp/net/telnet.el
lisp/pcomplete.el
lisp/play/decipher.el
lisp/play/yow.el
lisp/printing.el
lisp/proced.el
lisp/progmodes/compile.el
lisp/progmodes/ebrowse.el
lisp/progmodes/etags.el
lisp/progmodes/inf-lisp.el
lisp/progmodes/python.el
lisp/progmodes/vhdl-mode.el
lisp/ps-print.el
lisp/replace.el
lisp/shell.el
lisp/simple.el
lisp/speedbar.el
lisp/term.el
lisp/term/ns-win.el
lisp/textmodes/bibtex.el
lisp/textmodes/table.el
lisp/tutorial.el
lisp/vc/ediff-mult.el
lisp/vc/ediff-ptch.el
lisp/vc/ediff-util.el
lisp/vc/log-edit.el
lisp/vc/pcvs-util.el
lisp/vc/pcvs.el
lisp/vc/vc-dir.el
lisp/view.el
lisp/window.el
lisp/woman.el
src/ChangeLog
src/buffer.c
src/dispnew.c
src/frame.c
src/indent.c
src/minibuf.c
src/print.c
src/w32fns.c
src/window.c
src/window.h
src/xdisp.c
src/xfns.c

index 509b3931b16462e829f5c3ccf622432d09f6ebc5,90eed004d390d4fcf66a1e66902031f910aa0659..649f078d6e1205b78a74bf9806e5c8565efce704
 +2011-02-24  Martin Rudalics  <rudalics@gmx.at>
 +
 +      * windows.texi (Window Configurations): Fix typo.
 +
 +2011-02-23  Martin Rudalics  <rudalics@gmx.at>
 +
 +      * windows.texi (Windows and Frames): Provide example of
 +      combinations.
 +      (Resizing Windows): Rewrite description of
 +      adjust-window-trailing-edge.
 +      (Splitting Windows): Provide examples how splitting affects
 +      internal windows.  Rewrite description of window-splits.
 +      (Deleting Windows): Rewrite description of delete-windows-on.
 +      (Displaying Buffers): Describe fun-with-args specifier.
 +      Describe display-buffer-alist-set.
 +      (Window Configurations): Describe window-state-get and
 +      window-state-put.
 +
+ 2011-02-19  Eli Zaretskii  <eliz@gnu.org>
+       * elisp.texi: Sync @dircategory with ../../info/dir.
+       * files.texi (Visiting Functions): Document find-file-literally,
+       both the command and the variable.
+       * variables.texi (Creating Buffer-Local): Explain the meaning of
+       permanent local variables.
+       * files.texi (Visiting Functions): Document find-file-literally,
+       both the command and the variable.
+       * variables.texi (Creating Buffer-Local): Explain the meaning of
+       permanent local variables.
+ 2011-02-19  Glenn Morris  <rgm@gnu.org>
+       * keymaps.texi (Remapping Commands): Mention how to undo it.
+ 2011-02-09  Reuben Thomas  <rrt@sc3d.org>
+       * loading.texi (Hooks for Loading): Remove unnecessary advice
+       about eval-after-load (Bug#7986).
+ 2011-02-05  Chong Yidong  <cyd@stupidchicken.com>
+       * commands.texi (Accessing Mouse): Note that a header line is not
+       included in the row of posn-col-row.
+ 2011-02-02  Chong Yidong  <cyd@stupidchicken.com>
+       * modes.texi (Major Mode Conventions): Add face guidelines.
+       (Faces for Font Lock): List faces in order of prominence.
+ 2011-02-01  Paul Eggert  <eggert@cs.ucla.edu>
+       format-time-string now supports subsecond time stamp resolution
+       * os.texi (Time Parsing): Document %N.
+ 2011-01-28  Chong Yidong  <cyd@stupidchicken.com>
+       * vol1.texi (Top):
+       * vol2.texi (Top):
+       * elisp.texi (Top):
+       * display.texi (Display Property): Shorten the menu description of
+       the "Other Display Specs" node (Bug#7816).
+       * keymaps.texi (Defining Menus): Add "menu item" and "extended
+       menu item" concept index entries (Bug#7805).
+ 2011-01-29  Eli Zaretskii  <eliz@gnu.org>
+       * makefile.w32-in (texinfodir): New variable.
+       (usermanualdir): Remove as redundant with $(emacsdir).
+       (MAKEINFO): Remove options, leave only program name.
+       (MAKEINFO_OPTS): New variable.
+       (texinputdir, $(infodir)/elisp): Use $(MAKEINFO_OPTS).
+ 2011-01-25  Chong Yidong  <cyd@stupidchicken.com>
+             Richard Kim  <emacs18@gmail.com>
+       * loading.texi (Library Search): Document list-load-path-shadows
+       (Bug#7757).
+ 2011-01-25  Chong Yidong  <cyd@stupidchicken.com>
+       * searching.texi (Regexp Special): Remove outdated discussion of
+       character sets (Bug#7780).
+       * frames.texi (Pop-Up Menus): Document where menu title comes
+       from (Bug#7684).
+ 2011-01-25  Glenn Morris  <rgm@gnu.org>
+       * display.texi (Making Buttons): Mention limitation of text buttons.
+ 2011-01-23  Werner Lemberg  <wl@gnu.org>
+       * Makefile.in (MAKEINFO): Now controlled by `configure'.
+       (MAKEINFO_OPTS): New variable.  Use it where appropriate.
+       (ENVADD): New variable to control texi2dvi and texi2pdf.
+ 2011-01-15  Chong Yidong  <cyd@stupidchicken.com>
+       * files.texi (Directory Names): Move directory-abbrev-alist doc to
+       Emacs manual.
+ 2011-01-15  Eli Zaretskii  <eliz@gnu.org>
+       * files.texi (Directory Names): Explain why FROM in
+       directory-abbrev-alist should begin with \`.  (Bug#7777)
  2011-01-11  Stefan Monnier  <monnier@iro.umontreal.ca>
  
        * loading.texi (Hooks for Loading): Adjust doc of eval-after-load.
index 2b33e9a9d493a7c5e06b296188ee64f077d628c0,07889cdbaa3f1ea55b9ad86cf7a7d02de505c29b..dd0c22a6572956a25b94ce1e367609454d9454de
@@@ -1,10 -1,10 +1,10 @@@
  @c -*-texinfo-*-
  @c This is part of the GNU Emacs Lisp Reference Manual.
- @c Copyright (C) 1990, 1991, 1992, 1993, 1994, 1995, 1998, 1999, 2001, 2002,
- @c   2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011  Free Software Foundation, Inc.
+ @c Copyright (C) 1990-1995, 1998-1999, 2001-2011
+ @c   Free Software Foundation, Inc.
  @c See the file elisp.texi for copying conditions.
  @setfilename ../../info/buffers
 -@node Buffers, Windows, Backups and Auto-Saving, Top
 +@node Buffers, Frames, Backups and Auto-Saving, Top
  @chapter Buffers
  @cindex buffer
  
Simple merge
Simple merge
Simple merge
Simple merge
index a094ba157b325e876fca4afd8421fa4fab11dd59,a44cd1fbcc7d7932dfc1d8624730f1b4f0624ff1..c942bd85e2b3841ae3592f87e8d9915cb46f49ea
@@@ -1,10 -1,9 +1,9 @@@
  @c -*-texinfo-*-
  @c This is part of the GNU Emacs Lisp Reference Manual.
- @c Copyright (C) 1990, 1991, 1992, 1993, 1994, 1995, 1998, 1999, 2000, 2001,
- @c   2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software Foundation, Inc.
+ @c Copyright (C) 1990-1995, 1998-2011  Free Software Foundation, Inc.
  @c See the file elisp.texi for copying conditions.
  @setfilename ../../info/positions
 -@node Positions, Markers, Frames, Top
 +@node Positions, Markers, Windows, Top
  @chapter Positions
  @cindex position (in buffer)
  
Simple merge
diff --cc lisp/ChangeLog
index 566057723e7db8085c420f18ac1ab26c35af17da,20514a0b8869d20b9853c3cbcbeb79735ab09d00..da845ac265a6192daa59fd8a46e2b3e12696acd0
-       window function. 
 +2011-02-22  Martin Rudalics  <rudalics@gmx.at>
 +
 +      * progmodes/compile.el (compilation-goto-locus): Call
 +      display-buffer-same-frame-other-window.
 +
 +      * window.el (window-atom-check-1): Fix handling of case where
 +      only one atomic window was left.
 +      (window-sizable-p): Fix doc-string.
 +      (window-size-fixed-p): Move after window-size-firxed-1.
 +      (split-window): Make sure that the new window gets any odd line
 +      since this was the Emacs 23 behavior.
 +      (window-list-no-nils, window-state-get-1, window-state-get)
 +      (window-state-put-1, window-state-put-2, window-state-put): New
 +      functions.
 +      (window-state-ignored-parameters, window-state-put-list): New
 +      variables.
 +      (display-buffer-alist): Fix doc-string.
 +      (display-buffer-even-sizes): Rename to
 +      display-buffer-even-window-sizes.
 +      (display-buffer-reuse-window): Call
 +      display-buffer-even-window-sizes.
 +      (display-buffer-pop-up-window): Don't pass specifiers to side
++      window function.
 +      (display-buffer-same-window, display-buffer-same-frame)
 +      (display-buffer-other-window)
 +      (display-buffer-same-frame-other-window)
 +      (pop-to-buffer-same-frame)
 +      (pop-to-buffer-same-frame-other-window): Make these interactive.
 +      (display-buffer-alist-add, display-buffer-alist-set): New
 +      functions.
 +
+ 2011-02-21  Lars Ingebrigtsen  <larsi@gnus.org>
+       * net/netrc.el (netrc-parse): Comment fix.
+ 2011-02-21  Chong Yidong  <cyd@stupidchicken.com>
+       * color.el (color-name-to-rgb): Rename from color-rgb->normalize.
+       Autoload.  Add optional arg FRAME, and pass it to color-values.
+       (color-complement): Caller changed.  Doc fix.
+       (color-gradient): Rewrite for better clarity and efficiency.
+       * faces.el (color-values): Use cond for clarity.  Doc fix.
+       * facemenu.el (color-rgb-to-hsv): Deleted; use the version in
+       color.el instead.
+       (list-colors-sort-key, list-colors-print): Use
+       color-normalized-values.
+ 2011-02-20  Drew Adams  <drew.adams@oracle.com>
+       * color.el: First part of merge from hexrgb.el.
+       (color-rgb-to-hex): Rename from color-rgb->hex.
+       (color-rgb-to-hsv): Rename from color-rgb->hsv.  Force hue and
+       saturation to zero if the value is too small.
+       (color-rgb-to-hsl): Rename from color-rgb->hsl.
+       (color-srgb-to-xyz): Rename from color-srgb->xyz.  Doc fix.
+       (color-xyz-to-srgb): Rename from color-xyz->srgb.  Doc fix.
+       (color-xyz-to-lab): Rename from color-xyz->lab.  Doc fix.
+       (color-lab-to-xyz): Rename from color-lab->xyz.  Doc fix.
+       (color-lab-to-srgb): Rename from color-lab->srgb.  Doc fix.
+       (color-cie-de2000): Doc fix.
+ 2011-02-20  Alan Mackenzie  <acm@muc.de>
+       * progmodes/cc-cmds.el (c-beginning-of-statement): Avoid loop in
+       locating the beginning of a macro.  (Bug#7595)
+ 2011-02-20  Glenn Morris  <rgm@gnu.org>
+       * edmacro.el (edmacro-eight-bits): Make it a defcustom.
+       Don't autoload it.
+       * autorevert.el (auto-revert-mode, auto-revert-tail-mode)
+       (global-auto-revert-ignore-buffer): Remove leading "*" from docs.
+ 2011-02-19  Dmitry Bolshakov <dmitry.bolshakov@bridge-quest.com>
+             Dima Kogan <dkogan@cds.caltech.edu>  (tiny change)
+       * progmodes/hideshow.el (hs-find-block-beginning)
+       (hs-hide-level-recursive): Ignore comments when parsing braces
+       (Bug#8036).
+ 2011-02-19  Chong Yidong  <cyd@stupidchicken.com>
+       * vc/vc-bzr.el (vc-bzr-bound-branch-p): New function.
+       (vc-bzr-pull): Use it.
+ 2011-02-19  Chong Yidong  <cyd@stupidchicken.com>
+       * vc/vc-bzr.el (vc-bzr--branch-conf): Function deleted.
+       (vc-bzr-branch-conf): New function, similar to vc-bzr--branch-conf
+       but returning an alist.  Ignore comments in bzr conffile.
+       (vc-bzr-pull, vc-bzr-merge-branch): Use vc-bzr-branch-conf.
+       (vc-bzr-error-regex-alist): New var.
+       (vc-bzr-merge-branch): Use it to highlight the pull/merge buffer.
+       * vc/vc-dispatcher.el (vc-do-async-command): Bind
+       inhibit-read-only to t.
+       * progmodes/compile.el (compilation--flush-directory-cache):
+       Handle the case where cdr of compilation--flush-directory-cache
+       points to no buffer, which can occur if we previously switched to
+       compilation-mode in a pregenerated buffer.
+ 2011-02-19  Kenichi Handa  <handa@m17n.org>
+       * mail/rmailmm.el (rmail-mime-find-header-encoding): Be sure to
+       get the header copy into the temporary buffer.
+       (rmail-mime-insert-decoded-text): Ignore us-ascii.
+       (rmail-show-mime): When rmail-mime-coding-system is nil, set
+       buffer-file-coding-system to undecided.
+ 2011-02-19  Eli Zaretskii  <eliz@gnu.org>
+       * international/mule-cmds.el (read-char-by-name, ucs-insert):
+       Document completion with asterisk and a substring.
+ 2011-02-19  Glenn Morris  <rgm@gnu.org>
+       * files.el (find-file-literally): Doc fix.
+       * simple.el (rfc822-goto-eoh): Give it a doc-string.
+       * log-edit.el (log-edit-insert-changelog):
+       Fix `log-edit-strip-single-file-name' functionality.  (Bug#8057)
+ 2011-02-19  Glenn Morris  <rgm@gnu.org>
+       * dired-x.el: Don't require dired-aux.
+       (dired-do-create-files, dired-mark-read-regexp)
+       (dired-do-create-files-regexp): Autoload from dired-aux.
+       * dired-x.el (dired-find-buffer-nocreate): Merge into dired.el.
+       * dired.el (dired-find-buffer-nocreate): Merge dired-x version.
+       * dired-x.el (dired-read-shell-command): Merge into dired-aux's version.
+       * dired-aux.el (dired-read-shell-command): Merge dired-x's version.
+       * dired-x.el (dired-clean-up-after-deletion): Merge into dired.el.
+       * dired.el (dired-clean-up-after-deletion): Merge dired-x's version.
+       (dired-clean-up-buffers-too): Declare.
+       * dired-x.el (dired-initial-position): Merge into dired.el's version.
+       * dired.el (dired-initial-position): Merge dired-x's version here.
+       (dired-find-subdir): Declare.
+       * dired-x.el (dired-omit-new-add-entry): Merge into dired-add-entry.
+       * dired-aux.el (dired-add-entry): Give it a doc-string.
+       Merge dired-x's dired-omit handling here.
+       (dired-omit-mode, dired-omit-regexp, dired-omit-localp): Declare.
+       * international/mule-diag.el (list-input-methods-1):
+       Indent all lines of multi-line doc-strings.  (Bug#8066)
+ 2011-02-18  Chong Yidong  <cyd@stupidchicken.com>
+       Fix 2011-02-02 changes.
+       * apropos.el (apropos-print): Call apropos-mode before setting up
+       buffer variables.  Use inhibit-read-only.
+       * emacs-lisp/package.el (package--list-packages): Call
+       package-menu-mode before setting up buffer variables.
+       * play/solitaire.el (solitaire): Call solitaire-mode before
+       setting up buffer variables.  Use inhibit-read-only.
+ 2011-02-18  Lawrence Mitchell  <wence@gmx.li>
+       * progmodes/sh-script.el (sh-syntax-propertize-here-doc): (bug#8053)
+       Bind case-fold-search to nil when looking for end of here-doc.
+ 2011-02-18  Eli Zaretskii  <eliz@gnu.org>
+       * image-mode.el (image-toggle-display-image):
+       Set find-file-literally non-nil in buffers visiting binary image
+       files.  (Bug#8047)
+ 2011-02-18  Stefan Monnier  <monnier@iro.umontreal.ca>
+       * files.el (cd): Make completion obey cd-path (bug#7924).
+ 2011-02-18  Glenn Morris  <rgm@gnu.org>
+       * progmodes/prolog.el: Don't require compile when compiling.
+       (compilation-shell-minor-mode, compilation-error-regexp-alist)
+       (compilation-forget-errors, compilation-fake-loc)
+       (compilation-parse-errors-function, compilation-error-list): Declare.
+       (prolog-inferior-mode): Require 'compile.
+       * emulation/cua-base.el (pc-selection-mode): Declare.
+       * emacs-lisp/eieio-custom.el: Set generated-autoload-file.
+       (customize-object): Add autoload cookie.
+       * emacs-lisp/eieio-opt.el: Set generated-autoload-file.
+       (eieio-browse, describe-class, eieio-describe-class)
+       (eieio-describe-constructor, describe-generic, eieio-describe-generic)
+       (eieio-help-mode-augmentation-maybee): Add autoload cookies.
+       * emacs-lisp/eieio.el: Regenerate with automatic autoloads.
+       * Makefile.in (autoloads): Make eieio.el writable.
+       * dired-x.el (dired-clean-up-after-deletion, dired-do-relsymlink)
+       (dired-do-relsymlink-regexp, dired-find-buffer-nocreate): Use #'.
+       (dired-hack-local-variables): Use inhibit-read-only.
+       (dired-guess-default): Simplify.
+       (dired-make-relative-symlink): Use dotimes.
+       (dired-simultaneous-find-file): Use dolist.
+       (dired-mark-sexp): Remove unneeded `if'.  Use line-end-position.
+       (dired-x-hands-off-my-keys): Doc fix.
+       (dired-x-bind-find-file): Doc fix.  Use remapping.
+       (after-init-hook): No need to add dired-x-bind-find-file.
+       (dired-x-find-file, dired-x-find-file-other-window): Doc fixes.
+       No need to call expand-file-name.
+       (dired-filename-at-point): Remove unused locals `end', `filename'.
+ 2011-02-18  Stefan Monnier  <monnier@iro.umontreal.ca>
+       * emacs-lisp/pcase.el (pcase--u1): Understand non-linear patterns.
+ 2011-02-18  Christian Ohler  <ohler@gnu.org>
+       * emacs-lisp/ert.el (ert--setup-results-buffer)
+       (ert-results-pop-to-backtrace-for-test-at-point)
+       (ert-results-pop-to-messages-for-test-at-point)
+       (ert-results-pop-to-should-forms-for-test-at-point)
+       (ert-results-pop-to-timings): Revert parts of change 2011-02-02T17:59:44Z!sds@gnu.org that
+       were incorrect and unnecessary.  This should make `make check'
+       pass again.
+ 2011-02-17  Ken Manheimer  <ken.manheimer@gmail.com>
+       * lisp/allout-widgets.el: (allout-widgets-icons-light-subdir)
+       (allout-widgets-icons-dark-subdir): Track relocations of icons
+       * lisp/allout.el: Remove commentary about remove encryption
+       passphrase mnemonic support and verification.
+       (allout-encrypt-string): (allout-encrypt-string): Recognize epg
+       failure to decrypt gpg2 armored text using gpg1, and indicate that
+       the gpg version *might* be the problem in the error message.
+ 2011-02-17  Deniz Dogan  <deniz.a.m.dogan@gmail.com>
+       * net/rcirc.el (rcirc-float-time): New function.
+       (rcirc-keepalive, rcirc-handler-ctcp-KEEPALIVE)
+       (rcirc-ctcp-sender-PING): Use it.
+ 2011-02-17  Glenn Morris  <rgm@gnu.org>
+       * speedbar.el (speedbar-ignored-modes, speedbar-file-unshown-regexp)
+       (speedbar-update-flag, speedbar-fetch-etags-command)
+       (speedbar-fetch-etags-arguments):
+       * term.el (term-buffer-maximum-size, term-input-chunk-size)
+       (term-completion-autolist, term-completion-addsuffix)
+       (term-completion-recexact, term-completion-fignore):
+       * term/sup-mouse.el (sup-mouse-fast-select-window):
+       * term/x-win.el (x-select-request-type):
+       Convert some defvars with "*" to defcustoms.
+       * shell.el (shell-delimiter-argument-list): Set it to nil.  (Bug#8027)
+       * vc/vc.el (vc-default-previous-version):
+       Remove alias that points nowhere.  (Bug#4496)
+       * dired-x.el (dired-clean-up-after-deletion):
+       kill-buffer does not need save-excursion.
+       (dired-do-run-mail): Doc fix.
+       (dired-filename-at-point): Doc fix.
+       Use looking-at, and skip-chars rather than re search.
+       * dired-x.el (dired-filename-at-point): Fix 8-year old typo.
+ 2011-02-16  Ken Manheimer  <ken.manheimer@gmail.com>
+       * allout-widgets.el: New allout extension that shows allout
+       outline structure with graphical widgets.  'allout-widgets'
+       customize group is an 'allout' subgroup, for easy discovery.
+       * allout.el: Include PGP and GnuPG in Keywords, and other
+       commentary refinements.
+       (allout-abbreviate-flattened-numbering): Rename to
+       allout-flattened-numbering-abbreviation, and
+       define-obsolete-variable-alias the old name.
+       (allout-flattened-numbering-abbreviation): Rename from
+       allout-abbreviate-flattened-numbering.
+       (allout-mode-p): Include among autoloads, for use by other modes
+       with impunity.
+       (allout-listify-exposed):
+       Use allout-flattened-numbering-abbreviation.
+       (allout-encrypt-string): Use set-buffer-multibyte directly.
+       (allout-set-buffer-multibyte): Remove.
+ 2011-02-16  Deniz Dogan  <deniz.a.m.dogan@gmail.com>
+       * simple.el (just-one-space): Remove useless `or' call.
+ 2011-02-16  Alex Harsanyi  <AlexHarsanyi@gmail.com>
+       * soap-client.el (soap-well-known-xmlns, soap-local-xmlns)
+       (soap-default-xmlns, soap-target-xmlns, soap-multi-refs)
+       (soap-decoded-multi-refs, soap-current-wsdl)
+       (soap-encoded-namespaces): Rename CL-style *...* variables.
+ 2011-02-16  Michael Albinus  <michael.albinus@gmx.de>
+       * net/soap-client.el: Add "comm" and "hypermedia" to the
+       keywords.  Reflow too long lines.
+       * net/soap-inspect.el: Ditto.  Require 'cl.
+ 2011-02-16  Bastien Guerry  <bzg@altern.org>
+       * play/doctor.el (doctor-mode): Bugfix: escape the "," character
+       in a `doctor-type' argument.
+ 2011-02-16  Alex Harsanyi  <AlexHarsanyi@gmail.com>
+       * net/soap-client.el:
+       * net/soap-inspect.el: New files.
+ 2011-02-16  Leo  <sdl.web@gmail.com>
+       * dired-x.el (dired-mode-map, dired-extra-startup):
+       Remove dired-copy-filename-as-kill since it's already in dired.el.
+ 2011-02-16  Glenn Morris  <rgm@gnu.org>
+       * dired-x.el (dired-bind-jump, dired-bind-man, dired-bind-info):
+       Doc fixes.  Add :set property, replacing top-level calls.
+       (dired-vm-read-only-folders, dired-vm): Doc fix (drop v. old VM 4).
+       (dired-guess-shell-gnutar): Test tar version rather than system-type.
+       (dired-extra-startup, dired-man, dired-info): Doc fixes.
+       (dired-clean-up-after-deletion): Use when and dolist.
+       (dired-jump): Use unless and when.
+       (dired-virtual): Use line-end-position.
+       (dired-default-directory-alist): Rename from default-directory-alist.
+       (dired-default-directory): Update for above name change.
+       (dired-vm): Drop VM < 5 and simplify.
+       (dired-buffer-more-recently-used-p): Rewrite.
+       (dired-filename-at-point): Use when and or.
+       (dired-x-read-filename-at-point): Rename from read-filename-at-point.
+       Update callers.
+ 2011-02-15  Glenn Morris  <rgm@gnu.org>
+       * dired-x.el: Use easymenu for menu items.  Fix item capitalization.
+ 2011-02-14  Chong Yidong  <cyd@stupidchicken.com>
+       * vc/vc-git.el (vc-git-root-log-format): New option for
+       customizing log format.
+       (vc-git-print-log, vc-git-log-outgoing, vc-git-log-incoming)
+       (vc-git-log-view-mode): Use it.
+       (vc-git-expanded-log-entry): New function.
+       (vc-git-log-view-mode): Use it.  Truncate lines in root log.
+       * vc/vc-hg.el (vc-hg-root-log-template): New option for
+       customizing log format.
+       (vc-hg-print-log): Use it.
+       (vc-hg-expanded-log-entry): New function.
+       (vc-hg-log-view-mode): Use vc-hg-root-log-template and
+       vc-hg-expanded-log-entry.  Truncate lines in root log.
+       * vc/vc-bzr.el (vc-bzr-log-view-mode): Truncate lines in root log.
+       * vc/log-view.el (log-view-mode-menu):
+       Add log-view-toggle-entry-display.
+ 2011-02-14  Glenn Morris  <rgm@gnu.org>
+       * dired-x.el: Don't require man when compiling.
+       (dired-omit-extensions, dired-local-variables-file)
+       (dired-x-hands-off-my-keys): Make them defcustoms.
+       (Man-support-local-filenames, Man-getpage-in-background): Declare.
+       (vm-visit-folder): Declare rather than defining.
+       (dired-x-help-address, dired-x-variable-list): Remove.
+       (dired-x-submit-report): Make it an obsolete alias.
+ 2011-02-14  Juanma Barranquero  <lekktu@gmail.com>
+       * makefile.w32-in (TRAMP_SRC): Remove tramp-imap.el.
+ 2011-02-13  Teodor Zlatanov  <tzz@lifelogs.com>
+       * net/imap.el: Bring it back.
+ 2011-02-13  Alan Mackenzie  <acm@muc.de>
+       * progmodes/cc-fonts.el (c-font-lock-declarations): Remove a
+       narrow-to-region call that cuts context off the end (Bug#7722).
+       * progmodes/cc-engine.el (c-forward-<>-arglist-recur):
+       Refactor nested if-forms with a simple cond.
+       (c-forward-<>-arglist): Revert 2011-01-31 change.
+ 2011-02-13  Chong Yidong  <cyd@stupidchicken.com>
+       * vc/log-view.el: New command log-view-toggle-entry-display for
+       toggling log entries between concise and detailed forms.
+       (log-view-toggle-entry-display): New command.
+       (log-view-mode-map): Bind RET to it.
+       (log-view-expanded-log-entry-function): New variable.
+       (log-view-current-entry, log-view-inside-comment-p)
+       (log-view-current-tag): New functions.
+       (log-view-toggle-mark-entry): Use log-view-current-entry and
+       log-view-end-of-defun instead of searching directly with
+       log-view-message-re.
+       (log-view-end-of-defun): Likewise.  Add optional ARG for
+       compatibility with end-of-defun.
+       (log-view-end-of-defun): Ignore comments and VC buttons.
+       * vc/vc-bzr.el (vc-bzr-expanded-log-entry): New function.
+       (vc-bzr-log-view-mode): Use log-view-expanded-log-entry-function.
+ 2011-02-13  Teodor Zlatanov  <tzz@lifelogs.com>
+       * net/imap.el: Remove file.  All the functionality is in nnimap.el.
+       * net/imap-hash.el: Remove file.
+ 2011-02-13  Michael Albinus  <michael.albinus@gmx.de>
+       * Makefile.in (TRAMP_SRC): Remove tramp-imap.el.
+       * net/tramp.el (tramp-read-passwd): Simplify `auth-source-search'
+       call.
+       * net/tramp-imap.el: Remove file.
+ 2011-02-13  Chong Yidong  <cyd@stupidchicken.com>
+       * vc/vc.el (vc-print-log-setup-buttons): Instead of using the
+       widget library for buttons, just use button.el.
+       * vc/log-view.el (log-view-mode-map): Don't inherit from
+       widget-keymap.
+ 2011-02-12  Glenn Morris  <rgm@gnu.org>
+       * emacs-lisp/cl-seq.el (union, nunion, intersection)
+       (nintersection, set-difference, nset-difference)
+       (set-exclusive-or, nset-exclusive-or): Doc fix.
+       * ediff-ptch.el (ediff-fixup-patch-map): Doc fix.
+       * faces.el (face-attr-match-p): Handle the obsolete :bold and
+       :italic props, so that frame-set-background-mode works.  (Bug#7966)
+       * simple.el (next-error): Doc fix.
+ 2011-02-12  Thierry Volpiatto  <thierry.volpiatto@gmail.com>
+       * dired-aux.el (dired-create-files): Adapt destination name to
+       match the new behavior of copy-directory.
+ 2011-02-12  Chong Yidong  <cyd@stupidchicken.com>
+       * mail/mail-utils.el (mail-dont-reply-to-names): New variable,
+       from rmail-dont-reply-to-names.  Callers changed.
+       (mail-dont-reply-to): Rename from mail-dont-reply-to.
+       (rmail-dont-reply-to): Make it an obsolete alias.
+       * mail/rmail.el (rmail-default-dont-reply-to-names): Default to
+       nil, and make obsolete (Bug#7888).
+       (rmail-dont-reply-to-names): Alias to mail-dont-reply-to-names.
+       * mail/rmailsum.el (rmail-summary-sort-by-correspondent): Doc fix.
+       * mail/rmailsort.el (rmail-sort-by-correspondent)
+       (rmail-select-correspondent): Doc fix.  Use mail-dont-reply-to.
+       * mail/rmail.el (rmail-reply): Use mail-dont-reply-to.
+ 2011-02-12  Thierry Volpiatto  <thierry.volpiatto@gmail.com>
+       * files.el (copy-directory): New argument COPY-CONTENTS for
+       copying directory contents into another existing directory.
+ 2011-02-12  Tassilo Horn  <tassilo@member.fsf.org>
+       * minibuffer.el (completion-table-case-fold): New function for
+       creating a case-insensitive completion table.
+ 2011-02-12  Teodor Zlatanov  <tzz@lifelogs.com>
+       * net/tramp.el (tramp-default-method): Also check if
+       `auth-source-search' is bound.
+       (tramp-read-passwd): Use `auth-source-search' instead of
+       `auto-source-user-or-password'.
+       * net/tramp-imap.el: Autoload `auto-source-search' instead of
+       `auto-source-user-or-password.
+       (tramp-imap-passphrase-callback-function): Use it.
+       * net/imap-hash.el: Autoload `auto-source-search' instead of
+       `auto-source-user-or-password.
+       (imap-hash-open-connection): Use it.
+       * mail/smtpmail.el: Autoload `auto-source-search' instead of
+       `auto-source-user-or-password.
+       (smtpmail-try-auth-methods): Use it.
+ 2011-02-12  Phil Hagelberg  <phil@hagelb.org>
+       * emacs-lisp/package.el: Allow packages to be reinstalled.
+       (package--write-file-no-coding): Remove EXCL arg.
+       (package-unpack-single): Don't use it.
+ 2011-02-12  Karl Pflästerer  <k@rl.pflaesterer.de>  (tiny change)
+       * vc/vc-svn.el: Adapt to Subversion change, with no .svn directory
+       in each sub directory.
+       (vc-svn-registered): Use vc-svn-root.
+       (vc-svn-root): New function.  Make vc-svn-responsible-p an alias.
+       (vc-svn-repository-hostname): Use "svn info".
+ 2011-02-11  Deniz Dogan  <deniz.a.m.dogan@gmail.com>
+       * simple.el (delete-trailing-whitespace): New optional buffer
+       bound parameters.
+ 2011-02-11  Bastien Guerry  <bzg@altern.org>
+       * files.el (basic-save-buffer): save unmodified buffers when
+       the file pointed by buffer-file-name doesn't exist.
+ 2011-02-11  Deniz Dogan  <deniz.a.m.dogan@gmail.com>
+       * net/rcirc.el (defun-rcirc-join): Accept multiple channels.
+ 2011-02-11  Glenn Morris  <rgm@gnu.org>
+       * emacs-lisp/cl-specs.el (multiple-value-bind): Fix debug spec.
+ 2011-02-11  Juanma Barranquero  <lekktu@gmail.com>
+       * net/rcirc.el (rcirc-send-ctcp): Remove spurious arg to `format'.
+ 2011-02-10  Stefan Monnier  <monnier@iro.umontreal.ca>
+       * server.el (server-process-filter): Use pcase.
+       * emacs-lisp/smie.el (smie-blink-matching-open): Don't use `pos' in two
+       conflicting ways.
+       (smie-indent--parent): Extend to "parent of arg".
+       (smie-indent-inside-string): New function.
+       (smie-indent-functions): Use it.
+       * vc/vc-dir.el (vc-dir-refresh): Reorder operations to try and avoid
+       bzr locking race condition.
+       * emacs-lisp/edebug.el (edebug-instrument-function): Check a marker is
+       still valid before using it.
+       * progmodes/grep.el (grep-mode-font-lock-keywords): Adjust to
+       `message' -> `compilation-message' rename (bug#8004).
+       Move keymap initialization into declaration.
+       * textmodes/enriched.el (enriched-mode-map):
+       * textmodes/bib-mode.el (bib-mode-map):
+       * term/lk201.el (lk201-function-map):
+       * tar-mode.el (tar-mode-map):
+       * replace.el (occur-mode-map):
+       * progmodes/idlwave.el (idlwave-rinfo-mouse-map, idlwave-rinfo-map):
+       * progmodes/idlw-help.el (idlwave-help-mode-map):
+       * progmodes/gdb-mi.el (gdb-memory-format-menu, gdb-memory-unit-menu):
+       * play/solitaire.el (solitaire-mode-map):
+       * play/snake.el (snake-mode-map, snake-null-map):
+       * play/pong.el (pong-mode-map):
+       * play/handwrite.el (menu-bar-handwrite-map):
+       * play/gametree.el (gametree-mode-map):
+       * net/rcirc.el (rcirc-mode-map, rcirc-browse-url-map
+       (rcirc-multiline-minor-mode-map, rcirc-track-minor-mode-map):
+       * net/newst-plainview.el (newsticker-menu, newsticker-mode-map)
+       (newsticker--url-keymap):
+       * net/net-utils.el (nslookup-mode-map, ftp-mode-map):
+       * menu-bar.el (menu-bar-file-menu, menu-bar-i-search-menu)
+       (menu-bar-search-menu, menu-bar-replace-menu, menu-bar-goto-menu)
+       (menu-bar-edit-menu, menu-bar-custom-menu)
+       (menu-bar-showhide-fringe-ind-menu, menu-bar-showhide-fringe-menu)
+       (menu-bar-showhide-scroll-bar-menu, menu-bar-showhide-menu)
+       (menu-bar-line-wrapping-menu, menu-bar-options-menu)
+       (menu-bar-games-menu, menu-bar-encryption-decryption-menu)
+       (menu-bar-tools-menu, menu-bar-describe-menu)
+       (menu-bar-search-documentation-menu, menu-bar-manuals-menu)
+       (menu-bar-help-menu):
+       * mail/rmailsum.el (rmail-summary-mode-map):
+       * kmacro.el (kmacro-step-edit-map):
+       * ibuffer.el (ibuffer-mode-groups-popup, ibuffer-mode-map)
+       (ibuffer-mode-operate-map):
+       * hi-lock.el (hi-lock-menu, hi-lock-map):
+       * emulation/vip.el (vip-mode-map):
+       * emacs-lisp/re-builder.el (reb-lisp-mode-map):
+       * bookmark.el (bookmark-bmenu-mode-map):
+       * help-mode.el (help-mode-map): Move initialization into declaration.
+ 2011-02-10  Deniz Dogan  <deniz.a.m.dogan@gmail.com>
+       * net/rcirc.el: Add PRIVMSG and CTCP functions.
+       (rcirc-send-privmsg, rcirc-send-ctcp): New functions.
+       (rcirc-keepalive, rcirc-cmd-ctcp, rcirc-ctcp-sender-PING)
+       (rcirc-cmd-me, rcirc-authenticate): Use them.
+ 2011-02-10  Ken Manheimer  <ken.manheimer@gmail.com>
+       * allout.el: Synopsis: Change allout user configuration so
+       auto-activation is controlled solely by customization
+       `allout-auto-activation'.
+       (allout-auto-activation-helper) (allout-setup): New autoloads
+       implement new custom set procedure for allout-auto-activation.
+       Also, explicitly invoke
+       (allout-setup) after allout-auto-activation is custom-defined, to
+       effect the settings in emacs sessions besides the few where
+       allout-auto-activation customization is donea.
+       (allout-auto-activation): Use allout-auto-activation-helper to
+       :set.  Revise the docstring.
+       (allout-init): Reduce functionality to just customizing
+       allout-auto-activation, and mark obsolete.
+       (allout-mode): Respect string values for allout-auto-activation.
+       Run allout-after-copy-or-kill-hook without any args.
+       (allout-mode) (allout-layout) (allout-default-layout)
+       (outlineify-sticky): Adjust docstring for new scheme.
+       (allout-after-copy-or-kill-hook): No arguments - hook implementers
+       should concentrate on the kill ring.
+ 2011-02-09  Teodor Zlatanov  <tzz@lifelogs.com>
+       * password-cache.el (password-cache-remove): Accept secrets that are
+       not strings.
+ 2011-02-09  Stefan Monnier  <monnier@iro.umontreal.ca>
+       * progmodes/sh-script.el (sh-font-lock-open-heredoc): Fix case
+       of here-doc that immediately follows a comment.
+ 2011-02-09  Deniz Dogan  <deniz.a.m.dogan@gmail.com>
+       * net/rcirc.el (rcirc-ctcp-sender-PING): Simplifying.
+       * net/rcirc.el (rcirc-cmd-ctcp): Use dedicated function when
+       available.
+       (rcirc-ctcp-sender-PING): New function.
+ 2011-02-08  Stefan Monnier  <monnier@iro.umontreal.ca>
+       * obsolete/pc-select.el: Rename from emulation/pc-select.el (bug#7940).
+       Remove the mark/nomark handling, and activate shift-select-mode instead.
+       * obsolete/pc-mode.el: Rename from emulation/pc-mode.el.
+ 2011-02-07  Jay Belanger  <jay.p.belanger@gmail.com>
+       * calc/calc-units.el (math-logunits-quant): Add support for
+       non-logarithmic units.
+ 2011-02-07  Ken Manheimer  <ken.manheimer@gmail.com>
+       * allout.el (allout-after-copy-or-kill-hook): New hook for
+       extension-specific processing of killed text.
+       (allout-mode): Include new allout-after-copy-or-kill-hook among
+       mentioned hooks.
+       (allout-kill-line) (allout-kill-topic): Ensure that processing
+       after kill happens even if barf-if-buffer-read-only is raised.
+       Include new allout-after-copy-or-kill-hook among that subsequent
+       processing.
+       (allout-deannotate-hidden): Actually remove the annotation text
+       properties.
+       * allout.el (allout-listify-exposed): Copy text sans text properties.
+ 2011-02-07  Michael Albinus  <michael.albinus@gmx.de>
+       * net/dbus.el (dbus-list-activatable-names): Add optional argument BUS.
+ 2011-02-07  Deniz Dogan  <deniz.a.m.dogan@gmail.com>
+       * net/rcirc.el (rcirc-handler-317): New function (Bug#6507).
+ 2011-02-06  Jay Belanger  <jay.p.belanger@gmail.com>
+       * calc/calc.el (calc-logunits-field-reference): Rename from
+       `calc-default-field-reference-level'.
+       (calc-logunits-power-reference): Rename from
+       `calc-default-power-reference-level'
+       * calc/calc-units.el (math-logunits-quant): Rename from
+       `math-logunits-level'
+       (math-logunits-plus): Rename from math-logcombine.
+       (calcFunc-luplus, calcFunc-luminus calc-luplus, calc-luminus): Remove.
+       (calcFunc-lufieldadd, calcFunc-lupoweradd, calcFunc-lufieldsub)
+       (calcFunc-lufieldsub,calc-logunits-add calc-logunits-sub):
+       New functions.
+       (calcFunc-fieldquant): Rename from `calcFunc-fieldlevel'.
+       (calcFunc-powerquant): Rename from `calcFunc-powerlevel'.
+       (calc-logunits-quantity): Rename from `calc-level'.
+       (calcFunc-dbfieldlevel, calcFunc-dbpowerlevel, calcFunc-npfieldlevel)
+       (calcFunc-nppowerlevel,calc-logunits-dblevel, calc-logunits-nplevel)
+       (math-logunits-mul, calcFunc-lufieldmul, calcFunc-lupowermul)
+       (calc-logunits-mul, math-logunits-divide, calcFunc-lufielddiv)
+       (calcFunc-lupowerdiv,calc-logunits-divide,math-logunits-level):
+       New functions.
+       * calc/calc-help.el (calc-u-prefix-help): Remove "L" reference.
+       (calc-ul-prefix-help): Remove.
+       (calc-l-prefix-help): New function.
+       (calc-full-help): Add reference to `calc-l-prefix-help'.
+       * calc/calc-ext.el (calc-init-extensions): Update autoloads.
+       * calc/README: Mention logarithmic units.
+ 2011-02-06  Chong Yidong  <cyd@stupidchicken.com>
+       * mail/emacsbug.el (report-emacs-bug-hook): Remove the check for
+       non-ASCII characters (Bug#7925).
+ 2011-02-05  Glenn Morris  <rgm@gnu.org>
+       * emacs-lisp/cl-macs.el (return-from): Fix doc typo.
+       * calendar/diary-lib.el (diary-font-lock-keywords):
+       Tweak diary-time-regexp match.  (Bug#7891)
+       * progmodes/f90.el (f90-find-tag-default): New function.  (Bug#7919)
+       (f90-mode): Use it for mode's `find-tag-default-function' property.
+       * ibuf-ext.el (ibuffer-filter-disable): Make it work.  (Bug#7969)
+       * faces.el (set-face-attribute): Doc fix.  (Bug#2659)
+ 2011-02-05  Deniz Dogan  <deniz.a.m.dogan@gmail.com>
+       * net/rcirc.el (rcirc-handler-JOIN): Reset mode-line-process
+       (Bug#6386).
+ 2011-02-05  Stefan Monnier  <monnier@iro.umontreal.ca>
+       * progmodes/sh-script.el (sh-here-doc-open-re): Don't rely on the
+       font-lock-syntax-table remappings.
+       (sh-here-doc-markers, sh-here-doc-re): Remove.
+       (sh-font-lock-close-heredoc): Remove.
+       (sh-syntax-propertize-here-doc): New function.
+       (sh-font-lock-open-heredoc): Set the sh-here-doc-marker property
+       instead of the sh-here-doc-re.
+       (sh-font-lock-paren): Don't do anything in comments or strings.
+       Handle line continuations.  Accept a few more chars.
+       Don't rely on the font-lock-syntax-table remappings.
+       `esac' is not a valid pattern.
+       (sh-syntax-propertize-function): Handle here-docs differently, so we
+       don't bother syntax-propertizing the insides.
+       * progmodes/sh-script.el (sh-font-lock-paren, sh-kw, sh-prev-thing):
+       Handle new bashisms ";&" and ";;&" (bug#7947).
+ 2011-02-05  Michael Albinus  <michael.albinus@gmx.de>
+       * net/tramp-smb.el (tramp-smb-errors): Use `regexp-opt'.
+       Add "NT_STATUS_IO_TIMEOUT" and "NT_STATUS_NO_SUCH_USER".
+ 2011-02-05  Era Eriksson  <era+tramp@iki.fi>  (tiny change)
+       * net/tramp.el (tramp-postfix-method-format)
+       (tramp-postfix-method-regexp, tramp-prefix-domain-format)
+       (tramp-prefix-domain-regexp, tramp-postfix-user-format)
+       (tramp-postfix-user-regexp, tramp-prefix-port-format)
+       (tramp-prefix-port-regexp, tramp-postfix-host-format)
+       (tramp-postfix-host-regexp, tramp-handle-substitute-in-file-name):
+       Doc fix.
+ 2011-02-04  Sam Steingold  <sds@gnu.org>
+       * mouse.el (mouse-buffer-menu-mode-groups): Add a "GDB" group.
+ 2011-02-04  Andreas Schwab  <schwab@linux-m68k.org>
+       * international/mule-util.el (with-coding-priority): Doc fix.
+ 2011-02-04  Eli Zaretskii  <eliz@gnu.org>
+       * arc-mode.el (archive-mode-map): Fix a typo in last change.
+ 2011-02-03  Sam Steingold  <sds@gnu.org>
+       * progmodes/gdb-mi.el (gdb-breakpoints-list-handler-custom):
+       Do not error out when `func' is nil.
+ 2011-02-03  Michael Albinus  <michael.albinus@gmx.de>
+       * net/tramp-sh.el (tramp-remote-path): Add default settings for
+       `tramp-default-remote-path' to the docstring.
+       (tramp-get-remote-path): Suppress error message when `getconf
+       PATH' fails.
+       * net/tramp-smb.el (tramp-smb-errors): Add "NT_STATUS_UNSUCCESSFUL".
+ 2011-02-03  Glenn Morris  <rgm@gnu.org>
+       * vc/vc-hg.el (vc-hg-command): Doc fix.
+       * term/w32-win.el (libpng-version): Declare for compiler.
+       * msb.el: No need to load dired while compiling.
+       * emacs-lisp/elint.el (elint-standard-variables):
+       Remove a couple of built-ins that now have doc-strings.
+       * hi-lock.el, ps-bdf.el, ps-mule.el, ps-print.el, ps-samp.el:
+       `require' is automatically `eval-and-compile'd.
+       * net/rcirc.el (rcirc-nick-completion-format): Add :version tag.
+       (rcirc-log-directory, rcirc-log-flag): Move definitions before use.
+       * strokes.el (strokes-fill-current-buffer-with-whitespace):
+       Move definition before use.
+       (strokes-report-bug): Make it obsolete.
+ 2011-02-02  Sam Steingold  <sds@gnu.org>
+       * apropos.el (apropos-print): Now that `apropos-mode' inherits
+       from `special-mode', entering it makes the buffer read-only, so
+       call it only when everything has been already inserted.
+       * emacs-lisp/ert.el (ert--setup-results-buffer)
+       (ert-results-pop-to-backtrace-for-test-at-point)
+       (ert-results-pop-to-messages-for-test-at-point)
+       (ert-results-pop-to-timings): Ditto.
+       * emacs-lisp/package.el (package--list-packages): Ditto.
+       * play/solitaire.el (solitaire): Ditto.
+ 2011-02-02  Chong Yidong  <cyd@stupidchicken.com>
+       * progmodes/compile.el: Make all faces inherit.
+       (compilation-warning): Inherit from font-lock-variable-name-face.
+       (compilation-info): Inherit from font-lock-type-face.
+       (compilation-line-number): Reassign to font-lock-keyword-face.
+       (compilation-column-number): Reassign to font-lock-doc-face.
+       (compilation-leave-directory-face): Reassign to
+       font-lock-builtin-face.
+ 2011-02-02  Eli Zaretskii  <eliz@gnu.org>
+       * dired.el (dired-insert-directory): Don't invoke `ls' when
+       ls-lisp.el is used to emulate it.
+ 2011-02-01  Julien Danjou  <julien@danjou.info>
+       * color.el (color-gradient): Add a color-gradient function.
+ 2011-02-01  Sam Steingold  <sds@gnu.org>
+       * simple.el (special-mode-map): Bind "h" to `describe-mode';
+       bind "z" to `kill-this-buffer'.
+       (completion-list-mode-map): Bind "z" to `kill-this-buffer'.
+       * apropos.el (apropos-mode-map): Inherit from `special-mode-map'.
+       (apropos-mode): Inherit from `special-mode'.
+       * arc-mode.el (archive-mode-map): Inherit from `special-mode-map'.
+       * bookmark.el (bookmark-bmenu-mode): Define using
+       `define-derived-mode' inheriting from `special-mode'.
+       * dired.el (dired-mode-map): Inherit from `special-mode-map'.
+       * image-mode.el (image-mode-map): Ditto.
+       * replace.el (occur-mode): Define using
+       `define-derived-mode' inheriting from `special-mode'.
+       * tar-mode.el (tar-mode): Inherit from `special-mode'.
+       * calendar/diary-lib.el (diary-fancy-display-mode):
+       Inherit from `special-mode-map'.
+       * emacs-lisp/ert.el (ert-simple-view-mode, ert-results-mode):
+       Inherit from `special-mode'.
+       * emacs-lisp/package.el (package-menu-mode-map): Copy from
+       `special-mode-map'.
+       (package-menu-mode): Define using `define-derived-mode'
+       inheriting from `special-mode'.
+       * erc/erc-list.el (erc-list-menu-mode): Inherit from `special-mode'.
+       * net/xesam.el (xesam-mode): Inherit from `special-mode'.
+       (xesam-mode-map): Define separately.
+       * play/solitaire.el (solitaire-mode): Inherit from `special-mode'.
+       * progmodes/compile.el (compilation-minor-mode-map)
+       (compilation-mode-map): Inherit from `special-mode-map'.
+       * vc/diff-mode.el (diff-mode-shared-map):
+       Inherit from `special-mode-map'.
+       * vc/log-view.el (log-view-mode-map): Add a comment.
+ 2011-02-01  Chong Yidong  <cyd@stupidchicken.com>
+       * custom.el (load-theme): Define return value.  Drop use of
+       unsafep; call custom-theme-load-confirm for non-known-safe themes.
+       (custom-theme-load-confirm): Scroll in the correct window.
+       (custom-enabled-themes): Add custom-safe-themes to :set-after.
+       * cus-theme.el (custom-theme-checkbox-toggle): Don't activate the
+       checkbox if load-theme fails.
+ 2011-02-01  Stefan Monnier  <monnier@iro.umontreal.ca>
+       * progmodes/compile.el (compilation-next-error): Check there's
+       a message before using it (bug#7941).
+ 2011-02-01  Jay Belanger  <jay.p.belanger@gmail.com>
+       * calc/calc-mtx.el (math-lud-pivot-check): New function.
+       (math-do-matrix-lud): Use `math-lud-pivot-check' to check the size
+       of potential pivots.
+ 2011-01-31  Alan Mackenzie  <acm@muc.de>
+       * progmodes/cc-cmds.el (c-forward-over-illiterals):
+       Continue parsing if we encounter a naked # (Bug#7595).
+       (c-beginning-of-statement): Avoid loop in locating the beginning
+       of a macro.  (Not actually committed until 2011-02-20, see above).
+ 2011-01-31  Chong Yidong  <cyd@stupidchicken.com>
+       * files.el (copy-directory): Fix arguments to recursive call.
+ 2011-01-31  Chong Yidong  <cyd@stupidchicken.com>
+       * files.el (copy-directory): If destination is an existing
+       directory, copy into a subdirectory there.
+ 2011-01-31  Andreas Schwab  <schwab@linux-m68k.org>
+       * emacs-lisp/shadow.el (load-path-shadows-find): Ignore leim-list
+       files.
+ 2011-01-31  Chong Yidong  <cyd@stupidchicken.com>
+       * image-dired.el (image-dired-mouse-display-image): No-op if no
+       file is found (Bug#7817).
+       * mouse.el (mouse-menu-non-singleton): Doc fix (Bug#7801).
+ 2011-01-31  Kenichi Handa  <handa@m17n.org>
+       * international/quail.el (quail-keyboard-layout-alist):
+       Remove superfluous SPC for "pc105-uk" (bug#7927).
+ 2011-01-31  Glenn Morris  <rgm@gnu.org>
+       * msb.el (msb-menu-bar-update-buffers): Update for changed
+       argument handling of menu-bar-select-frame.  (Bug#7902)
+ 2011-01-31  Chong Yidong  <cyd@stupidchicken.com>
+       * progmodes/cc-engine.el (c-forward-<>-arglist-recur): Set a limit
+       to the recursion depth (Bug#7722).
+ 2011-01-31  Roy Liu  <carsomyr@gmail.com>  (tiny change)
+       * term/ns-win.el (ns-find-file): Expand ns-input-file with
+       command-line-default-directory (Bug#7872).
+ 2011-01-31  Stefan Monnier  <monnier@iro.umontreal.ca>
+       * progmodes/compile.el (compilation--flush-directory-cache):
+       New function, extracted from compilation--remove-properties.
+       (compilation--remove-properties, compilation--parse-region): Use it.
+       (compilation--previous-directory): Handle one more case.
+       (compilation-enable-debug-messages): Remove.
+       (compilation-parse-errors, compilation--flush-parse): Just remove the
+       left over debug messages.
+ 2011-01-31  Sam Steingold  <sds@gnu.org>
+       * progmodes/compile.el (compilation-enable-debug-messages):
+       Add a variable to make the parsing messages introduced in
+       2011-01-28T22:12:05Z!monnier@iro.umontreal.ca optional.
+       (compilation-parse-errors, compilation--flush-parse): Use it.
+ 2011-01-31  Deniz Dogan  <deniz.a.m.dogan@gmail.com>
+       * net/rcirc.el: New customizable nick completion format.  (Bug#6314)
+       (rcirc-nick-completion-format): New defcustom.
+       (rcirc-complete): Use it.
+ 2011-01-31  Deniz Dogan  <deniz.a.m.dogan@gmail.com>
+       * net/rcirc.el: Clean log filenames (Bug#7933).
+       (rcirc-log-write): Use convert-standard-filename.
+       (rcirc-log-filename-function): Documentation updates.
+ 2011-01-30  Jan Djärv  <jan.h.d@swipnet.se>
+       * mail/emacsbug.el (report-emacs-bug-insert-to-mailer):
+       Check report-emacs-bug-can-use-osx-open and use that if t.
+       (report-emacs-bug-can-use-osx-open): New function.
+       (report-emacs-bug): Rename can-xdg-email to can-insert-mail.
+       Check report-emacs-bug-can-use-osx-open also for can-insert-mail.
+ 2011-01-29  Chong Yidong  <cyd@stupidchicken.com>
+       * vc/vc-dispatcher.el (vc-set-async-update): New function for
+       updating Dired or VC-dir buffers after async command completes.
+       * vc/vc-bzr.el (vc-bzr-async-command): Return the process buffer.
+       (vc-bzr-pull, vc-bzr-merge-branch): Use vc-set-async-update.
+       * vc/vc-git.el (vc-git-merge-branch): Add FETCH_HEAD to branch
+       completions if it exists.  Use vc-set-async-update.
+       (vc-git-pull): Use vc-set-async-update.
+       * vc/vc-hg.el (vc-hg-pull): Fix default-contents arg to
+       read-shell-command.  Use vc-set-async-update.
+       (vc-hg-merge-branch): Use vc-set-async-update.
+ 2011-01-29  Daiki Ueno  <ueno@unixuser.org>
+       * epg.el (epg--status-KEYEXPIRED, epg--status-KEYREVOKED):
+       Don't presume KEYEXPIRED and KEYREVOKED to be a fatal error status
+       (Bug#7931).
+ 2011-01-29  Stefan Monnier  <monnier@iro.umontreal.ca>
+       * progmodes/compile.el: Avoid an N² behavior in grep.
+       (compilation--previous-directory): New fun.
+       (compilation--previous-directory-cache): New var.
+       (compilation--remove-properties): Flush it.
+       (compilation-directory-properties, compilation-error-properties):
+       Use the new fun to speed up looking for the current directory.
+ 2011-01-29  Chong Yidong  <cyd@stupidchicken.com>
+       * vc/vc-hg.el (vc-hg-history): New var.
+       (vc-hg-pull): Perform default pull if called via Lisp by vc-pull.
+       (vc-hg-merge-branch): New function.
+       * vc/vc.el (vc-pull): Make vc-update an alias for this, instead of
+       the other way around.
+       * vc/vc-git.el (vc-git-branches, vc-git-pull)
+       (vc-git-merge-branch): New functions.
+       (vc-git-history): New var.
+ 2011-01-28  Chong Yidong  <cyd@stupidchicken.com>
+       * vc/vc-dispatcher.el (vc-do-async-command): New function.
+       * vc/vc-bzr.el (vc-bzr-async-command): Convert into a wrapper for
+       vc-do-async-command.
+       * vc/vc-bzr.el (vc-bzr-pull, vc-bzr-merge-branch):
+       Callers changed.
+ 2011-01-28  Leo  <sdl.web@gmail.com>
+       * emacs-lisp/advice.el (ad-make-advised-docstring): Don't apply
+       highlighting to the "this function is advised" message.
+       * help-mode.el (help-mode-finish): Apply highlighting here, to
+       avoid clobbering by substitute-command-keys (Bug#6304).
+ 2011-01-28  Chong Yidong  <cyd@stupidchicken.com>
+       * woman.el (woman0-roff-buffer): Process roff escape sequences
+       occurring prior to the first request (Bug#7843).
+ 2011-01-28  Stefan Monnier  <monnier@iro.umontreal.ca>
+       * progmodes/compile.el: Don't use font-lock any more.
+       (compilation-error-regexp-alist-alist): Change handling of makepp
+       so it preserves the warning/error distinction on subsequent files.
+       Simplify various rules.
+       (compilation-directory-properties): Use font-lock-face.
+       Add a compilation-message property.
+       (compilation-internal-error-properties): Use font-lock-face.
+       Don't set the compilation-debug property here.
+       (compilation--put-prop, compilation--remove-properties)
+       (compilation--parse-region, compilation--ensure-parse)
+       (compilation--ensure-parse): New functions.
+       (compilation-parse-errors): New function, largely inspired of
+       compilation-mode-font-lock-keywords.  Set compilation-debug here.
+       (compilation--parsed): New var.
+       (compilation--flush-parse): Use compilation--ensure-parse.
+       (compilation-start): Don't call font-lock.
+       (compilation-turn-on-font-lock): Remove.
+       (compilation-setup): Don't set font-lock-extra-managed-props not change
+       other font-lock settings, other than keywords.
+       Don't activate font-lock-mode.
+       Set change-major-mode-hook and before-change-functions.
+       (compilation--unsetup): Remove properties and hooks.
+       (compilation-next-single-property-change): New function.
+       (compilation-next-error): Use it to parse when needed.
+       (compile-goto-error): Parse buffer as needed.
+       (compilation--compat-error-properties): Don't need a dummy `face'
+       property any more.
+ 2011-01-28  Stefan Monnier  <monnier@iro.umontreal.ca>
+       * progmodes/compile.el: Use accessors for clarity and fix omake hack.
+       (compilation-process-setup-function): Fix docstring's false promises.
+       (compilation-error-regexp-alist-alist): Catch omake's continuous
+       recompilation message and avoid reuse of old markers.
+       (compilation-parse-errors-function): Declare obsolete.
+       (compilation-buffer-modtime): Remove.
+       (compilation--make-cdrloc, compilation--loc->col)
+       (compilation--loc->line, compilation--loc->file-struct)
+       (compilation--loc->marker, compilation--loc->visited)
+       (compilation--make-file-struct, compilation--file-struct->file-spec)
+       (compilation--file-struct->formats)
+       (compilation--file-struct->loc-tree): New macros.  Use them.
+       (compilation--message): New defstruct.  Use them.
+       (compilation-next-error-function): Don't mess with timestamps to try
+       and guess when to reparse.
+ 2011-01-28  Stefan Monnier  <monnier@iro.umontreal.ca>
+       * textmodes/tex-mode.el: Get rid of compilation-parse-errors-function
+       (tex-old-error-file-name): New function,
+       extracted from tex-compilation-parse-errors.
+       (tex-compilation-parse-errors): Remove.
+       (tex-error-regexp-alist): New var.
+       (tex-shell): Use it to avoid compilation-parse-errors-function.
+       * progmodes/grep.el (grep-regexp-alist): Tighten regexp.
+       (grep-mode-font-lock-keywords): Remove regexp that seems like
+       a left-over from before we used compile.el.
+       (grep-mode-font-lock-keywords): Call syntax-ppss-flush-cache when
+       modifying the buffer within with-silent-modifications.
+       * progmodes/compile.el: Cleanup text-properties namespace by using
+       `compilation-message' instead of `message', `compilation-directory'
+       instead of `directory', and `compilation-debug' instead of `debug'.
+       (compilation-last-buffer, compilation-parsing-end)
+       (compilation-error-list, compilation-old-error-list): Move to the
+       compatibility part of the code.
+       (compilation-error-properties): If `file' is a function, let it return
+       a file name.
+       (compilation-mode-font-lock-keywords): Be more conservative with the
+       omake "^ *" pattern prefix, to try and minimize the risk of
+       pathologically slow regexp matching.
+       (compilation-start): Use inhibit-read-only.
+       (compilation--unsetup): New function.
+       (compilation-shell-minor-mode, compilation-minor-mode): Use it.
+       (compilation-filter): Minor tweaks.
+       (compilation-next-error-function): Try and avoid abusing variables.
+       (compilation--flush-file-structure): New fun.
+       (compilation-fake-loc): Use it to improve behavior when file is reused.
+       (debug-ignored-errors): Add "Moved past last ...".
+       (compilation--compat-error-properties)
+       (compilation--compat-parse-errors): Rename by doubling the "-".
+       Port features from the previous prolog.el to the new one.
+       * progmodes/prolog.el (prolog-system): Add GNU and ECLiPSe options.
+       (prolog-program-name, prolog-program-switches, prolog-consult-string)
+       (prolog-compile-string, prolog-prompt-regexp): Get rid of the <foo>-i
+       variable and use a function to compute the value dynamically.
+       (prolog-prompt-regexp): Add regexp for GNU Prolog.
+       (prolog-continued-prompt-regexp): Remove, unused.
+       (prolog-find-value-by-system): Try and use the value of prolog-system
+       in the *prolog* buffer if it helps.
+       (prolog-mode-keybindings-common): Bind C-c C-z unconditionally...
+       (prolog-zip-on): ..and check prolog-system and version here instead.
+       (prolog-inferior-self-insert-command): New command.
+       (prolog-inferior-mode-map): Use it.
+       (prolog-inferior-error-regexp-alist): New var.
+       (prolog-inferior-mode): Use it, with compilation-shell-minor-mode.
+       (prolog-input-filter): Use derived-mode-p.
+       (prolog-inferior-guess-flavor): New function.
+       (prolog-ensure-process): Use it.  Use make-comint-in-buffer rather than
+       make-comint to avoid running comint-mode twice.
+       (prolog-inferior-buffer): New fun.
+       (prolog-old-process-region, prolog-old-process-file):
+       Don't call prolog-bsts here...
+       (prolog-build-prolog-command): ...do it here instead.
+       (prolog-old-process-region, prolog-old-process-file):
+       Use compilation-fake-loc and compilation-forget-errors.
+       (prolog-consult-compile-region): Use bolp.
+ 2011-01-28  Chong Yidong  <cyd@stupidchicken.com>
+       * image-mode.el (image-display-size): Doc fix (Bug#7820).
+ 2011-01-27  Sam Steingold  <sds@gnu.org>
+       * midnight.el (clean-buffer-list-kill-never-buffer-names):
+       Remove "*server*" which is never created by emacs server.
+ 2011-01-27  Deniz Dogan  <deniz.a.m.dogan@gmail.com>
+       * vc/vc-bzr.el (vc-bzr-diff): Don't pass --diff-options unless
+       there are some diff switches.
+ 2011-01-27  Stefan Monnier  <monnier@iro.umontreal.ca>
+       * progmodes/ruby-mode.el (ruby-syntax-propertize-function):
+       Copy change made to ruby-font-lock-syntactic-keywords.
+       * htmlfontify.el: Make it obey the font-lock-face text property.
+       Miscellaneous cleanup such as:
+       - Don't hide expressions after a closing paren.
+       - Move initial setq into let.
+       - Hoist common parts out of ifs.
+       (hfy-p-to-face, hfy-p-to-face-lennart): Remove.
+       (hfy-face-at): Use get-text-property instead.
+       (hfy-prop-invisible-p): Use invisible-p if available.
+       (htmlfontify-manual): Use \\[...].
+       (hfy-html-quote-regex): Use [...].
+       (hfy-combined-face-spec): Simplify.
+       (hfy-compile-face-map): Don't presume point-min==1.
+       (hfy-css-name, hfy-buffer, htmlfontify-buffer): Use \' rather than $ to
+       match end of string.
+       (hfy-text-p): Î·-reduce.
+       (hfy-tags-for-file): Receive cache-hash directly.
+       (hfy-mark-tag-names): Adjust call.
+ 2011-01-27  Glenn Morris  <rgm@gnu.org>
+       * msb.el (msb-after-load-hooks): Make it an obsolete alias.
+       (msb-after-load-hook): Remove eval-after-load wackiness.
+ 2011-01-25  Sam Steingold  <sds@gnu.org>
+       * vc/vc-svn.el (vc-svn-diff): Use `diff-command' instead of the
+       literal "diff" (important for windows-nt).
+ 2011-01-25  Glenn Morris  <rgm@gnu.org>
+       * emacs-lisp/copyright.el (copyright-at-end-flag)
+       (copyright-names-regexp): Add safety properties.
+       (copyright-year-ranges): New option.
+       (copyright-find-end): New function, split from copyright-update-year.
+       (copyright-update-year): Use copyright-find-end.
+       (copyright-fix-years): Optionally, convert years to ranges.
+       Handle years continued over comment lines.
+       Do not mess with the fill-prefix.
+       Do not call copyright-update.
+       (copyright-update-directory): Optionally, fix years rather than update.
+       Skip directories.  Find files with only safe local vars.
+ 2011-01-25  Stefan Monnier  <monnier@iro.umontreal.ca>
+       * files.el (file-name-non-special): Only change buffer-file-name after
+       insert-file-contents if it's `visit'ing the file (bug#7854).
+ 2011-01-25  Chong Yidong  <cyd@stupidchicken.com>
+       * dired.el (dired-revert): Doc fix (Bug#7758).
+       * simple.el (line-move-visual): Doc fix (Bug#7594).
+ 2011-01-25  Nobuyoshi Nakada  <nobu@ruby-lang.org>
+       * progmodes/ruby-mode.el (ruby-here-doc-beg-match): Fix for
+       here-doc which ends with an underscore.
+       (ruby-mode-set-encoding): Skip shebang line always.
+       (ruby-mode-map): Bind C-c C-c to comment-region.
+       (ruby-font-lock-keywords): Highlight literal hash key labels as symbols.
+       (ruby-forward-sexp): Stop after literal hash key labels.
+       (ruby-font-lock-syntactic-keywords): Highlight regexp after open
+       bracket.
+ 2011-01-25  Keitaro Miyazaki  <keitaro.miyazaki@gmail.com>  (tiny change)
+       * emacs-lisp/re-builder.el (reb-mode-map): Set case-fold-search in
+       the correct buffer (Bug#7650).
+ 2011-01-25  Glenn Morris  <rgm@gnu.org>
+       * comint.el (comint-mode): Doc fix.  (Bug#7897)
+       * simple.el (do-auto-fill): Give it a doc string.
+       * button.el (make-text-button): Doc fix.  (See bug#7881)
+ 2011-01-24  Stefan Monnier  <monnier@iro.umontreal.ca>
+       * progmodes/perl-mode.el (perl-syntax-propertize-special-constructs):
+       Don't move backward, so as not to fall in an inf-loop (bug#7736).
+       * progmodes/ruby-mode.el (ruby-syntax-propertize-function): (bug#7735)
+       Handle ?" and friends differently (e.g. don't use backrefs).
+ 2011-01-24  Jay Belanger  <jay.p.belanger@gmail.com>
+       * calc/calc.el (calc-default-power-reference-level)
+       (calc-default-field-reference-level): New variables.
+       * calc/calc-units.el (math-standard-units): Add dB and Np.
+       (math-logunits): New variable.
+       (math-extract-logunits, math-logcombine, calcFunc-luplus)
+       (calcFunc-luminus, calc-luplus, calc-luminus, math-logunit-level)
+       (calcFunc-fieldlevel, calcFunc-powerlevel, calc-level):
+       New functions.
+       (math-find-base-units-rec): Add entry for ln(10).
+       * calc/calc-help.el (calc-u-prefix-help): Add logarithmic help.
+       (calc-ul-prefix-help): New function.
+       * calc/calc-ext.el (calc-init-extensions): Autoload new units
+       functions.  Add keybindings for new units functions.
 +2011-01-22  Martin Rudalics  <rudalics@gmx.at>
 +
 +      * window.el (display-buffer-pop-up-frame): Fix typo.  Pass
 +      pop-up-frame-alist to pop-up-frame-function only if the latter
 +      is a symbol.
 +
+ 2011-01-22  Giorgos Keramidas  <keramida@ceid.upatras.gr>  (tiny change)
+       * net/rcirc.el (rcirc-kill-buffer-hook): Flush logs when killing
+       rcirc buffers.  (Bug#4940)
+ 2011-01-22  Glenn Morris  <rgm@gnu.org>
+       * emacs-lisp/copyright.el (copyright-find-copyright): New function,
+       split out from copyright-update-year.
+       (copyright-update): Don't mess with the GPL version if we don't own the
+       copyright.  Update license regexp, and remove no longer needed
+       Esperanto stuff.
+       (copyright-fix-years): Use copyright-find-copyright.
+ 2011-01-22  Chong Yidong  <cyd@stupidchicken.com>
+       * vc/diff.el (diff-sentinel): Doc fix (Bug#7682).
+ 2011-01-22  Jari Aalto  <jari.aalto@cante.net>
+       * play/landmark.el: Change `lm-' prefix to `landmark-' (Bug#7672).
+       (lm): Rename to landmark.
+       (lm-test-run): Rename to landmark-test-run.
+ 2011-01-22  Chong Yidong  <cyd@stupidchicken.com>
+       * emacs-lisp/re-builder.el (reb-mode-map): Fix logic error in
+       "Case sensitive" menu item.
+ 2011-01-22  Roland McGrath  <roland@frob.com>
+       * comint.el (comint-replace-by-expanded-history-before-point): Fix
+       expansion of !$ and !!:N syntax to pick the indicated word (bug#7883).
+ 2011-01-22  Stefan Monnier  <monnier@iro.umontreal.ca>
+       * progmodes/js.el (js--regexp-literal): Count backslashes (bug#7882).
+ 2011-01-22  Jari Aalto  <jari.aalto@cante.net>
+       * emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
+       Assume foo(bar) is a manpage reference rather than some unquoted
+       symbol (bug#7705).
+ 2011-01-22  Stefan Monnier  <monnier@iro.umontreal.ca>
+       * subr.el (shell-quote-argument): Properly quote \n (bug#7687).
+       Suggested by Flo <sensorflo@gmail.com>.
+ 2011-01-22  Glenn Morris  <rgm@gnu.org>
+       * progmodes/compile.el (compilation-error-regexp-alist):
+       Fix custom type.  (Bug#7812)
+ 2011-01-22  Ken Manheimer  <ken.manheimer@gmail.com>
+       * allout.el (allout-prefixed-keybindings): Bind (prefixed) '#' to
+       allout-number-siblings, in keeping with what obtained due to
+       (now-defunct) allout-keybindings-list.  Ditch repeat binding to
+       (prefixed) ?i.
+       (allout-before-change-handler): Better expose spots affected by
+       undo.
+ 2011-01-22  Chong Yidong  <cyd@stupidchicken.com>
+       * man.el (Man-highlight-references0): Use make-button (Bug#7881).
+ 2011-01-22  Phil Hagelberg  <phil@evri.com>
+       * pcmpl-unix.el (pcmpl-ssh-config-file): New option.
+       (pcmpl-ssh-known-hosts): Rename from pcmpl-ssh-hosts.
+       (pcmpl-ssh-config-hosts): New function.
+       (pcmpl-ssh-hosts): Use pcmpl-ssh-config-hosts in addition to
+       pcmpl-ssh-known-hosts.
 +2011-01-21  Martin Rudalics  <rudalics@gmx.at>
 +
 +      * frame.el (pop-up-frame-alist, pop-up-frame-function)
 +      (special-display-frame-alist, special-display-popup-frame): Move
 +      to window.el.
 +
 +      * window.el (display-buffer-alist): Remove some specifiers from
 +      default value.  Fix some typos.
 +      (pop-up-frame-alist, pop-up-frame-function)
 +      (special-display-frame-alist, special-display-popup-frame): Move
 +      here from frame.el.  Disable byte compiler obsolete warnings.
 +      (special-display-p, same-window-p): Restore Emacs 23 definitions
 +      with obsolete warnings for byte compiler disabled.
 +
+ 2011-01-21  Jay Belanger  <jay.p.belanger@gmail.com>
+       * calc/calc-undo.el (calc-undo): Autoload it.
+       * calc/calc-ext.el (calc-init-extensions): Remove keybindings
+       and autoload for `calc-undo'.
+       * calc/calc.el (calc-mode-map): Add keybindings for `calc-undo'.
+       * calc/calc-prog.el:
+       * calc/calc-graph.el:
+       * calc/calc-map.el: Change `arglist' to `math-arglist' throughout.
+ 2011-01-21  Å tÄ›pán NÄ›mec  <stepnem@gmail.com>  (tiny change)
+       * calc/calc-ext.el (calc-init-extensions): Map all `undo'
+       keybindings to `calc-undo'.
+ 2011-01-20  Stefan Monnier  <monnier@iro.umontreal.ca>
+       Don't mess with *temp*.
+       * obsolete/spell.el: Move from textmodes/spell.el.
+       (spell-string):
+       * term.el (term-read-input-ring):
+       * startup.el (display-startup-echo-area-message):
+       * progmodes/antlr-mode.el (antlr-directory-dependencies):
+       * comint.el (comint-read-input-ring): Use with-temp-buffer.
+       * international/mule.el (ctext-pre-write-conversion): Don't hardcode
+       point-min==1.
+ 2011-01-20  Ken Manheimer  <ken.manheimer@gmail.com>
+       * allout.el (allout-institute-keymap): Use fset instead of
+       reapplying defalias.
+       (allout-hotspot-key-handler): Check for non-control-modified
+       bindings for hotspot characters if there are no control-modified
+       versions.
+       * allout.el: Summary - migrate to defining allout mode using
+       define-minor-mode instead of defun.  Significantly clean-up
+       internal keymap provisions, refactoring and, in the process,
+       removing a lot of accumulated cruft.
+       allout-mode-map is now a keymap by virtue of being a defalias to
+       allout-mode-map-value, which contains the actual keymap structure.
+       (allout-mode): Use define-minor-mode rather than defun.
+       Remove now-unnecessary minor-mode setup activities from the body.
+       Specify :keymap as allout-mode-map so the minor-mode-map-alist
+       entry will be '(allout-mode . allout-mode-map) - see
+       allout-mode-map-value, below.  Adjust docstring to track changes.
+       (allout-minor-mode): Remove this defalias, now that we're using
+       define-minor-mode.
+       (allout-mode-map): Set value to be 'allout-mode-map.  The actual
+       keymap is allout-mode-map-value, via defalias.
+       (allout-mode-map-value): The variable holding the actual mode
+       keymap structure, by virtue of defalias from allout-mode-map.
+       (allout-compose-and-institute-keymap): Rename from
+       allout-bind-keys, and including the binding-composition
+       functionality of the former produce-allout-mode-map and
+       allout-setup-mode-map.
+       (allout-institute-keymap): Take over the "setup" part of the former
+       allout-setup-mode-map.  Reassign allout-mode-map-value value and
+       update the defalias.
+       (allout-command-prefix) (allout-prefixed-keybindings)
+       (allout-unprefixed-keybindings):
+       Use allout-compose-and-institute-keymap to process the bindings.
+       (allout-unprefixed-keybindings): Remove extraneous '?' question
+       marks.
+       (allout-prefixed-keybindings): Elide binding to (prefixed) \C-h -
+       user can customize if they want to use that binding.
+       Bind allout-copy-topic-as-kill to (prefixed) \M-k.
+       Bind allout-up-current-level to (prefixed) \C-u.  (I think i mistakenly
+       elided that, previously, instead of the one for \C-h.)
+       (allout-hotspot-key-handler): Remove attempt to resolve the key
+       through the literal key-string lookup on allout-keybindings-list.
+       That probably hasn't worked for a Long Time, and removal of
+       allout-keybindings-list further simplifies the keybindings
+       situation.
+       (allout-pre-command-business): Use allout-mode-map-value instead
+       of allout-mode-map.
+       (allout-preempt-trailing-ctrl-h): Remove.  The user can customize
+       the bindings if they want to use a keybinding having a trailing
+       \C-h.  No deprecation needed since this feature was never in a
+       release.
+       (allout-keybindings-list): Remove.  It's not been useful for a
+       while.  (See allout-hotspot-key-handler changes, above.)
+       (produce-allout-mode-map): Remove.  Consolidate into
+       allout-compose-and-institute-keymap.
+       (allout-mode-map-adjustments): Remove.  No longer necessary with
+       removal of allout-preempt-trailing-ctrl-h.
+       (allout-setup-mode-map): Remove.  Consolidate into
+       allout-compose-and-institute-keymap and allout-institute-keymap.
+ 2011-01-20  Glenn Morris  <rgm@gnu.org>
+       * vc/vc-svn.el (vc-svn-after-dir-status): Tweak previous change.
+       * simple.el (read-expression-history): Remove, it's in minibuf.c.
+ 2011-01-20  Chong Yidong  <cyd@stupidchicken.com>
+       * subr.el (y-or-n-p): Revert 2011-01-07 change, removing ARGS.
+       * files.el (find-alternate-file, basic-save-buffer)
+       (basic-save-buffer-2, revert-buffer, recover-file)
+       (kill-buffer-ask, abort-if-file-too-large)
+       (set-visited-file-name, write-file, backup-buffer)
+       (basic-save-buffer, save-some-buffers):
+       * dired-aux.el (dired-compress-file): Callers changed.
 +2011-01-19  Martin Rudalics  <rudalics@gmx.at>
 +
 +      * window.el (delete-other-windows): Mention return value in
 +      doc-string.
 +      (display-buffer-method-specifiers): Remove variable.
 +      (display-buffer-alist): Add fun-with-args specifier.
 +      (display-buffer-even-sizes): Simplify code.
 +      (display-buffer): Handle fun-with-args specifier.
 +      (mouse-autoselect-window-select): Replace condition-case by
 +      ignore-errors.
 +
+ 2011-01-19  Glenn Morris  <rgm@gnu.org>
+       * vc/vc-svn.el (vc-svn-after-dir-status, vc-svn-parse-status):
+       Also check the property status.  (Bug#7861)
+ 2011-01-18  Michael Albinus  <michael.albinus@gmx.de>
+       * net/tramp.el (tramp-debug-message): Extend function exclude
+       list.  Use `regexp-opt'.
+ 2011-01-18  Stefan Monnier  <monnier@iro.umontreal.ca>
+       * textmodes/tex-mode.el (tex-font-lock-verb): Make sure \verb
+       highlighting doesn't spill over subsequent lines.
+       * emacs-lisp/easy-mmode.el (define-minor-mode): Don't re-evaluate the
+       keymap expression.  Improve docstring.
+       * electric.el (electric-indent-post-self-insert-function):
+       Don't auto-indent for indent-to-left-margin, it's too often
+       counter-productive.
 +2011-01-17  Martin Rudalics  <rudalics@gmx.at>
 +
 +      * window.el (display-buffer-even-sizes): Fix typo.
 +
+ 2011-01-16  Tassilo Horn  <tassilo@member.fsf.org>
+       * strokes.el (strokes-read-stroke): Re-fill strokes buffer with
+       spaces if the frame was resized, so that the full visible buffer
+       serves as canvas for strokes.
+ 2011-01-16  Glenn Morris  <rgm@gnu.org>
+       * info-xref.el (info-xref-docstrings): Replace cl function.
+       Also skip directories.
+ 2011-01-16  Kevin Ryde  <user42@zip.com.au>
+       * info-xref.el: Version 3.
+       (info-xref-check, info-xref-check-all): Move commentary details
+       into docstrings for better visibility.
+       Use compilation-mode for the results buffer.
+       (info-xref-output, info-xref-output-error, info-xref-with-output)
+       (info-xref-filename, info-xref-in-progress):
+       New internals for this.
+       (info-xref-check-list, info-xref-check-buffer)
+       (info-xref-check-all-custom): Use those.
+       (info-xref-output-buffer): Rename from info-xref-results-buffer.
+       (info-xref-output-heading): Rename from info-xref-filename-heading.
+       (info-xref-good, info-xref-bad, info-xref-xfile-alist)
+       (info-xref-filename-heading): Move to output managing section.
+       (info-xref-docstrings): New command checking "Info node `(foo)Bar'"
+       (info-xref-lock-file-p, info-xref-with-file): New helpers for it.
+       (info-xref-subfile-p): Move to generic section with those two.
+       (info-xref-check-node): New function split from
+       info-xref-check-buffer, shared by info-xref-docstrings.
+       (info-xref-goto-node-p): Move to a checking section with that func.
+       (info-xref-unavail): New counter.
+       (info-xref-check-node): Use it.
+       (info-xref-with-output): Show count of unavailables at end of output.
+       (info-xref-all-info-files): Exclude ".*" dotfiles.  Ignore broken
+       symlinks.  Exclude .texi files.  Exclude Emacs backup files.
+       (info-xref-check-all-custom): Fix quietening viper-mode and
+       gnus-registry-install -- use setq not let so as not to unbind
+       after load.
+ 2011-01-16  Juri Linkov  <juri@jurta.org>
+       * isearch.el (isearch-abort): Don't quit if search has
+       an incomplete regexp (isearch-error is non-nil).  (Bug#7534)
+ 2011-01-15  Mark Diekhans  <markd@soe.ucsc.edu>
+       * files.el (backup-buffer): Make last-resort backup file in
+       .emacs.d (Bug#6953).
+       * subr.el (locate-user-emacs-file): If .emacs.d does not exist,
+       make it with permission 700.
+ 2011-01-15  Kenichi Handa  <handa@m17n.org>
+       * mail/rmailmm.el (rmail-mime-insert-header):
+       Set rmail-mime-coding-system to a cons whose car is the last coding
+       system used to decode the header.
+       (rmail-mime-find-header-encoding): New function.
+       (rmail-mime-insert-decoded-text):
+       Override rmail-mime-coding-system if it is a cons.
+       (rmail-show-mime): If only a header part was decoded, find the
+       coding system while ignoring mm-charset-override-alist.
+ 2011-01-15  Chong Yidong  <cyd@stupidchicken.com>
+       * subr.el (event-start, event-end): Doc fix (Bug#7826).
+ 2011-01-15  Kenichi Handa  <handa@m17n.org>
+       * mail/rmailmm.el (rmail-mime-next-item)
+       (rmail-mime-previous-item): Delete them.
+       (rmail-mime-shown-mode): Recursively call for children.
+       (rmail-mime-hidden-mode): Delete the 2nd arg TOP.
+       Callers changed.
+       (rmail-mime-raw-mode): Recursively call for children.
+       (rmail-mode-map): Change mapping of tab and backtab to
+       forward-button and backward-button respectively.
+       (rmail-mime-insert-tagline): Always insert "Hide" or "Show"
+       button.
+       (rmail-mime-update-tagline): New function.
+       (rmail-mime-insert-text): Call rmail-mime-update-tagline if the
+       body display is changed.
+       (rmail-mime-toggle-button): Rename from rmail-mime-image.
+       (rmail-mime-image): Delete this button type.
+       (rmail-mime-toggle): New button type.
+       (rmail-mime-insert-bulk): Call rmail-mime-update-tagline if the
+       body display is changed.  Change the save button label to "Save".
+       Don't process show/hide button here.
+       (rmail-mime-insert-multipart): Call rmail-mime-update-tagline if
+       the body display is changed.  Unconditionally call
+       rmail-mime-insert for children.
+       (rmail-mime-handle): Update `display' vector of the just inserted
+       entity.
+       (rmail-mime-process): If mail-header-parse-content-type returns
+       nil, use "text/plain" as the fallback type.
+       (rmail-mime-insert): For raw-mode, recursively call
+       rmail-mim-insert for children.
+       (rmail-mime): Handle the case that the current buffer is not rmail
+       buffer (e.g. in summary buffer).
+ 2011-01-15  Kenichi Handa  <handa@m17n.org>
+       * mail/rmailmm.el (rmail-mime-next-item)
+       (rmail-mime-previous-item): Skip the body of a non-multipart
+       entity if a tagline is shown.
+ 2011-01-15  Stefan Monnier  <monnier@iro.umontreal.ca>
+       * tmm.el (tmm-get-keymap): Skip bindings without labels (bug#7721).
+       (tmm-prompt): Simplify.
+       (tmm-add-prompt): Remove unused var `win'.
+       * whitespace.el (global-whitespace-newline-mode): Fix call (bug#7810)
+       to minor mode which used nil accidentally to mean "turn off".
+ 2011-01-15  Michael Albinus  <michael.albinus@gmx.de>
+       * net/tramp-sh.el (tramp-find-inline-compress)
+       (tramp-get-inline-coding): Quote command after pipe symbol for
+       local calls under W32.  (Bug#6784)
+ 2011-01-15  Michael Albinus  <michael.albinus@gmx.de>
+       * net/tramp.el (tramp-default-method): Initialize with pscp/plink
+       only when running under W32.
+ 2011-01-15  Eli Zaretskii  <eliz@gnu.org>
+       * progmodes/grep.el (grep-compute-defaults): Quote the program
+       file name after the pipe symbol in Grep templates.  (Bug#6784)
+       * jka-compr.el (jka-compr-partial-uncompress): Likewise.
+ 2011-01-15  Lennart Borgman  <lennart.borgman@gmail.com>
+       * buff-menu.el (Buffer-menu-buffer-list): New var.
+       (Buffer-menu-revert-function, list-buffers-noselect): Use it, so a
+       restricted buffer list is not lost on revert (Bug#7749).
+ 2011-01-15  Eric Hanchrow  <eric.hanchrow@gmail.com>
+       * net/ldap.el (ldap-search-internal): Discard stderr output.
+ 2011-01-15  Eli Zaretskii  <eliz@gnu.org>
+       * files.el (directory-abbrev-alist): Doc fix.  (Bug#7777)
+ 2011-01-15  Stefan Monnier  <monnier@iro.umontreal.ca>
+       * vc-bzr.el (vc-bzr-annotate-time): Tweak previous change.
+ 2011-01-15  Kenichi Handa  <handa@m17n.org>
+       * mail/rmailmm.el (rmail-mime-insert-bulk): Display an unknown
+       part as a plain text.
+       (rmail-mime-process-multipart): Set the default content-type to
+       nil for unknown multipart subtypes (bug#7651).
 +2011-01-14  Martin Rudalics  <rudalics@gmx.at>
 +
 +      * simple.el (compose-mail-other-frame): Fix typo introduced in
 +      last change.
 +
 +      * window.el (window-safely-shrinkable-p): Remove.
 +
 +      * calendar/calendar.el (calendar-generate-window): Only fit a
 +      vertically combined window to its buffer.
 +      (calendar-basic-setup): Call pop-to-buffer, preferably making a
 +      new window at the bottom of the frame.  Remove the
 +      split-height-threshold binding around call of
 +      calendar-list-holidays, this must be handled separately.
 +
  2011-01-14  Stefan Monnier  <monnier@iro.umontreal.ca>
  
        * hexl.el (hexl-mode-old-*): Remove.
        Add :enable as alias for :active.
        (easy-menu-binding): Obey :label.
  
 +2011-01-13  Martin Rudalics  <rudalics@gmx.at>
 +
 +      * mail/sendmail.el (sendmail-user-agent-compose): Remove let
 +      bindings around funcall of switch-function.
 +      (mail-bury): Merge change from trunk with quit-restore-window.
 +
 +      * electric.el (Electric-pop-up-window): Adapt to new buffer
 +      display specifiers.
++
  2011-01-13  Stefan Monnier  <monnier@iro.umontreal.ca>
  
        Use run-mode-hooks for major mode hooks (bug#513).
        menus.  Add menu item for customize-themes.
  
        * cus-theme.el (customize-themes):
-       * emacs-lisp/package.el (package--list-packages): Use
+       * emacs-lisp/package.el (package--list-packages):
+       Use switch-to-buffer.
  
 +2011-01-11  Martin Rudalics  <rudalics@gmx.at>
 +
 +      * vc/ediff-ptch.el (ediff-show-patch-diagnostics): Use
 +      display-buffer-other-window.
 +
 +      * simple.el (goto-line, compose-mail-other-window): Replace
 +      switch-to-buffer-other-window by pop-to-buffer-other-window.
 +      (pop-global-mark): Use pop-to-buffer-same-window instead of
 +      switch-to-buffer.
 +      (compose-mail-other-frame): Use pop-to-buffer-other-frame
 +      instead of switch-to-buffer-other-frame.
 +      (special-mode-map): Bind "q" to quit-restore-window instead of
 +      quit-window.
 +
 +      * buff-menu.el (Buffer-menu-mode-map): Bind "q" to
 +      quit-restore-window.
 +      (buffer-menu): Call pop-to-buffer-same-window.
 +      (buffer-menu-other-window): Call pop-to-buffer-other-window.
 +      (Buffer-menu-select): Rewrite using display-buffer-same-window
 +      and display-buffer.
 +      (Buffer-menu-1-window, Buffer-menu-mouse-select)
 +      (Buffer-menu-this-window): Call pop-to-buffer-same-window.
 +      (Buffer-menu-other-window): Call pop-to-buffer-other-window.
 +      (Buffer-menu-switch-other-window): Call
 +      display-buffer-same-frame-other-window.
 +      (Buffer-menu-2-window): Add label argument in calls of
 +      display-buffer-same-window and
 +      pop-to-buffer-same-frame-other-window.
 +
 +      * mail/reporter.el (reporter-submit-bug-report): Use
 +      display-buffer-same-frame-other-window.
 +
 +      * progmodes/compile.el (compilation-find-file): Use
 +      display-buffer-same-frame.
 +
 +      * progmodes/inf-lisp.el (switch-to-lisp): Rewrite with new buffer
 +      display method specifiers.
 +
 +      * vc/ediff-ptch.el (ediff-get-patch-buffer): Use
 +      pop-to-buffer-other-window.
 +      (ediff-patch-file-internal): Replace switch-to-buffer by
 +      pop-to-buffer-same-window and switch-to-buffer-other-window by
 +      pop-to-buffer-other-window.
 +
 +      * vc/pcvs.el (cvs-ediff-exit-hook): Call
 +      pop-to-buffer-same-window instead of switch-to-buffer.
 +      (cvs-mode-find-file): Replace switch-to-buffer and
 +      switch-to-buffer-other-window by pop-to-buffer-same-window and
 +      pop-to-buffer-other-window.  Replace call to dired-other-window
 +      by call to display-buffer-other-window.
 +      (cvs-temp-buffer): Call display-buffer-other-window instead of
 +      display-buffer.
 +
 +      * vc/pcvs-util.el (cvs-bury-buffer): Call quit-restore-window.
 +
  2011-01-11  Johan BockgÃ¥rd  <bojohan@gnu.org>
  
        * emacs-lisp/unsafep.el (unsafep): Handle backquoted forms.
        (dbus-register-property): Use `dbus-register-service' to do the
        name registration.
  
 +2011-01-09  Martin Rudalics  <rudalics@gmx.at>
 +
 +      * dired.el (dired-pop-to-buffer): Call
 +      pop-to-buffer-same-frame-other-window.
++
  2011-01-09  Chong Yidong  <cyd@stupidchicken.com>
  
        * progmodes/idlw-help.el (idlwave-help-link): Inherit from link face.
diff --cc lisp/apropos.el
index 4a4080503d1f9518fd17620bd2b425166bfe9617,734b2fb2f6bb84911f26baf0e532704d3dd6ae81..77a1caa5da237377c8b81e799fb5a55dccea1d31
@@@ -968,9 -969,10 +964,10 @@@ If non-nil TEXT is a string that will b
                          (and (= (cadr a) (cadr b))
                               (string-lessp (car a) (car b))))
                    (string-lessp (car a) (car b))))))
 -    (with-output-to-temp-buffer "*Apropos*"
 +    (with-help-window "*Apropos*"
        (let ((p apropos-accumulator)
            (old-buffer (current-buffer))
+           (inhibit-read-only t)
            symbol item)
        (set-buffer standard-output)
        (apropos-mode)
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
diff --cc lisp/dired.el
Simple merge
diff --cc lisp/ehelp.el
Simple merge
Simple merge
Simple merge
index bde597590e31968931826976d8de91df2825f72a,2996fee9bcb8eec87cdb47929df5c4b361ab0a49..9d02adbd0ee68201db937f4091272948030084f5
@@@ -1,8 -1,23 +1,28 @@@
+ 2011-02-10  Stefan Monnier  <monnier@iro.umontreal.ca>
+       * erc-list.el (erc-list-menu-mode-map): Move initialization
+       into declaration.
+ 2011-02-07  Julien Danjou  <julien@danjou.info>
+       * erc-track.el (erc-window-configuration-change): New function.
+       This will allow to track buffer visibility when a command is
+       finished to executed.  Idea stolen from rcirc.
+       (track): Put erc-window-configuration-change in
+       window-configuration-change-hook.
+       (erc-modified-channels-update): Remove
+       erc-modified-channels-update from post-command-hook after update.
+ 2011-01-31  Antoine Levitt  <antoine.levitt@gmail.com>  (tiny change)
+       * erc-track.el (track): Don't reset erc-modified-channels-object
+       each time erc-track-mode is activated.
 +2010-11-19  Martin Rudalics  <rudalics@gmx.at>
 +
 +      * erc-speedbar.el (erc-speedbar-goto-buffer): Use
 +      pop-to-buffer-other-frame.
 +
  2011-01-13  Stefan Monnier  <monnier@iro.umontreal.ca>
  
        * erc.el (erc-mode):
Simple merge
Simple merge
diff --cc lisp/files.el
Simple merge
diff --cc lisp/frame.el
Simple merge
Simple merge
Simple merge
Simple merge
diff --cc lisp/help.el
Simple merge
diff --cc lisp/ielm.el
Simple merge
diff --cc lisp/info.el
Simple merge
Simple merge
diff --cc lisp/isearch.el
Simple merge
diff --cc lisp/loadup.el
Simple merge
Simple merge
Simple merge
diff --cc lisp/man.el
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
diff --cc lisp/proced.el
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
diff --cc lisp/replace.el
Simple merge
diff --cc lisp/shell.el
Simple merge
diff --cc lisp/simple.el
Simple merge
Simple merge
diff --cc lisp/term.el
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
diff --cc lisp/vc/pcvs.el
Simple merge
Simple merge
diff --cc lisp/view.el
Simple merge
diff --cc lisp/window.el
Simple merge
diff --cc lisp/woman.el
Simple merge
diff --cc src/ChangeLog
index 3e75d99799953e732a402daaeeb53b65db386015,c53e5add3fbd14a3d239174c911ca3d4277c0ea4..187449555c5b2b82ba9075af66292fc0c77c74c1
 +2011-02-22  Martin Rudalics  <rudalics@gmx.at>
 +
 +      * window.h (w): New slot clone_number.  Rename
 +      "inhibit_recombine" slot to "nested".
 +
 +      * window.c (Fwindow_clone_number, Fwindow_nested)
 +      (Fset_window_nested, Fset_window_clone_number): New functions.
 +      (recombine_windows): Write "nested" isntead of
 +      "inhibit_recombine".
 +      (make_parent_window): Set clone_number.
 +      (make_window): Set clone_number.  Write "nested" instead of
 +      "inhibit_recombine".
 +      (Fsplit_window_internal): Write "nested" instead of
 +      "inhibit_recombine".
 +      (Fresize_window_apply, Fdelete_window_internal): Add parens in
 +      EQ test.
 +      (saved_window): Add clone_number and write "nested" instead of
 +      "inhibit_recombine".
 +      (Fset_window_configuration, save_window_save): Set clone_number
 +      and write "nested" instead of "inhibit_recombine".
 +      (syms_of_window): Add Swindow_clone_number, Swindow_nested,
 +      Sset_window_nested and Sset_window_clone_number.
 +
 +      * buffer.c (sort_overlays, overlay_strings): When an overlay has
 +      the same clone-number property as the associated window don't
 +      skip it even if the window properties are different.
 +      (syms_of_buffer): Intern new Lisp_object Qclone_number.
 +
+ 2011-02-20  Eli Zaretskii  <eliz@gnu.org>
+       * makefile.w32-in ($(BLD)/fns.$(O)): Depend on
+       $(EMACS_ROOT)/lib/md5.h and on stamp_BLD.
+ 2011-02-20  Christoph Scholtes <cschol2112@gmail.com>
+       * makefile.w32-in: Remove md5.$(O).
+       ($(BLD)/md5.$(O)): Remove prerequisites, moved to
+       lib/makefile.w32-in.
+ 2011-02-20  Paul Eggert  <eggert@cs.ucla.edu>
+       Import crypto/md5 and stdint modules from gnulib.
+       * Makefile.in (base_obj): Remove md5.o, since this file
+       is in lib now.
+       * config.in: Regenerate.
+       * md5.h, md5.h: Move to ../lib.
+       * deps.mk (md5.o): Remove.
+       (fns.o): Depend on ../lib/md5.h, not md5.h.
+ 2011-02-19  Eli Zaretskii  <eliz@gnu.org>
+       * termcap.c (tputs): Don't declare baud_rate.
+       * s/msdos.h (strtold): Define to _strtold.
+ 2011-02-18  Stefan Monnier  <monnier@iro.umontreal.ca>
+       * process.c (Fstart_process, Fmake_serial_process)
+       (Fmake_network_process, server_accept_connection):
+       Use empty_unibyte_string.
+       * alloc.c (make_unibyte_string): Don't SET_UNIBYTE redundantly.
+       * lread.c (Qdir_ok): New constant.
+       (syms_of_lread): Initialize it.
+       (openp): Don't ignore directories if the predicate returns dir-ok.
+ 2011-02-18  Eli Zaretskii  <eliz@gnu.org>
+       * xdisp.c (display_line): Fix the change made for bug#7939.
+       * terminal.c (create_terminal): Use default-keyboard-coding-system
+       and default-terminal-coding-system to initialize coding systems of
+       the new terminal.  (Bug#7840)
+ 2011-02-18  Stefan Monnier  <monnier@iro.umontreal.ca>
+       * lisp.h (BYTE_MARK_STACK): New macro.
+       (mark_byte_stack): Only declare if BYTE_MARK_STACK is set.
+       * bytecode.c (BYTE_MAINTAIN_TOP): New macros.
+       (struct byte_stack): Only define `top' and `bottom' if used.
+       (mark_byte_stack): Only define if used.
+       (BEFORE_POTENTIAL_GC, AFTER_POTENTIAL_GC): Nullify if BYTE_MAINTAIN_TOP
+       is not set.
+       (Fbyte_code): Don't set `bottom' unless BYTE_MAINTAIN_TOP is set.
+       * term.c (OUTPUT_IF): Use OUTPUT.
+       * alloc.c (Fgarbage_collect): When using stack scanning, don't
+       redundantly scan byte-code stacks, catchlist, and handlerlist.
+ 2011-02-17  Jan Djärv  <jan.h.d@swipnet.se>
+       * nsfns.m (Fx_create_frame, ns_set_name_as_filename)
+       (Fns_read_file_name): Replace B_ with BVAR.
+       * nsterm.m (ns_term_init): Use KVAR.
+ 2011-02-16  Eli Zaretskii  <eliz@gnu.org>
+       * msdos.c (internal_terminal_init): Use KVAR.
+       * w32fns.c (Fx_create_frame): Use KVAR.
+       * w32term.c (w32_create_terminal): Use KVAR.
+       * s/ms-w32.h (MODE_LINE_BINARY_TEXT): Remove.
+       (getloadavg): Declare prototype which was removed from lisp.h.
+       * xdisp.c (decode_mode_spec): Don't use MODE_LINE_BINARY_TEXT.
+       * fileio.c (Finsert_file_contents, Fwrite_region):
+       Remove references to buffer_file_type.
+       (syms_of_fileio): Don't intern and staticpro
+       find-buffer-file-type.
+       * callproc.c (syms_of_callproc): Remove references to
+       buffer_file_type.
+       * buffer.c (reset_buffer_local_variables): Don't set
+       buffer_file_type.
+       (init_buffer_once): Likewise.
+       (syms_of_buffer): Don't define buffer-file-type.
+       * buffer.h (struct buffer): Remove buffer_file_type.
+ 2011-02-16  Tom Tromey  <tromey@parfait>
+       * callint.c (Fcall_interactively): Update for change to field names.
+       * doc.c (Fsubstitute_command_keys): Update for change to field names.
+       * cmds.c (Fself_insert_command): Update for change to field names.
+       * keymap.c (Fcurrent_active_maps, Fkey_binding)
+       (Fdescribe_buffer_bindings): Update for change to field names.
+       * macros.c (Fstart_kbd_macro, end_kbd_macro, Fend_kbd_macro)
+       (store_kbd_macro_char, Fcall_last_kbd_macro, Fexecute_kbd_macro):
+       Update for change to field names.
+       * keyboard.c (echo_char, echo_dash, echo_now, cancel_echoing)
+       (echo_length, echo_truncate, cmd_error, command_loop_1)
+       (read_char, kbd_buffer_store_event_hold, make_lispy_event)
+       (menu_bar_items, tool_bar_items, read_char_minibuf_menu_prompt)
+       (read_key_sequence, Fcommand_execute, Fexecute_extended_command)
+       (Fdiscard_input, init_kboard, init_keyboard, mark_kboards):
+       Update for change to field names.
+       * xfns.c (Fx_create_frame): Update for change to field names.
+       * xterm.c (x_connection_closed, x_term_init): Update for change to
+       field names.
+       * term.c (term_get_fkeys_1, CONDITIONAL_REASSIGN, init_tty):
+       Update for change to field names.
+       * window.c (window_scroll_pixel_based, window_scroll_line_based):
+       Update for change to field names.
+       * frame.c (make_frame_without_minibuffer, Fhandle_switch_frame)
+       (delete_frame): Update for change to field names.
+       * lisp.h (DEFVAR_KBOARD): Update for change to field names.
+       * keyboard.h (struct kboard): Rename all Lisp_Object fields.
+       (KBOARD_INTERNAL_FIELD, KVAR): New macros.
+ 2011-02-16  Tom Tromey  <tromey@redhat.com>
+       * lisp.h (DEFVAR_BUFFER_DEFAULTS): Use BVAR.
+ 2011-02-16  Tom Tromey  <tromey@parfait>
+       * xfns.c (x_create_tip_frame, Fx_show_tip): Replace B_ with BVAR.
+       * xfaces.c (compute_char_face): Replace B_ with BVAR.
+       * xdisp.c (pos_visible_p, init_iterator, reseat_1)
+       (message_dolog, update_echo_area, ensure_echo_area_buffers)
+       (with_echo_area_buffer, setup_echo_area_for_printing)
+       (set_message_1, update_menu_bar, update_tool_bar)
+       (text_outside_line_unchanged_p, redisplay_internal)
+       (try_scrolling, try_cursor_movement, redisplay_window)
+       (try_window_reusing_current_matrix, row_containing_pos)
+       (try_window_id, get_overlay_arrow_glyph_row, display_line)
+       (Fcurrent_bidi_paragraph_direction, display_mode_lines)
+       (decode_mode_spec_coding, decode_mode_spec, display_count_lines)
+       (get_window_cursor_type, note_mouse_highlight): Replace B_ with
+       BVAR.
+       * window.c (window_display_table, unshow_buffer, window_loop)
+       (window_min_size_2, set_window_buffer, Fset_window_buffer)
+       (select_window, Fforce_window_update, temp_output_buffer_show)
+       (Fset_window_configuration, save_window_save): Replace B_ with
+       BVAR.
+       * w32fns.c (x_create_tip_frame, Fx_show_tip, Fw32_shell_execute):
+       Replace B_ with BVAR.
+       * undo.c (record_point, record_insert, record_delete)
+       (record_marker_adjustment, record_first_change)
+       (record_property_change, Fundo_boundary, truncate_undo_list)
+       (Fprimitive_undo): Replace B_ with BVAR.
+       * syntax.h (Vstandard_syntax_table, CURRENT_SYNTAX_TABLE)
+       (SETUP_BUFFER_SYNTAX_TABLE): Replace B_ with BVAR.
+       * syntax.c (update_syntax_table, dec_bytepos, Fsyntax_table)
+       (Fset_syntax_table, Fmodify_syntax_entry, skip_chars)
+       (skip_syntaxes, scan_lists): Replace B_ with BVAR.
+       * search.c (compile_pattern_1, compile_pattern, looking_at_1)
+       (string_match_1, fast_looking_at, newline_cache_on_off)
+       (search_command, search_buffer, simple_search, boyer_moore)
+       (Freplace_match): Replace B_ with BVAR.
+       * process.c (get_process, list_processes_1, Fstart_process)
+       (Fmake_serial_process, Fmake_network_process)
+       (read_process_output, send_process, exec_sentinel)
+       (status_notify, setup_process_coding_systems): Replace B_ with
+       BVAR.
+       * print.c (PRINTDECLARE, PRINTPREPARE, PRINTFINISH, printchar)
+       (strout, print_string, temp_output_buffer_setup, print_object):
+       Replace B_ with BVAR.
+       * msdos.c (IT_frame_up_to_date): Replace B_ with BVAR.
+       * minibuf.c (read_minibuf, get_minibuffer, Fread_buffer):
+       Replace B_ with BVAR.
+       * marker.c (Fmarker_buffer, Fset_marker, set_marker_restricted)
+       (set_marker_both, set_marker_restricted_both, unchain_marker):
+       Replace B_ with BVAR.
+       * lread.c (readchar, unreadchar, openp, readevalloop)
+       (Feval_buffer, Feval_region): Replace B_ with BVAR.
+       * lisp.h (DOWNCASE_TABLE, UPCASE_TABLE): Replace B_ with BVAR.
+       * keymap.c (Flocal_key_binding, Fuse_local_map)
+       (Fcurrent_local_map, push_key_description)
+       (Fdescribe_buffer_bindings): Replace B_ with BVAR.
+       * keyboard.c (command_loop_1, read_char_minibuf_menu_prompt)
+       (read_key_sequence): Replace B_ with BVAR.
+       * intervals.h (TEXT_PROP_MEANS_INVISIBLE): Replace B_ with BVAR.
+       * intervals.c (set_point_both, get_local_map): Replace B_ with
+       BVAR.
+       * insdel.c (check_markers, insert_char, insert_1_both)
+       (insert_from_string_1, insert_from_gap, insert_from_buffer_1)
+       (adjust_after_replace, replace_range, del_range_2)
+       (modify_region, prepare_to_modify_buffer)
+       (Fcombine_after_change_execute): Replace B_ with BVAR.
+       * indent.c (buffer_display_table, recompute_width_table)
+       (width_run_cache_on_off, current_column, scan_for_column)
+       (Findent_to, position_indentation, compute_motion, vmotion):
+       Replace B_ with BVAR.
+       * fringe.c (get_logical_cursor_bitmap)
+       (get_logical_fringe_bitmap, update_window_fringes): Replace B_
+       with BVAR.
+       * frame.c (make_frame_visible_1): Replace B_ with BVAR.
+       * font.c (font_at): Replace B_ with BVAR.
+       * fns.c (Fbase64_encode_region, Fbase64_decode_region, Fmd5):
+       Replace B_ with BVAR.
+       * filelock.c (unlock_all_files, Flock_buffer, Funlock_buffer)
+       (unlock_buffer): Replace B_ with BVAR.
+       * fileio.c (Fexpand_file_name, Ffile_directory_p)
+       (Ffile_regular_p, Ffile_selinux_context)
+       (Fset_file_selinux_context, Ffile_modes, Fset_file_modes)
+       (Fset_file_times, Ffile_newer_than_file_p, decide_coding_unwind)
+       (Finsert_file_contents, choose_write_coding_system)
+       (Fwrite_region, build_annotations, Fverify_visited_file_modtime)
+       (Fset_visited_file_modtime, auto_save_error, auto_save_1)
+       (Fdo_auto_save, Fset_buffer_auto_saved): Replace B_ with BVAR.
+       * editfns.c (region_limit, Fmark_marker, save_excursion_save)
+       (save_excursion_restore, Fprevious_char, Fchar_before)
+       (general_insert_function, Finsert_char, Finsert_byte)
+       (make_buffer_string_both, Finsert_buffer_substring)
+       (Fcompare_buffer_substrings, subst_char_in_region_unwind)
+       (subst_char_in_region_unwind_1, Fsubst_char_in_region)
+       (Ftranslate_region_internal, save_restriction_restore)
+       (Fchar_equal): Replace B_ with BVAR.
+       * dispnew.c (Fframe_or_buffer_changed_p): Replace B_ with BVAR.
+       * dispextern.h (WINDOW_WANTS_MODELINE_P)
+       (WINDOW_WANTS_HEADER_LINE_P): Replace B_ with BVAR.
+       * dired.c (directory_files_internal): Replace B_ with BVAR.
+       * data.c (swap_in_symval_forwarding, set_internal)
+       (Fmake_local_variable, Fkill_local_variable, Flocal_variable_p):
+       Replace B_ with BVAR.
+       * composite.c (fill_gstring_header)
+       (composition_compute_stop_pos, composition_adjust_point)
+       (Ffind_composition_internal): Replace B_ with BVAR.
+       * coding.c (decode_coding, encode_coding)
+       (make_conversion_work_buffer, decode_coding_gap)
+       (decode_coding_object, encode_coding_object)
+       (Fdetect_coding_region, Ffind_coding_systems_region_internal)
+       (Funencodable_char_position, Fcheck_coding_systems_region):
+       Replace B_ with BVAR.
+       * cmds.c (Fself_insert_command, internal_self_insert): Replace B_
+       with BVAR.
+       * charset.c (Ffind_charset_region): Replace B_ with BVAR.
+       * character.h (FETCH_CHAR_ADVANCE, INC_BOTH, DEC_BOTH)
+       (ASCII_CHAR_WIDTH): Replace B_ with BVAR.
+       * character.c (chars_in_text, Fget_byte): Replace B_ with BVAR.
+       * category.h (Vstandard_category_table): Replace B_ with BVAR.
+       * category.c (check_category_table, Fcategory_table)
+       (Fset_category_table, char_category_set): Replace B_ with BVAR.
+       * casetab.c (Fcurrent_case_table, set_case_table): Replace B_ with
+       BVAR.
+       * casefiddle.c (casify_object, casify_region): Replace B_ with
+       BVAR.
+       * callproc.c (Fcall_process, Fcall_process_region): Replace B_
+       with BVAR.
+       * callint.c (check_mark, Fcall_interactively): Replace B_ with
+       BVAR.
+       * bytecode.c (Fbyte_code): Replace B_ with BVAR.
+       * buffer.h (FETCH_CHAR, FETCH_CHAR_AS_MULTIBYTE, BVAR): Replace B_
+       with BVAR.
+       * buffer.c (Fbuffer_live_p, Fget_file_buffer)
+       (get_truename_buffer, Fget_buffer_create)
+       (clone_per_buffer_values, Fmake_indirect_buffer, reset_buffer)
+       (reset_buffer_local_variables, Fbuffer_name, Fbuffer_file_name)
+       (Fbuffer_local_value, buffer_lisp_local_variables)
+       (Fset_buffer_modified_p, Frestore_buffer_modified_p)
+       (Frename_buffer, Fother_buffer, Fbuffer_enable_undo)
+       (Fkill_buffer, Fset_buffer_major_mode, set_buffer_internal_1)
+       (set_buffer_temp, Fset_buffer, set_buffer_if_live)
+       (Fbarf_if_buffer_read_only, Fbury_buffer, Ferase_buffer)
+       (Fbuffer_swap_text, swapfield_, Fbuffer_swap_text)
+       (Fset_buffer_multibyte, swap_out_buffer_local_variables)
+       (record_overlay_string, overlay_strings, init_buffer_once)
+       (init_buffer, syms_of_buffer): Replace B_ with BVAR.
+ 2011-02-16  Eli Zaretskii  <eliz@gnu.org>
+       * xdisp.c (redisplay_internal): Resynchronize `w' if the selected
+       window is changed inside calls to do_pending_window_change.
+       (Bug#8020)
+ 2011-02-16  Paul Eggert  <eggert@cs.ucla.edu>
+       Remove no-longer needed getloadavg symbols.
+       * m/alpha.h (LOAD_AVE_TYPE, LOAD_AVE_CVT): Remove.
+       * m/amdx86-64.h (LOAD_AVE_TYPE, LOAD_AVE_CVT): Remove.
+       * m/ia64.h (LOAD_AVE_TYPE, LOAD_AVE_CVT): Remove.
+       * m/ibms390.h (LOAD_AVE_TYPE, LOAD_AVE_CVT): Remove.
+       * m/macppc.h (LOAD_AVE_TYPE, LOAD_AVE_CVT): Remove.
+       * m/sparc.h (LOAD_AVE_TYPE, LOAD_AVE_CVT): Remove.
+       * m/template.h (LOAD_AVE_TYPE, LOAD_AVE_CVT): Remove.
+       * m/vax.h (LOAD_AVE_TYPE, LOAD_AVE_CVT): Remove.
+       * s/aix4-2.h (KERNEL_FILE, LDAV_SYMBOL): Remove.
+       * s/bsd-common.h (KERNEL_FILE, LDAV_SYMBOL): Remove #undef.
+       * s/hpux10-20.h (KERNEL_FILE, LOAD_AVE_TYPE, LOAD_AVE_CVT):
+       (LDAV_SYMBOL): Remove.
+       * s/unixware.h (LOAD_AVE_TYPE, LOAD_AVE_CVT, FSCALE): Remove.
+       * s/usg5-4-common.h (KERNEL_FILE, LDAV_SYMBOL): Remove.
+       Import getloadavg module from gnulib.
+       * deps.mk (getloadavg.o): Remove; gnulib now does this.
+       * lisp.h (getloadavg) [!defined HAVE_GETLOADAVG]: Remove; gnulib
+       now does this.
+       * src/s/freebsd.h (HAVE_GETLOADAVG): Remove; gnulib now does this.
+       * src/s/netbsd.h (HAVE_GETLOADAVG): Likewise.
+       * config.in: Regenerate.
+ 2011-02-15  Eli Zaretskii  <eliz@gnu.org>
+       * nsfns.m (ns_set_name_as_filename, Fns_read_file_name): Use B_.
+ 2011-02-14  Michael Welsh Duggan  <md5i@md5i.com>
+       * print.c (float_to_string): Ensure that a decimal point is
+       printed if using dtoastr (Bug#8033).
+ 2011-02-14  Eli Zaretskii  <eliz@gnu.org>
+       * msdos.c (IT_frame_up_to_date):
+       * s/msdos.h (MODE_LINE_BINARY_TEXT): Use B_ for the MS-DOS build.
+       * dired.c (directory_files_internal):
+       * fileio.c (Finsert_file_contents):
+       * insdel.c (prepare_to_modify_buffer):
+       * xdisp.c (pos_visible_p):
+       * s/ms-w32.h (MODE_LINE_BINARY_TEXT):
+       * w32fns.c (Fw32_shell_execute, Fx_show_tip, x_create_tip_frame):
+       Use B_ for the MS-Windows build.
+ 2011-02-14  Jan Djärv  <jan.h.d@swipnet.se>
+       * xrdb.c (x_load_resources): For LUCID and XFT, don't put a
+       resource that specifies helvetica for menus and dialogs.
+       * xmenu.c (apply_systemfont_to_dialog): Apply to *dialog.font.
+       (apply_systemfont_to_menu): Set resources *menubar*font and
+       *popup*font.  Remove defflt.
+       (set_frame_menubar, create_and_show_popup_menu):
+       Call apply_systemfont_to_menu before lw_create_widget.
+ 2011-02-14  Tom Tromey  <tromey@redhat.com>
+       * buffer.c (init_buffer_once, syms_of_buffer): Use B_ in DOS_NT case.
+       * keyboard.h: Remove obsolete comment.
+ 2011-02-14  Tom Tromey  <tromey@parfait>
+       * composite.c (fill_gstring_header)
+       (composition_compute_stop_pos, composition_adjust_point)
+       (Ffind_composition_internal): Use B_.
+       * intervals.c (set_point_both, get_local_map): Use B_.
+       * callproc.c (Fcall_process, Fcall_process_region): Use B_.
+       * process.c (get_process, list_processes_1, Fstart_process)
+       (Fmake_serial_process, Fmake_network_process)
+       (read_process_output, send_process, exec_sentinel)
+       (status_notify, setup_process_coding_systems): Use B_.
+       * bytecode.c (Fbyte_code): Use B_.
+       * syntax.c (update_syntax_table, dec_bytepos, Fsyntax_table)
+       (Fset_syntax_table, Fmodify_syntax_entry, skip_chars)
+       (skip_syntaxes, scan_lists): Use B_.
+       * lread.c (readchar, unreadchar, openp, readevalloop)
+       (Feval_buffer, Feval_region): Use B_.
+       * print.c (printchar, strout, print_string, PRINTDECLARE)
+       (PRINTPREPARE, PRINTFINISH, temp_output_buffer_setup)
+       (print_object): Use B_.
+       * font.c (font_at): Use B_.
+       * fns.c (Fbase64_encode_region, Fbase64_decode_region, Fmd5):
+       Use B_.
+       * callint.c (check_mark, Fcall_interactively): Use B_.
+       * editfns.c (region_limit, Fmark_marker, save_excursion_save)
+       (save_excursion_restore, Fprevious_char, Fchar_before)
+       (general_insert_function, Finsert_char, Finsert_byte)
+       (make_buffer_string_both, Finsert_buffer_substring)
+       (Fcompare_buffer_substrings, subst_char_in_region_unwind)
+       (subst_char_in_region_unwind_1, Fsubst_char_in_region)
+       (Ftranslate_region_internal, save_restriction_restore)
+       (Fchar_equal): Use B_.
+       * data.c (swap_in_symval_forwarding, set_internal)
+       (Fmake_local_variable, Fkill_local_variable, Flocal_variable_p):
+       Use B_.
+       * undo.c (record_point, record_insert, record_delete)
+       (record_marker_adjustment, record_first_change)
+       (record_property_change, Fundo_boundary, truncate_undo_list)
+       (Fprimitive_undo): Use B_.
+       * search.c (compile_pattern_1, compile_pattern, looking_at_1)
+       (string_match_1, fast_looking_at, newline_cache_on_off)
+       (search_command, search_buffer, simple_search, boyer_moore)
+       (Freplace_match): Use B_.
+       * indent.c (buffer_display_table, recompute_width_table)
+       (width_run_cache_on_off, current_column, scan_for_column)
+       (Findent_to, position_indentation, compute_motion, vmotion):
+       Use B_.
+       * casefiddle.c (casify_object, casify_region): Use B_.
+       * casetab.c (Fcurrent_case_table, set_case_table): Use B_.
+       * cmds.c (Fself_insert_command, internal_self_insert): Use B_.
+       * fileio.c (Fexpand_file_name, Ffile_directory_p)
+       (Ffile_regular_p, Ffile_selinux_context)
+       (Fset_file_selinux_context, Ffile_modes, Fset_file_modes)
+       (Fset_file_times, Ffile_newer_than_file_p, decide_coding_unwind)
+       (Finsert_file_contents, choose_write_coding_system)
+       (Fwrite_region, build_annotations, Fverify_visited_file_modtime)
+       (Fset_visited_file_modtime, auto_save_error, auto_save_1)
+       (Fdo_auto_save, Fset_buffer_auto_saved): Use B_.
+       * minibuf.c (read_minibuf, get_minibuffer, Fread_buffer): Use B_.
+       * marker.c (Fmarker_buffer, Fset_marker, set_marker_restricted)
+       (set_marker_both, set_marker_restricted_both, unchain_marker):
+       Use B_.
+       * insdel.c (check_markers, insert_char, insert_1_both)
+       (insert_from_string_1, insert_from_gap, insert_from_buffer_1)
+       (adjust_after_replace, replace_range, del_range_2)
+       (modify_region, prepare_to_modify_buffer)
+       (Fcombine_after_change_execute): Use B_.
+       * filelock.c (unlock_all_files, Flock_buffer, Funlock_buffer)
+       (unlock_buffer): Use B_.
+       * keymap.c (Flocal_key_binding, Fuse_local_map)
+       (Fcurrent_local_map, push_key_description)
+       (Fdescribe_buffer_bindings): Use B_.
+       * keyboard.c (command_loop_1, read_char_minibuf_menu_prompt)
+       (read_key_sequence): Use B_.
+       * fringe.c (get_logical_cursor_bitmap)
+       (get_logical_fringe_bitmap, update_window_fringes): Use B_.
+       * xfns.c (x_create_tip_frame, Fx_show_tip): Use B_.
+       * xfaces.c (compute_char_face): Use B_.
+       * character.c (chars_in_text, Fget_byte): Use B_.
+       * category.c (check_category_table, Fcategory_table)
+       (Fset_category_table, char_category_set): Use B_.
+       * coding.c (decode_coding, encode_coding)
+       (make_conversion_work_buffer, decode_coding_gap)
+       (decode_coding_object, encode_coding_object)
+       (Fdetect_coding_region, Ffind_coding_systems_region_internal)
+       (Funencodable_char_position, Fcheck_coding_systems_region):
+       Use B_.
+       * charset.c (Ffind_charset_region): Use B_.
+       * window.c (window_display_table, unshow_buffer, window_loop)
+       (window_min_size_2, set_window_buffer, Fset_window_buffer)
+       (select_window, Fforce_window_update, temp_output_buffer_show)
+       (Fset_window_configuration, save_window_save): Use B_.
+       * xdisp.c (pos_visible_p, init_iterator, reseat_1)
+       (message_dolog, update_echo_area, ensure_echo_area_buffers)
+       (with_echo_area_buffer, setup_echo_area_for_printing)
+       (set_message_1, update_menu_bar, update_tool_bar)
+       (text_outside_line_unchanged_p, redisplay_internal)
+       (try_scrolling, try_cursor_movement, redisplay_window)
+       (try_window_reusing_current_matrix, row_containing_pos)
+       (try_window_id, get_overlay_arrow_glyph_row, display_line)
+       (Fcurrent_bidi_paragraph_direction, display_mode_lines)
+       (decode_mode_spec_coding, decode_mode_spec, display_count_lines)
+       (get_window_cursor_type, note_mouse_highlight): Use B_.
+       * frame.c (make_frame_visible_1): Use B_.
+       * dispnew.c (Fframe_or_buffer_changed_p): Use B_.
+       * dispextern.h (WINDOW_WANTS_HEADER_LINE_P)
+       (WINDOW_WANTS_MODELINE_P): Use B_.
+       * syntax.h (Vstandard_syntax_table): Update.
+       (CURRENT_SYNTAX_TABLE, SETUP_BUFFER_SYNTAX_TABLE): Use B_.
+       * intervals.h (TEXT_PROP_MEANS_INVISIBLE): Update.
+       (TEXT_PROP_MEANS_INVISIBLE): Use B_.
+       * character.h (FETCH_CHAR_ADVANCE): Update.
+       (INC_BOTH, ASCII_CHAR_WIDTH, DEC_BOTH): Use B_.
+       * category.h (Vstandard_category_table): Update.
+       * lisp.h (DEFVAR_BUFFER_DEFAULTS): Update for change to field
+       names.
+       (DOWNCASE_TABLE, UPCASE_TABLE): Use B_.
+       * buffer.c (swapfield_): New macro.
+       (Fbuffer_swap_text): Use swapfield_ where appropriate.
+       (Fbuffer_live_p, Fget_file_buffer, get_truename_buffer)
+       (Fget_buffer_create, clone_per_buffer_values)
+       (Fmake_indirect_buffer, reset_buffer)
+       (reset_buffer_local_variables, Fbuffer_name, Fbuffer_file_name)
+       (Fbuffer_local_value, buffer_lisp_local_variables)
+       (Fset_buffer_modified_p, Frestore_buffer_modified_p)
+       (Frename_buffer, Fother_buffer, Fbuffer_enable_undo)
+       (Fkill_buffer, Fset_buffer_major_mode, set_buffer_internal_1)
+       (set_buffer_temp, Fset_buffer, set_buffer_if_live)
+       (Fbarf_if_buffer_read_only, Fbury_buffer, Ferase_buffer)
+       (Fbuffer_swap_text, Fset_buffer_multibyte)
+       (swap_out_buffer_local_variables, record_overlay_string)
+       (overlay_strings, init_buffer_once, init_buffer, syms_of_buffer):
+       Use B_.
+       * buffer.h (struct buffer): Rename all Lisp_Object fields.
+       (BUFFER_INTERNAL_FIELD, B_): New macro.
+       (FETCH_CHAR, FETCH_CHAR_AS_MULTIBYTE): Use B_.
+ 2011-02-14  Jan Djärv  <jan.h.d@swipnet.se>
+       * gtkutil.c (xg_tool_bar_menu_proxy): Handle case when tool bar label
+       is null.
+ 2011-02-13  Jan Djärv  <jan.h.d@swipnet.se>
+       * callproc.c (Fcall_process):
+       * process.c (create_process): Replace Gtk with GConf in SIGPIPE
+       comment.
+ 2011-02-12  Martin Rudalics  <rudalics@gmx.at>
+       * window.c (select_window): Check inhibit_point_swap argument when
+       deciding whether to return immediately.
+ 2011-02-12  Jan Djärv  <jan.h.d@swipnet.se>
+       * nsterm.m (setFrame, initFrame): Make sure pixel_height doesn't become
+       zero (Bug#7348).
+ 2011-02-12  Chong Yidong  <cyd@stupidchicken.com>
+       * config.in (TERMINFO): New definition.
+       * s/netbsd.h: Use it to choose between terminfo and termcap
+       (Bug#7642).
+ 2011-02-12  Paul Eggert  <eggert@cs.ucla.edu>
+       * md5.c (md5_process_bytes): Use sizeof, not __alignof__.
+       The difference doesn't matter here, in practice, and sizeof is
+       more portable to non-GCC compilers.  Also, this makes the code
+       match the already-existing comment.
+ 2011-02-12  Andreas Schwab  <schwab@linux-m68k.org>
+       * process.c (create_process): Reset SIGPIPE handler in the child.
+       * callproc.c (Fcall_process): Likewise.  (Bug#5238)
+ 2011-02-12  Eli Zaretskii  <eliz@gnu.org>
+       * xdisp.c <this_line_min_pos>: New variable.
+       (move_it_in_display_line_to): Record in this_line_min_pos the
+       smallest position iterated across.
+       (display_line): Use this_line_min_pos to record the smallest
+       position in the line even if it is not displayed due to
+       hscrolling.  (Bug#7939)
+ 2011-02-12  Paul Eggert  <eggert@cs.ucla.edu>
+       Port to Sun C 5.11, which has __attribute__ ((__aligned (N))).
+       * md5.h (ATTRIBUTE_ALIGNED): New macro.
+       (struct md5_ctx): Use it.
+       Port to Solaris 10, which doesn't support FC_HINT_STYLE.
+       * xftfont.c (FC_HINT_STYLE): #define to "hintstyle" if not
+       defined.
+       * xsettings.c (parse_settings, apply_xft_settings): Don't assume
+       FC_HINT_STYLE is supported.
+ 2011-02-11  Jan Djärv  <jan.h.d@swipnet.se>
+       * xterm.c (x_set_frame_alpha): Access data before it is free:d.
+       Make sure we don't do x_catch_errors twice.
+ 2011-02-10  Glenn Morris  <rgm@gnu.org>
+       * Makefile.in (really-lwlib): Depend on globals.h, for parallel builds.
+ 2011-02-09  Eli Zaretskii  <eliz@gnu.org>
+       * makefile.w32-in (GLOBAL_SOURCES, SOME_MACHINE_OBJECTS, obj):
+       New macros.
+       (globals.h, gl-stamp): New targets.
+       (clean): Clean gl-stamp and globals.h.
+ 2011-02-09  Andreas Schwab  <schwab@linux-m68k.org>
+       * Makefile.in (gl-stamp): Create globals.h here.
+       (globals.h): Don't do it here.
+       (mostlyclean): Clean globals.h and gl-stamp.
+ 2011-02-09  Paul Eggert  <eggert@cs.ucla.edu>
+       * Makefile.in ($(otherobj)): Depend on globals.h.
+       Otherwise 'make -j10' failed on my host, because the build lacked
+       necessary dependencies, e.g., vm-limit.o depends on globals.h.
+ 2011-02-08  Tom Tromey  <tromey@redhat.com>
+       * Makefile.in (NS_OBJC_OBJ): New variable.
+       (base_obj): Rename from 'obj'.
+       (obj): New variable.
+       (globals.h, gl-stamp, $(obj)): New targets.
+       (GLOBAL_SOURCES): New variable.
+       * globals.h: Remove.
+       * nsselect.m (Vselection_alist): Define.  Reverts part of
+       2011-01-19T22:11:33Z!jan.h.d@swipnet.se.
+       * buffer.c: Don't use "no_cell" for name of kill-buffer-hook's
+       variable.
+       * xselect.c (Vselection_alist): Define.  Reverts part of 2011-01-19T23:32:42Z!eggert@cs.ucla.edu.
+ 2011-02-08  Kenichi Handa  <handa@m17n.org>
+       * font.c (Ffont_get): Do not cache :otf value.
+ 2011-02-07  Paul Eggert  <eggert@cs.ucla.edu>
+       conform to C89 pointer rules
+       * dired.c (scmp, file_name_completion):
+       Change types between char * and unsigned char *, to satisfy C89
+       rules about pointer type compatibility.
+       * casefiddle.c (casify_object, casify_region): Likewise.
+       * search.c (Freplace_match, Fregexp_quote): Likewise.
+       * alloc.c (make_string, make_specified_string, make_pure_string):
+       Likewise.
+       * data.c (Fstring_to_number): Likewise.
+       * print.c (float_to_string, PRINTFINISH, printchar, strout):
+       (print_object): Likewise.
+       * editfns.c (init_editfns, Fchar_to_string, Fbyte_to_string):
+       (Fuser_full_name, Fsubst_char_in_region, Ftranslate_region_internal):
+       (Fformat): Likewise.
+       * callint.c (Fcall_interactively): Likewise.
+       * fns.c (string_make_multibyte, string_to_multibyte):
+       (string_make_unibyte, Fstring_as_unibyte, Fstring_to_unibyte):
+       (Fbase64_encode_region, base64_encode_1, Fbase64_decode_region, Fmd5):
+       Likewise.
+       * lread.c (read1, hash_string): Likewise.
+       * process.c (read_process_output, send_process, Fprocess_send_region):
+       Likewise.
+       * callproc.c (Fcall_process): Likewise.
+       * doprnt.c (doprnt): Likewise.
+       * indent.c (compute_motion): Likewise.
+       * xfont.c (xfont_decode_coding_xlfd): Likewise.
+       * ralloc.c (resize_bloc): Likewise.
+       * image.c (tiff_load): Likewise.
+       * xml.c (make_dom, parse_region): Likewise.
+       * character.c (strwidth): Make its argument const char *, not const
+       unsigned char *, since more callers prefer it that way.  All callers
+       changed.
+ 2011-02-06  Paul Eggert  <eggert@cs.ucla.edu>
+       * xterm.c (x_alloc_nearest_color_1): Avoid unportable int assumption.
+       Emacs assumes two's complement elsewhere, but the assumption is
+       easy to remove here, and this suppresses a warning with Sun C 5.8.
+       conform to C89 pointer rules
+       * xterm.c (x_draw_fringe_bitmap, handle_one_xevent, x_bitmap_icon):
+       (same_x_server, x_term_init):
+       Change types between char * and unsigned char *, to satisfy C89
+       rules about pointer type compatibility.
+       * doc.c (get_doc_string, Fsnarf_documentation):
+       (Fsubstitute_command_keys): Likewise.
+       * xfns.c (Fx_open_connection, Fx_window_property): Likewise.
+       * bitmaps/gray.xbm (gray_bits): Likewise.
+       * image.c (xbm_read_bitmap_data, xbm_load_image, xbm_load): Likewise.
+       * keyboard.c (echo_char, MULTI_LETTER_MOD, tty_read_avail_input):
+       Likewise.
+       * keymap.c (Ftext_char_description): Likewise.
+       * minibuf.c (Fread_buffer): Likewise.
+       * fileio.c (IS_DRIVE) [defined WINDOWSNT]:
+       (DRIVE_LETTER) [defined DOS_NT]:
+       (report_file_error, Ffile_name_directory, Ffile_name_nondirectory):
+       (make_temp_name, Fexpand_file_name, file_name_absolute_p):
+       (search_embedded_absfilename, Fsubstitute_in_file_name):
+       (barf_or_query_if_file_exists, Fmake_directory_internal):
+       (Fdelete_directory_internal, Ffile_name_absolute_p, read_non_regular):
+       (Finsert_file_contents, Fwrite_region):
+       Likewise.
+       * insdel.c (insert, insert_and_inherit, insert_before_markers):
+       (insert_before_markers_and_inherit, insert_1, insert_1_both):
+       Likewise.  This changes these functions' signatures, which is
+       more convenient since most callers use char *.  All remaining
+       callers changed.
+       * editfns.c (general_insert_function): Change signature to
+       match changes to insert functions' signatures.
+       * keymap.c (map_keymap_char_table_item, map_keymap_internal):
+       Use explicit cast when converting between void * and function pointer
+       types, as C89 requires this.
+ 2011-02-05  Paul Eggert  <eggert@cs.ucla.edu>
+       don't ignore chdir failure
+       * sysdep.c (sys_subshell) [!defined DOS_NT]: Diagnose chdir
+       failure and exit.
+       (sys_subshell) [defined DOS_NT]: Mark with a FIXME the two
+       remaining unchecked chdir calls in this function; some DOS/NT
+       expert needs to fix them.
+       * emacs.c (main): Mark with a FIXME the unchecked chdir calls
+       in this function; some NextStep expert needs to fix them.
+ 2011-02-05  Glenn Morris  <rgm@gnu.org>
+       * xfaces.c (Finternal_set_lisp_face_attribute):
+       Try to clarify some error messages.  (Bug#2659)
+ 2011-02-05  Stefan Monnier  <monnier@iro.umontreal.ca>
+       * editfns.c (save_restriction_restore): Don't forget to invalidate the
+       current_column cache (bug#7946).
+ 2011-02-05  Kenichi Handa  <handa@m17n.org>
+       * ftfont.c (ftfont_open): Use FC_DUAL only when it is defined.
+       * xftfont.c (xftfont_open): Likewise.
+ 2011-02-05  Andreas Schwab  <schwab@linux-m68k.org>
+       * window.c (Fselect_window): Add missing return value.
+ 2011-02-05  Paul Eggert  <eggert@cs.ucla.edu>
+       xstrcasecmp: conform to C89 pointer rules
+       * xfaces.c (xstrcasecmp): Change args from const unsigned char *
+       to const char *, since they're usually low-level C strings, and
+       this stays compatible with C89 pointer rules.  All callers changed.
+       * charset.c: conform to C89 pointer rules
+       (define_charset_internal): Switch between char * and unsigned char *.
+       * xmenu.c: conform to C89 const rules
+       (xmenu_show, xdialog_show): Declare local var as char *, not
+       const char *, to stay compatible with C89 const rules.
+       * xdisp.c: conform to C89 pointer rules
+       (store_mode_line_noprop, display_string, reseat_to_string):
+       (c_string_pos, number_of_chars, message_dolog):
+       (message_log_check_duplicate, set_message_1, store_mode_line_noprop):
+       (display_mode_element, display_string):
+       Switch between char * and unsigned char * to stay compatible wth
+       C89 pointer rules.
+       * regex.c: conform to C89 pointer rules
+       (re_wctype): Add cast, as C89 does not allow assigning between
+       char * and unsigned char *.
+       (regex_compile): Likewise.
+       sync from gnulib to remove HAVE_STDBOOL_H
+       * config.in: Regenerate.
+ 2011-02-04  Eli Zaretskii  <eliz@gnu.org>
+       * makefile.w32-in (LISP_H, PROCESS_H): New variables.
+       Replace all uses of lisp.h with $(LISP_H), and all uses of
+       process.h with $(PROCESS_H).
+       ($(BLD)/editfns.$(O)): Depend on ../lib/strftime.h.
+       ($(BLD)/print.$(O)): Depend on ../lib/ftoastr.h and ../lib/intprops.h.
+       * deps.mk: Update for recent changes: gnutls support, gnulib
+       imports, addition of globals.h.
+       * makefile.w32-in ($(BLD)/sysdep.$(O)): Depend on
+       ../lib/ignore-value.h.
+ 2011-02-03  Paul Eggert  <eggert@cs.ucla.edu>
+       allow C code to suppress warnings about ignored return values
+       We need to go through the code and for each such warning, either
+       fix the code to pay attention to the returned value, or tell GCC
+       that we really do want to ignore the returned value.  Here is one
+       example of how to do the latter.
+       * sysdep.c: Include <ignore-value.h>.
+       (sys_subshell): Suppress an undesirable warning about not checking
+       the returned value of 'write', as there's nothing useful one can
+       do with that returned value.
+ 2011-02-03  Jan Djärv  <jan.h.d@swipnet.se>
+       * xterm.c (x_connection_closed): Remove all calls that calls
+       XSync (Bug#7949).
+ 2011-02-01  Eli Zaretskii  <eliz@gnu.org>
+       * image.c (tiff_load): Avoid compiler warning in 2nd arg to
+       TIFFClientOpen.
+ 2011-02-01  Jan Djärv  <jan.h.d@swipnet.se>
+       * xsmfns.c (ice_connection_closed): Call delete_read_fd.
+       (x_session_check_input): Change args and return type so it can be used
+       as argument to add_read_fd.  Make static.  Remove call to select.
+       Call kbd_buffer_store_event for emacs_event.
+       (smc_save_yourself_CB): Also store initial argv to SmRestartCommand.
+       (ice_conn_watch_CB): Call add_read_fd.
+       * xterm.c (XTread_socket): Remove HAVE_X_SM block with call to
+       x_session_check_input.
+       (x_session_initialized): Remove definition.
+       (x_initialize): Remove setting of x_session_initialized.
+       * xterm.h (x_session_check_input): Remove declaration.
+ 2011-02-01  Paul Eggert  <eggert@cs.ucla.edu>
+       format-time-string now supports subsecond time stamp resolution
+       * editfns.c (emacs_nmemftime): Rename from emacs_memftimeu,
+       for consistency with its new argument and with gnulib nstrftime.
+       All callers changed.  New argument NS.
+       (Fformat_time_string): Check that the time argument's microseconds
+       component, if any, is in range; this avoids integer overflow and
+       also nstrftime needs this.  Document %N.
+ 2011-01-31  Andreas Schwab  <schwab@linux-m68k.org>
+       * image.c (DEF_IMGLIB_FN): Add parameter rettype, use it instead
+       of int.  All uses adjusted.
+       (PNG_JMPBUF, png_load, jpeg_load, tiff_load, gif_load)
+       (svg_load_image): Remove casts.
+ 2011-01-31  Chong Yidong  <cyd@stupidchicken.com>
+       * image.c (fn_png_longjmp, fn_png_set_longjmp_fn): New png
+       function definitions for compiling with libpng-1.5.
+       (PNG_LONGJMP, PNG_JMPBUF): New macros for libpng-1.5.
+       (my_png_error, png_load): Use them.  Suggested by Thomas Klausner
+       (Bug#7908).
+ 2011-01-31  Eli Zaretskii  <eliz@gnu.org>
+       * s/ms-w32.h (HAVE_STRFTIME): Don't define.
+       * makefile.w32-in (OBJ2): Remove strftime.$(O).
+       ($(BLD)/strftime.$(O)): Remove prerequisites.
+ 2011-01-31  Paul Eggert  <eggert@cs.ucla.edu>
+       src/emacs.c now gets version number from configure.in
+       * emacs.c (emacs_version): Set to VERSION so that it
+       is determined automatically from ../configure.in.
+ 2011-01-31  Jim Meyering  <meyering@redhat.com>
+       * charset.c (load_charset_map): Don't deref NULL on failed malloc.
+       Use xmalloc rather than malloc.
+ 2011-01-30  Paul Eggert  <eggert@cs.ucla.edu>
+       strftime: import from gnulib
+       * Makefile.in (obj): Remove strftime.o, as gnulib now does this for us.
+       * deps.mk (strftime.o): Remove.
+       * editfns.c: Include <strftime.h>, supplied by gnulib.
+       (emacs_strftimeu): Remove decl.
+       (emacs_memftimeu): Use nstrftime (the gnulib name) rather than
+       emacs_strftimeu.
+       * config.in: Regenerate.
+       * strftime.c: Remove; we now use strftime from gnulib.
+       Use SSDATA when the context wants char *.
+       * alloc.c, buffer.c, bytecode.c, callproc.c, dired.c:
+       * dispnew.c, doc.c, editfns.c, emacs.c, fileio.c, filelock.c:
+       * fns.c, font.c, frame.c, image.c, indent.c, keyboard.c:
+       * lread.c, minibuf.c, print.c, process.c, search.c, widget.c:
+       * xdisp.c, xfaces.c, xfns.c, xml.c, xselect.c, xterm.c:
+       Use SSDATA (not SDATA) when the context of the expression wants
+       char * (not unsigned char *).
+ 2011-01-30  Jan Djärv  <jan.h.d@swipnet.se>
+       * .gdbinit: Read global lisp variables as globals.f_V*.
+ 2011-01-30  Andreas Schwab  <schwab@linux-m68k.org>
+       * font.c (PROP_MATCH): Remove parameter N and use strlen instead.
+       All uses changed.
+       (PROP_SAVE): Likewise.
+ 2011-01-29  Chong Yidong  <cyd@stupidchicken.com>
+       * keyboard.c (make_lispy_position): Fix typo in last change
+       (Bug#7935).
+ 2011-01-29  Eli Zaretskii  <eliz@gnu.org>
+       * s/ms-w32.h (HAVE_MKTIME): Remove.
+       * makefile.w32-in (LOCAL_FLAGS): Add -I../lib.
+       (GNULIB): New variable.
+       (LIBS): Add $(GNULIB).
+       $(TEMACS): Depend on $(GNULIB).
+       <top-level>: Fix font-lock disrupted by a lone `"'.
+ 2011-01-29  Jan Djärv  <jan.h.d@swipnet.se>
+       * nsselect.m (ns_string_from_pasteboard): Get length of string
+       and use make_string instead of build_string (Bug#7934).
+       (ns_string_to_pasteboard_internal): Use initWithBytesNoCopy
+       instead of stringWithUTF8String  (Bug#7934).
+ 2011-01-29  Anders Lindgren  <andlind@gmail.com> (tiny change)
+         * nsfont.m (nsfont_open): Ensure that fonts with inexact
+         descenders would not become one pixel too tall (Bug#7887).
+ 2011-01-28  Chong Yidong  <cyd@stupidchicken.com>
+       * keyboard.c (make_lispy_position): For clicks on right fringe or
+       margin, compute text position using the X coordinate relative to
+       the left of the text area (Bug#7839).
+ 2011-01-28  Kenichi Handa  <handa@m17n.org>
+       * ftfont.c (ftfont_spec_pattern): Check each extra property
+       value.
+ 2011-01-28  Stefan Monnier  <monnier@iro.umontreal.ca>
+       * xdisp.c (safe_eval_handler): Distinguish symbols and strings.
+ 2011-01-27  Chong Yidong  <cyd@stupidchicken.com>
+       * font.c (font_parse_fcname): Undefine a temporary macro.
+ 2011-01-26  Stefan Monnier  <monnier@iro.umontreal.ca>
+       Let the debugger continue to the normal handler (bug#7825).
+       * eval.c (maybe_call_debugger): Declare before new use.
+       (find_handler_clause): Don't call debugger any more.
+       Ignore Vstack_trace_on_error.
+       Use XCAR/XCDR.
+       (syms_of_eval): Remove Vstack_trace_on_error.
+       (Fsignal): Only modify handlerlist when we know we need to do it.
+       Call the debugger when necessary.
+       * globals.h (Vstack_trace_on_error): Remove.
+ 2011-01-26  Chong Yidong  <cyd@stupidchicken.com>
+       * font.c (font_parse_fcname): Rewrite GTK font name parser.
+ 2011-01-25  Stefan Monnier  <monnier@iro.umontreal.ca>
+       * xdisp.c (handle_fontified_prop): Be careful with font-lock changing
+       the buffer's point-max (bug#7876).
+ 2011-01-25  Chong Yidong  <cyd@stupidchicken.com>
+       * lisp.h (XPNTR): Obey DATA_SEG_BITS in all non-USE_LSB_TAG cases.
+       Remove unused case (Bug#6811).
+ 2011-01-23  Jan Djärv  <jan.h.d@swipnet.se>
+       * nsterm.m (x_set_offset): Set dont_constrain to 0 so the call to
+       setFrameTopLeftPoint is constrained.
+ 2011-01-23  Paul Eggert  <eggert@cs.ucla.edu>
+       Check return values of some library calls.
+       * emacs.c (main): Check dup result.
+       * frame.c: Include <limits.h>, for INT_MIN and INT_MAX.
+       (frame_name_fnn_p): Check strtol result.
+       * image.c (x_create_bitmap_from_xpm_data): Add cast to fix type clash
+       when calling XpmCreatePixmapFromData.
+       Promote SSDATA macro from gtkutil.c and xsmfns.c to lisp.h.
+       * lisp.h (SSDATA): New macro.
+       All uses of (char *) SDATA (x) replaced with SSDATA (x),
+       and all uses of (unsigned char *) SDATA (x) replaced with SDATA (x).
+       * gtkutil.c (SSDATA): Remove, as lisp.h now defines this.
+       * xsmfns.c (SSDATA): Likewise.
+ 2011-01-22  Martin Rudalics  <rudalics@gmx.at>
+       * window.c (select_window): New function.
+       (Fselect_window): Call it.
+       (inhibit_point_swap): Variable deleted.
+       (Fset_window_configuration): Call select_window directly.
+ 2011-01-22  Jan Djärv  <jan.h.d@swipnet.se>
+       * nsterm.m (constrainFrameRect): Only constrain the first time called.
+ 2011-01-21  Jan Djärv  <jan.h.d@swipnet.se>
+       * nsterm.m (x_set_offset, windowDidMove): When calculating y, use first
+       screen, not the window screen.
+       (x_set_window_size): Remove constraints.
+       Calculate origin.y only if zooming is 0 and without referring to a
+       screen.
+       (windowWillResize): Don't modify frameSize.
+       (windowDidBecomeKey, mouseDown): Set dont_constrain to 1.
+       (initFrameFromEmacs): Initialize ns_userRect.
+       (windowShouldZoom): Set zooming to one.  Remove all other code.
+       (windowWillUseStandardFrame): Move static ns_userRect to EmacsView.
+       Zero it after restore.
+       (constrainFrameRect): New method for EmacsWindow.
+       (mouseDragged): Always post NSWindowDidResizeNotification after call to
+       windowWillResize.
+       * nsterm.h (ns_output): Add dont_constrain and zooming.
+       (EmacsView): Add ns_userRect.
+       * nsterm.m (keyDown): If ns_right_alternate_modifier is Qleft, check
+       if ns_alternate_modifier is none.
+ 2011-01-20  Jan Djärv  <jan.h.d@swipnet.se>
+       * unexmacosx.c: Add comment about include order.
+ 2011-01-20  Glenn Morris  <rgm@gnu.org>
+       * minibuf.c (syms_of_minibuf) <read-expression-history>:
+       Give it a doc string.
+       * globals.h: Add Vread_expression_history.
+       * macros.c (syms_of_macros) <kbd-macro-termination-hook>:
+       Give it a doc string.
+       * globals.h: Add Vkbd_macro_termination_hook.
+ 2011-01-20  Chong Yidong  <cyd@stupidchicken.com>
+       * fns.c (Fyes_or_no_p): Revert 2011-01-07 change, removing ARGS.
+ 2011-01-19  Paul Eggert  <eggert@cs.ucla.edu>
+       Fix X11 compilation failure.
+       * globals.h (struct emacs_globals): Document f_Vselection_alist.
+       * xselect.c (Vselection_alist): Remove declaration, moving its
+       documentation to globals.h.  This fixes a compilation failure
+       induced by the earlier change to globals.h today.
+ 2011-01-19  Jan Djärv  <jan.h.d@swipnet.se>
+       * unexmacosx.c: Include config.h before unistd.h (Bug#7859).
+       * nsterm.m (ns_input_file, ns_input_font, ns_input_fontsize)
+       (ns_input_line, ns_input_color, ns_input_text, ns_working_text)
+       (ns_input_spi_name, ns_input_spi_arg)
+       (ns_alternate_modifier, ns_right_alternate_modifier)
+       (ns_command_modifier, ns_right_command_modifier, ns_control_modifier)
+       (ns_right_control_modifier, ns_function_modifier)
+       (ns_antialias_text, ns_confirm_quit): Move to globals.h.
+       (Vx_toolkit_scroll_bars, x_use_underline_position_properties)
+       (x_underline_at_descent_line): Remove declaration.
+       (syms_of_nsterm): Remove & from DEFVAR_LISP and DEFVAR_BOOL.
+       * nsselect.m (Vns_sent_selection_hooks, Vns_lost_selection_hooks
+       (Vselection_alist, Vselection_converter_alist): Move to globals.h.
+       (syms_of_nsselect): Remove & from DEFVAR_LISP.
+       * nsmenu.m (Voverriding_local_map, Voverriding_local_map_menu_flag):
+       Remove declaration.
+       * nsfont.m (Vns_reg_to_script, ns_antialias_text): Move to
+       globals.h.
+       (syms_of_nsfont): Remove & from DEFVAR_LISP.
+       * nsfns.m (Vmenu_bar_mode, Vtool_bar_mode): Remove declaration.
+       (Vns_icon_type_alist, Vns_version_string): Move to globals.h.
+       (syms_of_nsfns): Remove & from DEFVAR_LISP calls.
+       * globals.h (struct emacs_globals): Add f_ns_input_file,
+       f_ns_input_font, f_ns_input_fontsize, f_ns_input_line,
+       f_ns_input_color, f_ns_input_text, f_ns_working_text,
+       f_ns_input_spi_name, f_ns_input_spi_arg, f_ns_alternate_modifier,
+       f_ns_right_alternate_modifier, f_ns_command_modifier,
+       f_ns_right_command_modifier, f_ns_control_modifier,
+       f_ns_right_control_modifier, f_ns_function_modifier,
+       f_ns_antialias_text, f_ns_confirm_quit, f_Vns_icon_type_alist,
+       f_Vns_version_string, f_Vns_sent_selection_hooks,
+       f_Vns_lost_selection_hooks, f_Vselection_alist, f_Vns_reg_to_script
+       and corresponding defines.
+ 2011-01-19  Sam Steingold  <sds@gnu.org>
+       * w32.c (check_windows_init_file): Remove declarations of
+       Vwindow_system, Vload_path, Qfile_exists_p to fix compilation.
+       * w32fns.c: Fix an error introduced by the previous patch.
+ 2011-01-19  Tom Tromey  <tromey@redhat.com>
+       * window.c: Fix error introduced by previous patch.
+ 2011-01-18  Tom Tromey  <tromey@parfait>
+       * globals.h: New file.
+       * xterm.h (Vx_pixel_size_width_font_regexp): Remove declaration.
+       * window.h (Vinitial_window_system, Vminibuf_scroll_window)
+       (Vwindow_system_version): Remove declaration.
+       * w32term.h (Vw32_enable_palette)
+       (Vx_pixel_size_width_font_regexp): Remove declaration.
+       * w32menu.c (Voverriding_local_map)
+       (Voverriding_local_map_menu_flag): Remove declaration.
+       * w32inevt.c (Vw32_alt_is_meta, Vw32_apps_modifier)
+       (Vw32_capslock_is_shiftlock, Vw32_enable_caps_lock)
+       (Vw32_enable_num_lock, Vw32_lwindow_modifier)
+       (Vw32_pass_lwindow_to_system, Vw32_pass_rwindow_to_system)
+       (Vw32_phantom_key_code, Vw32_recognize_altgr)
+       (Vw32_rwindow_modifier, Vw32_scroll_lock_modifier)
+       (w32_use_full_screen_buffer): Remove declaration.
+       * w32.c (Vsystem_configuration, Vw32_downcase_file_names)
+       (Vw32_generate_fake_inodes, Vw32_get_true_file_attributes)
+       (w32_num_mouse_buttons, w32_pipe_read_delay): Remove declaration.
+       * termopts.h (Vtruncate_partial_width_windows, inverse_video)
+       (no_redraw_on_reenter, visible_bell): Remove declaration.
+       * sysdep.c (Vsystem_name): Remove declaration.
+       * syntax.h (parse_sexp_lookup_properties): Remove declaration.
+       * menu.h (Vmenu_updating_frame): Remove declaration.
+       * macros.h (Vexecuting_kbd_macro, executing_kbd_macro_index):
+       Remove declaration.
+       * lisp.h (Vafter_init_time, Vafter_load_alist)
+       (Vauto_save_list_file_name, Vbefore_init_time, Vcommand_history)
+       (Vcompletion_regexp_list, Vcurrent_load_list)
+       (Vcurrent_prefix_arg, Vdata_directory, Vdebug_on_error)
+       (Vdoc_directory, Vdoc_file_name, Vdynamic_library_alist)
+       (Vexec_directory, Vexec_path, Vexec_suffixes)
+       (Vface_font_rescale_alist, Vface_ignored_fonts, Vfeatures)
+       (Vhelp_form, Vhistory_length, Vinhibit_field_text_motion)
+       (Vinhibit_quit, Vinhibit_read_only, Vinhibit_redisplay)
+       (Vinstallation_directory, Vinvocation_directory)
+       (Vinvocation_name, Vload_file_rep_suffixes, Vload_history)
+       (Vload_suffixes, Vmark_even_if_inactive, Vmemory_full)
+       (Vmessage_log_max, Vobarray, Vprint_length, Vprint_level)
+       (Vpurify_flag, Vquit_flag, Vsaved_region_selection)
+       (Vscalable_fonts_allowed, Vselect_active_regions)
+       (Vshell_file_name, Vstandard_input, Vstandard_output)
+       (Vsystem_name, Vtemporary_file_directory, Vthrow_on_input)
+       (Vtop_level, Vtty_erase_char, Vundo_outer_limit)
+       (Vuser_login_name, Vwindow_scroll_functions)
+       (Vwindow_system_version, Vx_no_window_manager)
+       (Vx_resource_class, Vx_resource_name, baud_rate)
+       (completion_ignore_case, debug_on_next_call, gc_cons_threshold)
+       (history_delete_duplicates, inhibit_x_resources)
+       (last_nonmenu_event, load_in_progress, max_specpdl_size)
+       (minibuffer_auto_raise, print_escape_newlines, scroll_margin)
+       (use_dialog_box, use_file_dialog): Remove declaration.
+       Include globals.h.
+       * keymap.h (Voverriding_local_map)
+       (Voverriding_local_map_menu_flag, meta_prefix_char):
+       Remove declaration.
+       * keyboard.h (Vdouble_click_time, Vfunction_key_map)
+       (Vinput_method_function, Vkey_translation_map)
+       (Vlucid_menu_bar_dirty_flag, Vthis_original_command)
+       (do_mouse_tracking, extra_keyboard_modifiers)
+       (num_nonmacro_input_events): Remove declaration.
+       * intervals.h (Vchar_property_alias_alist)
+       (Vdefault_text_properties, Vinhibit_point_motion_hooks)
+       (Vtext_property_default_nonsticky): Remove declaration.
+       * gtkutil.h (x_gtk_file_dialog_help_text)
+       (x_gtk_show_hidden_files, x_gtk_use_old_file_dialog)
+       (x_gtk_whole_detached_tool_bar): Remove declaration.
+       * frame.h (Vdefault_frame_alist, Vframe_alpha_lower_limit)
+       (Vmenu_bar_mode, Vmouse_highlight, Vterminal_frame)
+       (Vtool_bar_mode, Vx_resource_class, Vx_resource_name)
+       (focus_follows_mouse): Remove declaration.
+       * fontset.h (Valternate_fontname_alist, Vfontset_alias_alist)
+       (Vignore_relative_composition, Votf_script_alist)
+       (Vuse_default_ascent, Vvertical_centering_font_regexp):
+       Remove declaration.
+       * font.h (Vfont_log): Remove declaration.
+       * dosfns.h (Vdos_display_scancodes, Vdos_version)
+       (Vdos_windows_version, dos_codepage, dos_country_code)
+       (dos_decimal_point, dos_hyper_key, dos_keyboard_layout)
+       (dos_keypad_mode, dos_super_key, dos_timezone_offset):
+       Remove declaration.
+       * disptab.h (Vglyph_table, Vstandard_display_table):
+       Remove declaration.
+       * dispextern.h (Vface_remapping_alist, Vglyphless_char_display)
+       (Vmouse_autoselect_window, Voverflow_newline_into_fringe)
+       (Vshow_trailing_whitespace, Vtool_bar_button_margin)
+       (Vtool_bar_style, cursor_in_echo_area, display_hourglass_p)
+       (inverse_video, mode_line_in_non_selected_windows)
+       (tool_bar_button_relief, tool_bar_max_label_size)
+       (underline_minimum_offset)
+       (unibyte_display_via_language_environment, x_stretch_cursor_p):
+       Remove declaration.
+       * composite.h (Vauto_composition_function)
+       (Vcomposition_function_table): Remove declaration.
+       * commands.h (Vexecuting_kbd_macro)
+       (Vminibuffer_local_completion_map)
+       (Vminibuffer_local_filename_completion_map)
+       (Vminibuffer_local_filename_must_match_map)
+       (Vminibuffer_local_map, Vminibuffer_local_must_match_map)
+       (Vminibuffer_local_ns_map, Vthis_command)
+       (Vunread_command_events, cursor_in_echo_area)
+       (last_command_event, last_nonmenu_event, unread_command_char):
+       Remove declaration.
+       * coding.h (Vcoding_system_for_read, Vcoding_system_for_write)
+       (Vdefault_file_name_coding_system)
+       (Vdefault_process_coding_system, Vfile_name_coding_system)
+       (Vlast_coding_system_used, Vlocale_coding_system)
+       (Vselect_safe_coding_system_function)
+       (Vtranslation_table_for_input, coding_system_require_warning)
+       (eol_mnemonic_dos, eol_mnemonic_mac, eol_mnemonic_undecided)
+       (eol_mnemonic_unix, inherit_process_coding_system):
+       Remove declaration.
+       * charset.h (Vcharset_list, Vcurrent_iso639_language):
+       Remove declaration.
+       * character.h (Vauto_fill_chars, Vchar_direction_table)
+       (Vchar_script_table, Vchar_width_table, Vprintable_chars)
+       (Vscript_representative_chars, Vtranslation_table_vector)
+       (Vunicode_category_table): Remove declaration.
+       * ccl.h (Vfont_ccl_encoder_alist): Remove declaration.
+       * buffer.h (Vafter_change_functions, Vbefore_change_functions)
+       (Vdeactivate_mark, Vfirst_change_hook, Vtransient_mark_mode)
+       (inhibit_modification_hooks): Remove declaration.
+       * xterm.c (syms_of_xterm): Update.
+       (Vx_alt_keysym, Vx_hyper_keysym, Vx_keysym_table)
+       (Vx_meta_keysym, Vx_super_keysym, Vx_toolkit_scroll_bars)
+       (x_mouse_click_focus_ignore_position)
+       (x_underline_at_descent_line)
+       (x_use_underline_position_properties): Remove.
+       * xsmfns.c (syms_of_xsmfns): Update.
+       (Vx_session_id, Vx_session_previous_id): Remove.
+       * xsettings.c (syms_of_xsettings): Update.
+       (Vxft_settings, use_system_font): Remove.
+       * xselect.c (syms_of_xselect): Update.
+       (Vselection_converter_alist, Vx_lost_selection_functions)
+       (Vx_sent_selection_functions, x_selection_timeout): Remove.
+       * xfns.c (syms_of_xfns): Update.
+       (Vgtk_version_string, Vmotif_version_string)
+       (Vx_cursor_fore_pixel, Vx_hourglass_pointer_shape)
+       (Vx_max_tooltip_size, Vx_mode_pointer_shape)
+       (Vx_no_window_manager, Vx_nontext_pointer_shape)
+       (Vx_pixel_size_width_font_regexp, Vx_pointer_shape)
+       (Vx_sensitive_text_pointer_shape)
+       (Vx_window_horizontal_drag_shape, x_gtk_file_dialog_help_text)
+       (x_gtk_show_hidden_files, x_gtk_use_old_file_dialog)
+       (x_gtk_use_system_tooltips, x_gtk_whole_detached_tool_bar):
+       Remove.
+       * xfaces.c (syms_of_xfaces): Update.
+       (Vface_default_stipple, Vface_font_rescale_alist)
+       (Vface_ignored_fonts, Vface_new_frame_defaults)
+       (Vface_remapping_alist, Vfont_list_limit)
+       (Vscalable_fonts_allowed, Vtty_defined_color_alist): Remove.
+       * xdisp.c (syms_of_xdisp): Update.
+       (Vauto_resize_tool_bars, Vblink_cursor_alist)
+       (Vdisplay_pixels_per_inch, Vfontification_functions)
+       (Vframe_title_format, Vglobal_mode_string)
+       (Vglyphless_char_display, Vhourglass_delay, Vhscroll_step)
+       (Vicon_title_format, Vinhibit_redisplay)
+       (Vline_number_display_limit, Vline_prefix)
+       (Vmax_mini_window_height, Vmenu_bar_update_hook)
+       (Vmenu_updating_frame, Vmessage_log_max)
+       (Vmouse_autoselect_window, Vnobreak_char_display)
+       (Voverlay_arrow_position, Voverlay_arrow_string)
+       (Voverlay_arrow_variable_list, Vredisplay_end_trigger_functions)
+       (Vresize_mini_windows, Vshow_trailing_whitespace)
+       (Vtool_bar_border, Vtool_bar_button_margin, Vtool_bar_style)
+       (Vtruncate_partial_width_windows, Vvoid_text_area_pointer)
+       (Vwindow_scroll_functions, Vwindow_size_change_functions)
+       (Vwindow_text_change_functions, Vwrap_prefix)
+       (auto_raise_tool_bar_buttons_p, automatic_hscrolling_p)
+       (debug_end_pos, display_hourglass_p, emacs_scroll_step)
+       (highlight_nonselected_windows, hscroll_margin)
+       (inhibit_eval_during_redisplay, inhibit_free_realized_faces)
+       (inhibit_menubar_update, inhibit_try_cursor_movement)
+       (inhibit_try_window_id, inhibit_try_window_reusing)
+       (line_number_display_limit_width)
+       (make_cursor_line_fully_visible_p, message_truncate_lines)
+       (mode_line_inverse_video, multiple_frames, overline_margin)
+       (scroll_conservatively, scroll_margin, tool_bar_button_relief)
+       (tool_bar_max_label_size, underline_minimum_offset)
+       (unibyte_display_via_language_environment, x_stretch_cursor_p):
+       Remove.
+       * window.c (syms_of_window): Update.
+       (Vminibuf_scroll_window, Vother_window_scroll_buffer)
+       (Vrecenter_redisplay, Vscroll_preserve_screen_position)
+       (Vtemp_buffer_show_function, Vwindow_configuration_change_hook)
+       (Vwindow_point_insertion_type, auto_window_vscroll_p)
+       (mode_line_in_non_selected_windows, next_screen_context_lines)
+       (window_min_height, window_min_width): Remove.
+       (scroll_margin): Remove declaration.
+       * w32term.c (syms_of_w32term): Update.
+       (Vw32_capslock_is_shiftlock, Vw32_grab_focus_on_raise)
+       (Vw32_recognize_altgr, Vw32_swap_mouse_buttons)
+       (Vx_toolkit_scroll_bars, w32_num_mouse_buttons)
+       (w32_use_visible_system_caret, x_underline_at_descent_line)
+       (x_use_underline_position_properties): Remove.
+       (Vcommand_line_args, Vsystem_name, extra_keyboard_modifiers):
+       Remove declaration.
+       * w32select.c (syms_of_w32select): Update.
+       (Vnext_selection_coding_system, Vselection_coding_system): Remove.
+       * w32proc.c (syms_of_ntproc): Update.
+       (Vw32_downcase_file_names, Vw32_generate_fake_inodes)
+       (Vw32_get_true_file_attributes, Vw32_quote_process_args)
+       (Vw32_start_process_inherit_error_mode)
+       (Vw32_start_process_share_console)
+       (Vw32_start_process_show_window, w32_pipe_read_delay): Remove.
+       (Vsystem_name): Remove declaration.
+       * w32font.c (syms_of_w32font): Update.
+       (Vw32_charset_info_alist): Remove.
+       * w32fns.c (globals_of_w32fns, syms_of_w32fns): Update.
+       (Vw32_alt_is_meta, Vw32_apps_modifier, Vw32_bdf_filename_alist)
+       (Vw32_color_map, Vw32_enable_caps_lock, Vw32_enable_num_lock)
+       (Vw32_enable_palette, Vw32_lwindow_modifier)
+       (Vw32_pass_alt_to_system, Vw32_pass_lwindow_to_system)
+       (Vw32_pass_rwindow_to_system, Vw32_phantom_key_code)
+       (Vw32_rwindow_modifier, Vw32_scroll_lock_modifier)
+       (Vx_cursor_fore_pixel, Vx_hourglass_pointer_shape)
+       (Vx_max_tooltip_size, Vx_mode_pointer_shape)
+       (Vx_no_window_manager, Vx_nontext_pointer_shape)
+       (Vx_pixel_size_width_font_regexp, Vx_pointer_shape)
+       (Vx_sensitive_text_pointer_shape)
+       (Vx_window_horizontal_drag_shape, w32_ansi_code_page)
+       (w32_enable_synthesized_fonts, w32_mouse_button_tolerance)
+       (w32_mouse_move_interval)
+       (w32_pass_extra_mouse_buttons_to_system)
+       (w32_pass_multimedia_buttons_to_system, w32_quit_key)
+       (w32_strict_fontnames, w32_strict_painting): Remove.
+       (Vhourglass_delay, Vmenu_bar_mode, Vtool_bar_mode)
+       (Vw32_recognize_altgr, Vwindow_system_version)
+       (w32_num_mouse_buttons, w32_use_visible_system_caret):
+       Remove declaration.
+       * w32console.c (syms_of_ntterm): Update.
+       (w32_use_full_screen_buffer): Remove.
+       (Vtty_defined_color_alist): Remove declaration.
+       * w16select.c (syms_of_win16select): Update.
+       (Vnext_selection_coding_system, Vselection_coding_system): Remove.
+       * undo.c (syms_of_undo): Update.
+       (Vundo_outer_limit, Vundo_outer_limit_function)
+       (undo_inhibit_record_point, undo_limit, undo_strong_limit):
+       Remove.
+       * textprop.c (syms_of_textprop): Update.
+       (Vchar_property_alias_alist, Vdefault_text_properties)
+       (Vinhibit_point_motion_hooks, Vtext_property_default_nonsticky):
+       Remove.
+       * terminal.c (syms_of_terminal): Update.
+       (Vdelete_terminal_functions, Vring_bell_function): Remove.
+       * term.c (syms_of_term): Update.
+       (Vresume_tty_functions, Vsuspend_tty_functions)
+       (no_redraw_on_reenter, system_uses_terminfo, visible_cursor):
+       Remove.
+       * syntax.c (syms_of_syntax): Update.
+       (Vfind_word_boundary_function_table, multibyte_syntax_as_symbol)
+       (open_paren_in_column_0_is_defun_start)
+       (parse_sexp_ignore_comments, parse_sexp_lookup_properties)
+       (words_include_escapes): Remove.
+       * search.c (syms_of_search): Update.
+       (Vinhibit_changing_match_data, Vsearch_spaces_regexp): Remove.
+       * process.c (syms_of_process): Update.
+       (Vprocess_adaptive_read_buffering, Vprocess_connection_type)
+       (delete_exited_processes): Remove.
+       * print.c (syms_of_print): Update.
+       (Vfloat_output_format, Vprint_charset_text_property)
+       (Vprint_circle, Vprint_continuous_numbering, Vprint_gensym)
+       (Vprint_length, Vprint_level, Vprint_number_table)
+       (Vstandard_output, print_escape_multibyte)
+       (print_escape_newlines, print_escape_nonascii, print_quoted):
+       Remove.
+       * msdos.c (syms_of_msdos): Update.
+       (Vdos_unsupported_char_glyph): Remove.
+       (unibyte_display_via_language_environment): Remove declaration.
+       * minibuf.c (syms_of_minibuf): Update.
+       (Vcompletion_regexp_list, Vhistory_add_new_input)
+       (Vhistory_length, Vminibuffer_completing_file_name)
+       (Vminibuffer_completion_confirm)
+       (Vminibuffer_completion_predicate, Vminibuffer_completion_table)
+       (Vminibuffer_exit_hook, Vminibuffer_help_form)
+       (Vminibuffer_history_position, Vminibuffer_history_variable)
+       (Vminibuffer_prompt_properties, Vminibuffer_setup_hook)
+       (Vread_buffer_function, Vread_expression_map)
+       (completion_ignore_case, enable_recursive_minibuffers)
+       (history_delete_duplicates, minibuffer_allow_text_properties)
+       (minibuffer_auto_raise, read_buffer_completion_ignore_case):
+       Remove.
+       * marker.c (syms_of_marker): Update.
+       (byte_debug_flag): Remove.
+       * macros.c (syms_of_macros): Update.
+       (Vexecuting_kbd_macro, executing_kbd_macro_index): Remove.
+       * lread.c (syms_of_lread): Update.
+       (Vafter_load_alist, Vbyte_boolean_vars)
+       (Vbytecomp_version_regexp, Vcurrent_load_list)
+       (Veval_buffer_list, Vload_file_name, Vload_file_rep_suffixes)
+       (Vload_history, Vload_path, Vload_read_function)
+       (Vload_source_file_function, Vload_suffixes, Vobarray)
+       (Vold_style_backquotes, Vpreloaded_file_list, Vread_circle)
+       (Vread_symbol_positions_list, Vread_with_symbol_positions)
+       (Vsource_directory, Vstandard_input, Vuser_init_file, Vvalues)
+       (force_load_messages, load_convert_to_unibyte)
+       (load_dangerous_libraries, load_force_doc_strings)
+       (load_in_progress): Remove.
+       * keymap.c (syms_of_keymap): Update.
+       (Vdefine_key_rebound_commands, Vemulation_mode_map_alists)
+       (Vminibuffer_local_completion_map)
+       (Vminibuffer_local_filename_completion_map)
+       (Vminibuffer_local_filename_must_match_map)
+       (Vminibuffer_local_map, Vminibuffer_local_must_match_map)
+       (Vminibuffer_local_ns_map, Vminor_mode_map_alist)
+       (Vminor_mode_overriding_map_alist, Vwhere_is_preferred_modifier):
+       Remove.
+       * keyboard.c (syms_of_keyboard): Update.
+       (Vauto_save_timeout, Vcommand_error_function)
+       (Vcommand_hook_internal, Vdeactivate_mark)
+       (Vdeferred_action_function, Vdeferred_action_list)
+       (Vdisable_point_adjustment, Vdouble_click_time)
+       (Vecho_keystrokes, Venable_disabled_menus_and_buttons)
+       (Vfunction_key_map, Vglobal_disable_point_adjustment)
+       (Vhelp_char, Vhelp_event_list, Vhelp_form)
+       (Vinput_method_function, Vinput_method_previous_message)
+       (Vkey_translation_map, Vlast_event_frame)
+       (Vlucid_menu_bar_dirty_flag, Vmenu_bar_final_items)
+       (Vminibuffer_message_timeout, Voverriding_local_map)
+       (Voverriding_local_map_menu_flag, Vpost_command_hook)
+       (Vpre_command_hook, Vprefix_help_command)
+       (Vsaved_region_selection, Vselect_active_regions)
+       (Vshow_help_function, Vspecial_event_map, Vsuggest_key_bindings)
+       (Vthis_command, Vthis_command_keys_shift_translated)
+       (Vthis_original_command, Vthrow_on_input, Vtimer_idle_list)
+       (Vtimer_list, Vtool_bar_separator_image_expression, Vtop_level)
+       (Vtty_erase_char, Vunread_command_events)
+       (Vunread_input_method_events, Vunread_post_input_method_events)
+       (auto_save_interval, cannot_suspend, do_mouse_tracking)
+       (double_click_fuzz, extra_keyboard_modifiers)
+       (inhibit_local_menu_bar_menus, last_command_event)
+       (last_input_event, last_nonmenu_event, menu_prompt_more_char)
+       (menu_prompting, meta_prefix_char, num_input_keys)
+       (num_nonmacro_input_events, polling_period, unread_command_char):
+       Remove.
+       * insdel.c (syms_of_insdel): Update.
+       (Vcombine_after_change_calls, check_markers_debug_flag): Remove.
+       * indent.c (syms_of_indent): Update.
+       (indent_tabs_mode): Remove.
+       * image.c (syms_of_image): Update.
+       (Vimage_cache_eviction_delay, Vimage_types)
+       (Vimagemagick_render_type, Vmax_image_size, Vx_bitmap_file_path)
+       (cross_disabled_images): Remove.
+       * fringe.c (syms_of_fringe): Update.
+       (Vfringe_bitmaps, Voverflow_newline_into_fringe): Remove.
+       * frame.c (syms_of_frame): Update.
+       (Vdefault_frame_alist, Vdefault_frame_scroll_bars)
+       (Vdelete_frame_functions, Vframe_alpha_lower_limit)
+       (Vmake_pointer_invisible, Vmenu_bar_mode, Vmouse_highlight)
+       (Vmouse_position_function, Vterminal_frame, Vtool_bar_mode)
+       (Vx_resource_class, Vx_resource_name, focus_follows_mouse):
+       Remove.
+       * fontset.c (syms_of_fontset): Update.
+       (Valternate_fontname_alist, Vfont_encoding_charset_alist)
+       (Vfontset_alias_alist, Vignore_relative_composition)
+       (Votf_script_alist, Vuse_default_ascent)
+       (Vvertical_centering_font_regexp): Remove.
+       * font.c (syms_of_font): Update.
+       (Vfont_encoding_alist, Vfont_log, Vfont_slant_table)
+       (Vfont_weight_table, Vfont_width_table): Remove.
+       * fns.c (syms_of_fns): Update.
+       (Vfeatures, use_dialog_box, use_file_dialog): Remove.
+       * filelock.c (syms_of_filelock): Update.
+       (Vtemporary_file_directory): Remove.
+       * fileio.c (syms_of_fileio): Update.
+       (Vafter_insert_file_functions, Vauto_save_include_big_deletions)
+       (Vauto_save_list_file_name, Vauto_save_visited_file_name)
+       (Vdefault_file_name_coding_system, Vfile_name_coding_system)
+       (Vfile_name_handler_alist, Vinhibit_file_name_handlers)
+       (Vinhibit_file_name_operation, Vset_auto_coding_function)
+       (Vwrite_region_annotate_functions)
+       (Vwrite_region_annotations_so_far)
+       (Vwrite_region_post_annotation_function)
+       (delete_by_moving_to_trash, write_region_inhibit_fsync): Remove.
+       (Vw32_get_true_file_attributes): Remove declaration.
+       * eval.c (syms_of_eval): Update.
+       (Vdebug_ignored_errors, Vdebug_on_error, Vdebug_on_signal)
+       (Vdebugger, Vinhibit_quit, Vmacro_declaration_function)
+       (Vquit_flag, Vsignal_hook_function, Vstack_trace_on_error)
+       (debug_on_next_call, debug_on_quit, debugger_may_continue)
+       (max_lisp_eval_depth, max_specpdl_size): Remove.
+       * emacs.c (syms_of_emacs): Update.
+       (Vafter_init_time, Vbefore_init_time, Vcommand_line_args)
+       (Vdynamic_library_alist, Vemacs_copyright, Vemacs_version)
+       (Vinstallation_directory, Vinvocation_directory)
+       (Vinvocation_name, Vkill_emacs_hook, Vpath_separator)
+       (Vprevious_system_messages_locale, Vprevious_system_time_locale)
+       (Vsystem_configuration, Vsystem_configuration_options)
+       (Vsystem_messages_locale, Vsystem_time_locale, Vsystem_type)
+       (inhibit_x_resources, noninteractive1): Remove.
+       * editfns.c (syms_of_editfns): Update.
+       (Vbuffer_access_fontified_property)
+       (Vbuffer_access_fontify_functions, Vinhibit_field_text_motion)
+       (Voperating_system_release, Vsystem_name, Vuser_full_name)
+       (Vuser_login_name, Vuser_real_login_name): Remove.
+       * dosfns.c (syms_of_dosfns): Update.
+       (Vdos_display_scancodes, Vdos_version, Vdos_windows_version)
+       (dos_codepage, dos_country_code, dos_decimal_point)
+       (dos_hyper_key, dos_keyboard_layout, dos_keypad_mode)
+       (dos_super_key, dos_timezone_offset): Remove.
+       * doc.c (syms_of_doc): Update.
+       (Vbuild_files, Vdoc_file_name): Remove.
+       * dispnew.c (syms_of_display): Update.
+       (Vglyph_table, Vinitial_window_system)
+       (Vredisplay_preemption_period, Vstandard_display_table)
+       (Vwindow_system_version, baud_rate, cursor_in_echo_area)
+       (inverse_video, redisplay_dont_pause, visible_bell): Remove.
+       * dired.c (syms_of_dired): Update.
+       (Vcompletion_ignored_extensions): Remove.
+       (Vw32_get_true_file_attributes): Remove declaration.
+       * dbusbind.c (syms_of_dbusbind): Update.
+       (Vdbus_debug, Vdbus_registered_buses)
+       (Vdbus_registered_objects_table): Remove.
+       * data.c (syms_of_data): Update.
+       (Vmost_negative_fixnum, Vmost_positive_fixnum): Remove.
+       * composite.c (syms_of_composite): Update.
+       (Vauto_composition_function, Vauto_composition_mode)
+       (Vcompose_chars_after_function, Vcomposition_function_table):
+       Remove.
+       * coding.c (syms_of_coding): Update.
+       (Vcharset_revision_table, Vcoding_category_list)
+       (Vcoding_system_alist, Vcoding_system_for_read)
+       (Vcoding_system_for_write, Vcoding_system_list)
+       (Vdefault_process_coding_system, Venable_character_translation)
+       (Vfile_coding_system_alist, Vlast_code_conversion_error)
+       (Vlast_coding_system_used, Vlatin_extra_code_table)
+       (Vlocale_coding_system, Vnetwork_coding_system_alist)
+       (Vprocess_coding_system_alist)
+       (Vselect_safe_coding_system_function)
+       (Vstandard_translation_table_for_decode)
+       (Vstandard_translation_table_for_encode)
+       (Vtranslation_table_for_input, coding_system_require_warning)
+       (eol_mnemonic_dos, eol_mnemonic_mac, eol_mnemonic_undecided)
+       (eol_mnemonic_unix, inherit_process_coding_system)
+       (inhibit_eol_conversion, inhibit_iso_escape_detection)
+       (inhibit_null_byte_detection): Remove.
+       * cmds.c (syms_of_cmds): Update.
+       (Vpost_self_insert_hook): Remove.
+       * charset.c (syms_of_charset): Update.
+       (Vcharset_list, Vcharset_map_path, Vcurrent_iso639_language)
+       (inhibit_load_charset_map): Remove.
+       * character.c (syms_of_character): Update.
+       (Vauto_fill_chars, Vchar_direction_table, Vchar_script_table)
+       (Vchar_width_table, Vprintable_chars)
+       (Vscript_representative_chars, Vtranslation_table_vector)
+       (Vunicode_category_table): Remove.
+       * ccl.c (syms_of_ccl): Update.
+       (Vcode_conversion_map_vector, Vfont_ccl_encoder_alist)
+       (Vtranslation_hash_table_vector): Remove.
+       * category.c (syms_of_category): Update.
+       (Vword_combining_categories, Vword_separating_categories): Remove.
+       * callproc.c (syms_of_callproc): Update.
+       (Vconfigure_info_directory, Vdata_directory, Vdoc_directory)
+       (Vexec_directory, Vexec_path, Vexec_suffixes)
+       (Vinitial_environment, Vprocess_environment)
+       (Vshared_game_score_directory, Vshell_file_name): Remove.
+       * callint.c (syms_of_callint): Update.
+       (Vcommand_debug_status, Vcommand_history, Vcurrent_prefix_arg)
+       (Vmark_even_if_inactive, Vmouse_leave_buffer_hook): Remove.
+       * bytecode.c (syms_of_bytecode): Update.
+       (Vbyte_code_meter, byte_metering_on): Remove.
+       * buffer.c (syms_of_buffer): Update.
+       (Vafter_change_functions, Vbefore_change_functions)
+       (Vchange_major_mode_hook, Vfirst_change_hook)
+       (Vinhibit_read_only, Vkill_buffer_query_functions)
+       (Vtransient_mark_mode, inhibit_modification_hooks): Remove.
+       * alloc.c (syms_of_alloc): Update.
+       (Vgc_cons_percentage, Vgc_elapsed, Vmemory_full)
+       (Vmemory_signal_data, Vpost_gc_hook, Vpurify_flag)
+       (cons_cells_consed, floats_consed, garbage_collection_messages)
+       (gc_cons_threshold, gcs_done, intervals_consed)
+       (misc_objects_consed, pure_bytes_used, string_chars_consed)
+       (strings_consed, symbols_consed, vector_cells_consed): Remove.
+       * lisp.h (DEFVAR_LISP, DEFVAR_LISP_NOPRO, DEFVAR_BOOL)
+       (DEFVAR_INT): Assume global is in `globals'.
+       * alloc.c (globals): Define.
+ 2011-01-18  Tom Tromey  <tromey@redhat.com>
+       * image.c (Vimagemagick_render_type): Remove redundant
+       definition.
+ 2011-01-18  Tom Tromey  <tromey@redhat.com>
+       * xdisp.c (emacs_scroll_step): Rename from scroll_step.
+       (try_scrolling): Rename argument to 'arg_scroll_conservatively'.
+       (redisplay_window): Update.
+       (syms_of_xdisp): Update.
+ 2011-01-18  Tom Tromey  <tromey@redhat.com>
+       * gtkutil.h (x_gtk_use_old_file_dialog, x_gtk_show_hidden_files)
+       (x_gtk_file_dialog_help_text, x_gtk_whole_detached_tool_bar):
+       Declare.
+       * gtkutil.c (xg_uses_old_file_dialog):
+       (xg_get_file_with_chooser):
+       (xg_tool_bar_detach_callback): Don't redeclare globals.
+ 2011-01-18  Tom Tromey  <tromey@redhat.com>
+       * lisp.h (DEFVAR_BUFFER_DEFAULTS): New macro.
+       * buffer.c (syms_of_buffer): Use DEFVAR_BUFFER_DEFAULTS.
+ 2011-01-18  Paul Eggert  <eggert@cs.ucla.edu>
+       * lisp.h (DECL_ALIGN): Define if HAVE_ATTRIBUTE_ALIGNED, not if
+       defined __GNUC__.  ../configure now checks for this GCC feature,
+       which is now also supported by IBM and Oracle compilers.
+       (USE_LSB_TAG) [defined DECL_ALIGN]: Also define if defined __sun,
+       since Solaris malloc returns mult-of-8.
+ 2011-01-18  Stefan Monnier  <monnier@iro.umontreal.ca>
+       * image.c (syms_of_image): Don't access XSYMBOL's internals directly.
+ 2011-01-17  Paul Eggert  <eggert@cs.ucla.edu>
+       Give a name FLOAT_TO_STRING_BUFSIZE to the constant 350.
+       * lisp.h (FLOAT_TO_STRING_BUFSIZE): New macro.
+       * data.c (Fnumber_to_string): Use it.
+       * print.c (float_to_string, print_object): Likewise.
+       Include <unistd.h> unilaterally.
+       * alloc.c, atimer.c, buffer.c, callproc.c, dired.c, dispnew.c, doc.c:
+       * doprnt.c, editfns.c, emacs.c, fileio.c, filelock.c, fns.c:
+       * getloadavg.c, getpagesize.h, gmalloc.c, image.c, keyboard.c:
+       * lread.c, process.c, process.h, ralloc.c, regex.c, sysdep.c:
+       * systty.h, term.c, termcap.c, xfns.c, xrdb.c, xselect.c, xsmfns.c:
+       * xterm.c:
+       Include <unistd.h> without worrying about HAVE_UNISTD_H, since
+       unistd.h is always present now, possibly supplied by gnulib.
+       * mktime.c: Remove; moving to ../lib.
+       Use gnulib's mktime module.
+       * deps.mk (mktime.o): Remove rule.
+       Use gnulib's ftoastr module.
+       * print.c: Include ftoastr.h.
+       (FLT_RADIX, DBL_MANT_DIG, DBL_DIG, DBL_MIN, DOUBLE_DIGITS_BOUND):
+       Remove; no longer needed.
+       (float_to_string): Use dtoastr rather than rolling our own code,
+       which had an off-by-one bug on non-IEEE hosts.
+       Automate syncing from gnulib.
+       * Makefile.in (lib): New macro.
+       (ALL_CFLAGS): Add -I$(lib) -I$(srcdir)/../lib.
+       ($(lib)/libgnu.a): New rule.
+       (temacs$(EXEEXT)): Also link $(lib)/libgnu.a.
+       * xfns.c (x_real_positions): Fix signedness of local var 'ign'.
+       XGetGeometry wants unsigned int *, not int *, for its last 4 args,
+       so change the type of 'ign' to unsigned int from int.
+       * regex.c (analyse_first): Remove unreachable 'continue' statement.
+       * xterm.h (struct x_display_info): Remove stray semicolon.
+       The extra semicolon didn't conform to the C standard.
+       Problem reported by Sun cc.
+       * lisp.h: Redo flags and XSET slightly to avoid overflow diagnostics.
+       These changes make compilation easier to follow with Sun cc.
+       (ARRAY_MARK_FLAG): Make it signed, so that it can be assigned to
+       EMACS_INT values without provoking overflow diagnostics.
+       (PSEUDOVECTOR_FLAG): Likewise, for consistency.
+       (XSET) [! USE_LSB_TAG]: Use unsigned left shift to avoid overflow
+       diagnostic with signed left shift.
+       * fileio.c (make_temp_name): Remove unreachable code.
+       * fontset.c (free_realized_fontset): Mark unreachable code with if (0).
+       Previously it was marked by preceding it with "return;", but
+       Sun cc complains about this.
+       * coding.c (decode_coding_emacs_mule): Remove unreachable code.
+       This is a typo left over from 2009-03-06T07:51:52Z!handa@m17n.org,
+       which fixed Bug#2370.  Caught by Sun cc.
 +2011-01-16  Martin Rudalics  <rudalics@gmx.at>
 +
 +      * window.c (run_window_configuration_change_hook): Call
 +      select_frame_norecord instead of Fselect_frame.
 +
+ 2011-01-15  Martin Rudalics  <rudalics@gmx.at>
+       * window.c (inhibit_point_swap): New variable.
+       (Fselect_window): If inhibit_point_swap is nonzero, avoid swapping
+       point this time.
+       (Fset_window_configuration): Set inhibit_point_swap to 1 instead
+       of setting selected_window to nil (Bug#7728).
  2011-01-11  Tassilo Horn  <tassilo@member.fsf.org>
  
-       * image.c (imagemagick_load_image, Finit_image_library): Free
-       intermediate image after creating a MagickWand from it.  Terminate
-       MagickWand environment after image loading.
+       * image.c (imagemagick_load_image, Finit_image_library):
+       Free intermediate image after creating a MagickWand from it.
+       Terminate MagickWand environment after image loading.
  
  2011-01-10  Michael Albinus  <michael.albinus@gmx.de>
  
diff --cc src/buffer.c
index 2b1a9441fc93db0c68c9d41838105637fa9c5a3a,c95fbb5f516383f39f39ee9ebb0098b9bb31f82e..57fecce2fb487b09c6414f250321ac1e620e5006
@@@ -1268,59 -1237,60 +1240,59 @@@ exists, return the buffer `*scratch*' (
  
    CHECK_FRAME (frame);
  
 -  tail = Vbuffer_alist;
    pred = frame_buffer_predicate (frame);
 -
 -  /* Consider buffers that have been seen in the selected frame
 -     before other buffers.  */
 -
 -  tem = frame_buffer_list (frame);
 -  add_ons = Qnil;
 -  while (CONSP (tem))
 +  /* Consider buffers that have been seen in the frame first.  */
 +  tail = XFRAME (frame)->buffer_list;
 +  for (; CONSP (tail); tail = XCDR (tail))
      {
 -      if (BUFFERP (XCAR (tem)))
 -      add_ons = Fcons (Fcons (Qnil, XCAR (tem)), add_ons);
 -      tem = XCDR (tem);
 +      buf = XCAR (tail);
 +      if (BUFFERP (buf) && !EQ (buf, buffer)
-         && !NILP (XBUFFER (buf)->name)
-         && (SREF (XBUFFER (buf)->name, 0) != ' ')
++        && !NILP (BVAR (XBUFFER (buf), name))
++        && (SREF (BVAR (XBUFFER (buf), name), 0) != ' ')
 +        /* If the frame has a buffer_predicate, disregard buffers that
 +           don't fit the predicate.  */
 +        && (NILP (pred) || !NILP (call1 (pred, buf))))
 +      {
 +        if (!NILP (visible_ok)
 +            || NILP (Fget_buffer_window (buf, Qvisible)))
 +          return buf;
 +        else if (NILP (notsogood))
 +          notsogood = buf;
 +      }
      }
 -  tail = nconc2 (Fnreverse (add_ons), tail);
  
 +  /* Consider alist of all buffers next.  */
 +  tail = Vbuffer_alist;
    for (; CONSP (tail); tail = XCDR (tail))
      {
        buf = Fcdr (XCAR (tail));
 -      if (EQ (buf, buffer))
 -      continue;
 -      if (NILP (buf))
 -      continue;
 -      if (NILP (BVAR (XBUFFER (buf), name)))
 -      continue;
 -      if (SREF (BVAR (XBUFFER (buf), name), 0) == ' ')
 -      continue;
 -      /* If the selected frame has a buffer_predicate,
 -       disregard buffers that don't fit the predicate.  */
 -      if (!NILP (pred))
 +      if (BUFFERP (buf) && !EQ (buf, buffer)
-         && !NILP (XBUFFER (buf)->name)
-         && (SREF (XBUFFER (buf)->name, 0) != ' ')
++        && !NILP (BVAR (XBUFFER (buf), name))
++        && (SREF (BVAR (XBUFFER (buf), name), 0) != ' ')
 +        /* If the frame has a buffer_predicate, disregard buffers that
 +           don't fit the predicate.  */
 +        && (NILP (pred) || !NILP (call1 (pred, buf))))
        {
 -        tem = call1 (pred, buf);
 -        if (NILP (tem))
 -          continue;
 +        if (!NILP (visible_ok)
 +            || NILP (Fget_buffer_window (buf, Qvisible)))
 +          return buf;
 +        else if (NILP (notsogood))
 +          notsogood = buf;
        }
 -
 -      if (NILP (visible_ok))
 -      tem = Fget_buffer_window (buf, Qvisible);
 -      else
 -      tem = Qnil;
 -      if (NILP (tem))
 -      return buf;
 -      if (NILP (notsogood))
 -      notsogood = buf;
      }
 +
    if (!NILP (notsogood))
      return notsogood;
 -  buf = Fget_buffer (build_string ("*scratch*"));
 -  if (NILP (buf))
 +  else
      {
 -      buf = Fget_buffer_create (build_string ("*scratch*"));
 -      Fset_buffer_major_mode (buf);
 +      buf = Fget_buffer (build_string ("*scratch*"));
 +      if (NILP (buf))
 +      {
 +        buf = Fget_buffer_create (build_string ("*scratch*"));
 +        Fset_buffer_major_mode (buf);
 +      }
 +      return buf;
      }
 -  return buf;
  }
  \f
  DEFUN ("buffer-enable-undo", Fbuffer_enable_undo, Sbuffer_enable_undo,
@@@ -3004,10 -3114,10 +2982,10 @@@ record_overlay_string (struct sortstrli
  EMACS_INT
  overlay_strings (EMACS_INT pos, struct window *w, unsigned char **pstr)
  {
 -  Lisp_Object overlay, window, str;
 +  Lisp_Object overlay, window, clone_number, str;
    struct Lisp_Overlay *ov;
    EMACS_INT startpos, endpos;
-   int multibyte = ! NILP (current_buffer->enable_multibyte_characters);
+   int multibyte = ! NILP (BVAR (current_buffer, enable_multibyte_characters));
  
    overlay_heads.used = overlay_heads.bytes = 0;
    overlay_tails.used = overlay_tails.bytes = 0;
diff --cc src/dispnew.c
Simple merge
diff --cc src/frame.c
Simple merge
diff --cc src/indent.c
Simple merge
diff --cc src/minibuf.c
Simple merge
diff --cc src/print.c
Simple merge
diff --cc src/w32fns.c
Simple merge
diff --cc src/window.c
index 60e0b93157a168af9057511f3821051c389f904a,7965269f0e7a611c8c3c5f3f21495bd1bba8d1fc..0e254973f0eb9e2eb7d65f6607bbd0b7e4d3d2cd
@@@ -82,7 -84,7 +81,8 @@@ static int foreach_window_1 (struct win
                               int (* fn) (struct window *, void *),
                               void *);
  static Lisp_Object window_list_1 (Lisp_Object, Lisp_Object, Lisp_Object);
 +static void resize_window_apply (struct window *, int);
+ static Lisp_Object select_window (Lisp_Object, Lisp_Object, int);
  
  /* This is the window in which the terminal's cursor should
     be left when nothing is being done with it.  This must
@@@ -106,89 -111,44 +106,51 @@@ Lisp_Object minibuf_window
  
  /* Non-nil means it is the window whose mode line should be
     shown as the selected window when the minibuffer is selected.  */
 -
  Lisp_Object minibuf_selected_window;
  
- /* Non-nil means it is the window for C-M-v to scroll
-    when the mini-buffer is selected.  */
- Lisp_Object Vminibuf_scroll_window;
- /* Non-nil means this is the buffer whose window C-M-v should scroll.  */
- Lisp_Object Vother_window_scroll_buffer;
- /* Non-nil means it's function to call to display temp buffers.  */
- Lisp_Object Vtemp_buffer_show_function;
- /* Pass as second argument to `display-buffer'.  */
- Lisp_Object Vtemp_buffer_show_specifiers;
- /* Non-zero means line and page scrolling on tall lines (with images)
-    does partial scrolling by modifying window-vscroll.  */
- int auto_window_vscroll_p;
- /* Non-zero means to use mode-line-inactive face in all windows but the
-    selected-window and the minibuffer-scroll-window when the
-    minibuffer is active.  */
- int mode_line_in_non_selected_windows;
  /* Hook run at end of temp_output_buffer_show.  */
 -
  Lisp_Object Qtemp_buffer_show_hook;
  
- /* Number of lines of continuity in scrolling by screenfuls.  */
- EMACS_INT next_screen_context_lines;
  /* Incremented for each window created.  */
 -
  static int sequence_number;
  
  /* Nonzero after init_window_once has finished.  */
  static int window_initialized;
  
  /* Hook to run when window config changes.  */
 -
  static Lisp_Object Qwindow_configuration_change_hook;
- static Lisp_Object Vwindow_configuration_change_hook;
- /* Non-nil means scroll commands try to put point
-    at the same screen height as previously.  */
- Lisp_Object Vscroll_preserve_screen_position;
+ /* Incremented by 1 whenever a window is deleted.  */
  
- /* Non-nil means that text is inserted before window's markers.  */
- Lisp_Object Vwindow_point_insertion_type;
+ int window_deletion_count;
  
  /* Used by the function window_scroll_pixel_based */
 -
  static int window_scroll_pixel_based_preserve_x;
  static int window_scroll_pixel_based_preserve_y;
  
  /* Same for window_scroll_line_based.  */
 -
  static int window_scroll_preserve_hpos;
  static int window_scroll_preserve_vpos;
- /* Whether splitting/deleting is handled specially. */
- Lisp_Object Vwindow_splits;
- /* If non-nil, then the `recenter' command with a nil argument causes
-    the entire frame to be redrawn; the special value `tty' causes the
-    frame to be redrawn only if it is a tty frame.  */
- static Lisp_Object Vrecenter_redisplay;
 +\f
 +static struct window *
 +decode_window (register Lisp_Object window)
 +{
 +  if (NILP (window))
 +    return XWINDOW (selected_window);
  
 -#if 0 /* This isn't used anywhere.  */
 -/* Nonzero means we can split a frame even if it is "unsplittable".  */
 -static int inhibit_frame_unsplittable;
 -#endif
 +  CHECK_LIVE_WINDOW (window);
 +  return XWINDOW (window);
 +}
 +
 +static struct window *
 +decode_any_window (register Lisp_Object window)
 +{
 +  if (NILP (window))
 +    return XWINDOW (selected_window);
 +
 +  CHECK_WINDOW (window);
 +  return XWINDOW (window);
 +}
  
 -\f
  DEFUN ("windowp", Fwindowp, Swindowp, 1, 1, 0,
         doc: /* Return t if OBJECT is a window.  */)
    (Lisp_Object object)
@@@ -251,187 -237,187 +213,187 @@@ used by that frame.  */
  
  DEFUN ("window-minibuffer-p", Fwindow_minibuffer_p, Swindow_minibuffer_p, 0, 1, 0,
         doc: /* Return non-nil if WINDOW is a minibuffer window.
 -WINDOW defaults to the selected window.  */)
 +WINDOW can be any window and defaults to the selected one.  */)
    (Lisp_Object window)
  {
 -  struct window *w = decode_window (window);
 -  return MINI_WINDOW_P (w) ? Qt : Qnil;
 +  return MINI_WINDOW_P (decode_any_window (window)) ? Qt : Qnil;
  }
  
 -
 -DEFUN ("pos-visible-in-window-p", Fpos_visible_in_window_p,
 -       Spos_visible_in_window_p, 0, 3, 0,
 -       doc: /* Return non-nil if position POS is currently on the frame in WINDOW.
 -Return nil if that position is scrolled vertically out of view.
 -If a character is only partially visible, nil is returned, unless the
 -optional argument PARTIALLY is non-nil.
 -If POS is only out of view because of horizontal scrolling, return non-nil.
 -If POS is t, it specifies the position of the last visible glyph in WINDOW.
 -POS defaults to point in WINDOW; WINDOW defaults to the selected window.
 -
 -If POS is visible, return t if PARTIALLY is nil; if PARTIALLY is non-nil,
 -return value is a list of 2 or 6 elements (X Y [RTOP RBOT ROWH VPOS]),
 -where X and Y are the pixel coordinates relative to the top left corner
 -of the window.  The remaining elements are omitted if the character after
 -POS is fully visible; otherwise, RTOP and RBOT are the number of pixels
 -off-window at the top and bottom of the row, ROWH is the height of the
 -display row, and VPOS is the row number (0-based) containing POS.  */)
 -  (Lisp_Object pos, Lisp_Object window, Lisp_Object partially)
 +/* Don't move this to window.el - this must be a safe routine.  */
 +DEFUN ("frame-first-window", Fframe_first_window, Sframe_first_window, 0, 1, 0,
 +       doc: /* Return the topmost, leftmost live window on FRAME_OR_WINDOW.
 +If omitted, FRAME_OR_WINDOW defaults to the currently selected frame.
 +Else if FRAME_OR_WINDOW denotes any window, return the first window of
 +that window's frame.  If FRAME_OR_WINDOW denotes a live frame, return
 +the first window of that frame.  */)
 +  (Lisp_Object frame_or_window)
  {
 -  register struct window *w;
 -  register EMACS_INT posint;
 -  register struct buffer *buf;
 -  struct text_pos top;
 -  Lisp_Object in_window = Qnil;
 -  int rtop, rbot, rowh, vpos, fully_p = 1;
 -  int x, y;
 +  Lisp_Object window;
  
 -  w = decode_window (window);
 -  buf = XBUFFER (w->buffer);
 -  SET_TEXT_POS_FROM_MARKER (top, w->start);
 +  if (NILP (frame_or_window))
 +    window = SELECTED_FRAME ()->root_window;
 +  else if (WINDOWP (frame_or_window))
 +    window = XFRAME (WINDOW_FRAME (XWINDOW (frame_or_window)))->root_window;
 +  else
 +    {
 +      CHECK_LIVE_FRAME (frame_or_window);
 +      window = XFRAME (frame_or_window)->root_window;
 +    }
  
 -  if (EQ (pos, Qt))
 -    posint = -1;
 -  else if (!NILP (pos))
 +  while (NILP (XWINDOW (window)->buffer))
      {
 -      CHECK_NUMBER_COERCE_MARKER (pos);
 -      posint = XINT (pos);
 +      if (! NILP (XWINDOW (window)->hchild))
 +      window = XWINDOW (window)->hchild;
 +      else if (! NILP (XWINDOW (window)->vchild))
 +      window = XWINDOW (window)->vchild;
 +      else
 +      abort ();
      }
 -  else if (w == XWINDOW (selected_window))
 -    posint = PT;
 -  else
 -    posint = XMARKER (w->pointm)->charpos;
  
 -  /* If position is above window start or outside buffer boundaries,
 -     or if window start is out of range, position is not visible.  */
 -  if ((EQ (pos, Qt)
 -       || (posint >= CHARPOS (top) && posint <= BUF_ZV (buf)))
 -      && CHARPOS (top) >= BUF_BEGV (buf)
 -      && CHARPOS (top) <= BUF_ZV (buf)
 -      && pos_visible_p (w, posint, &x, &y, &rtop, &rbot, &rowh, &vpos)
 -      && (fully_p = !rtop && !rbot, (!NILP (partially) || fully_p)))
 -    in_window = Qt;
 +  return window;
 +}
  
 -  if (!NILP (in_window) && !NILP (partially))
 +DEFUN ("frame-selected-window", Fframe_selected_window,
 +       Sframe_selected_window, 0, 1, 0,
 +       doc: /* Return the selected window of FRAME_OR_WINDOW.
 +If omitted, FRAME_OR_WINDOW defaults to the currently selected frame.
 +Else if FRAME_OR_WINDOW denotes any window, return the selected window
 +of that window's frame.  If FRAME_OR_WINDOW denotes a live frame, return
 +the selected window of that frame.  */)
 +  (Lisp_Object frame_or_window)
 +{
 +  Lisp_Object window;
 +
 +  if (NILP (frame_or_window))
 +    window = SELECTED_FRAME ()->selected_window;
 +  else if (WINDOWP (frame_or_window))
 +    window = XFRAME (WINDOW_FRAME (XWINDOW (frame_or_window)))->selected_window;
 +  else
      {
 -      Lisp_Object part = Qnil;
 -      if (!fully_p)
 -      part = list4 (make_number (rtop), make_number (rbot),
 -                      make_number (rowh), make_number (vpos));
 -      in_window = Fcons (make_number (x),
 -                       Fcons (make_number (y), part));
 +      CHECK_LIVE_FRAME (frame_or_window);
 +      window = XFRAME (frame_or_window)->selected_window;
      }
  
 -  return in_window;
 +  return window;
  }
  
 -DEFUN ("window-line-height", Fwindow_line_height,
 -       Swindow_line_height, 0, 2, 0,
 -       doc: /* Return height in pixels of text line LINE in window WINDOW.
 -If WINDOW is nil or omitted, use selected window.
 +DEFUN ("set-frame-selected-window", Fset_frame_selected_window,
 +       Sset_frame_selected_window, 2, 3, 0,
 +       doc: /* Set selected window of FRAME to WINDOW.
 +FRAME must be a live frame and defaults to the selected one.  If FRAME
 +is the selected frame, this makes WINDOW the selected window.  Optional
 +argument NORECORD non-nil means to neither change the order of recently
 +selected windows nor the buffer list.  WINDOW must denote a live window.
 +Return WINDOW.  */)
 +  (Lisp_Object frame, Lisp_Object window, Lisp_Object norecord)
 +{
 +  if (NILP (frame))
 +    frame = selected_frame;
  
 -Return height of current line if LINE is omitted or nil.  Return height of
 -header or mode line if LINE is `header-line' and `mode-line'.
 -Otherwise, LINE is a text line number starting from 0.  A negative number
 -counts from the end of the window.
 +  CHECK_LIVE_FRAME (frame);
 +  CHECK_LIVE_WINDOW (window);
  
 -Value is a list (HEIGHT VPOS YPOS OFFBOT), where HEIGHT is the height
 -in pixels of the visible part of the line, VPOS and YPOS are the
 -vertical position in lines and pixels of the line, relative to the top
 -of the first text line, and OFFBOT is the number of off-window pixels at
 -the bottom of the text line.  If there are off-window pixels at the top
 -of the (first) text line, YPOS is negative.
 +  if (! EQ (frame, WINDOW_FRAME (XWINDOW (window))))
 +    error ("In `set-frame-selected-window', WINDOW is not on FRAME");
  
 -Return nil if window display is not up-to-date.  In that case, use
 -`pos-visible-in-window-p' to obtain the information.  */)
 -  (Lisp_Object line, Lisp_Object window)
 +  if (EQ (frame, selected_frame))
 +    return Fselect_window (window, norecord);
 +  else
 +    return XFRAME (frame)->selected_window = window;
 +}
 +
 +DEFUN ("selected-window", Fselected_window, Sselected_window, 0, 0, 0,
 +       doc: /* Return the selected window.
 +The selected window is the window in which the standard cursor for
 +selected windows appears and to which many commands apply.  */)
 +  (void)
  {
 -  register struct window *w;
 -  register struct buffer *b;
 -  struct glyph_row *row, *end_row;
 -  int max_y, crop, i, n;
 +  return selected_window;
 +}
  
 -  w = decode_window (window);
 +int window_select_count;
  
 -  if (noninteractive
 -      || w->pseudo_window_p)
 -    return Qnil;
 +/* If select_window is called with inhibit_point_swap non-zero it will
 +   not store point of the old selected window's buffer back into that
 +   window's pointm slot.  This is needed by Fset_window_configuration to
 +   avoid that the display routine is called with selected_window set to
 +   Qnil causing a subsequent crash.  */
 +static Lisp_Object
 +select_window (Lisp_Object window, Lisp_Object norecord, int inhibit_point_swap)
 +{
 +  register struct window *w;
 +  register struct window *ow;
 +  struct frame *sf;
 +  int not_selected_before = !EQ (window, selected_window) || inhibit_point_swap;
  
 -  CHECK_BUFFER (w->buffer);
 -  b = XBUFFER (w->buffer);
 +  CHECK_LIVE_WINDOW (window);
  
 -  /* Fail if current matrix is not up-to-date.  */
 -  if (NILP (w->window_end_valid)
 -      || current_buffer->clip_changed
 -      || current_buffer->prevent_redisplay_optimizations_p
 -      || XFASTINT (w->last_modified) < BUF_MODIFF (b)
 -      || XFASTINT (w->last_overlay_modified) < BUF_OVERLAY_MODIFF (b))
 -    return Qnil;
 +  w = XWINDOW (window);
 +  w->frozen_window_start_p = 0;
  
 -  if (NILP (line))
 +  if (not_selected_before)
      {
 -      i = w->cursor.vpos;
 -      if (i < 0 || i >= w->current_matrix->nrows
 -        || (row = MATRIX_ROW (w->current_matrix, i), !row->enabled_p))
 -      return Qnil;
 -      max_y = window_text_bottom_y (w);
 -      goto found_row;
 -    }
 +      sf = SELECTED_FRAME ();
 +      if (XFRAME (WINDOW_FRAME (w)) != sf)
 +      {
 +        XFRAME (WINDOW_FRAME (w))->selected_window = window;
 +        /* Use this rather than Fhandle_switch_frame
 +           so that FRAME_FOCUS_FRAME is moved appropriately as we
 +           move around in the state where a minibuffer in a separate
 +           frame is active.  */
 +        Fselect_frame (WINDOW_FRAME (w), norecord);
 +        /* Fselect_frame called us back so we've done all the work already.  */
 +        eassert (EQ (window, selected_window));
 +        return window;
 +      }
 +      else
 +      sf->selected_window = window;
  
 -  if (EQ (line, Qheader_line))
 -    {
 -      if (!WINDOW_WANTS_HEADER_LINE_P (w))
 -      return Qnil;
 -      row = MATRIX_HEADER_LINE_ROW (w->current_matrix);
 -      if (!row->enabled_p)
 -      return Qnil;
 -      return list4 (make_number (row->height),
 -                  make_number (0), make_number (0),
 -                  make_number (0));
 -    }
 +      if (!inhibit_point_swap)
 +      {
 +        /* Store the current buffer's actual point into the old
 +           selected window.  It belongs to that window, and when the
 +           window is not selected, must be in the window.  */
 +        ow = XWINDOW (selected_window);
 +        if (! NILP (ow->buffer))
 +          set_marker_both (ow->pointm, ow->buffer,
 +                           BUF_PT (XBUFFER (ow->buffer)),
 +                           BUF_PT_BYTE (XBUFFER (ow->buffer)));
 +      }
  
 -  if (EQ (line, Qmode_line))
 -    {
 -      row = MATRIX_MODE_LINE_ROW (w->current_matrix);
 -      if (!row->enabled_p)
 -      return Qnil;
 -      return list4 (make_number (row->height),
 -                  make_number (0), /* not accurate */
 -                  make_number (WINDOW_HEADER_LINE_HEIGHT (w)
 -                               + window_text_bottom_y (w)),
 -                  make_number (0));
 +      selected_window = window;
      }
  
 -  CHECK_NUMBER (line);
 -  n = XINT (line);
 -
 -  row = MATRIX_FIRST_TEXT_ROW (w->current_matrix);
 -  end_row = MATRIX_BOTTOM_TEXT_ROW (w->current_matrix, w);
 -  max_y = window_text_bottom_y (w);
 -  i = 0;
 +  Fset_buffer (w->buffer);
  
 -  while ((n < 0 || i < n)
 -       && row <= end_row && row->enabled_p
 -       && row->y + row->height < max_y)
 -    row++, i++;
 +  if (NILP (norecord))
 +    {
 +      ++window_select_count;
 +      XSETFASTINT (w->use_time, window_select_count);
 +      record_buffer (w->buffer);
 +    }
  
-   XBUFFER (w->buffer)->last_selected_window = window;
 -  if (row > end_row || !row->enabled_p)
 -    return Qnil;
++  BVAR (XBUFFER (w->buffer), last_selected_window) = window;
  
 -  if (++n < 0)
 +  /* Go to the point recorded in the window.
 +     This is important when the buffer is in more
 +     than one window.  It also matters when
 +     redisplay_window has altered point after scrolling,
 +     because it makes the change only in the window.  */
 +  if (not_selected_before)
      {
 -      if (-n > i)
 -      return Qnil;
 -      row += n;
 -      i += n;
 +      register EMACS_INT new_point = marker_position (w->pointm);
 +      if (new_point < BEGV)
 +      SET_PT (BEGV);
 +      else if (new_point > ZV)
 +      SET_PT (ZV);
 +      else
 +      SET_PT (new_point);
 +
 +      windows_or_buffers_changed++;
      }
  
 - found_row:
 -  crop = max (0, (row->y + row->height) - max_y);
 -  return list4 (make_number (row->height + min (0, row->y) - crop),
 -              make_number (i),
 -              make_number (row->y),
 -              make_number (crop));
 +  return window;
  }
  
  
@@@ -1846,59 -1425,52 +1808,59 @@@ unshow_buffer (register struct window *
                                         marker_byte_position (w->pointm),
                                         BUF_ZV_BYTE (b)));
  
-   if (WINDOWP (b->last_selected_window)
-       && w == XWINDOW (b->last_selected_window))
-     b->last_selected_window = Qnil;
+   if (WINDOWP (BVAR (b, last_selected_window))
+       && w == XWINDOW (BVAR (b, last_selected_window)))
+     BVAR (b, last_selected_window) = Qnil;
  }
  
 -/* Put replacement into the window structure in place of old. */
 +/* Put NEW into the window structure in place of OLD.  SETFLAG zero
 +   means change window structure only.  Otherwise store geometry and
 +   other settings as well.  */
  static void
 -replace_window (Lisp_Object old, Lisp_Object replacement)
 +replace_window (Lisp_Object old, Lisp_Object new, int setflag)
  {
    register Lisp_Object tem;
 -  register struct window *o = XWINDOW (old), *p = XWINDOW (replacement);
 -
 -  /* If OLD is its frame's root_window, then replacement is the new
 -     root_window for that frame.  */
 +  register struct window *o = XWINDOW (old), *n = XWINDOW (new);
  
 +  /* If OLD is its frame's root window, then NEW is the new
 +     root window for that frame.  */
    if (EQ (old, FRAME_ROOT_WINDOW (XFRAME (o->frame))))
 -    FRAME_ROOT_WINDOW (XFRAME (o->frame)) = replacement;
 -
 -  p->left_col = o->left_col;
 -  p->top_line = o->top_line;
 -  p->total_cols = o->total_cols;
 -  p->total_lines = o->total_lines;
 -  p->desired_matrix = p->current_matrix = 0;
 -  p->vscroll = 0;
 -  memset (&p->cursor, 0, sizeof (p->cursor));
 -  memset (&p->last_cursor, 0, sizeof (p->last_cursor));
 -  memset (&p->phys_cursor, 0, sizeof (p->phys_cursor));
 -  p->phys_cursor_type = -1;
 -  p->phys_cursor_width = -1;
 -  p->must_be_updated_p = 0;
 -  p->pseudo_window_p = 0;
 -  XSETFASTINT (p->window_end_vpos, 0);
 -  XSETFASTINT (p->window_end_pos, 0);
 -  p->window_end_valid = Qnil;
 -  p->frozen_window_start_p = 0;
 -  p->orig_top_line = p->orig_total_lines = Qnil;
 -
 -  p->next = tem = o->next;
 +    FRAME_ROOT_WINDOW (XFRAME (o->frame)) = new;
 +
 +  if (setflag)
 +    {
 +      n->left_col = o->left_col;
 +      n->top_line = o->top_line;
 +      n->total_cols = o->total_cols;
 +      n->total_lines = o->total_lines;
 +      n->normal_cols = o->normal_cols;
 +      XSETFASTINT (o->normal_cols, 1);  /* !!!  */
 +      n->normal_lines = o->normal_lines;
 +      XSETFASTINT (o->normal_lines, 1);  /* !!!  */
 +      n->desired_matrix = n->current_matrix = 0;
 +      n->vscroll = 0;
 +      memset (&n->cursor, 0, sizeof (n->cursor));
 +      memset (&n->last_cursor, 0, sizeof (n->last_cursor));
 +      memset (&n->phys_cursor, 0, sizeof (n->phys_cursor));
 +      n->phys_cursor_type = -1;
 +      n->phys_cursor_width = -1;
 +      n->must_be_updated_p = 0;
 +      n->pseudo_window_p = 0;
 +      XSETFASTINT (n->window_end_vpos, 0);
 +      XSETFASTINT (n->window_end_pos, 0);
 +      n->window_end_valid = Qnil;
 +      n->frozen_window_start_p = 0;
 +    }
 +
 +  n->next = tem = o->next;
    if (!NILP (tem))
 -    XWINDOW (tem)->prev = replacement;
 +    XWINDOW (tem)->prev = new;
  
 -  p->prev = tem = o->prev;
 +  n->prev = tem = o->prev;
    if (!NILP (tem))
 -    XWINDOW (tem)->next = replacement;
 +    XWINDOW (tem)->next = new;
  
 -  p->parent = tem = o->parent;
 +  n->parent = tem = o->parent;
    if (!NILP (tem))
      {
        if (EQ (XWINDOW (tem)->vchild, old))
@@@ -3135,19 -3478,12 +3097,19 @@@ This function runs `window-scroll-funct
    else if (!EQ (tem, Qt))
      /* w->buffer is t when the window is first being set up.  */
      {
 -      if (EQ (tem, buffer))
 -      return Qnil;
 -      else if (EQ (w->dedicated, Qt))
 -      error ("Window is dedicated to `%s'", SDATA (BVAR (XBUFFER (tem), name)));
 -      else
 -      w->dedicated = Qnil;
 +      if (!EQ (tem, buffer))
 +      {
 +        if (EQ (w->dedicated, Qt))
 +          /* WINDOW is strongly dedicated to its buffer, signal an
 +             error.  */
-           error ("Window is dedicated to `%s'", SDATA (XBUFFER (tem)->name));
++          error ("Window is dedicated to `%s'", SDATA (BVAR (XBUFFER (tem), name)));
 +        else
 +          /* WINDOW is weakly dedicated to its buffer, reset
 +             dedicatedness.  */
 +          w->dedicated = Qnil;
 +
 +        call1 (Qrecord_window_buffer, window);
 +      }
  
        unshow_buffer (w);
      }
@@@ -5616,53 -6060,50 +5578,53 @@@ the return value is nil.  Otherwise th
  
          /* Reinstall the saved buffer and pointers into it.  */
          if (NILP (p->buffer))
 +          /* An internal window.  */
            w->buffer = p->buffer;
-         else if (!NILP (XBUFFER (p->buffer)->name))
++        else if (!NILP (BVAR (XBUFFER (p->buffer), name)))
 +          /* If saved buffer is alive, install it.  */
 +          {
 +            w->buffer = p->buffer;
 +            w->start_at_line_beg = p->start_at_line_beg;
 +            set_marker_restricted (w->start, p->start, w->buffer);
 +            set_marker_restricted (w->pointm, p->pointm, w->buffer);
-             Fset_marker (XBUFFER (w->buffer)->mark,
++            Fset_marker (BVAR (XBUFFER (w->buffer), mark),
 +                         p->mark, w->buffer);
 +
 +            /* As documented in Fcurrent_window_configuration, don't
 +               restore the location of point in the buffer which was
 +               current when the window configuration was recorded.  */
 +            if (!EQ (p->buffer, new_current_buffer)
 +                && XBUFFER (p->buffer) == current_buffer)
 +              Fgoto_char (w->pointm);
 +          }
-         else if (NILP (w->buffer) || NILP (XBUFFER (w->buffer)->name))
++        else if (NILP (w->buffer) || NILP (BVAR (XBUFFER (w->buffer), name)))
 +          /* Else unless window has a live buffer, get one.  */
 +          {
 +            w->buffer = Fcdr (Fcar (Vbuffer_alist));
 +            /* This will set the markers to beginning of visible
 +               range.  */
 +            set_marker_restricted (w->start, make_number (0), w->buffer);
 +            set_marker_restricted (w->pointm, make_number (0), w->buffer);
 +            w->start_at_line_beg = Qt;
 +            if (!NILP (w->dedicated))
 +              /* Record this window as dead.  */
 +              dead_windows = Fcons (window, dead_windows);
 +            /* Make sure window is no more dedicated.  */
 +            w->dedicated = Qnil;
 +          }
          else
 +          /* Keeping window's old buffer; make sure the markers
 +             are real.  */
            {
 -            if (!NILP (BVAR (XBUFFER (p->buffer), name)))
 -              /* If saved buffer is alive, install it.  */
 -              {
 -                w->buffer = p->buffer;
 -                w->start_at_line_beg = p->start_at_line_beg;
 -                set_marker_restricted (w->start, p->start, w->buffer);
 -                set_marker_restricted (w->pointm, p->pointm, w->buffer);
 -                Fset_marker (BVAR (XBUFFER (w->buffer), mark),
 -                             p->mark, w->buffer);
 -
 -                /* As documented in Fcurrent_window_configuration, don't
 -                   restore the location of point in the buffer which was
 -                   current when the window configuration was recorded.  */
 -                if (!EQ (p->buffer, new_current_buffer)
 -                    && XBUFFER (p->buffer) == current_buffer)
 -                  Fgoto_char (w->pointm);
 -              }
 -            else if (NILP (w->buffer) || NILP (BVAR (XBUFFER (w->buffer), name)))
 -              /* Else unless window has a live buffer, get one.  */
 -              {
 -                w->buffer = Fcdr (Fcar (Vbuffer_alist));
 -                /* This will set the markers to beginning of visible
 -                   range.  */
 -                set_marker_restricted (w->start, make_number (0), w->buffer);
 -                set_marker_restricted (w->pointm, make_number (0),w->buffer);
 -                w->start_at_line_beg = Qt;
 -              }
 -            else
 -              /* Keeping window's old buffer; make sure the markers
 -                 are real.  */
 -              {
 -                /* Set window markers at start of visible range.  */
 -                if (XMARKER (w->start)->buffer == 0)
 -                  set_marker_restricted (w->start, make_number (0),
 -                                         w->buffer);
 -                if (XMARKER (w->pointm)->buffer == 0)
 -                  set_marker_restricted_both (w->pointm, w->buffer,
 -                                              BUF_PT (XBUFFER (w->buffer)),
 -                                              BUF_PT_BYTE (XBUFFER (w->buffer)));
 -                w->start_at_line_beg = Qt;
 -              }
 +            /* Set window markers at start of visible range.  */
 +            if (XMARKER (w->start)->buffer == 0)
 +              set_marker_restricted (w->start, make_number (0),
 +                                     w->buffer);
 +            if (XMARKER (w->pointm)->buffer == 0)
 +              set_marker_restricted_both (w->pointm, w->buffer,
 +                                          BUF_PT (XBUFFER (w->buffer)),
 +                                          BUF_PT_BYTE (XBUFFER (w->buffer)));
 +            w->start_at_line_beg = Qt;
            }
        }
  
                               make_number (old_point),
                               XWINDOW (data->current_window)->buffer);
  
-       /* In the following call to `select-window, prevent "swapping out
 -      /* In the following call to `select-window, prevent "swapping
 -       out point" in the old selected window using the buffer that
 -       has been restored into it.  We already swapped out that point
 -       from that window's old buffer.  */
++      /* In the following call to `select-window', prevent "swapping out
 +       point" in the old selected window using the buffer that has
 +       been restored into it.  We already swapped out that point from
 +       that window's old buffer.  */
        select_window (data->current_window, Qnil, 1);
-       XBUFFER (XWINDOW (selected_window)->buffer)->last_selected_window
+       BVAR (XBUFFER (XWINDOW (selected_window)->buffer), last_selected_window)
        = selected_window;
  
        if (NILP (data->focus_frame)
@@@ -6565,17 -7059,7 +6520,17 @@@ If this function is used, then it must 
  the buffer; `temp-buffer-show-hook' is not run unless this function runs it.  */);
    Vtemp_buffer_show_function = Qnil;
  
-   DEFVAR_LISP ("temp-buffer-show-specifiers", &Vtemp_buffer_show_specifiers,
++  DEFVAR_LISP ("temp-buffer-show-specifiers", Vtemp_buffer_show_specifiers,
 +             doc: /* Buffer display specifiers used by `with-output-to-temp-buffer'.
 +These specifiers are passed by `with-output-to-temp-buffer' as second
 +argument to `display-buffer'.  Applications should only let-bind this
 +around a call to `with-output-to-temp-buffer'.
 +
 +For a description of buffer display specifiers see the variable
 +`display-buffer-names'.  */);
 +  Vtemp_buffer_show_specifiers = Qnil;
 +
-   DEFVAR_LISP ("minibuffer-scroll-window", &Vminibuf_scroll_window,
+   DEFVAR_LISP ("minibuffer-scroll-window", Vminibuf_scroll_window,
               doc: /* Non-nil means it is the window that C-M-v in minibuffer should scroll.  */);
    Vminibuf_scroll_window = Qnil;
  
@@@ -6589,17 -7073,35 +6544,17 @@@ is displayed in the `mode-line' face.  
               doc: /* If non-nil, this is a buffer and \\[scroll-other-window] should scroll its window.  */);
    Vother_window_scroll_buffer = Qnil;
  
-   DEFVAR_BOOL ("auto-window-vscroll", &auto_window_vscroll_p,
+   DEFVAR_BOOL ("auto-window-vscroll", auto_window_vscroll_p,
 -             doc: /* *Non-nil means to automatically adjust `window-vscroll' to view tall lines.  */);
 +             doc: /* Non-nil means to automatically adjust `window-vscroll' to view tall lines.  */);
    auto_window_vscroll_p = 1;
  
-   DEFVAR_INT ("next-screen-context-lines", &next_screen_context_lines,
+   DEFVAR_INT ("next-screen-context-lines", next_screen_context_lines,
 -            doc: /* *Number of lines of continuity when scrolling by screenfuls.  */);
 +            doc: /* Number of lines of continuity when scrolling by screenfuls.  */);
    next_screen_context_lines = 2;
  
 -  DEFVAR_INT ("window-min-height", window_min_height,
 -            doc: /* Allow deleting windows less than this tall.
 -The value is measured in line units.  If a window wants a modeline it
 -is counted as one line.
 -
 -Emacs honors settings of this variable when enlarging or shrinking
 -windows vertically.  A value less than 1 is invalid.  */);
 -  window_min_height = 4;
 -
 -  DEFVAR_INT ("window-min-width", window_min_width,
 -            doc: /* Allow deleting windows less than this wide.
 -The value is measured in characters and includes any fringes or
 -the scrollbar.
 -
 -Emacs honors settings of this variable when enlarging or shrinking
 -windows horizontally.  A value less than 2 is invalid.  */);
 -  window_min_width = 10;
 -
    DEFVAR_LISP ("scroll-preserve-screen-position",
-              &Vscroll_preserve_screen_position,
+              Vscroll_preserve_screen_position,
 -             doc: /* *Controls if scroll commands move point to keep its screen position unchanged.
 +             doc: /* Controls if scroll commands move point to keep its screen position unchanged.
  A value of nil means point does not keep its screen position except
  at the scroll margin or window boundary respectively.
  A value of t means point keeps its screen position if the scroll
@@@ -6628,25 -7130,6 +6583,25 @@@ will redraw the entire frame; the speci
  frame to be redrawn only if it is a tty frame.  */);
    Vrecenter_redisplay = Qtty;
  
-   DEFVAR_LISP ("window-splits", &Vwindow_splits,
++  DEFVAR_LISP ("window-splits", Vwindow_splits,
 +             doc: /* Non-nil means splitting windows is handled specially.
 +If this variable is nil, splitting a window WINDOW will create a new
 +parent window only if WINDOW has no parent window or WINDOW shall be
 +split in another direction than the combination WINDOW is part of.
 +Resizing WINDOW preferably resizes WINDOW's right sibling.  Deleting
 +WINDOW will preferably return space to WINDOW's left sibling.
 +
 +If this variable equals `nest', splitting WINDOW always creates a new
 +parent window.  Consequently, any frame's window tree is a binary tree
 +and every window has at most one (left or right) sibling.  Resizing
 +WINDOW will preferably resize WINDOW's sibling.  Deleting WINDOW will
 +preferably return space to WINDOW's sibling.
 +
 +If this variable equals `resize', splitting, resizing and deleting
 +WINDOW will try to resize all windows in the same combination as WINDOW
 +first.  This setting allows to split windows that are otherwise too
 +small or of fixed size.  */);
 +  Vwindow_splits = Qnil;
  
    defsubr (&Sselected_window);
    defsubr (&Sminibuffer_window);
diff --cc src/window.h
index 814dfe8c7d05b749a40bd057a44f1265093dd701,491ffa30bd1ca888edf67f56d3b5acb2ae6d3147..75d90f14950077c5cc9cdcf69551169466d6d091
@@@ -947,7 -875,7 +932,5 @@@ extern void init_window (void)
  extern void syms_of_window (void);
  extern void keys_of_window (void);
  
 -extern int window_box_text_cols (struct window *w);
 -
  #endif /* not WINDOW_H_INCLUDED */
  
- /* arch-tag: d4a6942f-e433-4ffe-ac10-2c3574f28577
-    (do not change this comment) */
diff --cc src/xdisp.c
Simple merge
diff --cc src/xfns.c
Simple merge