]> code.delx.au - gnu-emacs/commitdiff
Merge from trunk
authorStefan Monnier <monnier@iro.umontreal.ca>
Tue, 1 Feb 2011 17:09:25 +0000 (12:09 -0500)
committerStefan Monnier <monnier@iro.umontreal.ca>
Tue, 1 Feb 2011 17:09:25 +0000 (12:09 -0500)
33 files changed:
1  2 
doc/lispref/elisp.texi
doc/lispref/functions.texi
doc/lispref/objects.texi
doc/lispref/vol1.texi
doc/lispref/vol2.texi
lisp/ChangeLog.trunk
lisp/Makefile.in
lisp/emacs-lisp/byte-opt.el
lisp/emacs-lisp/bytecomp.el
lisp/emacs-lisp/disass.el
lisp/emacs-lisp/edebug.el
lisp/emacs-lisp/lisp-mode.el
lisp/help-fns.el
lisp/ielm.el
lisp/ldefs-boot.el
lisp/simple.el
lisp/subr.el
src/ChangeLog.trunk
src/alloc.c
src/buffer.c
src/bytecode.c
src/callint.c
src/data.c
src/doc.c
src/eval.c
src/fns.c
src/globals.h
src/image.c
src/keyboard.c
src/lisp.h
src/lread.c
src/minibuf.c
src/print.c

diff --combined doc/lispref/elisp.texi
index 252c6afb1bdbe9183ed4e0dfdd479e50c219b0ff,0214bb9d10c3960c491debc951aff4191466b93d..1f4409738e20cc601cf6f12741950a5d93f11c1a
@@@ -44,8 -44,7 +44,7 @@@
  This is edition @value{VERSION} of the GNU Emacs Lisp Reference Manual,@*
  corresponding to Emacs version @value{EMACSVER}.
  
- Copyright @copyright{} 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1998,
- 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010  Free Software
+ Copyright @copyright{} 1990-1996, 1998-2011  Free Software
  Foundation, Inc.
  
  @quotation
@@@ -250,7 -249,7 +249,7 @@@ Programming Type
  * Macro Type::          A method of expanding an expression into another
                            expression, more fundamental but less pretty.
  * Primitive Function Type::     A function written in C, callable from Lisp.
 -* Byte-Code Type::      A function written in Lisp, then compiled.
 +* Funvec Type::         A vector type callable as a function.
  * Autoload Type::       A type used for automatically loading seldom-used
                            functions.
  
@@@ -465,11 -464,10 +464,11 @@@ Function
  * Inline Functions::        Defining functions that the compiler
                                will open code.
  * Declaring Functions::     Telling the compiler that a function is defined.
 +* Function Currying::       Making wrapper functions that pre-specify
 +                              some arguments.
  * Function Safety::         Determining whether a function is safe to call.
  * Related Topics::          Cross-references to specific Lisp primitives
 -                              that have a special bearing on how
 -                              functions work.
 +                              that have a special bearing on how functions work.
  
  Lambda Expressions
  
index e9003601516eeb9d63bdcab95edfaf2c5f445f5d,974487382c8604622fd9439eb5786a62c80f658d..fc56e806cf7a1db2c9146507e4fff89107de9e98
@@@ -1,7 -1,6 +1,6 @@@
  @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,
- @c   2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
+ @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/functions
@@@ -24,8 -23,6 +23,8 @@@ define them
                              of a symbol.
  * Obsolete Functions::    Declaring functions obsolete.
  * Inline Functions::      Defining functions that the compiler will open code.
 +* Function Currying::     Making wrapper functions that pre-specify
 +                            some arguments.
  * Declaring Functions::   Telling the compiler that a function is defined.
  * Function Safety::       Determining whether a function is safe to call.
  * Related Topics::        Cross-references to specific Lisp primitives
@@@ -114,25 -111,7 +113,25 @@@ editors; for Lisp programs, the distinc
  
  @item byte-code function
  A @dfn{byte-code function} is a function that has been compiled by the
 -byte compiler.  @xref{Byte-Code Type}.
 +byte compiler.  A byte-code function is actually a special case of a
 +@dfn{funvec} object (see below).
 +
 +@item function vector
 +A @dfn{function vector}, or @dfn{funvec} is a vector-like object whose
 +purpose is to define special kinds of functions.  @xref{Funvec Type}.
 +
 +The exact meaning of the vector elements is determined by the type of
 +funvec: the most common use is byte-code functions, which have a
 +list---the argument list---as the first element.  Further types of
 +funvec object are:
 +
 +@table @code
 +@item curry
 +A curried function.  Remaining arguments in the funvec are function to
 +call, and arguments to prepend to user arguments at the time of the
 +call; @xref{Function Currying}.
 +@end table
 +
  @end table
  
  @defun functionp object
@@@ -173,11 -152,6 +172,11 @@@ function.  For example
  @end example
  @end defun
  
 +@defun funvecp object
 +@code{funvecp} returns @code{t} if @var{object} is a function vector
 +object (including byte-code objects), and @code{nil} otherwise.
 +@end defun
 +
  @defun subr-arity subr
  This function provides information about the argument list of a
  primitive, @var{subr}.  The returned value is a pair
@@@ -1303,49 -1277,6 +1302,49 @@@ do for macros.  (@xref{Argument Evaluat
  Inline functions can be used and open-coded later on in the same file,
  following the definition, just like macros.
  
 +@node Function Currying
 +@section Function Currying
 +@cindex function currying
 +@cindex currying
 +@cindex partial-application
 +
 +Function currying is a way to make a new function that calls an
 +existing function with a partially pre-determined argument list.
 +
 +@defun curry function &rest args
 +Return a function-like object that will append any arguments it is
 +called with to @var{args}, and call @var{function} with the resulting
 +list of arguments.
 +
 +For example, @code{(curry 'concat "The ")} returns a function that
 +concatenates @code{"The "} and its arguments.  Calling this function
 +on @code{"end"} returns @code{"The end"}:
 +
 +@example
 +(funcall (curry 'concat "The ") "end")
 +     @result{} "The end"
 +@end example
 +
 +The @dfn{curried function} is useful as an argument to @code{mapcar}:
 +
 +@example
 +(mapcar (curry 'concat "The ") '("big" "red" "balloon"))
 +     @result{} ("The big" "The red" "The balloon")
 +@end example
 +@end defun
 +
 +Function currying may be implemented in any Lisp by constructing a
 +@code{lambda} expression, for instance:
 +
 +@example
 +(defun curry (function &rest args)
 +  `(lambda (&rest call-args)
 +      (apply #',function ,@@args call-args)))
 +@end example
 +
 +However in Emacs Lisp, a special curried function object is used for
 +efficiency.  @xref{Funvec Type}.
 +
  @node Declaring Functions
  @section Telling the Compiler that a Function is Defined
  @cindex function declaration
@@@ -1578,7 -1509,3 +1577,3 @@@ See @ref{Mapping Functions}
  @item undefined
  See @ref{Functions for Key Lookup}.
  @end table
- @ignore
-    arch-tag: 39100cdf-8a55-4898-acba-595db619e8e2
- @end ignore
diff --combined doc/lispref/objects.texi
index 93776f3b4f0f8caf3a9c213081f2e32a5a352802,c58d54f13fc8f74839dce7e4874de118a6bf9a37..a20c50b63d60b6dfd776b06e786d0df5b1b52808
@@@ -1,7 -1,6 +1,6 @@@
  @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,
- @c   2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
+ @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/objects
@@@ -157,7 -156,7 +156,7 @@@ latter are unique to Emacs Lisp
  * Macro Type::          A method of expanding an expression into another
                            expression, more fundamental but less pretty.
  * Primitive Function Type::     A function written in C, callable from Lisp.
 -* Byte-Code Type::      A function written in Lisp, then compiled.
 +* Funvec Type::         A vector type callable as a function.
  * Autoload Type::       A type used for automatically loading seldom-used
                          functions.
  @end menu
@@@ -1314,55 -1313,18 +1313,55 @@@ with the name of the subroutine
  @end group
  @end example
  
 -@node Byte-Code Type
 -@subsection Byte-Code Function Type
 +@node Funvec Type
 +@subsection ``Function Vector' Type
 +@cindex function vector
 +@cindex funvec
  
 -The byte compiler produces @dfn{byte-code function objects}.
 -Internally, a byte-code function object is much like a vector; however,
 -the evaluator handles this data type specially when it appears as a
 -function to be called.  @xref{Byte Compilation}, for information about
 -the byte compiler.
 +A @dfn{function vector}, or @dfn{funvec} is a vector-like object whose
 +purpose is to define special kinds of functions.  You can examine or
 +modify the contents of a funvec like a normal vector, using the
 +@code{aref} and @code{aset} functions.
  
 -The printed representation and read syntax for a byte-code function
 -object is like that for a vector, with an additional @samp{#} before the
 -opening @samp{[}.
 +The behavior of a funvec when called is dependent on the kind of
 +funvec it is, and that is determined by its first element (a
 +zero-length funvec will signal an error if called):
 +
 +@table @asis
 +@item A list
 +A funvec with a list as its first element is a byte-compiled function,
 +produced by the byte compiler; such funvecs are known as
 +@dfn{byte-code function objects}.  @xref{Byte Compilation}, for
 +information about the byte compiler.
 +
 +@item The symbol @code{curry}
 +A funvec with @code{curry} as its first element is a ``curried function''.
 +
 +The second element in such a funvec is the function which is
 +being curried, and the remaining elements are a list of arguments.
 +
 +Calling such a funvec operates by calling the embedded function with
 +an argument list composed of the arguments in the funvec followed by
 +the arguments the funvec was called with.  @xref{Function Currying}.
 +@end table
 +
 +The printed representation and read syntax for a funvec object is like
 +that for a vector, with an additional @samp{#} before the opening
 +@samp{[}.
 +
 +@defun funvecp object
 +@code{funvecp} returns @code{t} if @var{object} is a function vector
 +object (including byte-code objects), and @code{nil} otherwise.
 +@end defun
 +
 +@defun funvec kind &rest params
 +@code{funvec} returns a new function vector containing @var{kind} and
 +@var{params}.  @var{kind} determines the type of funvec; it should be
 +one of the choices listed in the table above.
 +
 +Typically you should use the @code{make-byte-code} function to create
 +byte-code objects, though they are a type of funvec.
 +@end defun
  
  @node Autoload Type
  @subsection Autoload Type
@@@ -1809,7 -1771,7 +1808,7 @@@ with references to further information
  @xref{Buffer Basics, bufferp}.
  
  @item byte-code-function-p
 -@xref{Byte-Code Type, byte-code-function-p}.
 +@xref{Funvec Type, byte-code-function-p}.
  
  @item case-table-p
  @xref{Case Tables, case-table-p}.
@@@ -2143,7 -2105,3 +2142,3 @@@ that for two strings to be equal, they 
  @end group
  @end example
  @end defun
- @ignore
-    arch-tag: 9711a66e-4749-4265-9e8c-972d55b67096
- @end ignore
diff --combined doc/lispref/vol1.texi
index 3ac3f58a330cd7ff4fa3ccab06c37d08b0d186da,93e6cc31ec21ce9f2e05b1bb23a12f3c49da6011..ff0283e109a87a7178842c2625fe4ed5e75b3bb8
@@@ -1,8 -1,7 +1,7 @@@
  \input texinfo  @c -*-texinfo-*-
  @c This file is used for printing the GNU Emacs Lisp Reference Manual
  @c in two volumes.  It is a modified version of elisp.texi.
- @c Copyright (C) 1990, 1991, 1992, 1993, 1994, 1995, 1998, 1999, 2001,
- @c   2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
+ @c Copyright (C) 1990-1995, 1998-1999, 2001-2011
  @c   Free Software Foundation, Inc.
  @c %**start of header
  @setfilename elisp
@@@ -69,7 -68,7 +68,7 @@@ This is edition @value{VERSION} of the 
  corresponding to Emacs version @value{EMACSVER}.
  
  Copyright @copyright{} 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1998,
- 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010  Free Software
+ 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011  Free Software
  Foundation, Inc.
  
  @quotation
@@@ -270,7 -269,7 +269,7 @@@ Programming Type
  * Macro Type::          A method of expanding an expression into another
                            expression, more fundamental but less pretty.
  * Primitive Function Type::     A function written in C, callable from Lisp.
 -* Byte-Code Type::      A function written in Lisp, then compiled.
 +* Funvec Type::         A vector type callable as a function.
  * Autoload Type::       A type used for automatically loading seldom-used
                            functions.
  
diff --combined doc/lispref/vol2.texi
index 59222ad00e2a4a19191473cc518f007d76db8203,6833e5219f346e91dc4ba6e7c1b2f104f4e85354..cd10fea7d3e7f2a8199f27a854139d172ccbfb74
@@@ -1,8 -1,7 +1,7 @@@
  \input texinfo  @c -*-texinfo-*-
  @c This file is used for printing the GNU Emacs Lisp Reference Manual
  @c in two volumes.  It is a modified version of elisp.texi.
- @c Copyright (C) 1990, 1991, 1992, 1993, 1994, 1995, 1998, 1999, 2001,
- @c   2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
+ @c Copyright (C) 1990-1995, 1998-1999, 2001-2011
  @c   Free Software Foundation, Inc.
  @c %**start of header
  @setfilename elisp
@@@ -69,7 -68,7 +68,7 @@@ This is edition @value{VERSION} of the 
  corresponding to Emacs version @value{EMACSVER}.
  
  Copyright @copyright{} 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1998,
- 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010  Free Software
+ 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011  Free Software
  Foundation, Inc.
  
  @quotation
@@@ -269,7 -268,7 +268,7 @@@ Programming Type
  * Macro Type::          A method of expanding an expression into another
                            expression, more fundamental but less pretty.
  * Primitive Function Type::     A function written in C, callable from Lisp.
 -* Byte-Code Type::      A function written in Lisp, then compiled.
 +* Funvec Type::         A vector type callable as a function.
  * Autoload Type::       A type used for automatically loading seldom-used
                            functions.
  
diff --combined lisp/ChangeLog.trunk
index 5b0fab21cc9e5837553f8f3d033c4662134ea9b0,0000000000000000000000000000000000000000..584bf71c7440f46e5876ac3a509ea189a4a58665
mode 100644,000000..100644
--- /dev/null
@@@ -1,19888 -1,0 +1,21550 @@@
-       (rmail-mime-insert-image): Handle the case that DATA is a MIME
-       entity.
++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: 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  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  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  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-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  Stefan Monnier  <monnier@iro.umontreal.ca>
++
++      * hexl.el (hexl-mode-old-*): Remove.
++      (hexl-mode--old-var-vals): New var to replace them.
++      (hexl-mode--minor-mode-p, hexl-mode--setq-local): New funs.
++      (hexl-mode, hexl-follow-line, hexl-activate-ruler):
++      Use them to set local vars (bug#7846).
++      (hexl-mode-exit): Use hexl-mode--old-var-vals to restore state.
++      (hexl-backward-short, hexl-backward-word, hexl-scroll-down)
++      (hexl-scroll-up, hexl-end-of-1k-page, hexl-end-of-512b-page): Simplify.
++
++      * vc/smerge-mode.el: Resolve comment conflicts more aggressively.
++      (smerge-resolve--normalize-re): New var.
++      (smerge-resolve--extract-comment, smerge-resolve--normalize): New funs.
++      (smerge-resolve): Use them.
++      * newcomment.el (comment-only-p): New function.
++      (comment-or-uncomment-region): Use it.
++
++2011-01-14  Brent Goodrick  <bgoodr@gmail.com>  (tiny change)
++
++      * abbrev.el (prepare-abbrev-list-buffer): If listing local abbrev
++      table, get the value before switching to the output buffer.  (Bug#7733)
++
++2011-01-14  Stefan Monnier  <monnier@iro.umontreal.ca>
++
++      * progmodes/python.el (python-mode): Don't impose font-lock (bug#3628).
++
++2011-01-14  Kim F. Storm  <storm@cua.dk>
++
++      * emulation/cua-base.el (cua--init-keymaps):
++      Remap exchange-point-and-mark in cua-global-keymap.
++
++2011-01-14  Tassilo Horn  <tassilo@member.fsf.org>
++
++      * progmodes/sh-script.el (sh-other-keywords): Add ZSH's foreach
++      loop keyword.
++
++2011-01-14  Stefan Monnier  <monnier@iro.umontreal.ca>
++
++      * emacs-lisp/easymenu.el: Add :enable (bug#7754), and obey :label.
++      Require CL.
++      (easy-menu-create-menu, easy-menu-convert-item-1):
++      Use :label rather than nil for labels.  Use `case'.
++      Add :enable as alias for :active.
++      (easy-menu-binding): Obey :label.
++
++2011-01-13  Stefan Monnier  <monnier@iro.umontreal.ca>
++
++      Use run-mode-hooks for major mode hooks (bug#513).
++      * textmodes/reftex-toc.el (reftex-toc-mode-map):
++      Rename from reftex-toc-map.
++      (reftex-toc-mode): Use define-derived-mode.
++      * textmodes/reftex-sel.el (reftex-select-shared-map): New map.
++      (reftex-select-label-mode-map, reftex-select-bib-mode-map):
++      Rename from reftex-select-(label|bib)-map.  Move init into declaration.
++      (reftex-select-label-mode, reftex-select-bib-mode):
++      Use define-derived-mode.
++      * textmodes/reftex-index.el (reftex-index-phrases-mode-map)
++      (reftex-index-mode-map): Rename from reftex-index(-phrases)-map.
++      Move init into delcaration.
++      (reftex-index-mode, reftex-index-phrases-mode):
++      Use define-derived-mode.
++      * speedbar.el (speedbar-mode-syntax-table): Renaqme from
++      speedbar-syntax-table.  Move init into declaration.
++      (speedbar-mode-map): Rename from speedbar-key-map.
++      Move init into declaration.
++      (speedbar-file-key-map): Move init into declaration.
++      (speedbar-mode): Use define-derived-mode.
++      * recentf.el (recentf-mode): Don't run hook (or message) redundantly.
++      * net/rcirc.el (rcirc-mode): Use run-mode-hooks.
++      * emacs-lisp/chart.el (chart-mode-map): Rename from chart-map.
++      (chart-face-list): Move initialization into declaration.
++      (chart-mode): Use define-derived-mode.
++      * calculator.el (calculator-mode-map): Move init into declaration.
++      (calculator-mode): Use define-derived-mode.
++
++      * mail/mail-utils.el (mail-strip-quoted-names): Make the regexp code
++      work for nested comments.
++
++      * progmodes/prolog.el: Use syntax-propertize.  Further code cleanup.
++      (prolog-use-prolog-tokenizer-flag): Change default when
++      syntax-propertize can be used.
++      (prolog-syntax-propertize-function): New var.
++      (prolog-mode-variables): Move make-local-variable into `set'.
++      Don't make comment-column local since we don't set it.
++      Set comment-add (as it was in previous prolog.el).  Use dolist.
++      Set syntax-propertize-function.
++      (prolog-mode, prolog-inferior-mode):
++      Call prolog(-inferior)-menu directly, not through the mode-hook.
++      (prolog-buffer-module, prolog-indent-level)
++      (prolog-paren-is-the-first-on-line-p, prolog-paren-balance)
++      (prolog-comment-limits, prolog-goto-comment-column):
++      Use line-(end|beginning)-position.
++      (prolog-build-prolog-command): Tighten up regexp.
++      (prolog-consult-compile): Move make-local-variable into `set'.
++      (prolog-consult-compile-filter, prolog-goto-next-paren)
++      (prolog-help-on-predicate, prolog-clause-info)
++      (prolog-mark-predicate): Don't let+setq.
++      (prolog-indent-line): Use indent-line-to.
++      Only call prolog-goto-comment-column if necessary.
++      (prolog-indent-level): Use bobp.
++      (prolog-first-pos-on-line): Remove, not used any more.
++      (prolog-in-string-or-comment): Use syntax-ppss if available.
++      (prolog-help-on-predicate): Use read-string.
++      (prolog-goto-predicate-info): Simplify.
++      (prolog-read-predicate): Use `default' rather than `initial'.
++      (prolog-temporary-file): Use make-temp-file to close a security hole.
++      (prolog-toggle-sicstus-sd): New command.
++      (prolog-electric-underscore, prolog-variables-to-anonymous):
++      Use dynamic-scoping as it was meant.
++      (prolog-menu): Move menu definitions to top-level.
++      Use a toggle-button for Sicstus's source debugger.
++      Change "Code" to the more usual "Prolog", and hence change "Prolog"
++      to "System".
++      (prolog-inferior-menu): Reuse prolog-menu's help menu.
++      Move other menu definition to top-level.
++
++2011-01-13  Tassilo Horn  <tassilo@member.fsf.org>
++
++      * doc-view.el (doc-view-open-text): Use meaningful text buffer
++      name.  Keep original document's directory as default-directory
++      (bug#6446).
++      (doc-view-initiate-display): Fall back to normal mode when
++      doc-view-mode cannot be enabled, also when extracting the document
++      text into a separate buffer (bug#6446).
++
++      * simple.el (shell-command): Don't error out if shell command
++      buffer contains text with non-nil read-only property when erasing
++      the buffer.
++
++2011-01-13  Kim F. Storm  <storm@cua.dk>
++
++      * ido.el (ido-may-cache-directory): Move "too-big" check later.
++      (ido-next-match, ido-prev-match): Fix stray reordering of matching
++      items when cycling through the matches.
++
++2011-01-13  Tassilo Horn  <tassilo@member.fsf.org>
++
++      * dired-x.el (dired-omit-verbose): New defcustom that allows
++      disabling the omit messages.
++      (dired-omit-expunge): Use it.
++
++2011-01-13  Christian Ohler  <ohler@gnu.org>
++
++      * emacs-lisp/ert.el, emacs-lisp/ert-x.el: New files.
++
++2011-01-13  Chong Yidong  <cyd@stupidchicken.com>
++
++      * font-lock.el (font-lock-verbose): Default to nil.
++
++2011-01-13  Chong Yidong  <cyd@stupidchicken.com>
++
++      * simple.el (sendmail-user-agent-compose): Move to sendmail.el.
++      (compose-mail): New arg RETURN-ACTION.
++      (compose-mail-other-window, compose-mail-other-frame): Likewise.
++
++      * mail/sendmail.el (mail-return-action): New var.
++      (mail-mode): Make it buffer-local.
++      (mail-bury): Obey it.  Move special Rmail window handling to
++      rmail-mail-return.
++      (mail, mail-setup): New arg RETURN-ACTION.
++      (sendmail-user-agent-compose): Move from simple.el.
++
++      * mail/rmail.el (rmail-mail-return): New function.
++      (rmail-start-mail): Pass it to compose-mail.
++
++2011-01-12  Chong Yidong  <cyd@stupidchicken.com>
++
++      * menu-bar.el (menu-bar-custom-menu): Tweak Mule and Customize
++      menus.  Add menu item for customize-themes.
++
++      * cus-theme.el (customize-themes):
++      * emacs-lisp/package.el (package--list-packages):
++      Use switch-to-buffer.
++
++2011-01-11  Johan Bockgård  <bojohan@gnu.org>
++
++      * emacs-lisp/unsafep.el (unsafep): Handle backquoted forms.
++
++2011-01-11  Stefan Monnier  <monnier@iro.umontreal.ca>
++
++      * progmodes/prolog.el: Fix up coding convention and such.
++      (prolog-indent-width): Use the same default as in
++      previous prolog.el rather than tab-width which depends on which buffer
++      is current when the file is loaded.
++      (prolog-electric-newline-flag): Only enable if electric-indent-mode
++      is not available.
++      (prolog-emacs): Remove.  Use (featurep 'xemacs) instead.
++      (prolog-known-systems): Remove.
++      (prolog-mode-syntax-table, prolog-inferior-mode-map):
++      Move initialization into declaration.
++      (prolog-mode-map): Move initialization into declaration.
++      Remove system-specific mode-map vars, since they referred to the same
++      keymap anyway.
++      (prolog-mode-variables): Obey the user's preference w.r.t
++      adaptive-fill-mode.  Prefer symbol-value to `eval'.
++      (prolog-mode-keybindings-edit): Add compatibility bindings.
++      (prolog-mode): Use define-derived-mode.  Don't handle mercury here.
++      (mercury-mode-map): New var.
++      (mercury-mode, prolog-inferior-mode): Use define-derived-mode.
++      (prolog-ensure-process, prolog-process-insert-string)
++      (prolog-consult-compile): Use with-current-buffer.
++      (prolog-guess-fill-prefix): Simplify data flow.
++      (prolog-replace-in-string): New function to use instead of
++      replace-in-string.
++      (prolog-enable-sicstus-sd): Don't abuse `eval'.
++      (prolog-uncomment-region): Use `uncomment-region' when available.
++      (prolog-electric-colon, prolog-electric-dash): Use `eolp'.
++      (prolog-int-to-char, prolog-char-to-int): New functions to use instead
++      of int-to-char and char-to-int.
++      (prolog-mode-hook, prolog-inferior-mode-hook): Don't force font-lock.
++
++2011-01-11  Stefan Bruda  <stefan@bruda.ca>
++
++      * progmodes/prolog.el: Replace by a whole new file.
++
++2011-01-11  Stefan Monnier  <monnier@iro.umontreal.ca>
++
++      * subr.el (eval-after-load): Fix timing for features (bug#7769).
++      (declare-function, undefined, insert-for-yank)
++      (replace-regexp-in-string): Follow checkdoc's recommendations.
++
++2011-01-10  Stefan Monnier  <monnier@iro.umontreal.ca>
++
++      * calendar/diary-lib.el (diary-mode): Refresh *Calendar* after
++      refreshing the diary buffer.
++
++2011-01-10  Ken Manheimer  <ken.manheimer@gmail.com>
++
++      * allout.el: Add 2011 to the file copyright.
++      (allout-encrypt-string): Prevent encryption from adding an extra
++      newline at the end of the topic body.
++      (allout-version): Increment to 2.3.
++
++2011-01-10  Michael Albinus  <michael.albinus@gmx.de>
++
++      * net/dbus.el (dbus-unregister-service): Complete doc.
++      Fix call of dbus-error signal.
++      (dbus-register-property): Use `dont-register' keyword.
++
++2011-01-10  Jan Moringen  <jan.moringen@uni-bielefeld.de>
++
++      * net/dbus.el (dbus-unregister-service): Translate returned
++      integer into a symbol.
++      (dbus-register-property): Use `dbus-register-service' to do the
++      name registration.
++
++2011-01-09  Chong Yidong  <cyd@stupidchicken.com>
++
++      * progmodes/idlw-help.el (idlwave-help-link): Inherit from link face.
++      Suggested by Joakim Verona.
++
++      * comint.el (comint-highlight-prompt): Inherit minibuffer-prompt.
++
++      * wid-edit.el (visibility): Replace :on-image and :off-image
++      widget properties with :on-glyph and :off-glyph, for consistency
++      with the `visibility' widget.
++      (widget-toggle-value-create, widget-visibility-value-create):
++      Merge into a single function `widget-toggle-value-create'.
++
++      * cus-edit.el (custom-variable-value-create, custom-visibility)
++      (custom-face-edit-value-create, custom-face-value-create):
++      Replace :on-image and :off-image widget properties with :on-glyph and
++      :off-glyph, for consistency with the `visibility' widget.
++
++2011-01-09  Andreas Schwab  <schwab@linux-m68k.org>
++
++      * net/ldap.el (ldap-search-internal): Don't use eval.
++
++2011-01-09  Chong Yidong  <cyd@stupidchicken.com>
++
++      * subr.el (read-char-choice): Use read-key.
++
++      * custom.el (custom-safe-themes): Rename from
++      custom-safe-theme-files.  Add :risky tag.
++      (load-theme, custom-theme-load-confirm): Save sha1 hashes to
++      custom-safe-themes, not filenames.  Suggested by Stefan Monnier.
++
++2011-01-09  Chong Yidong  <cyd@stupidchicken.com>
++
++      * tool-bar.el (tool-bar-setup): Remove Help button.  Remove label
++      from Search and add a label to Undo.
++
++      * vc/vc-dir.el (vc-dir-tool-bar-map): Rearrange, removing
++      inappropriate buttons and adding :vert-only tags.
++
++      * progmodes/compile.el (compilation-mode-tool-bar-map): Adjust to
++      removal of Help tool-bar button.  Remove Undo button for space.
++
++      * info.el (info-tool-bar-map): Add :vert-only tags.
++
++2011-01-08  Tassilo Horn  <tassilo@member.fsf.org>
++
++      * doc-view.el (doc-view-mode-p): Check for png or imagemagick
++      image backend support.  Either of them is fine.
++
++2011-01-08  Chong Yidong  <cyd@stupidchicken.com>
++
++      * subr.el (y-or-n-p): Doc fix.
++
++      * custom.el (custom-safe-theme-files): New defcustom.
++      (custom-theme-load-confirm): New function.
++      (load-theme): Load theme using `load', confirming with
++      custom-theme-load-confirm if necessary.
++
++      * subr.el (read-char-choice): New function, factored out from
++      dired-query and hack-local-variables-confirm.
++
++      * dired-aux.el (dired-query):
++      * files.el (hack-local-variables-confirm): Use it.
++
++      * dired-aux.el (dired-compress-file):
++      * files.el (abort-if-file-too-large, find-alternate-file)
++      (set-visited-file-name, write-file, backup-buffer)
++      (basic-save-buffer, basic-save-buffer-2, save-some-buffers)
++      (delete-directory, revert-buffer, recover-file, kill-buffer-ask):
++      Use new format string args for y-or-n-p and yes-or-no-p.
++
++2011-01-08  Andreas Schwab  <schwab@linux-m68k.org>
++
++      * progmodes/compile.el (compilation-error-regexp-alist-alist)
++      [gcc-include]: Tighten file name match, add match for column
++      number.  (Bug#7806)
++      [gnu]: Remove unused group.
++
++2011-01-08  Glenn Morris  <rgm@gnu.org>
++
++      * makefile.w32-in (EMACSOPT): Add --no-site-lisp.
++
++      * makefile.w32-in (EMACSOPT): -batch implies --no-init-file.
++
++2011-01-07  Sam Steingold  <sds@gnu.org>
++
++      * w32-fns.el (w32-shell-name): Use `shell-file-name' instead of
++      the `explicit-shell-file-name' because that is the
++      non-interactive shell.
++
++2011-01-07  Chong Yidong  <cyd@stupidchicken.com>
++
++      * subr.el (y-or-n-p): Accept format string args.
++
++2011-01-07  Glenn Morris  <rgm@gnu.org>
++
++      * Makefile.in (EMACSOPT): Add --no-site-lisp.
++
++2011-01-06  Ken Manheimer  <ken.manheimer@gmail.com>
++
++      * allout.el (allout-back-to-current-heading): Ensure return to
++      the visible containing topic, rather than a collapsed one.
++      (allout-view-change-hook): Remove hook that was deprecated long ago.
++      (allout-exposure-change-hook): Remove documentation remarks
++      concerning removed allout-view-change-hook.
++      (allout-flag-region): Remove invocation of and documentation
++      remarks concerning allout-view-change-hook.
++
++2011-01-06  Glenn Morris  <rgm@gnu.org>
++
++      * vc/vc-bzr.el (vc-bzr-annotate-command, vc-bzr-annotate-time)
++      (vc-bzr-annotate-extract-revision-at-line):
++      Handle authors with embedded spaces.  (Bug#7792)
++
++2011-01-05  Tassilo Horn  <tassilo@member.fsf.org>
++
++      * doc-view.el (doc-view-image-width): New variable.
++      (doc-view-enlarge, doc-view-insert-image): Prefer imagemagick
++      backend for PNG images, and do dynamic rescaling instead of
++      reconverting the whole doc.
++
++2011-01-05  Glenn Morris  <rgm@gnu.org>
++
++      * emacs-lisp/rx.el (rx-repeat): Replace CL function.
++
++2011-01-04  Ken Manheimer  <ken.manheimer@gmail.com>
++
++      * allout.el: Reconcile with changes in line movement behavior for
++      long text lines that cross more than a single physical window
++      line, ie when truncate-lines is nil.
++      (allout-next-visible-heading): Provide for change in line-move
++      behavior on long lines when truncate-lines is nil.  In that case,
++      line-move can wind up on the same textual line when it moves to
++      the next window line, and moving to the bullet position after the
++      move yields zero advancement.  Add logic to detect and compensate
++      for the lack of progress.
++      (allout-current-topic-collapsed-p): move-end-of-line respect for
++      field boundaries is different when operating with body lines
++      shorter than window width versus ones greater than window width,
++      which can yield false negatives in this function.  Avoid
++      difference by applying move-end-of-line while field-text-motion is
++      inhibited.
++
++2011-01-04  Glenn Morris  <rgm@gnu.org>
++
++      * textmodes/rst.el (rst-compile-toolsets):
++      Add pdf and s5 to option alist.
++
++2011-01-04  Jan Moringen  <jan.moringen@uni-bielefeld.de>
++
++      * net/dbus.el (dbus-register-property): Add optional parameter
++      dont-register-service.  Updated docstring accordingly.
++
++2011-01-04  Andreas Schwab  <schwab@linux-m68k.org>
++
++      * textmodes/rst.el (rst-compile-pdf-preview)
++      (rst-compile-slides-preview): Remove extra line.
++
++2011-01-04  Glenn Morris  <rgm@gnu.org>
++
++      * textmodes/rst.el (rst-compile-toolsets): Make it a defcustom.
++      Add `pdf' and `s5' entries.  Use `prog.py' if found, otherwise
++      default to `prog' without a .py extension.
++      (rst-compile-pdf-preview, rst-compile-slides-preview):
++      Use program names from rst-compile-toolsets, rather than hard-coding.
++      (rst-portable-mark-active-p): Fix presumed typo.
++
++2011-01-02  Eli Zaretskii  <eliz@gnu.org>
++
++      * term/w32-win.el (dynamic-library-alist): Set up correctly for
++      libpng versions both before and after 1.4.0.  (Bug#7716)
++
++2011-01-02  Eli Zaretskii  <eliz@gnu.org>
++
++      * time.el (display-time-mode): Mention display-time-interval in
++      the doc string.  (Bug#7713)
++
++2011-01-02  Kenichi Handa  <handa@m17n.org>
++
++      * mail/rmailmm.el (rmail-mime-parse): Perform parsing in
++      condition-case and return an error message string if something
++      goes wrong.
++      (rmail-show-mime): Adjust for the above change.  Insert the
++      header by rmail-mime-insert-header.
++
++2011-01-02  Kenichi Handa  <handa@m17n.org>
++
++      * mail/rmailmm.el: New key bindings for rmail-mime-next-item,
++      rmail-mime-previous-item, and rmail-mime-toggle-hidden.
++      (rmail-mime-mbox-buffer)
++      (rmail-mime-view-buffer, rmail-mime-coding-system): New variables.
++      (rmail-mime-entity): Argument changed.  All codes handling an
++      entity object are changed.
++      (rmail-mime-entity-header, rmail-mime-entity-body): Adjust for
++      the above change.
++      (rmail-mime-entity-children, rmail-mime-entity-handler)
++      (rmail-mime-entity-tagline): New functions.
++      (rmail-mime-message-p): New function.
++      (rmail-mime-save): Bind rmail-mime-mbox-buffer.
++      (rmail-mime-entity-segment, rmail-mime-next-item)
++      (rmail-mime-previous-item, rmail-mime-shown-mode)
++      (rmail-mime-hidden-mode, rmail-mime-raw-mode)
++      (rmail-mime-toggle-raw, rmail-mime-toggle-hidden)
++      (rmail-mime-insert-tagline, rmail-mime-insert-header):
++      New functions.
++      (rmail-mime-text-handler): Call rmail-mime-insert-text.
++      (rmail-mime-insert-decoded-text): New function.
++      (rmail-mime-insert-text): Call rmail-mime-insert-decoded-text.
++      (rmail-mime-insert-image): Argument changed.  Caller changed.
++      (rmail-mime-image): Call rmail-mime-toggle-hidden.
++      (rmail-mime-set-bulk-data): New funciton.
++      (rmail-mime-insert-bulk): Argument changed.
++      (rmail-mime-multipart-handler): Return t.
++      (rmail-mime-process-multipart): Argument changed.
++      Handle "multipart/alternative" here.
++      (rmail-mime-process): Argument changed.
++      (rmail-mime-parse): Bind rmail-mime-mbox-buffer.
++      (rmail-mime-insert): Argument changed.  Handle raw display mode.
++      (rmail-mime): Argument changed.  Handle toggling of raw display
++      mode.
++      (rmail-show-mime): Bind rmail-mime-mbox-buffer and
++      rmail-mime-view-buffer.
++      (rmail-insert-mime-forwarded-message): Likewise.
++      (rmail-search-mime-message): Likewise.  Don't bind rmail-buffer.
++
++      * mail/rmail.el (rmail-show-message-1): If rmail-enable-mime is
++      non-nil, handle the header in rmail-show-mime-function.
++
++2011-01-02  Leo  <sdl.web@gmail.com>
++
++      * help-fns.el (describe-variable): Fix previous change.
++
++2011-01-02  Juri Linkov  <juri@jurta.org>
++
++      * isearch.el (isearch-lazy-highlight-error): New variable.
++      (isearch-lazy-highlight-new-loop): Compare `isearch-error' and
++      `isearch-lazy-highlight-error'.  Set `isearch-lazy-highlight-error'
++      to the current value of `isearch-error' (Bug#7468).
++
++2011-01-02  Chong Yidong  <cyd@stupidchicken.com>
++
++      * help-fns.el (describe-variable): Don't emit trailing whitespace
++      (Bug#7511).
++
++2011-01-02  Chong Yidong  <cyd@stupidchicken.com>
++
++      * textmodes/rst.el (rst-compile-pdf-preview)
++      (rst-compile-slides-preview): Use make-temp-file (Bug#7646).
++
++2011-01-02  Kevin Gallagher  <Kevin.Gallagher@boeing.com>
++
++      * emulation/edt-mapper.el: Override mapping of function keys so
++      that the later call to read-key-sequence works.
++
++2011-01-02  Eli Zaretskii  <eliz@gnu.org>
++
++      * mail/smtpmail.el (smtpmail-send-it): Write queued mail body with
++      Unix EOLs.  (Bug#7589)
++
++2011-01-02  Leo  <sdl.web@gmail.com>
++
++      * eshell/em-hist.el (eshell-previous-matching-input): Signal error
++      if point is not behind eshell-last-output-end (Bug#7585).
++
++2011-01-02  Stefan Monnier  <monnier@iro.umontreal.ca>
++
++      * files.el (file-local-variables-alist):
++      Make permanent-local (bug#7767).
++
++2011-01-02  Glenn Morris  <rgm@gnu.org>
++
++      * version.el (emacs-copyright): Set short copyright year to 2011.
++
++2011-01-02  Mark Lillibridge  <mark.lillibridge@hp.com>  (tiny change)
++
++      * mail/mail-utils.el (mail-strip-quoted-names): Avoid clobbering
++      an existing temp buffer.  (Bug#7746)
++
++2011-01-02  Glenn Morris  <rgm@gnu.org>
++
++      * mail/mail-utils.el (mail-mbox-from): Handle From: headers with
++      multiple addresses.  (Bug#7760)
++
++2011-01-01  Ken Manheimer  <ken.manheimer@gmail.com>
++
++      * allout.el (allout-auto-fill): Do not infinitely recurse - use
++      do-auto-fill if everything points back to allout-auto-fill.
++      (allout-mode-deactivate-hook): Declare obsolete, in favor of
++      standard-formed minor-mode deactivate hook, allout-mode-off-hook.
++
++2010-12-31  Michael Albinus  <michael.albinus@gmx.de>
++
++      * net/tramp-sh.el (tramp-methods): Add recursive options to "scpc"
++      and "scpx".
++
++2010-12-30  Tassilo Horn  <tassilo@member.fsf.org>
++
++      * doc-view.el (doc-view-set-doc-type): New function refactored
++      from doc-view-mode.
++      (doc-view-fallback-mode): New function.
++      (doc-view-mode): Use it.
++      (doc-view-mode-maybe): New function that checks if doc-view-mode
++      can be used and falls back to the next best mode otherwise.
++
++      * files.el (auto-mode-alist): Use doc-view-mode-maybe for PDF,
++      DVI, OpenDocument, and MS Office files.
++
++2010-12-30  Andreas Schwab  <schwab@linux-m68k.org>
++
++      * emacs-lisp/rx.el (rx-syntax): Fix typo.
++
++2010-12-30  Tassilo Horn  <tassilo@member.fsf.org>
++
++      * doc-view.el (doc-view-toggle-display): Perform rassq-delete-all
++      on a copy of auto-mode-alist, because that deletes with side
++      effects.
++
++2010-12-30  Tassilo Horn  <tassilo@member.fsf.org>
++
++      * doc-view.el (doc-view-mode, doc-view-toggle-display):
++      Use normal-mode without doc-view-mode bindings in auto-mode-alist as
++      fallback instead of hard coding fundamental mode.
++
++2010-12-30  Tassilo Horn  <tassilo@member.fsf.org>
++
++      * doc-view.el (doc-view-doc->txt): Handle OpenDocument (or MS
++      Office) files also for searching.
++
++2010-12-30  Tassilo Horn  <tassilo@member.fsf.org>
++
++      * doc-view.el: Implement viewing of OpenDocument (and Microsoft
++      Office) files.  Not yet enabled via auto-mode-list.
++      (doc-view-unoconv-program): New custom variable.
++      (doc-view-mode-p): Handle new odf document type.
++      (doc-view-odf->pdf): New conversion function.
++      (doc-view-convert-current-doc): Call it for odf files.
++      (doc-view-mode): Recognize newly supported file extensions.
++
++2010-12-30  Michael Albinus  <michael.albinus@gmx.de>
++
++      * net/tramp.el (tramp-default-method-alist)
++      (tramp-default-user-alist)
++      (tramp-local-host-regexp, tramp-prefix-domain-format)
++      (tramp-prefix-domain-regexp): Set tramp-autoload cookie.
++
++      * net/tramp-ftp.el:
++      * net/tramp-gvfs.el:
++      * net/tramp-gw.el:
++      * net/tramp-imap.el:
++      * net/tramp-sh.el:
++      * net/tramp-smb.el: Add tramp-autoload cookie for initialisation
++      code of `tramp-default-method-alist' and `tramp-default-user-alist'.
++
++2010-12-29  Karl Fogel  <kfogel@red-bean.com>
++
++      * saveplace.el (save-place-alist-to-file): Save list sorted and
++      pretty-printed, so that it is mergeable by line-based text merging,
++      as suggested by Iain Dalton <iain.dalton {_AT_} gmail.com>.
++
++2010-12-28  Ken Manheimer  <ken.manheimer@gmail.com>
++
++      * allout.el (allout-v18/19-file-var-hack): Obsolete, remove.
++      (allout-mode): Argument "toggle" => "force".
++      Refine the docstring.
++      Remove special provisions for reactivation, besides the 'force'
++      argument.
++      Consolidate layout provisions coce directly into the activation
++      condition branch, now that we've removed those provisions.
++      (allout-unload-function): Explicitly activate the mode before
++      deactivating, if it's initially deactivated.
++      (allout-set-buffer-multibyte): Properly prevent byte-compiler
++      warnings for version of function used only where
++      set-buffer-multibyte is unavailable.
++
++2010-12-28  Chong Yidong  <cyd@stupidchicken.com>
++
++      * tool-bar.el (tool-bar-setup): Remove :enable conditions, which
++      are handled by the menu-bar entries.  As before, don't use
++      :visibile to avoid changing the tool-bar.
++
++2010-12-27  Michael Albinus  <michael.albinus@gmx.de>
++
++      * net/secrets.el (secrets-delete-alias): New defun.
++
++2010-12-27  Michael Albinus  <michael.albinus@gmx.de>
++
++      * net/tramp.el (tramp-default-user-alist): Do not add "ssh" based
++      methods, otherwise ~/.ssh/config would be ignored.
++
++2010-12-26  Stefan Monnier  <monnier@iro.umontreal.ca>
++
++      * emacs-lisp/rx.el: Make it a superset of sregex.
++      (rx-constituents): Add `any => "."', mark `repeat' as taking any number
++      of args, add `regex' alias.
++      (rx-info): Add arg to distinguish head and standalone forms.
++      (rx-check, rx-form): Pass the corresponding arg.
++      (rx-**): Simplify.
++      (rx-repeat): Make it work for any number of args.
++      (rx-syntax): Make it accept syntax chars as is.
++      * obsolete/sregex.el: Move from emacs-lisp/.
++      * emacs-lisp/re-builder.el: Remove sregex support.
++      * emacs-lisp/edebug.el (sregexq, rx): Remove redundant defs.
++
++2010-12-25  Eli Zaretskii  <eliz@gnu.org>
++
++      * mouse.el (mouse-yank-primary): On MS-Windows, try the (emulated)
++      PRIMARY first, then the clipboard.  (Bug#7699)
++
++2010-12-22  Stefan Monnier  <monnier@iro.umontreal.ca>
++
++      * emacs-lisp/bytecomp.el (byte-compile-output-docform): Fix up use of
++      print-number-table.
++
++2010-12-21  Chong Yidong  <cyd@stupidchicken.com>
++
++      * help-fns.el (find-lisp-object-file-name): Locate .emacs from
++      .emacs.elc (Bug#7530).
++
++      * wid-edit.el (widget-image-find): Remove bogus :ascent spec from
++      image spec (Bug#7480).
++
++2010-12-21  Daiki Ueno  <ueno@unixuser.org>
++
++      * obsolete/pgg-parse.el, obsolete/pgg-pgp5.el, obsolete/pgg-pgp.el,
++      * obsolete/pgg-gpg.el, obsolete/pgg-def.el, obsolete/pgg.el:
++      Move from lisp/.
++
++2010-12-20  Leo  <sdl.web@gmail.com>
++
++      * dnd.el (dnd-get-local-file-name): Unhex of file name shall
++      always be performed (Bug#7680).
++
++2010-12-20  Chong Yidong  <cyd@stupidchicken.com>
++
++      * menu-bar.el (menu-bar-kill-ring-save): Make obsolete.
++      (menu-bar-edit-menu): Bind "Copy" to kill-ring-save.  Don't use
++      mouse-region-match.
++
++      * color.el: Move from gnus/.
++
++      * vc/diff.el (diff-better-file-name): Function deleted.
++      abbreviating file names causes problems with shell-quote-argument.
++      (diff-no-select): Just use expand-file-name.
++
++      * tool-bar.el (tool-bar--image-expression): New function.
++      (tool-bar-local-item, tool-bar--image-exp): Use it.
++      (tool-bar-setup): Initialize tool-bar-separator-image-expression.
++      Use :enable instead of :visible to avoid changing the tool-bar
++      configuration unnecessarily.
++
++      * info.el (info-tool-bar-map): Add separators.
++
++2010-12-17  Ken Brown  <kbrown@cornell.edu>
++
++      * loadup.el: Use version numbers in Cygwin build.
++
++2010-12-17  Ryan Twitchell  <metatheorem@gmail.com>  (tiny change)
++
++      * ido.el (ido-file-internal): Ask for confirmation before
++      overwriting an existing file (Bug#1238).
++
++2010-12-16  Chong Yidong  <cyd@stupidchicken.com>
++
++      * tool-bar.el (tool-bar-setup): Add separators.
++
++      * menu-bar.el (featurep): Use menu-bar-separator.
++
++2010-12-16  Ken Manheimer  <ken.manheimer@gmail.com>
++
++      Migrate allout encryption provisions from pgg to epg.
++
++      * allout.el (allout-toggle-current-subtree-encryption)
++      (allout-toggle-subtree-encryption): Adjust docstrings to reflect
++      defaulting policy and other changes.  Change fetch-pass to keymode-cue,
++      for simpler universal argument interpretation.
++      (allout-toggle-subtree-encryption):  Adjust docstring to describe
++      changed encryption provisions.  Change fetch-pass to keymode-cue, for
++      simpler universal argument interpretation.  Remove provisions for
++      handling key type and identity - they'll all be within
++      allout-encrypt-string or epg/epg or even contained all the way in gpg.
++      (allout-encrypt-string): Include keymode-cue, for optionally prompting
++      for keypair recipients (universal argument > 1) and, in addition,
++      associating the specified recipients with the outline (universal
++      argument > 4) using a file local variable setting for
++      'epa-file-encrypt-to'.
++      Require epa, for recipients handling.
++      Change how regexp filtering elements are named.
++      Describe the problem with caching of incorrect symmetric-decryption
++      keys.
++      Use the epa-passphrase-callback-function, in case the user is using
++      GnuPG v1.
++      Support saving of the selected keypair recipients when invoked with a
++      keymode-cue > 4.
++      Remove obsolete arguments 'fetch-pass', 'target-cache-id', 'retried'.
++      Require 'epa.
++      Establish epg-context with armoring and default epg-protocol.
++      Remove all passphrase cache, verification, and hinting code.
++      (allout-passphrase-verifier-handling, allout-passphrase-hint-handling):
++      No longer used, delete.
++      (allout-mode): Adjust docstring to describe changed encryption
++      provisions.  Describe the problem with caching of incorrect
++      symmetric-decryption keys.
++      (allout-obtain-passphrase, allout-epg-passphrase-callback-function)
++      (allout-make-passphrase-state, allout-passphrase-state-passphrase)
++      (allout-encrypted-key-info, allout-update-passphrase-mnemonic-aids)
++      (allout-get-encryption-passphrase-verifier, allout-verify-passphrase):
++      Obsolete, remove.
++
++2010-12-16  Daiki Ueno  <ueno@unixuser.org>
++
++      * epa-file.el (epa-file-select-keys): Accept 'silent to inhibit
++      key selection prompt; make 'silent as default (Bug#7487).
++
++2010-12-16  Leo  <sdl.web@gmail.com>
++
++      * eshell/eshell.el (eshell-directory-name):
++      Use locate-user-emacs-file (Bug#7578).
++
++2010-12-15  Glenn Morris  <rgm@gnu.org>
++
++      * loadup.el (symbol-file-load-history-loaded): Remove; unused.
++
++2010-12-15  Jari Aalto  <jari.aalto@cante.net>
++            Scott Evans <gse@antisleep.com>
++
++      * rect.el (rectange--default-line-number-format)
++      (rectangle-number-line-callback): New functions.
++      (rectangle-number-lines): New command, bound to C-x r N (Bug#4382).
++
++2010-12-15  Chong Yidong  <cyd@stupidchicken.com>
++
++      * rect.el (operate-on-rectangle-lines, string-rectangle-string):
++      Delete unused variables.
++      (move-to-column-force): Remove function obsolete since 21.2.
++
++2010-12-14  Michael Albinus  <michael.albinus@gmx.de>
++
++      * net/tramp.el (tramp-temp-buffer-file-name): Make it permanent-local.
++      (tramp-handle-insert-file-contents): Do not set permanent-local
++      property.
++
++      * net/tramp-cache.el (tramp-persistency-file-name):
++      Use `locate-user-emacs-file' if fboundp.
++
++      * net/tramp-sh.el (tramp-methods): Add "ksu".
++      (tramp-default-user-alist): Add "ksu".  Use `regexp-opt' for
++      method list.
++
++2010-12-14  Glenn Morris  <rgm@gnu.org>
++
++      * progmodes/js.el: Doc't require font-lock, etags, or easymenu.
++      (find-tag-marker-ring): Declare.
++      (js-find-symbol): Require etags.
++
++      * mail/sendmail.el: Don't require rmail or mailalias when compiling.
++      Require mail-utils.
++      (mail-alias-file): Don't autoload.  Doc fix.
++      (mail-bury-selects-summary, mail-send-nonascii): Don't autoload.
++      (mail-mailer-swallows-blank-line): Default to nil.  Doc fix.
++      Mark as obsolete, and risky.
++      (mail-setup): Simplify.
++
++      * mail/mailalias.el (build-mail-aliases): Make it interactive.
++      * mail/sendmail.el (build-mail-aliases): Update autoload.
++
++      * dired.el (dired-trivial-filenames, dired-chown-program)
++      (dired-auto-revert-buffer): Remove autoload cookies.
++      * mail/sendmail.el (mail-recover-1): Require 'dired.
++
++      * dired.el (dired-subdir-switches, dired-chown-program)
++      (dired-use-ls-dired, dired-chmod-program, dired-touch-program):
++      Make into defcustoms.
++      (dired-chown-program): Simplify initialization.
++
++      * mail/mail-utils.el: No need to require lisp-mode, it's in loadup.
++
++2010-12-13  Romain Francoise  <romain@orebokech.com>
++
++      * net/gnutls.el (gnutls-negotiate): Fix setting of default trustfiles.
++
++2010-12-13  Lars Magne Ingebrigtsen  <larsi@gnus.org>
++
++      * net/netrc.el (netrc-point-at-eol): Remove the unused
++      netrc-point-at-old and netrc-bound-and-true-p bindings.
++      (netrc-parse): Cache the netrc contents.
++
++2010-12-13  Eli Zaretskii  <eliz@gnu.org>
++
++      * subr.el (posn-col-row): Evaluate header-line-format in the
++      context of the POSITION window's buffer.
++
++2010-12-13  Glenn Morris  <rgm@gnu.org>
++
++      * subr.el (member-ignore-case, run-mode-hooks, insert-for-yank-1)
++      (with-silent-modifications): Doc fixes.
++
++2010-12-13  Michael Albinus  <michael.albinus@gmx.de>
++
++      * net/tramp.el (tramp-action-password, tramp-process-actions):
++      Revert previous from.  Use `save-restriction'.
++
++2010-12-13  Stephen Berman  <stephen.berman@gmx.net>
++
++      * calendar/diary-lib.el (diary-list-sexp-entries):
++      Handle case of no newline at end of file.  (Bug#7536)
++
++2010-12-13  Glenn Morris  <rgm@gnu.org>
++
++      * mail/smtpmail.el (smtpmail-send-it): Revert previous change.
++
++2010-12-13  Michael Albinus  <michael.albinus@gmx.de>
++
++      * net/tramp.el (tramp-action-password): Delete region, do not narrow.
++      (tramp-process-actions): Do not widen.
++
++      * net/tramp-sh.el (tramp-sh-handle-start-file-process):
++      Protect buffer-modified value.  (Bug#7557)
++
++2010-12-13   Jan Moringen  <jmoringe@techfak.uni-bielefeld.de>
++
++      * log-edit.el (log-edit-changelog-entries):
++      Regexp quote filename.  (Bug#7505)
++
++2010-12-13  Tom Breton  <tehom@panix.com>
++
++      * cus-edit.el (custom-save-all):
++      Bind print-length and print-level to nil.  (Bug#7581)
++
++2010-12-13  Glenn Morris  <rgm@gnu.org>
++
++      * mouse.el (mouse-menu-major-mode-map, mouse-menu-bar-map):
++      Run hooks to update menu contents.  (Bug#7586)
++
++      * mail/smtpmail.el (smtpmail-send-it): Avoid colons in the queued
++      file names, for the sake of MS Windows.  (Bug#7588)
++
++2010-12-13  Stefan Monnier  <monnier@iro.umontreal.ca>
++
++      * diff-mode.el (diff-refine-hunk): Make it work when the hunk contains
++      empty lines without a leading space.
++
++2010-12-13  Leo  <sdl.web@gmail.com>
++
++      * dired-aux.el (dired-do-redisplay): Postpone dired-after-readin-hook
++      while mapping over marks (Bug#6810).
++
++2010-12-13  Chong Yidong  <cyd@stupidchicken.com>
++
++      * image-dired.el (image-dired-db-file)
++      (image-dired-temp-image-file, image-dired-gallery-dir)
++      (image-dired-temp-rotate-image-file): Set default values relative
++      to image-dired-dir (Bug#7518).
++
++2010-12-13  Lawrence Mitchell  <wence@gmx.li>
++
++      * format.el (format-decode-run-method): Pass args FROM and TO, not
++      point-min and point-max, to shell-command-on-region (Bug#7488).
++
++2010-12-13  Jan Djärv  <jan.h.d@swipnet.se>
++
++      * frame.el (blink-cursor-mode): Make default t for ns.
++
++2010-12-13  Bob Rogers  <rogers-emacs@rgrjr.dyndns.org>
++
++      * vc-dir.el (vc-dir-query-replace-regexp): Doc fix (Bug#7501).
++
++2010-12-13  Chong Yidong  <cyd@stupidchicken.com>
++
++      * comint.el (comint-dynamic-list-input-ring)
++      (comint-dynamic-complete-filename)
++      (comint-replace-by-expanded-filename)
++      (comint-dynamic-simple-complete)
++      (comint-dynamic-list-filename-completions)
++      (comint-dynamic-list-completions): Doc fix (Bug#7499).
++
++      * subr.el (posn-x-y, posn-object-x-y, posn-object-width-height):
++      Doc fix (Bug#7471).
++
++2010-12-13  Martin Rudalics  <rudalics@gmx.at>
++
++      * dired.el (dired-pop-to-buffer): Bind pop-up-frames to nil
++      (Bug#7533).
++
++2010-12-13  W. Martin Borgert <debacle@debian.org>  (tiny change)
++
++      * files.el (auto-mode-alist): Handle .dbk (DocBook) with xml-mode.
++      (Bug#7491).
++
++2010-12-13  Eli Zaretskii  <eliz@gnu.org>
++
++      * files.el (file-relative-name): Handle UNC file names on
++      DOS/Windows.  (Bug#4674)
++
++2010-12-13  Daiki Ueno  <ueno@unixuser.org>
++
++      * epg.el (epg-digest-algorithm-alist): Replace "RMD160" with
++      "RIPEMD160" (Bug#7490).  Reported by Daniel Kahn Gillmor.
++      (epg-context-set-passphrase-callback): Mention that the callback
++      is not called when used with GnuPG 2.x.
++
++2010-12-13  Glenn Morris  <rgm@gnu.org>
++
++      * ps-print.el (ps-line-lengths-internal, ps-nb-pages):
++      Ensure ps-footer-font-size-internal is initialized.
++      Call ps-get-page-dimensions before trying to use ps-font-for-text.
++
++2010-12-13  Kenichi Handa  <handa@m17n.org>
++
++      * mail/rmailmm.el (rmail-mime-parse): Call rmail-mime-process
++      within condition-case.
++      (rmail-show-mime): Don't use condition-case.
++      (rmail-search-mime-message): New function.
++      (rmail-search-mime-message-function): Set to
++      rmail-search-mime-message.
++
++2010-12-13  Leo  <sdl.web@gmail.com>
++
++      * ido.el (ido-common-initialization): New function.  (bug#3274)
++      (ido-mode): Use it.
++      (ido-completing-read): Call it.
++
 +2010-12-12  Karl Fogel  <kfogel@red-bean.com>
 +
 +      * bookmark.el (bookmark-name-from-full-record): Rename back to
 +      this original name from `bookmark-name-from-record' reverting part
 +      of 2010-12-08T08:09:27Z!kfogel@red-bean.com / kfogel@red-bean.com-20101208080927-5j9jqnb2xvcw4ogm.
 +      As Drew Adams pointed out, there was no reason to cause churn for
 +      third-party callers.
 +
 +2010-12-12  Alan Mackenzie  <acm@muc.de>
 +
 +      * progmodes/cc-engine.el (c-forward-type): Before scanning a
 +      template arglist, check that the current language supports this.
 +
 +2010-12-11  Glenn Morris  <rgm@gnu.org>
 +
 +      * vc/vc-bzr.el (vc-bzr-state-heuristic): Also check that the executable
 +      state of the file matches.  (Bug#7544)
 +      (vc-bzr-register, vc-bzr-checkin)
 +      (vc-bzr-annotate-extract-revision-at-line): Doc fixes.
 +      (vc-directory-exclusion-list): Remove unnecessary eval-after-load.
 +
 +      * textmodes/sgml-mode.el (sgml-xml-guess): Add .xhtml extension.
 +
 +2010-12-11  Karel Klíč  <kklic@redhat.com>
 +
 +      * files.el (auto-mode-alist): Use html-mode for *.xhtml.  (Bug#7606)
 +
 +2010-12-10  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      Derive from prog-mode, use derived-mode-p, and fix up various
 +      minor style issues in lisp/progmodes.
 +
 +      * progmodes/vhdl-mode.el (vhdl-mode):
 +      * progmodes/verilog-mode.el (verilog-mode):
 +      * progmodes/vera-mode.el (vera-mode):
 +      * progmodes/sql.el (sql-mode):
 +      * progmodes/scheme.el (scheme-mode):
 +      * progmodes/perl-mode.el (perl-mode):
 +      * progmodes/octave-inf.el (inferior-octave-mode):
 +      * progmodes/autoconf.el (autoconf-mode):
 +      * progmodes/m4-mode.el (m4-mode):
 +      * progmodes/inf-lisp.el (inferior-lisp-mode):
 +      * progmodes/idlwave.el (idlwave-mode):
 +      * progmodes/icon.el (icon-mode):
 +      * progmodes/idlw-help.el (idlwave-help-mode):
 +      * progmodes/dcl-mode.el (dcl-mode):
 +      * progmodes/idlw-shell.el (idlwave-shell-mode):
 +      * progmodes/ebrowse.el (ebrowse-tree-mode, ebrowse-electric-list-mode)
 +      (ebrowse-member-mode, ebrowse-electric-position-mode):
 +      Use define-derived-mode.
 +
 +      * progmodes/xscheme.el (exit-scheme-interaction-mode)
 +      (xscheme-enter-interaction-mode, xscheme-enter-debugger-mode)
 +      (xscheme-debugger-mode-p, xscheme-send-string-1):
 +      * progmodes/tcl.el (inferior-tcl-proc, tcl-current-word)
 +      (tcl-load-file, tcl-restart-with-file):
 +      * progmodes/ps-mode.el (ps-run-running):
 +      * progmodes/gdb-mi.el (gud-watch, gdb-mouse-set-clear-breakpoint):
 +      * progmodes/js.el (js--get-all-known-symbols):
 +      * progmodes/inf-lisp.el (inferior-lisp-proc):
 +      * progmodes/idlwave.el (idlwave-beginning-of-statement)
 +      (idlwave-template, idlwave-update-buffer-routine-info)
 +      (idlwave-update-current-buffer-info)
 +      (idlwave-get-routine-info-from-buffers, idlwave-choose)
 +      (idlwave-scan-class-info, idlwave-fix-keywords)
 +      (idlwave-list-buffer-load-path-shadows):
 +      * progmodes/idlw-toolbar.el (idlwave-toolbar, idlwave-toolbar-add)
 +      (idlwave-toolbar-remove):
 +      * progmodes/idlw-shell.el (idlwave-shell-save-and-action)
 +      (idlwave-shell-file-name, idlwave-shell-electric-debug-all-off)
 +      (idlwave-shell-menu-def):
 +      * progmodes/idlw-complete-structtag.el
 +      (idlwave-prepare-structure-tag-completion):
 +      * progmodes/gud.el (gud-set-buffer):
 +      * progmodes/f90.el (f90-backslash-not-special):
 +      * progmodes/delphi.el (delphi-find-unit): Use derived-mode-p.
 +
 +      * progmodes/xscheme.el (xscheme-start)
 +      (local-set-scheme-interaction-buffer, scheme-interaction-mode):
 +      * progmodes/which-func.el (which-function):
 +      * progmodes/vhdl-mode.el (vhdl-set-style):
 +      * progmodes/verilog-mode.el (verilog-set-compile-command)
 +      (verilog-modify-compile-command, verilog-error-regexp-add-xemacs)
 +      (verilog-set-define, verilog-auto-reeval-locals):
 +      * progmodes/sql.el (sql-product-font-lock, sql-interactive-mode):
 +      * progmodes/simula.el (simula-mode):
 +      * progmodes/scheme.el (scheme-mode-variables, dsssl-mode):
 +      * progmodes/python.el (python-check, python-mode):
 +      * progmodes/prolog.el (prolog-mode-variables):
 +      * progmodes/gud.el (gud-tooltip-activate-mouse-motions):
 +      * progmodes/ebrowse.el (ebrowse-view-file-other-frame):
 +      * progmodes/delphi.el (delphi-mode):
 +      * progmodes/cc-styles.el (c-setup-paragraph-variables):
 +      * progmodes/cc-mode.el (c-basic-common-init, c-common-init)
 +      (c-font-lock-init): Move make-local-variable to their setq.
 +
 +      * progmodes/vhdl-mode.el (vhdl-write-file-hooks-init)
 +      (vhdl-hs-minor-mode, vhdl-ps-print-init): Fix make-local-variable ->
 +      make-local-hook.
 +      * progmodes/sh-script.el (sh-require-final-newline): Remove.
 +      (sh-set-shell): Don't set require-final-newline since it's already done
 +      by prog-mode.
 +      * progmodes/modula2.el (m2-mode): Don't make m2-end-comment-column
 +      since we never set it.
 +      * progmodes/ebrowse.el (ebrowse-set-tree-indentation):
 +      Use read-string and standard prompt.
 +      * progmodes/dcl-mode.el (dcl-mode-map): Move init into declaration.
 +      * progmodes/meta-mode.el (meta-mode-abbrev-table): Merge init and decl.
 +      (meta-common-mode-syntax-table): Rename from meta-mode-syntax-table.
 +      (meta-common-mode-map): Rename from meta-mode-map.
 +      Remove C-m binding, which is a user preference, not mode specific.
 +      (meta-common-mode): New major mode; replace meta-common-initialization.
 +      * progmodes/js.el (js-mode): Call syntax-propertize rather than messing
 +      around with font-lock.
 +      * progmodes/etags.el (select-tags-table-mode):
 +      Derive from special-mode.
 +      * progmodes/octave-mod.el (octave-mode):
 +      * progmodes/gdb-mi.el (gdb-inferior-io-mode, gdb-threads-mode)
 +      (gdb-memory-mode, gdb-disassembly-mode, gdb-breakpoints-mode)
 +      (gdb-frames-mode, gdb-locals-mode, gdb-registers-mode):
 +      Let define-derived-mode do its job.
 +      * progmodes/cpp.el (cpp-edit-mode-map):
 +      Move initialization into declaration.
 +      (cpp-edit-mode): Use define-derived-mode.
 +      (cpp-edit-load): Use derived-mode-p.
 +      * progmodes/mixal-mode.el (mixal-mode):
 +      * progmodes/f90.el (f90-mode):
 +      * progmodes/cfengine.el (cfengine-mode): Don't bother setting
 +      require-final-newline since prog-mode does it already.
 +      * progmodes/cc-cmds.el (c-update-modeline): Use match-string.
 +      * progmodes/asm-mode.el (asm-mode-map): Fix menu setup.
 +      * progmodes/antlr-mode.el: Require cc-mode upfront.
 +      (antlr-mode-syntax-table, antlr-action-syntax-table): Initialize in
 +      the declaration.
 +      (antlr-directory-dependencies, antlr-show-makefile-rules):
 +      Use derived-mode-p.
 +      (antlr-language-option): Don't assume point-min==1.
 +      (antlr-mode): Use define-derived-mode.
 +      * progmodes/ada-mode.el: Use derived-mode-p.
 +      (ada-mode): Use define-derived-mode.
 +      Use hack-local-variables-hook.
 +
 +2010-12-10  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * textmodes/texinfo.el (texinfo-mode-map): Bind texinfo-insert-@end.
 +      (texinfo-mode): Don't disable adaptive-fill-mode.
 +      (texinfo-insert-block): Adjust cursor placement for blocks with arg.
 +      (texinfo-insert-@end, texinfo-insert-braces, texinfo-insert-@code)
 +      (texinfo-insert-@dfn, texinfo-insert-@email, texinfo-insert-@emph)
 +      (texinfo-insert-@example, texinfo-insert-@file, texinfo-insert-@item)
 +      (texinfo-insert-@kbd, texinfo-insert-@node, texinfo-insert-@noindent)
 +      (texinfo-insert-@quotation, texinfo-insert-@samp)
 +      (texinfo-insert-@strong, texinfo-insert-@table, texinfo-insert-@var)
 +      (texinfo-insert-@uref): Use define-skeleton.
 +      (texinfo-insert-@-with-arg): Delete.
 +
 +2010-12-10  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * arc-mode.el (archive-zip-extract): If w32-quote-process-args is
 +      nil, do quote archive member names.  (Bug#6144)
 +
 +2010-12-10  Glenn Morris  <rgm@gnu.org>
 +
 +      * files.el (diff-no-select): Declare.
 +
 +      * mail/emacsbug.el (report-emacs-bug): Use mail-user-agent properties.
 +      (report-emacs-bug-create-existing-bugs-buffer): Avoid free variables.
 +
 +      * comint.el (comint-input-ring-file-name): Doc fix.
 +
 +2010-12-09  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * menu-bar.el (menu-bar-frame-for-menubar, menu-bar-positive-p):
 +      New functions.
 +      (menu-bar-showhide-menu) <menu-bar-mode, showhide-tool-bar>:
 +      Use them instead of `nil' and `>', respectively.
 +      (menu-bar-showhide-tool-bar-menu): Use menu-bar-frame-for-menubar
 +      instead of `nil'.
 +      (toggle-menu-bar-mode-from-frame): Use menu-bar-frame-for-menubar
 +      and menu-bar-positive-p instead of `nil' and `>', respectively.
 +      (Bug#1077)
 +
 +2010-12-09  Vinicius Jose Latorre  <viniciusjl@ig.com.br>
 +
 +      * whitespace.el (whitespace-newline-mode): Code fix.
 +
 +2010-12-09  Glenn Morris  <rgm@gnu.org>
 +
 +      * play/landmark.el (lm-print-y,s,noise-int, lm-print-y,s,noise):
 +      Rename functions without commas, update callers.
 +
 +2010-12-08  Jeff Dairiki  <dairiki@dairiki.org>  (tiny change)
 +
 +      * whitespace.el (whitespace-cleanup-region):
 +      Clean up spaces before tabs.  (Bug#7582)
 +
 +2010-12-08  Karl Fogel  <kfogel@red-bean.com>
 +
 +      * bookmark.el: Adjust parameter names and doc strings to resolve
 +      confusion over whether "bookmark" meant a bookmark name or a
 +      bookmark record.  Along the way, shorten one function's name for
 +      similar reasons.  (Issue #7548)
 +      (bookmark-name-from-record): New name for
 +      `bookmark-name-from-full-record'.  All callers changed.
 +      (bookmark-get-bookmark, bookmark-get-bookmark-record)
 +      (bookmark-default-annotation-text, bookmark-prop-get, bookmark-prop-set)
 +      (bookmark-get-annotation, bookmark-set-annotation)
 +      (bookmark-get-filename, bookmark-set-filename)
 +      (bookmark-get-position, bookmark-set-position)
 +      (bookmark-get-front-context-string, bookmark-set-front-context-string)
 +      (bookmark-get-rear-context-string, bookmark-set-rear-context-string)
 +      (bookmark-get-handler, bookmark-edit-annotation, bookmark--jump-via)
 +      (bookmark-handle-bookmark, bookmark-location, bookmark-show-annotation):
 +      Rename `bookmark' parameter to `bookmark-name-or-record', to
 +      clearly show its role, and shorten or adjust doc strings accordingly.
 +      (bookmark-set-name): Same, and pass the parameter directly to
 +      `bookmark-get-bookmark' instead of redundantly doing the callee's work.
 +      (bookmark-default-annotation-text, bookmark-send-edited-annotation)
 +      (bookmark-relocate, bookmark-insert-location, bookmark-insert)
 +      (bookmark-delete): Rename `bookmark' parameter to `bookmark-name',
 +      and in some cases shorten doc string accordingly.
 +      (bookmark-rename): Change `old' and `new' parameters to `old-name'
 +      and `new-name', and adjust an internal variable to avoid confusion.
 +      (bookmark-jump, bookmark-jump-noselect): Clarify `bookmark'
 +      parameter in doc string.
 +
 +2010-12-08  Glenn Morris  <rgm@gnu.org>
 +
 +      * progmodes/gdb-mi.el (gdb): Try to initialize comint input history
 +      from gdb's history file.  (Bug#7575)
 +
 +      * mail/emacsbug.el (report-emacs-bug):
 +      Try to handle some other mail clients.
 +
 +2010-12-08  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * files.el (dir-locals-collect-variables): Don't let errors stop us.
 +      Use string-prefix-p.
 +      (file-name-version-regexp): New var.
 +      (file-name-sans-versions):
 +      * jka-cmpr-hook.el (jka-compr-build-file-regexp): Use it,
 +      (jka-compr-get-compression-info): Use dolist.
 +      (jka-compr-compression-info-list): Don't bother specifying
 +      version/backup regexps.
 +
 +2010-12-07  Tassilo Horn  <tassilo@member.fsf.org>
 +
 +      * simple.el (just-one-space): Make argument n default to 1 if
 +      omitted.
 +
 +2010-12-07  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * electric.el (electric-indent-post-self-insert-function):
 +      Delete trailing newlines even if we don't reindent.
 +
 +2010-12-06  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * minibuffer.el (completion-at-point): Remove the `arg'.
 +      * bindings.el (complete-symbol): Move back from minibuffer.el.
 +
 +2010-12-06  Deniz Dogan  <deniz.a.m.dogan@gmail.com>
 +
 +      * simple.el (just-one-space): Delete newlines for negative arg.
 +
 +2010-12-06  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * ansi-color.el (ansi-color-unfontify-region): Replace by trivial def.
 +      (ansi-color-filter-apply): Simplify.
 +      (ansi-color-apply): Use `font-lock-face' rather than `face'.
 +
 +2010-12-05  Bob Rogers  <rogers-emacs@rgrjr.dyndns.org>
 +
 +      * vc/vc-dir.el (vc-dir-query-replace-regexp): Doc fix (Bug#7501).
 +
 +2010-12-04  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * dired.el (dired-use-ls-dired): Set default to a special
 +      "unspecified" value.
 +      (dired-insert-directory): When called the first time, check
 +      whether "ls --dired" succeeds and set dired-use-ls-dired (Bug#7546).
 +
 +2010-12-04  Tak Ota  <Takaaki.Ota@am.sony.com>
 +
 +      * replace.el: Add "collect" feature to occur.
 +      (occur-collect-regexp-history): New var.
 +      (occur-read-primary-args): Return a replace string for nlines,
 +      if needed.
 +      (occur): Extend the meaning of nlines.
 +
 +2010-12-04  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * progmodes/which-func.el (which-func-ff-hook): Log the error message.
 +      (which-func-update-1): Distinguish symbols from strings.
 +      (which-function): Stay within 80 columns.
 +
 +2010-12-03  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * subr.el (with-demoted-errors): Distinguish symbols from strings.
 +
 +      * newcomment.el (comment-styles): Add docs to each style (bug#7509).
 +      Improve docstring.
 +      (comment-style): Use comment-styles's docs to describe values.
 +
 +2010-12-03  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * term/common-win.el (x-setup-function-keys): Restore ns-new-frame
 +      and ns-show-prefs (Bug#7535).
 +
 +      * term/ns-win.el (global-map): Restore ns-new-frame and ns-show-prefs
 +      bindings (Bug#7535).
 +
 +2010-12-03  Glenn Morris  <rgm@gnu.org>
 +
 +      * nxml/nxml-mode.el: Require rng-nxml.
 +      (rng-nxml-mode-init, nxml-enable-unicode-char-name-sets):
 +      Remove declarations.
 +
 +      * nxml/nxml-mode.el, nxml/nxml-outln.el, nxml/rng-loc.el:
 +      * nxml/rng-nxml.el, nxml/rng-valid.el:
 +      Remove leading `*' from defcustom docs.
 +
 +      * startup.el (normal-top-level-add-subdirs-to-load-path): Simplify.
 +      (normal-top-level-add-to-load-path, tty-handle-args):
 +      Convert comments to basic doc-strings.
 +
 +      * net/browse-url.el (browse-url-url-at-point)
 +      (browse-url-default-browser): Remove autoload cookies.
 +
 +      * mail/emacsbug.el (report-emacs-bug-create-existing-bugs-buffer):
 +      Remove more undefined cl functions.
 +
 +      * vc/diff.el (diff-sentinel): Make new arguments optional.
 +      * ibuf-ext.el (diff-sentinel): Update declaration.
 +
 +2010-12-03  Daiki Ueno  <ueno@unixuser.org>
 +
 +      * epg.el (epg-digest-algorithm-alist): Replace "RMD160" with
 +      "RIPEMD160" (Bug#7490).  Reported by Daniel Kahn Gillmor.
 +      (epg-context-set-passphrase-callback): Mention that the callback
 +      is not called when used with GnuPG 2.x.
 +
 +2010-12-02  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/tramp.el (tramp-local-host-regexp): Add "localhost6".
 +      (tramp-file-name-port): Check also for `tramp-default-port'.
 +      (tramp-get-connection-name): New defun.
 +      (tramp-get-connection-process): Use it.
 +      (tramp-debug-message): Extend function exclude list.
 +      (tramp-drop-volume-letter): Fix doc string.
 +
 +      * net/tramp-cmds.el: Remove solved todo item.
 +
 +      * net/tramp-efs.el:
 +      * net/tramp-ftp.el:
 +      * net/tramp-gvfs.el:
 +      * net/tramp-gw.el:
 +      * net/tramp-imap.el:
 +      * net/tramp-smb.el: Fix regexps added to `tramp-default-method-alist'
 +      and `tramp-default-user-alist', respectively.
 +
 +      * net/tramp-gw.el (tramp-gw-open-connection):
 +      Use `tramp-get-connection-name' and `tramp-get-connection-buffer'.
 +
 +      * net/tramp-imap.el (tramp-imap-make-iht): Use just
 +      `tramp-file-name-port'.
 +
 +      * net/tramp-sh.el (tramp-methods): Add recursive options to "pscp"
 +      and "psftp".  Exchange "%k" marker with options.
 +      (tramp-do-copy-or-rename-file, tramp-sh-handle-file-local-copy):
 +      Compute size of link target.
 +      (tramp-do-copy-or-rename-file-out-of-band). Move setting of
 +      `tramp-current-*' up due to gateway methods.  Optimze computing of
 +      copy arguments.  Use `tramp-get-connection-name' and
 +      `tramp-get-connection-buffer'.  Improve debug messages.
 +      (tramp-compute-multi-hops): Remove port determination.
 +      (tramp-maybe-open-connection): Use `tramp-get-connection-name'.
 +
 +      * net/trampver.el: Update release number.
 +
 +2010-12-02  Glenn Morris  <rgm@gnu.org>
 +
 +      * emacs-lisp/cl-macs.el (cl-parse-loop-clause):
 +      Avoid infinite loop over windows.  (Bug#7492)
 +
 +      * progmodes/flymake.el (flymake-check-file-limit):
 +      Allow nil to mean "no limit".
 +      (flymake-check-patch-master-file-buffer): Update for above change.
 +      Allow a .tex file-name extension to be optional.
 +      (flymake-master-tex-init): Also match \include statements.
 +
 +2010-11-30  Sam Steingold  <sds@gnu.org>
 +
 +      * nxml/nxml-mode.el (nxml-parent-document): Add a variable.
 +      (nxml-parent-document-set): A function to set `nxml-parent-document'.
 +      (nxml-mode): Define using `define-derived-mode' instead of `defun'.
 +      (nxml-mode-hook): Remove `defcustom' (auto-defined by
 +      define-derived-mode').
 +      * nxml/rng-valid.el (rng-dtd-trivial-p): Add a helper function for
 +      users who want to call `nxml-parent-document-set'.
 +
 +2010-11-27  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * log-edit.el (log-edit-font-lock-keywords): Don't try matching
 +      stand-alone lines, since that is handled by log-edit-match-to-eoh
 +      (Bug#6465).
 +
 +2010-11-27  Eduard Wiebe  <usenet@pusto.de>
 +
 +      * dired.el (dired-get-filename): Replace backslashes with slashes
 +      in file names on MS-Windows, needed by `locate'.  (Bug#7308)
 +      * locate.el (locate-default-make-command-line): Don't consider
 +      drive letter and root directory part of
 +      `directory-listing-before-filename-regexp'.  (Bug#7308)
 +      (locate-post-command-hook, locate-post-command-hook): New defcustoms.
 +
 +2010-11-27  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * emacs-lisp/smie.el (smie-prec2->grammar): Simplify handling
 +      of :smie-open/close-alist.
 +      (smie-next-sexp): Make it accept a "start token" as argument.
 +      (smie-indent-keyword): Be careful not to misidentify tokens that span
 +      more than one line, as empty lines.  Add argument `token'.
 +
 +2010-11-27  Kenichi Handa  <handa@m17n.org>
 +
 +      * mail/rmailmm.el (rmail-mime-insert-multipart): For unsupported
 +      multipart subtypes, insert all as usual.
 +
 +      * mail/rmail.el: Require rfc2047.
 +
 +2010-11-27  Kenichi Handa  <handa@m17n.org>
 +
 +      * mail/rmailmm.el (rmail-mime-entity, rmail-mime-entity-type)
 +      (rmail-mime-entity-disposition)
 +      (rmail-mime-entity-transfer-encoding, rmail-mime-entity-header)
 +      (rmail-mime-entity-body, rmail-mime-entity-children): New functions.
 +      (rmail-mime-save): Handle the case that the button's `data' is a
 +      MIME entity.
 +      (rmail-mime-insert-text): New function.
-       (rmail-mime-multipart-handler): Just call
-       rmail-mime-process-multipart.
-       (rmail-mime-process-multipart): New funciton mostly copied from
++      (rmail-mime-insert-image): Handle the case that DATA is a MIME entity.
 +      (rmail-mime-bulk-handler): Just call rmail-mime-insert-bulk.
 +      (rmail-mime-insert-bulk): New function mostly copied from the old
 +      rmail-mime-bulk-handler.
-       (rmail-mime-process): New funciton mostly copied from the old
++      (rmail-mime-multipart-handler): Just call rmail-mime-process-multipart.
++      (rmail-mime-process-multipart): New function mostly copied from
 +      the old rmail-mime-multipart-handler.
 +      (rmail-mime-show): Just call rmail-mime-process.
-       (sql-connection-alist): Changed keys from symbols to strings;
++      (rmail-mime-process): New function mostly copied from the old
 +      rmail-mime-show.
 +      (rmail-mime-insert-multipart, rmail-mime-parse)
 +      (rmail-mime-insert, rmail-show-mime)
 +      (rmail-insert-mime-forwarded-message)
 +      (rmail-insert-mime-resent-message): New functions.
 +      (rmail-insert-mime-forwarded-message-function): Set to
 +      rmail-insert-mime-forwarded-message.
 +      (rmail-insert-mime-resent-message-function): Set to
 +      rmail-insert-mime-resent-message.
 +
 +      * mail/rmailsum.el: Require rfc2047.
 +      (rmail-header-summary): Handle multiline Subject: field.
 +      (rmail-summary-line-decoder): Change the default to
 +      rfc2047-decode-string.
 +
 +      * mail/rmail.el (rmail-enable-mime): Change the default to t.
 +      (rmail-mime-feature): Change the default to `rmailmm'.
 +      (rmail-quit): Delete the specifal code for rmail-enable-mime.
 +      (rmail-display-labels): Likewise.
 +      (rmail-show-message-1): Check rmail-enable-mime, and use
 +      rmail-show-mime-function for a MIME message.  Decode the headers
 +      according to RFC2047.
 +
 +2010-11-27  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * progmodes/which-func.el (which-func-imenu-joiner-function):
 +      Return a string, as expected.
 +      (which-function-mode): Make sure we stop any previous timer before
 +      starting a new one.
 +
 +2010-11-27  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/tramp.el (tramp-default-method-alist)
 +      (tramp-default-user-alist, tramp-default-proxies-alist):
 +      Adapt custom options type.  (Bug#7445)
 +
 +2010-11-27  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * progmodes/python.el: Add Ipython support (Bug#5390).
 +      (python-shell-prompt-alist)
 +      (python-shell-continuation-prompt-alist): New options.
 +      (python--set-prompt-regexp): New function.
 +      (inferior-python-mode, run-python, python-shell):
 +      Require ansi-color.  Use python--set-prompt-regexp to set the comint
 +      prompt based on the Python interpreter.
 +      (python--prompt-regexp): New var.
 +      (python-check-comint-prompt)
 +      (python-comint-output-filter-function): Use it.
 +      (run-python): Use a pipe (Bug#5694).
 +
 +2010-11-27  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * progmodes/python.el (run-python): Doc fix.
 +      (python-keep-current-directory-in-path): New var (Bug#7454).
 +
 +2010-11-27  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * lpr.el (lpr-buffer, print-buffer, lpr-region, print-region):
 +      Prompt user before actually printing.
 +
 +2010-11-27  Glenn Morris  <rgm@gnu.org>
 +
 +      * startup.el (package-enable-at-startup, package-initialize):
 +      Remove unnecessary declarations.
 +
 +2010-11-27  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * international/characters.el (glyphless-char-display-control):
 +      Exclude newline and TAB from the c0-control group.
 +
 +2010-11-27  Glenn Morris  <rgm@gnu.org>
 +
 +      * mail/sendmail.el (build-mail-aliases): Doc fix for autoload.
 +      (expand-mail-aliases): Remove unnecessary autoload.
 +
 +      * allout.el (allout-command-prefix, allout-mode-map): Declare.
 +
 +      * shell.el (shell-dir-cookie-re): Move definition before use.
 +
 +      * mail/emacsbug.el (report-emacs-bug-create-existing-bugs-buffer):
 +      Replace undefined CL functions.
 +
 +2010-11-26  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * simple.el (prog-mode): Set bidi-paragraph-direction to
 +      left-to-right.
 +
 +      * term/pc-win.el (x-get-selection-internal): Emulation for MS-DOS.
 +
 +2010-11-26  Glenn Morris  <rgm@gnu.org>
 +
 +      * calendar/diary-lib.el (diary-outlook-format-1): New function, so that
 +      diary-outlook-formats can be sensitive to calendar-date-style.
 +      (diary-outlook-formats): Simplify the default setting.
 +      (diary-from-outlook-internal): Pass subject and body as arguments.
 +      Use dolist rather than dotimes.  Don't save the diary buffer.
 +      (diary-from-outlook-gnus, diary-from-outlook-rmail):
 +      Pass subject and body as explicit arguments to the -internal function.
 +
 +2010-11-26  Lars Magne Ingebrigtsen  <larsi@gnus.org>
 +
 +      * mail/rfc2368.el (rfc2368-parse-mailto-url): Unfold URLs before
 +      parsing them.  This makes mailto:...?subject=foo\nbar work.
 +
 +2010-11-25  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * vc/diff.el (diff): Fix last change.
 +
 +2010-11-24  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * emacs-lisp/pcase.el: Improve pcase-let.  Use "pcase--" prefix.
 +      (pcase--dontcare-upats): New var.
 +      (pcase-let, pcase-let*): Generate better code.
 +      Accept the same bodies as `let'.
 +      (pcase-dolist): New macro.
 +      (pcase--trivial-upat-p): New helper function.
 +      (pcase--expand): Strip leading "(let nil" if any.
 +
 +2010-11-24  Lars Magne Ingebrigtsen  <larsi@gnus.org>
 +
 +      * mail/mailclient.el (browse-url): Require.
 +      (mailclient-send-it): Bind `browse-url-mailto-function' to nil to
 +      use the external browser function to send the mail (bug#7469).
 +
 +      * net/browse-url.el (browse-url-browser-function): Revert the
 +      default back to the previous value, since the new value broke
 +      mailclient.el.
 +      (browse-url-mailto-function): New variable for mailto: URLs.
 +      (browse-url): Use the new variable for mailto: URLs.
 +
 +2010-11-23  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * eshell/esh-cmd.el (eshell-parse-command):
 +      * eshell/esh-arg.el (eshell-parse-arguments):
 +      * eshell/em-script.el (eshell-source-file):
 +      Use with-silent-modifications.
 +
 +2010-11-23  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * vc/vc.el (vc-merge): Remove optional arg PROMPT.  Always prompt
 +      for a merge location.
 +
 +      * vc/vc-bzr.el (vc-bzr-pull): Remove unused var.
 +      (vc-bzr-merge-branch): Always prompt.
 +      (vc-bzr-async-command): Use the full branch filename.
 +
 +2010-11-23  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * shell.el (shell): Use current-buffer by default if it's already
 +      a shell mode buffer and its process is dead.
 +      Suggested by Jose E. Marchesi <jemarch@gnu.org>.
 +
 +2010-11-23  Tassilo Horn  <tassilo@member.fsf.org>
 +
 +      * mail/emacsbug.el (report-emacs-bug-query-existing-bugs):
 +      Mention that the keywords should be comma separated.
 +
 +2010-11-23  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * vc/vc.el (vc-merge): Use vc-BACKEND-merge-branch if available.
 +      Accept optional prefix arg meaning to prompt for a command.
 +      (vc-update): Use vc-BACKEND-pull if available.  Accept optional
 +      prefix arg meaning to prompt for a command.
 +      (vc-pull): Alias for vc-update.
 +
 +      * vc/vc-bzr.el (vc-bzr-admin-branchconf, vc-bzr-history): New vars.
 +      (vc-bzr--branch-conf, vc-bzr-async-command, vc-bzr-pull)
 +      (vc-bzr-merge-branch): New functions, implementing merge-branch
 +      and pull operations.
 +
 +2010-11-22  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * Makefile.in: Fix up last merge.
 +
 +      * vc/diff.el (diff-old-temp-file, diff-new-temp-file): Remove.
 +      (diff-sentinel): Get them as arguments instead.
 +      (diff-old-file, diff-new-file, diff-extra-args): Remove.
 +      (diff-file-local-copy, diff-better-file-name): New funs.
 +      (diff-no-select): Rename from diff-into-buffer.
 +      Support buffers additionally to files.  Move `buf' arg.  Don't display buf.
 +      Prefer closures to buffer-local variables.
 +      (diff): Adjust accordingly.
 +      (diff-buffer-with-file): Move from files.el.
 +      * files.el (diff-buffer-with-file): Move to vc/diff.el.
 +      (diff-buffer-internal): Remove.
 +      (diff-buffer-buffer): Remove.
 +      (save-some-buffers-action-alist): Use diff-no-select so as not to guess
 +      the buffer name used, and so as not to mess up windows and frames.
 +
 +2010-11-22  Bob Rogers  <rogers-emacs@rgrjr.dyndns.org>
 +
 +      * files.el: Make revert work with diff-buffer-with-file (bug#7277).
 +      (diff-buffer-internal): New function extracted from diff-buffer-with-file
 +      (diff-buffer-with-file): Use it.
 +      * vc/diff.el (diff-into-buffer): New fun, extracted from diff.
 +      (diff): Use it.
 +
 +2010-11-22  Tassilo Horn  <tassilo@member.fsf.org>
 +
 +      * textmodes/reftex-ref.el (reftex-goto-label): Use the current
 +      \ref's or \pageref's value as default instead of initial input.
 +
 +2010-11-21  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * files.el (backup-by-copying-when-mismatch): The default value is
 +      now t.
 +
 +      * startup.el (normal-top-level):
 +      * net/tramp.el (tramp-handle-insert-file-contents): Do not set
 +      `backup-by-copying-when-mismatch'.
 +
 +2010-11-21  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * tool-bar.el (tool-bar-setup): Remove save as, print and customize.
 +
 +2010-11-21  Deniz Dogan  <deniz.a.m.dogan@gmail.com>
 +
 +      * progmodes/python.el (python-font-lock-keywords):
 +      Highlight top-level augmented assignments (Bug#6445).
 +
 +2010-11-21  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * term/ns-win.el (ns-right-control-modifier)
 +      (ns-right-command-modifier): Defvar them.
 +
 +      * cus-start.el (all): Add ns-right-control-modifier and
 +      ns-right-command-modifier (Bug#7458).
 +
 +2010-11-20  Glenn Morris  <rgm@gnu.org>
 +
 +      * emacs-lisp/authors.el (authors-ignored-files)
 +      (authors-valid-file-names, authors-renamed-files-alist): Add entries.
 +
 +2010-11-20  Tassilo Horn  <tassilo@member.fsf.org>
 +
 +      * mail/emacsbug.el (report-emacs-bug-query-existing-bugs)
 +      (report-emacs-bug-parse-query-results)
 +      (report-emacs-bug-create-existing-bugs-buffer): Pass through
 +      keywords used for querying the bug database to show them in the
 +      existing bugs buffer.
 +
 +2010-11-20  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * tool-bar.el (tool-bar-setup): Add some :vert-only keywords.
 +
 +      * info.el (info-tool-bar-map): Add some :vert-only keywords.
 +
 +2010-11-20  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * international/characters.el (glyphless-char-display-control):
 +      Make it a defcustom, with update-glyphless-char-display as its
 +      :set attribute.
 +      (top level): Don't call update-glyphless-char-display.
 +
 +2010-11-20  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      Sync with Tramp 2.2.0.
 +
 +      * net/tramp.el (tramp-handle-insert-file-contents): Don't use
 +      `file-remote-p' (due to compatibility).
 +
 +      * net/tramp-sh.el (tramp-do-copy-or-rename-file-directly)
 +      (tramp-do-copy-or-rename-file-out-of-band): Use `ignore-errors'.
 +
 +      * net/trampver.el: Update release number.
 +
 +2010-11-20  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * faces.el (glyphless-char): Define value for `pc'.
 +
 +2010-11-20  Tassilo Horn  <tassilo@member.fsf.org>
 +
 +      Implemented a bug querying mechanism.
 +      * mail/emacsbug.el (report-emacs-bug-tracker-url): New variable.
 +      (report-emacs-bug-create-existing-bugs-buffer)
 +      (report-emacs-bug-parse-query-results)
 +      (report-emacs-bug-query-existing-bugs): New functions.
 +
 +2010-11-19  Tassilo Horn  <tassilo@member.fsf.org>
 +
 +      * textmodes/reftex-ref.el (reftex-goto-label): If point is inside
 +      a \ref{} or \pageref{} macro, then use its value as initial input.
 +
 +2010-11-19  Jay Belanger  <jay.p.belanger@gmail.com>
 +
 +      * calc/calc-units.el (math-build-units-table-buffer):
 +      calc/README: Mention that the TeX specific units won't use the
 +      `tex' prefix in TeX mode.
 +      calc/calc-lang.el (math-variable-table): Don't use the `tex'
 +      prefix for units in TeX mode.
 +
 +2010-11-18  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * simple.el (kill-new, kill-append, kill-region):
 +      * comint.el (comint-kill-region): Make the yank-handler argument
 +      obsolete.
 +
 +2010-11-18  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * emacs-lisp/smie.el (smie-bnf-classify): Signal errors for tokens
 +      that are both openers (resp. closers) and something else.
 +      (smie-grammar): Loosen definition of valid values.
 +      (smie-next-sexp, smie-down-list, smie-blink-matching-open)
 +      (smie-indent--parent, smie-rule-parent, smie-indent-keyword)
 +      (smie-indent-after-keyword): Adjust users.
 +      (smie-indent-keyword): Don't indent empty lines.
 +
 +      * vc-hg.el (vc-hg-program): New var.
 +      Suggested by Norman Gray <norman@astro.gla.ac.uk>.
 +      (vc-hg-state, vc-hg-working-revision, vc-hg-command): Use it.
 +
 +2010-11-18  Glenn Morris  <rgm@gnu.org>
 +
 +      * emacs-lisp/autoload.el (autoload-find-destination): The function
 +      coding-system-eol-type may return non-numeric values.  (Bug#7414)
 +
 +2010-11-18  Ulrich Mueller  <ulm@gentoo.org>
 +
 +      * server.el (server-force-stop): Ensure the server is stopped (Bug#7409).
 +
 +2010-11-18  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * subr.el (posn-col-row): Pay attention to header line.  (Bug#7390)
 +
 +2010-11-18  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * textmodes/picture.el (picture-mouse-set-point): Don't use
 +      posn-col-row; explicitly compute the motion based on the posn at
 +      the window-start (Bug#7390).
 +
 +2010-11-18  Glenn Morris  <rgm@gnu.org>
 +
 +      * novice.el (disabled-command-function):
 +      Fix 2009-11-15 change.  (Bug#7384)
 +
 +2010-11-18  Glenn Morris  <rgm@gnu.org>
 +
 +      * calendar/calendar.el (diary-iso-date-forms): Make elements
 +      mutually exclusive.  (Bug#7377)
 +
 +2010-11-18  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * emacs-lisp/smie.el (smie-prec2->grammar): Obey equality constraints
 +      when filling the remaining "unconstrained" values.
 +
 +2010-11-18  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * emacs-lisp/bytecomp.el (byte-compile-warnings): Simplify the
 +      safety predicate.
 +
 +      * files.el (safe-local-variable-p): Gracefully handle errors.
 +
 +      * emacs-lisp/smie.el (smie-rule-parent, smie-indent--rule):
 +      Use smie-indent-virtual when indenting relative to an opener.
 +      (smie-rule-separator): Use smie-rule-parent.
 +      (smie-indent-keyword): Consult rules, even for openers at bol.
 +      (smie-indent-comment-close): Try to align closer's content.
 +
 +2010-11-18  Glenn Morris  <rgm@gnu.org>
 +
 +      * ls-lisp.el (ls-lisp-dired-ignore-case): Make it an obsolete alias.
 +
 +2010-11-18  Glenn Morris  <rgm@gnu.org>
 +
 +      * printing.el (pr-menu-bind): Doc fix.
 +
 +      * speedbar.el (speedbar-toggle-images): Doc fix.
 +
 +      * progmodes/python.el (python-shell): Doc fix.
 +
 +      * wid-edit.el (widget-field-use-before-change)
 +      (widget-use-overlay-change): Doc fixes.
 +
 +2010-11-18  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      Minor cleanup to improve style.
 +      * textmodes/rst.el (rst-update-section): Use point-marker.
 +      (rst-get-decoration): Eliminate unneeded assignment.
 +      (rst-promote-region, rst-straighten-decorations)
 +      (rst-section-tree, rst-adjust): Use point-marker.
 +      (rst-toc-mode-mouse-goto): Avoid setq.
 +      (rst-shift-region-guts, rst-shift-region-left)
 +      (rst-iterate-leftmost-paragraphs, rst-iterate-leftmost-paragraphs-2)
 +      (rst-convert-bullets-to-enumeration): Use copy-marker.
 +
 +      * minibuffer.el (completion-fail-discreetly): New var.
 +      (completion--do-completion): Use it.
 +
 +      * electric.el (electric-pair-pairs): New var.
 +      (electric-pair-post-self-insert-function): Use it.
 +      (electric-layout-post-self-insert-function): Don't insert a before
 +      newline unless it's actually needed.
 +
 +2010-11-17  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * progmodes/python.el (run-python): Explain why we remove the current
 +      directory from sys.path.  Suggested by Eric Hanchrow <erich@cozi.com>.
 +
 +      * progmodes/grep.el (grep-regexp-alist): Tighten the regexp (bug#7378).
 +
 +2010-11-16  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * progmodes/octave-mod.el: Rely on elecric-*-modes.
 +      (octave-mode-map): Don't bind ;, SPC, and LF.
 +      (octave-auto-indent, octave-auto-newline): Remove.
 +      (electric-layout-rules): Declare.
 +      (octave-mode): Set electric-layout-rules.
 +      (octave-indent-new-comment-line): Use reindent-then-newline-and-indent.
 +      (octave-reindent-then-newline-and-indent, octave-electric-semi)
 +      (octave-electric-space): Remove.
 +
 +      * electric.el (electric-layout-mode): New minor mode.
 +      (electric--after-char-pos): New function.
 +      (electric-indent-post-self-insert-function): Use it.
 +      (electric-layout-rules): New var.
 +      (electric-layout-post-self-insert-function): New function.
 +      (electric-indent-mode): Make them interact better.
 +
 +2010-11-15  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * emacs-lisp/checkdoc.el (checkdoc-syntax-table): Fix last change.
 +      (checkdoc-sentencespace-region-engine, checkdoc-this-string-valid)
 +      (checkdoc-proper-noun-region-engine): Use with-syntax-table.
 +
 +2010-11-15  Agustín Martín  <agustin.martin@hispalinux.es>
 +
 +      * textmodes/flyspell.el (flyspell-generic-progmode-verify):
 +      Make sure to check inside the word (Bug#6761).
 +
 +2010-11-14  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * startup.el (command-line): If the cursorColor resource is set,
 +      change the cursor face-spec (Bug#7392).
 +
 +2010-11-13  Ken Manheimer  <ken.manheimer@gmail.com>
 +
 +      The main features of the following allout.el changes are:
 +      - implement user customization for the allout key bindings
 +      - add a customization control by which the user can inhibit use of
 +        a trailing Ctrl-H, so by default it's reserved for use with
 +        describe-prefix-bindings
 +      - adapt to new version of called-interactively-p, while
 +        maintaining backwards compatibility with old version
 +      - fix hotspot navigation so i works properly with meta-modified keys
 +
 +      * allout.el (allout-keybindings, allout-bind-keys)
 +      (allout-keybindings-binding, allout-prefixed-keybindings)
 +      (allout-unprefixed-keybindings, allout-preempt-trailing-ctrl-h)
 +      (allout-keybindings-list, allout-mode-map-adjustments)
 +      (allout-setup-mode-map): Establish allout-mode keymaps as user
 +      customizable settings, and also establish a customizable setting which
 +      regulates whether or not a trailing control-h is reserved for use with
 +      describe-prefix-bindings - and inhibit it by default, so that control-h
 +      *is* reserved for describe-prefix-bindings unless the user changes it.
 +
 +      * allout.el (allout-hotspot-key-handler): Distinguish more explicitly
 +      and accurately between modified and unmodified events, and handle
 +      modified events more comprehensively.
 +
 +      * allout.el (allout-substring-no-properties):
 +      Alias to use or provide version of `substring-no-properties'.
 +      (allout-solicit-alternate-bullet): Use `allout-substring-no-properties'.
 +
 +      * allout.el (allout-next-single-char-property-change):
 +      Alias to use or provide version of `next-single-char-property-change'.
 +      (allout-annotate-hidden, allout-hide-by-annotation):
 +      Use `allout-next-single-char-property-change'.
 +
 +      * allout.el (allout-select-safe-coding-system):
 +      Alias to use or provide version of `select-safe-coding-system'.
 +      (allout-toggle-subtree-encryption):
 +      Use `allout-select-safe-coding-system'.
 +
 +      * allout.el (allout-set-buffer-multibyte):
 +      Alias to use or provide version of `set-buffer-multibyte'.
 +      (allout-encrypt-string): Use `allout-set-buffer-multibyte'.
 +
 +      * allout.el (allout-called-interactively-p): Macro for using the
 +      different versions of called-interactively-p identically, depending on
 +      the subroutine's argument signature.
 +      (allout-back-to-current-heading, allout-beginning-of-current-entry):
 +      Use `(interactive "p")' instead of `(called-interactively-p)'.
 +
 +      * allout.el (allout-init, allout-ascend, allout-end-of-level)
 +      (allout-previous-visible-heading, allout-forward-current-level)
 +      (allout-backward-current-level, allout-show-children):
 +      Use `allout-called-interactively-p' instead of `called-interactively-p'.
 +
 +      * allout.el (allout-before-change-handler):
 +      Exempt edits to the (overlaid) character after the allout outline
 +      bullet from edit confirmation prompt.
 +
 +      * allout.el (allout-add-resumptions):
 +      Ensure that it respects correct buffer for keybindings.
 +
 +      * allout.el (allout-beginning-of-line):
 +      Use `allout-previous-single-char-property-change' alias for the sake of
 +      diverse compatibility.
 +
 +      * allout.el (allout-end-of-line):
 +      Use `allout-mark-active-p' to encapsulate respect for mark activity.
 +
 +2010-11-13  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * frame.el (frame-notice-user-settings): Don't clobber other
 +      user-set parameters when calling face-set-after-frame-default in
 +      response to background-color parameter (Bug#7373).
 +
 +2010-11-13  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * international/characters.el (glyphless-char-display-control):
 +      Rename from glyphless-char-control; all users changed.  Doc fix.
 +      Signal an error if display method is not one of the recognized
 +      symbols.
 +
 +2010-11-13  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/tramp-compat.el (tramp-compat-line-beginning-position)
 +      (tramp-compat-line-end-position): Remove them.
 +
 +      * net/tramp.el (tramp-parse-rhosts-group)
 +      (tramp-parse-shosts-group, tramp-parse-sconfig-group)
 +      (tramp-parse-hosts-group, tramp-parse-passwd-group)
 +      (tramp-parse-netrc-group, tramp-parse-putty-group)
 +      * net/tramp-cmds.el (tramp-append-tramp-buffers)
 +      * net/tramp-sh.el (tramp-do-file-attributes-with-ls)
 +      (tramp-sh-handle-file-selinux-context)
 +      (tramp-sh-handle-file-name-all-completions)
 +      (tramp-sh-handle-insert-directory)
 +      (tramp-sh-handle-expand-file-name, tramp-find-executable)
 +      (tramp-wait-for-output, tramp-send-command-and-read)
 +      * net/tramp-smb.el (tramp-smb-read-file-entry)
 +      (tramp-smb-get-cifs-capabilities): Use `point-at-eol'.
 +
 +      * net/tramp-sh.el (tramp-sh-handle-insert-directory) Use
 +      `point-at-bol'.
 +      (tramp-remote-coding-commands): Add an alternative using "base64
 +      -d -i".  This is needed for older base64 versions from GNU
 +      coreutils.  Reported by Klaus Reichl
 +      <Klaus.Reichl@thalesgroup.com>.
 +
 +2010-11-13  Hrvoje Niksic  <hniksic@xemacs.org>
 +
 +      * simple.el (count-words-region): New function.
 +
 +2010-11-12  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * shell.el (shell-dir-cookie-re): New custom variable.
 +      (shell-dir-cookie-watcher): New function.
 +
 +      * vc/vc.el (vc-deduce-backend): Use default-directory in shell-mode
 +      and compilation-mode (bug#7350).
 +
 +      * vc/smerge-mode.el (smerge-refine): Choose better default part to
 +      highlight when one of them is empty.
 +
 +      * skeleton.el (skeleton-read): Don't use `newline' since it may strip
 +      trailing space.
 +      (skeleton-newline): New function.
 +      (skeleton-internal-1): Use it.
 +
 +      * simple.el (open-line): `newline' may strip trailing space.
 +
 +2010-11-12  Kevin Ryde  <user42@zip.com.au>
 +
 +      * international/mule-cmds.el (princ-list): Use mapc.
 +
 +2010-11-12  Glenn Morris  <rgm@gnu.org>
 +
 +      * emacs-lisp/bytecomp.el (byte-compile-log-buffer): New constant.
 +      Use it to replace all instances of "*Compile-Log*"
 +
 +2010-11-12  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * emacs-lisp/pcase.el (pcase-let*, pcase-let): Add debug and
 +      indentation specs.
 +
 +2010-11-11  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * progmodes/modula2.el: Use SMIE and skeleton.
 +      (m2-mode-syntax-table): (*..*) can be nested.
 +      Add //...\n.  Fix paren syntax.
 +      (m2-mode-map): Remove LF and TAB bindings.
 +      (m2-indent): Add safety property.
 +      (m2-smie-grammar): New var.
 +      (m2-smie-refine-colon, m2-smie-refine-of, m2-smie-backward-token)
 +      (m2-smie-forward-token, m2-smie-refine-semi, m2-smie-rules): New funs.
 +      (m2-mode): Use define-derived-mode.
 +      (m2-newline, m2-tab): Remove.
 +      (m2-begin, m2-case, m2-definition, m2-else, m2-for, m2-header)
 +      (m2-if, m2-loop, m2-module, m2-or, m2-procedure, m2-with, m2-record)
 +      (m2-stdio, m2-type, m2-until, m2-var, m2-while, m2-export)
 +      (m2-import): Use define-skeleton.
 +
 +2010-11-11  Glenn Morris  <rgm@gnu.org>
 +
 +      * obsolete/lucid.el: Don't warn about any CL functions in this file.
 +
 +      * ls-lisp.el (ls-lisp-ignore-case, ls-lisp-dirs-first)
 +      (ls-lisp-verbosity): Add custom :set-after property.
 +      (ls-lisp-verbosity, ls-lisp-use-localized-time-format): Doc fixes.
 +      (ls-lisp-format, ls-lisp-format-time): Don't take `now' as an argument.
 +      (ls-lisp-insert-directory): Update caller.
 +      (ls-lisp-set-options): New function.
 +      (ls-lisp-emulation): Use ls-lisp-set-options for custom :set.
 +      Doc fix.
 +
 +      * play/landmark.el (lm-prompt-for-move):
 +      * play/gomoku.el (gomoku-prompt-for-move): Remove nonsensical code.
 +
 +      * progmodes/idlw-complete-structtag.el: Remove unused dec `name'.
 +
 +      * progmodes/idlwave.el (idlwave-routine-entry-compare-twins)
 +      (idlwave-study-twins): Prefix dynamic local variable `name'.
 +      (idlwave-routine-twin-compare): Update for above change.
 +
 +      * progmodes/idlw-help.el (idlwave-do-mouse-completion-help):
 +      Prefix dynamic local variables `name', `kwd', and `link'.
 +      * progmodes/idlw-shell.el (idlwave-shell-complete-execcomm-help):
 +      * progmodes/idlw-complete-structtag.el
 +      (idlwave-complete-structure-tag-help):
 +      * progmodes/idlwave.el (idlwave-complete-sysvar-help)
 +      (idlwave-complete-sysvar-tag-help)
 +      (idlwave-complete-class-structure-tag-help):
 +      Update for above name changes.
 +
 +2010-11-10  Lars Magne Ingebrigtsen  <larsi@gnus.org>
 +
 +      * net/browse-url.el (browse-url-browser-function): Change the
 +      default to use `browse-url-mail' on mailto: URLs.
 +
 +2010-11-10  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * emacs-lisp/package.el (package-read-all-archive-contents):
 +      Reset package-archive-contents to nil before re-reading.
 +
 +2010-11-10  Brandon Craig Rhodes  <brandon@rhodesmill.org>  (tiny change)
 +
 +      * textmodes/flyspell.el (flyspell-word): Do not re-check words
 +      already found as misspellings by (flyspell-large-region), just
 +      do highlighting (bug#7322).
 +
 +2010-11-10  Glenn Morris  <rgm@gnu.org>
 +
 +      * progmodes/octave-mod.el (octave-mark-block): Update for smie change.
 +
 +      * emulation/edt.el (edt-with-position): New macro.
 +      (edt-find-forward, edt-find-backward, edt-find-next-forward)
 +      (edt-find-next-backward, edt-sentence-forward, edt-sentence-backward)
 +      (edt-paragraph-forward, edt-paragraph-backward): Use it.
 +
 +      * emulation/tpu-extras.el (tpu-with-position): New macro.
 +      (tpu-paragraph, tpu-page, tpu-search-internal): Use it.
 +
 +      * textmodes/texnfo-upd.el (texinfo-pointer-name): Fix typo.
 +
 +      * textmodes/texnfo-upd.el (texinfo-all-menus-update)
 +      (texinfo-menu-copy-old-description, texinfo-start-menu-description)
 +      (texinfo-master-menu, texinfo-insert-node-lines)
 +      (texinfo-multiple-files-update):
 +      * textmodes/texinfmt.el (texinfo-append-refill, texinfo-copying):
 +      Use line-beginning-position.
 +
 +      * progmodes/cperl-mode.el (cperl-find-pods-heres, cperl-write-tags):
 +      No recent Emacs supports system-type `emx'.
 +
 +      * progmodes/ada-xref.el (is-windows): Rename to ada-on-ms-windows.
 +      (ada-command-separator, ada-default-prj-properties)
 +      (ada-find-any-references): Update for above name change.
 +
 +      * dirtrack.el (dirtrack-directory-function)
 +      (dirtrack-canonicalize-function):
 +      * filecache.el (file-cache-completion-ignore-case)
 +      (file-cache-case-fold-search, file-cache-ignore-case):
 +      * term.el (serial-port-is-file-p): Cosmetic change.
 +
 +      * emulation/viper-init.el (viper-ms-style-os-p): Doc fix.
 +      Remove non-existent `windows-95' system-type.
 +      * dired.el (dired-chown-program): Remove non-existent `linux'
 +      system-type.
 +
 +      * net/net-utils.el (net-utils-remove-ctl-m): Use memq for system-types.
 +      (ping-program-options): Remove non-existent `linux' system-type.
 +
 +      * startup.el (package-initialize): Update declaration.
 +
 +      * ls-lisp.el (ls-lisp-time-lessp, ls-lisp-time-to-seconds): Remove.
 +      (ls-lisp-handle-switches): Use time-less-p.
 +      (ls-lisp-format-time): Use float-time.
 +
 +      * textmodes/remember.el (remember-time-to-seconds): Remove.
 +      (remember-store-in-mailbox): Use float-time.
 +
 +      * calendar/timeclock.el (timeclock-time-to-seconds): Make it an alias.
 +
 +      * calendar/time-date.el (time-to-seconds): Always an alias on Emacs,
 +      never a real function.
 +      (with-no-warnings): Remove compat stub, now unused.
 +      (time-less-p): Doc fix.
 +      (time-to-number-of-days): Simplify.
 +
 +      * eshell/esh-util.el (eshell-time-less-p, eshell-time-to-seconds):
 +      Remove.
 +      (eshell-read-passwd, eshell-read-hosts): Use time-less-p.
 +      * eshell/esh-test.el (eshell-test, eshell-show-usage-metrics):
 +      * eshell/em-unix.el (eshell-show-elapsed-time, eshell/time):
 +      * eshell/em-pred.el (eshell-pred-file-time): Use float-time.
 +      * eshell/em-ls.el (eshell-ls-sort-entries): Use time-less-p.
 +
 +      * eshell/em-unix.el (eshell-remove-entries, eshell/rm)
 +      (eshell-shuffle-files, eshell-shorthand-tar-command)
 +      (eshell-mvcpln-template, eshell/mv, eshell/cp, eshell/ln):
 +      Prefix dynamic locals `interactive', `preview', `recursive', `verbose'.
 +      * eshell/em-glob.el (eshell-extended-glob, eshell-glob-entries):
 +      Prefix dynamic local variable `matches'.
 +
 +      * skeleton.el (skeleton-internal-list, skeleton-internal-1):
 +      Prefix dynamic local variable `skeleton'.
 +
 +2010-11-10  Katsumi Yamaoka  <yamaoka@jpl.org>
 +
 +      * net/browse-url.el (browse-url-mail): Insert body part of mailto url
 +      in mail buffer; make yank-action always a command that yanks original
 +      buffer.
 +
 +2010-11-09  Glenn Morris  <rgm@gnu.org>
 +
 +      * progmodes/tcl.el (tcl-hairy-scan-for-comment): Doc fix.
 +
 +2010-11-09  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * minibuffer.el (minibuffer-completion-help): Specify the end of the
 +      completion field (bug#7211).
 +
 +      * progmodes/python.el (python-font-lock-syntactic-keywords): (bug#7322)
 +      Fix handling of backslash escapes.
 +      (python-quote-syntax): Adjust accordingly.
 +
 +2010-11-09  Richard Levitte  <richard@levitte.org>  (tiny change)
 +
 +      * vc-mtn.el (vc-mtn-working-revision, vc-mtn-after-dir-status)
 +      (vc-mtn-workfile-branch): Adjust to new output format.
 +
 +2010-11-09  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * international/mule-cmds.el (princ-list): Mark as obsolete.
 +
 +2010-11-09  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * emacs-lisp/smie.el: New package.
 +
 +2010-11-09  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * files.el (backup-by-copying-when-mismatch):
 +      Set `permanent-local' property.
 +
 +      * net/tramp.el (tramp-handle-insert-file-contents): Do not set
 +      `permanent-local' property for `backup-by-copying-when-mismatch'.
 +
 +2010-11-09  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * ls-lisp.el (insert-directory): Doc fix.  (bug#7285)
 +
 +2010-11-09  Wilson Snyder  <wsnyder@wsnyder.org>
 +
 +      * progmodes/verilog-mode.el (verilog-insert-one-definition)
 +      (verilog-read-decls, verilog-read-sub-decls-sig): Fix AUTOWIRE and
 +      AUTOINOUT for SV style multidimensional arrays, bug294.
 +      Reported by Eric Mastromarchi.
 +      (verilog-preprocess): Use with-current-buffer and
 +      font-lock-fontify-buffer to cleanup style issues.
 +
 +2010-11-09  Glenn Morris  <rgm@gnu.org>
 +
 +      * locate.el (locate, locate-mode): Doc fixes.
 +
 +2010-11-09  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * server.el (server-start): New arg INHIBIT-PROMPT prevents asking
 +      user for confirmation.
 +      (server-force-stop): Use it.
 +      (server-start): Use server-force-stop for kill-emacs-hook, to
 +      avoid user interaction while killing Emacs.
 +
 +2010-11-09  Glenn Morris  <rgm@gnu.org>
 +
 +      * progmodes/meta-mode.el: Remove leading `*' from defcustom docs.
 +      (meta-indent-line): Simplify.
 +
 +      * vc/emerge.el (emerge-line-number-in-buf):
 +      * textmodes/ispell.el (ispell-region):
 +      * textmodes/fill.el (current-fill-column):
 +      * progmodes/xscheme.el (xscheme-send-current-line):
 +      * progmodes/vhdl-mode.el (vhdl-current-line, vhdl-line-copy):
 +      * progmodes/tcl.el (tcl-hairy-scan-for-comment):
 +      * progmodes/sh-script.el (sh-handle-prev-do):
 +      * progmodes/meta-mode.el (meta-indent-line):
 +      * progmodes/idlwave.el (idlwave-goto-comment, idlwave-fill-paragraph)
 +      (idlwave-in-quote):
 +      * progmodes/idlw-shell.el (idlwave-shell-current-frame)
 +      (idlwave-shell-update-bp-overlays, idlwave-shell-sources-filter):
 +      * progmodes/fortran.el (fortran-looking-at-if-then):
 +      * progmodes/etags.el (find-tag-in-order, etags-snarf-tag):
 +      * progmodes/cperl-mode.el (cperl-sniff-for-indent)
 +      (cperl-find-pods-heres):
 +      * progmodes/ada-mode.el (ada-get-current-indent, ada-narrow-to-defun):
 +      * net/quickurl.el (quickurl-list-insert):
 +      * net/ldap.el (ldap-search-internal):
 +      * net/eudc.el (eudc-expand-inline):
 +      * mail/sendmail.el (sendmail-send-it):
 +      * mail/mspools.el (mspools-visit-spool, mspools-get-spool-name):
 +      * emulation/viper-cmd.el (viper-paren-match, viper-backward-indent)
 +      (viper-brac-function):
 +      * calc/calc-yank.el (calc-do-grab-region):
 +      * calc/calc-keypd.el (calc-keypad-press):
 +      * term.el (term-move-columns, term-insert-spaces):
 +      * speedbar.el (speedbar-highlight-one-tag-line):
 +      * simple.el (current-word):
 +      * mouse-drag.el (mouse-drag-should-do-col-scrolling):
 +      * info.el (Info-find-node-in-buffer-1, Info-follow-reference)
 +      (Info-scroll-down):
 +      * hippie-exp.el (he-line-beg):
 +      * epa.el (epa--marked-keys):
 +      * dired-aux.el (dired-kill-line, dired-do-kill-lines)
 +      (dired-update-file-line, dired-add-entry, dired-remove-entry)
 +      (dired-relist-entry):
 +      * buff-menu.el (Buffer-menu-buffer):
 +      * array.el (current-line):
 +      * allout.el (allout-resolve-xref)
 +      (allout-latex-verbatim-quote-curr-line):
 +      Replace yet more uses of end-of-line etc with line-end-position, etc.
 +
 +2010-11-08  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * emacs-lisp/checkdoc.el (checkdoc-display-status-buffer)
 +      (checkdoc-interactive-loop, checkdoc-recursive-edit): Avoid princ-list.
 +      (checkdoc-syntax-table): Initialize in the declaration.
 +      (emacs-lisp-mode-hook): Use just checkdoc-minor-mode now that it turns
 +      the mode on unconditionally.
 +
 +      * emacs-lisp/cl-macs.el (extent-data, extent-face, extent-priority)
 +      (extent-end-position, extent-start-position): Remove setf method for
 +      non-existing functions (bug#7319).
 +
 +2010-11-07  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * emacs-lisp/smie.el: Simplify the smie-rules-function return values.
 +      (smie-precs->prec2): Rename from smie-precs-precedence-table.
 +      (smie-bnf->prec2): Rename from smie-bnf-precedence-table.
 +      (smie-prec2->grammar): Rename from smie-prec2-levels.
 +      (smie-grammar): Rename from smie-op-levels.
 +      (smie-indent--hanging-p): Rename from smie-hanging-p.
 +      (smie-rule-hanging-p): New alias.
 +      (smie-indent--bolp): Rename from smie-bolp.
 +      (smie-indent--hanging-p): New alias.
 +      (smie--token): New dynamically bound variable.
 +      (smie-indent--parent): New function.
 +      (smie-rule-parent-p): Use it; rename from smie-parent-p.
 +      (smie-rule-next-p): Rename from smie-next-p.
 +      (smie-rule-prev-p): Rename from smie-prev-p.
 +      (smie-rule-sibling-p, smie-rule-parent)
 +      (smie-indent--separator-outdent, smie-rule-separator): New functions.
 +      (smie-rule-separator-outdent): New var.
 +      (smie-indent--rule): Merge with smie-indent--column.
 +      (smie-indent-forward-token, smie-indent-backward-token):
 +      Also recognize close parens.
 +      (smie-indent-keyword): Don't use smie-indent--column any more.
 +      (smie-indent-after-keyword): Ignore closers by default.
 +      (smie-indent-line): Use with-demoted-errors.
 +      * progmodes/octave-mod.el (octave-smie-grammar):
 +      Rename from octave-smie-op-levels.
 +      (octave-smie-rules): Adjust to new behavior.
 +      * progmodes/prolog.el (prolog-smie-grammar):
 +      Rename from prolog-smie-op-levels.
 +
 +2010-11-07  Glenn Morris  <rgm@gnu.org>
 +
 +      * eshell/esh-util.el (subst-char-in-string)
 +      (directory-files-and-attributes): These compatibility definitions are
 +      not needed on any version of Emacs since at least 21.4.
 +
 +      * progmodes/verilog-mode.el (verilog-get-beg-of-line)
 +      (verilog-get-end-of-line): Remove.
 +      (verilog-within-string, verilog-re-search-forward-substr)
 +      (verilog-re-search-backward-substr, verilog-set-auto-endcomments)
 +      (verilog-surelint-off, verilog-getopt-file, verilog-highlight-region):
 +      Use point-at-bol, point-at-eol.
 +      * progmodes/pascal.el (pascal-get-beg-of-line, pascal-get-end-of-line):
 +      Remove.
 +      (pascal-declaration-end, pascal-declaration-beg, pascal-within-string)
 +      (electric-pascal-terminate-line, pascal-set-auto-comments)
 +      (pascal-indent-paramlist, pascal-indent-declaration)
 +      (pascal-get-lineup-indent, pascal-func-completion)
 +      (pascal-get-completion-decl, pascal-var-completion, pascal-completion):
 +      Use point-at-bol, point-at-eol.
 +      * progmodes/flymake.el (flymake-line-beginning-position)
 +      (flymake-line-end-position): Remove.
 +      (flymake-highlight-line): Use point-at-bol, point-at-eol.
 +      * eshell/esh-util.el (line-end-position, line-beginning-position):
 +      Remove compat definitions.
 +
 +      * emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
 +      Use end-of-line N.
 +      (checkdoc-this-string-valid-engine, checkdoc-file-comments-engine):
 +      Use line-end-position.
 +
 +      * emacs-lisp/chart.el (chart-zap-chars):
 +      * play/decipher.el (decipher-set-map):
 +      * progmodes/ada-mode.el (ada-get-current-indent)
 +      (ada-search-ignore-string-comment, ada-tab-hard, ada-untab-hard):
 +      * progmodes/ada-prj.el (ada-prj-load-from-file, ada-prj-display-help):
 +      * progmodes/ada-xref.el (ada-initialize-runtime-library)
 +      (ada-get-all-references):
 +      * progmodes/cperl-mode.el (cperl-electric-paren)
 +      (cperl-electric-rparen, cperl-electric-keyword, cperl-electric-else)
 +      (cperl-linefeed, cperl-sniff-for-indent, cperl-to-comment-or-eol)
 +      (cperl-find-pods-heres, cperl-indent-exp, cperl-fix-line-spacing)
 +      (cperl-word-at-point-hard):
 +      * progmodes/idlw-shell.el (idlwave-shell-move-or-history)
 +      (idlwave-shell-filename-string, idlwave-shell-batch-command)
 +      (idlwave-shell-display-line):
 +      * progmodes/idlwave.el (idlwave-show-begin, idlwave-fill-paragraph)
 +      (idlwave-calc-hanging-indent, idlwave-auto-fill, idlwave-template):
 +      * progmodes/js.el (js--re-search-forward-inner)
 +      (js--re-search-backward-inner):
 +      * progmodes/vhdl-mode.el (vhdl-align-region-1, vhdl-align-region-2)
 +      (vhdl-fix-clause, vhdl-compose-configuration-architecture):
 +      * progmodes/ruby-mode.el (ruby-parse-partial, eval-when-compile):
 +      * textmodes/flyspell.el (flyspell-process-localwords):
 +      * textmodes/ispell.el (ispell-buffer-local-parsing)
 +      (ispell-buffer-local-dict, ispell-buffer-local-words):
 +      Use point-at-bol and point-at-eol.
 +
 +      * speedbar.el (speedbar-generic-item-info)
 +      (speedbar-item-info-tag-helper, speedbar-change-expand-button-char)
 +      (speedbar-add-indicator, speedbar-check-vc-this-line)
 +      (speedbar-check-obj-this-line, speedbar-extract-one-symbol)
 +      (speedbar-buffers-line-directory, speedbar-buffer-revert-buffer):
 +      Replace more uses of end-of-line etc with line-end-position.
 +
 +2010-11-06  Glenn Morris  <rgm@gnu.org>
 +
 +      * textmodes/texnfo-upd.el (texinfo-start-menu-description)
 +      (texinfo-update-menu-region-beginning, texinfo-menu-first-node)
 +      (texinfo-delete-existing-pointers, texinfo-find-pointer)
 +      (texinfo-clean-up-node-line, texinfo-insert-node-lines)
 +      (texinfo-multiple-files-update):
 +      * textmodes/table.el (table--probe-cell-left-up)
 +      (table--probe-cell-right-bottom):
 +      * textmodes/picture.el (picture-tab-search):
 +      * textmodes/page-ext.el (pages-copy-header-and-position)
 +      (pages-directory-for-addresses):
 +      * progmodes/vera-mode.el (vera-get-offset):
 +      * progmodes/simula.el (simula-calculate-indent):
 +      * progmodes/python.el (python-pdbtrack-overlay-arrow):
 +      * progmodes/prolog.el (end-of-prolog-clause):
 +      * progmodes/perl-mode.el (perl-calculate-indent, perl-indent-exp):
 +      * progmodes/icon.el (indent-icon-exp):
 +      * progmodes/etags.el (tag-re-match-p):
 +      * progmodes/ebrowse.el (ebrowse-show-file-name-at-point):
 +      * progmodes/ebnf2ps.el (ebnf-begin-file):
 +      * progmodes/dcl-mode.el (dcl-back-to-indentation-1)
 +      (dcl-save-local-variable):
 +      * play/life.el (life-setup):
 +      * play/gametree.el (gametree-looking-at-ply):
 +      * nxml/nxml-maint.el (nxml-insert-target-repertoire-glyph-set):
 +      * mail/sendmail.el (mail-mode-auto-fill):
 +      * emacs-lisp/lisp-mode.el (calculate-lisp-indent):
 +      * emacs-lisp/edebug.el (edebug-overlay-arrow):
 +      * emacs-lisp/checkdoc.el (checkdoc-this-string-valid):
 +      * woman.el (woman-parse-numeric-value, woman2-TH, woman2-SH)
 +      (woman-tab-to-tab-stop, WoMan-warn-ignored):
 +      * type-break.el (type-break-file-keystroke-count):
 +      * term.el (term-replace-by-expanded-history-before-point)
 +      (term-skip-prompt, term-extract-string):
 +      * speedbar.el (speedbar-edit-line, speedbar-expand-line)
 +      (speedbar-contract-line, speedbar-toggle-line-expansion)
 +      (speedbar-parse-c-or-c++tag, speedbar-parse-tex-string)
 +      (speedbar-buffer-revert-buffer, speedbar-highlight-one-tag-line):
 +      * sort.el (sort-skip-fields):
 +      * skeleton.el (skeleton-internal-list):
 +      * simple.el (line-move-finish, line-move-to-column):
 +      * shell.el (shell-forward-command):
 +      * misc.el (copy-from-above-command):
 +      * makesum.el (double-column):
 +      * ebuff-menu.el (electric-buffer-update-highlight):
 +      * dired.el (dired-move-to-end-of-filename):
 +      * dframe.el (dframe-popup-kludge):
 +      * bookmark.el (bookmark-kill-line, bookmark-bmenu-show-filenames):
 +      * arc-mode.el (archive-get-lineno):
 +      Use line-end-position and line-beginning-position.
 +
 +      * progmodes/idlwave.el (idlwave-routine-entry-compare-twins):
 +      (idlwave-study-twins): Prefix dynamic local `class'.
 +      (idlwave-routine-twin-compare): Update for above name change.
 +
 +      * emacs-lisp/eieio-comp.el (byte-compile-file-form-defmethod):
 +      Use boundp tests to silence compiler.  Update for changed name of
 +      bytecomp-filename variable.
 +
 +      * emulation/viper-cmd.el (viper-read-string-with-history):
 +      Prefix dynamic local `initial'.
 +      (viper-minibuffer-standard-hook): Update for above name change.
 +
 +      * emacs-lisp/elint.el (elint-init-env): Prefix dynamic local `env'.
 +      (elint-init-form): Update for above name change.
 +
 +      * mail/mail-extr.el (mail-extract-address-components): Give dynamic
 +      local variables `cbeg' and `cend' a prefix.
 +      (mail-extr-voodoo): Update for above name change.
 +
 +      * textmodes/reftex-toc.el (reftex-toc-do-promote)
 +      (reftex-toc-promote-prepare): Pass `delta' as an explicit argument.
 +      (reftex-toc-promote-action): Doc fix.
 +
 +      * textmodes/reftex-sel.el (reftex-select-item): Give local variables
 +      `prompt', `data' a prefix.
 +      (reftex-select-post-command-hook, reftex-select-callback)
 +      (reftex-select-mouse-accept, reftex-select-read-cite):
 +      Update for above name changes.
 +
 +      * textmodes/reftex-ref.el (reftex-reference): Rename local variable
 +      `refstyle' to reftex-refstyle.
 +      (reftex-offer-label-menu): Update for above name change.
 +      * textmodes/reftex-sel.el (reftex-select-toggle-varioref): Update for
 +      `refstyle' name change.
 +
 +      * vc/emerge.el (emerge-eval-in-buffer): Remove, and replace all uses
 +      with with-current-buffer.
 +      (diff, template): Give dynamic local variables a prefix.
 +      (emerge-line-numbers): Rename local `diff' to emerge-line-diff.
 +      (emerge-line-number-in-buf): Update for above name change.
 +      (emerge-combine-versions-internal): Rename local `template' to
 +      emerge-combine-template.
 +      (emerge-combine-versions-edit): Update for above name change.
 +
 +2010-11-06  Ralf Angeli  <angeli@caeruleus.net>
 +
 +      * textmodes/reftex-cite.el
 +      (reftex-extract-bib-entries-from-thebibliography): Match bibitem
 +      entries with whitespace after \bibitem.
 +      (reftex-create-bibtex-file): Match entries containing numbers and
 +      symbol constituents.  Make sure that entries with whitespace at
 +      various places are found.
 +
 +2010-11-05  Christian Millour  <cm@abtela.com>  (tiny change)
 +
 +      * shell.el (shell-process-popd): Made aware of comint-file-name-prefix.
 +
 +2010-11-05  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * mouse.el (mouse-yank-primary): Update comment (Bug#6802).
 +
 +2010-11-05  Glenn Morris  <rgm@gnu.org>
 +
 +      * woman.el (woman0-roff-buffer, woman1-roff-buffer)
 +      (woman2-roff-buffer): Give local variable `request' a prefix.
 +      (woman0-macro): Rename argument `request' in the same way.
 +      (woman-request): New name for `request' dynamic variable.
 +      (woman-unquote, woman-forward-arg): Update for above name change.
 +      (woman1-roff-buffer): Give local variable `unquote' a prefix.
 +      (woman1-unquote): New name for `unquote' dynamic variable.
 +      (woman1-B-or-I, woman1-alt-fonts): Update for above name change.
 +      (woman-translations): Rename from `translations'.  No longer global.
 +      (woman2-tr, woman-translate): Update for above name change.
 +      (woman-translate): Check for bound variable.
 +      (woman2-roff-buffer): Give local variable `translations' a prefix.
 +
 +      * play/doctor.el: Give all local variables a prefix.  Update callers.
 +      (doc$, doctor-put-meaning): Use backquote.
 +
 +      * emacs-lisp/cl-macs.el (loop): Give local variable args a prefix.
 +      (cl-parse-loop-clause, cl-loop-handle-accum): Update for above change.
 +
 +      * emacs-lisp/byte-opt.el (byte-decompile-bytecode-1): Give local
 +      variables bytes, ptr, op a prefix.
 +      (disassemble-offset): Update for above change.
 +
 +2010-11-03  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * emacs-lisp/package.el (package-unpack): Remove no-op.
 +      (package--builtins, package--dir): Doc fix.
 +      (package-activate-1, package-activate, package-install)
 +      (package-compute-transaction): Fix error message.
 +      (package-delete): Use delete-directory.  Omit system packages.
 +      (package-initialize): Set package-alist to nil first.
 +      (package-menu-mark-delete, package-menu-mark-install): Don't add
 +      symbols that are inconsistent with the package state.
 +      (package-menu-execute): Perform deletions and installations as
 +      single batch operations.
 +
 +2010-11-03  Glenn Morris  <rgm@gnu.org>
 +
 +      * progmodes/idlwave.el (idlwave-pset): Only used on XEmacs.
 +      (props): Remove unnecessary declaration.
 +
 +      * textmodes/ispell.el (ispell-init-process): On Emacs, always use
 +      set-process-query-on-exit-flag.
 +
 +      * textmodes/reftex-toc.el (name1, dummy, dummy2): Remove unused decs.
 +      (reftex-toc-do-promote): Remove unused local `mpos'.
 +      (reftex-toc-restore-region): Make `mpos' local to this function.
 +
 +      * net/dbus.el (dbus-name-owner-changed-handler): Doc fix.
 +
 +      * play/landmark.el (lm-losing-threshold): Correct spelling.
 +      (lm-human-plays): Use new name.
 +
 +      * play/gomoku.el (gomoku-loosing-threshold): Correct spelling.
 +      (gomoku-human-plays): Use new name.
 +
 +      * play/gomoku.el (nil-score, Xscore, XXscore, XXXscore, XXXXscore)
 +      (Oscore, OOscore, OOOscore, OOOOscore): Rename with gomoku- prefix.
 +      (gomoku-score-trans-table, gomoku-winning-threshold)
 +      (gomoku-loosing-threshold, gomoku-init-score-table): Use new names.
 +
 +2010-11-03  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * emacs-lisp/package.el: Don't put built-in packages in
 +      package-alist, to avoid loading inefficiencies.
 +      (package-built-in-p): Make VERSION optional, and treat it as a
 +      minimum acceptable version.
 +      (package-activate): Search separately for built-in packages.
 +      Emit a warning if a dependency fails.
 +      (define-package): Handle most common case, where there is no
 +      obsolete package, first.
 +      (package-compute-transaction): Print required version in error.
 +      (package--initialized): New variable.
 +      (list-packages): Use it.
 +      (package-initialize): Optional arg NO-ACTIVATE.  Don't put
 +      built-in packages in packages-alist; keep it separate.
 +      Set package--initialized.
 +      (describe-package): Avoid activating packages as a side-effect.
 +      Search separately for built-in packages.
 +      (describe-package-1): Handle the case where an elpa package is
 +      simultaneously built-in and available/installed.
 +      (package-installed-p, package--generate-package-list):
 +      Search separately for built-in packages.
 +      (package-load-descriptor): Doc fix.
 +
 +2010-11-03  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * progmodes/perl-mode.el (perl-syntax-propertize-function):
 +      Handle __DATA__ and __END__.
 +
 +2010-11-02  Noah Friedman  <friedman@splode.com>
 +
 +      * emacs-lisp/bytecomp.el (byte-recompile-file): If bytecomp-arg is
 +      nil, do not ask to recompile files that are not already compiled,
 +      and do not recompile them.
 +
 +2010-11-02  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * emacs-lisp/package.el (package-initialize): Ensure that
 +      obsoleted built-in packages are not in package-activated-list
 +      during activation.
 +      (describe-package-1): Make the "installed" status override
 +      "built-in".
 +
 +2010-11-01  Vinicius Jose Latorre  <viniciusjl@ig.com.br>
 +
 +      * subr.el (version-separator, version-regexp-alist): Remove '*'
 +      from docstring.
 +      (version-list-<=, version<=, version=): Doc fix.
 +
 +2010-11-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * faces.el (glyphless-char): Inherit underline for tty.
 +
 +2010-11-01  Kenichi Handa  <handa@m17n.org>
 +
 +      Implement various display methods for glyphless characters.
 +
 +      * international/characters.el (char-acronym-table): New variable.
 +      (glyphless-char-control): New variable.
 +      (update-glyphless-char-display): New funciton.
 +
 +      * faces.el (glyphless-char): New face.
 +
 +2010-11-01  Glenn Morris  <rgm@gnu.org>
 +
 +      * calendar/holidays.el (general-holidays, oriental-holidays)
 +      (local-holidays, other-holidays, hebrew-holidays, christian-holidays)
 +      (islamic-holidays, bahai-holidays, solar-holidays): Move aliases before
 +      the definitions of their targets.
 +
 +      * emacs-lisp/smie.el (smie): New custom group.
 +      (smie-blink-matching-inners, smie-indent-basic): Add :group.
 +
 +      * faces.el (xw-defined-colors, x-setup-function-keys):
 +      * mouse-sel.el (x-select-text):
 +      * term/w32console.el (x-setup-function-keys): Update declarations.
 +
 +      * progmodes/ruby-mode.el (ruby-syntax-propertize-heredoc): Declare.
 +
 +      * textmodes/ispell.el (comment-add): Declare.
 +
 +      * net/gnutls.el (gnutls-boot, gnutls-errorp, gnutls-error-string):
 +      Declare.
 +
 +      * info.el (finder-keywords-hash, package-alist): Declare.
 +
 +2010-11-01  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * finder.el (finder-compile-keywords): Don't use intern-soft,
 +      since package names may not yet exist in the obarray.
 +
 +2010-11-01  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * vc/vc-arch.el (vc-arch-checkin):
 +      * vc/vc-cvs.el (vc-cvs-checkin):
 +      * vc/vc-mtn.el (vc-mtn-checkin):
 +      * vc/vc-rcs.el (vc-rcs-checkin):
 +      * vc/vc-sccs.el (vc-sccs-checkin):
 +      * vc/vc-svn.el (vc-svn-checkin): Remove optional extra arg, unused
 +      since 2010-04-21 commit by Stefan Monnier.
 +
 +2010-11-01  Glenn Morris  <rgm@gnu.org>
 +
 +      * emacs-lisp/bytecomp.el (byte-recompile-file): Fix previous change.
 +
 +      * startup.el (package-enable-at-startup, package-initialize):
 +      Silence compiler.
 +
 +      * progmodes/ada-mode.el (ada-font-lock-syntactic-keywords):
 +      Silence compiler.
 +
 +2010-10-31  Julien Danjou  <julien@danjou.info>
 +
 +      * emacs-lisp/bytecomp.el (byte-recompile-file): New fun (bug#7297).
 +      (byte-recompile-directory):
 +      * emacs-lisp/lisp-mode.el (emacs-lisp-byte-compile-and-load):
 +      Use `byte-recompile-file'.
 +
 +2010-10-31  Glenn Morris  <rgm@gnu.org>
 +
 +      * cus-start.el: Handle standard values via a keyword.
 +      Only set version property if specified.
 +      (cursor-in-non-selected-windows, menu-bar-mode)
 +      (tool-bar-mode, show-trailing-whitespace):
 +      Do not specify standard values.
 +      (transient-mark-mode, temporary-file-directory): Use :standard.
 +
 +2010-10-31  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * term/x-win.el (x-get-selection-value): New function that gets
 +      PRIMARY with type as specified in x-select-request-type. (Bug#6802).
 +
 +2010-10-31  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/tramp.el (tramp-handle-insert-file-contents): For root,
 +      preserve owner and group when editing files.  (Bug#7289)
 +
 +2010-10-31  Glenn Morris  <rgm@gnu.org>
 +
 +      * speedbar.el (speedbar-mode):
 +      * play/fortune.el (fortune-in-buffer, fortune):
 +      * play/gomoku.el (gomoku-mode):
 +      * play/landmark.el (lm-mode):
 +      * textmodes/bibtex.el (bibtex-validate, bibtex-validate-globally):
 +      Replace inappropriate uses of toggle-read-only.  (Bug#7292)
 +
 +      * select.el (x-selection): Mark it as an obsolete alias.
 +
 +2010-10-31  Aaron S. Hawley  <aaron.s.hawley@gmail.com>
 +
 +      * vc/add-log.el (find-change-log): Use derived-mode-p rather than
 +      major-mode (bug#7284).
 +
 +2010-10-31  Glenn Morris  <rgm@gnu.org>
 +
 +      * menu-bar.el (menu-bar-files-menu): Make it into an actual alias,
 +      rather than just an unused variable that inherits from the real one.
 +
 +2010-10-31  Alan Mackenzie  <acm@muc.de>
 +
 +      * progmodes/cc-cmds.el (c-mask-paragraph): Fix an off-by-1 error.
 +      This fixes bug #7185.
 +
 +2010-10-30  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * startup.el (command-line): Search for package directories, and
 +      don't load package.el if none are found.
 +
 +      * emacs-lisp/package.el (describe-package, list-packages):
 +      Call package-initialize if it has not been called yet.
 +
 +2010-10-30  Alan Mackenzie  <acm@muc.de>
 +
 +      * progmodes/cc-fonts.el (c-font-lock-enum-tail): New function
 +      which fontifies the tail of an enum.
 +      (c-basic-matchers-after): Insert a call to the above new function.
 +      This fixes bug #7264.
 +
 +2010-10-30  Glenn Morris  <rgm@gnu.org>
 +
 +      * cus-start.el: Add :set properties for minor modes menu-bar-mode,
 +      tool-bar-mode, transient-mark-mode.  (Bug#7306)
 +      Include the :set property in the dumped Emacs.
 +
 +2010-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      SMIE: change indent rules format, improve smie-setup.
 +      * emacs-lisp/smie.el (smie-precs-precedence-table)
 +      (smie-merge-prec2s, smie-bnf-precedence-table, smie-prec2-levels):
 +      Mark them pure so the tables gets built at compile time.
 +      (smie-bnf-precedence-table): Store the closer-alist in the table.
 +      (smie-prec2-levels): Preserve the closer-alist.
 +      (smie-blink-matching-open): Be more forgiving in case of indentation.
 +      (smie-hanging-p): Rename from smie-indent--hanging-p.
 +      (smie-bolp): Rename from smie-indent--bolp.
 +      (smie--parent, smie--after): New dynamic vars.
 +      (smie-parent-p, smie-next-p, smie-prev-p): New funs.
 +      (smie-indent-rules): Remove.
 +      (smie-indent--offset-rule): Remove fun.
 +      (smie-rules-function): New var.
 +      (smie-indent--rule): New fun.
 +      (smie-indent--offset, smie-indent-keyword, smie-indent-after-keyword)
 +      (smie-indent-exps): Use it.
 +      (smie-setup): Setup paren blinking; add keyword args for token
 +      functions; extract closer-alist from op-levels.
 +      (smie-indent-debug-log): Remove var.
 +      (smie-indent-debug): Remove fun.
 +      * progmodes/prolog.el (prolog-smie-indent-rules): Remove.
 +      (prolog-smie-rules): New fun to replace it.
 +      (prolog-mode-variables): Simplify.
 +      * progmodes/octave-mod.el (octave-smie-closer-alist): Remove, now that
 +      it's setup automatically.
 +      (octave-smie-indent-rules): Remove.
 +      (octave-smie-rules): New fun to replace it.
 +      (octave-mode): Simplify.
 +
 +2010-10-29  Glenn Morris  <rgm@gnu.org>
 +
 +      * files.el (temporary-file-directory): Remove (already defined in C).
 +      * cus-start.el: Add temporary-file-directory.
 +
 +      * abbrev.el (abbrev-mode):
 +      * composite.el (auto-composition-mode):
 +      * menu-bar.el (menu-bar-mode):
 +      * simple.el (transient-mark-mode):
 +      * tool-bar.el (tool-bar-mode): Adjust the define-minor-mode calls so
 +      that they do not define the associated variables twice.
 +      * simple.el (transient-mark-mode): Remove defvar.
 +      * composite.el (auto-composition-mode): Make variable auto-buffer-local.
 +      * cus-start.el: Add transient-mark-mode, menu-bar-mode, tool-bar-mode.
 +      Handle multiple groups, and also custom-delayed-init-variables.
 +      * emacs-lisp/easy-mmode.el (define-minor-mode): Doc fix.
 +
 +2010-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * emacs-lisp/pcase.el (pcase): New `string' and `guard' patterns.
 +      (pcase-if): Add one minor optimization.
 +      (pcase-split-equal): Rename from pcase-split-eq.
 +      (pcase-split-member): Rename from pcase-split-memq.
 +      (pcase-u1): Add strings to the member optimization.
 +      Add `guard' variant of predicates.
 +      (pcase-q1): Add string patterns.
 +
 +2010-10-28  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * vc/log-edit.el (log-edit-rewrite-fixes): State its safety pred.
 +
 +2010-10-28  Glenn Morris  <rgm@gnu.org>
 +
 +      * term/ns-win.el (global-map, menu-bar-final-items, menu-bar-help-menu):
 +      Move menu-bar related settings to ../menu-bar.el.
 +      * menu-bar.el (global-map, menu-bar-final-items, menu-bar-help-menu):
 +      Move ns-specific settings here from term/ns-win.el.
 +
 +      * simple.el (x-selection-owner-p): Remove unused declaration.
 +
 +2010-10-28  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * minibuffer.el (completion-cycling): New var (bug#7266).
 +      (minibuffer-complete, completion--do-completion):
 +      Use completion--flush-all-sorted-completions.
 +      (minibuffer-complete): Only cycle if completion-cycling is set.
 +      (completion--flush-all-sorted-completions): Unset completion-cycling.
 +      (minibuffer-force-complete): Set completion-cycling.
 +      (completion-all-sorted-completions): Move declaration before first use.
 +
 +2010-10-28  Leo  <sdl.web@gmail.com>
 +
 +      * iswitchb.el (iswitchb-kill-buffer): Avoid `iswitchb-make-buflist'
 +      which changes the order of matches seen by users (bug#7231).
 +
 +2010-10-28  Jes Bodi Klinke  <jes@bodi-klinke.dk>  (tiny change)
 +
 +      * progmodes/compile.el (compilation-mode-font-lock-keywords):
 +      Don't confuse -omega as "-o mega".
 +
 +2010-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * vc/log-edit.el (log-edit-rewrite-fixes): New var.
 +      (log-edit-author): New dynamic var.
 +      (log-edit-changelog-ours-p, log-edit-insert-changelog-entries): Use it
 +      to return the author if different from committer.
 +      (log-edit-insert-changelog): Use them to add Author: and Fixes headers.
 +
 +      * play/landmark.el: Adjust commenting convention.
 +      (lm-nil-score): Rename from nil-score.
 +      (Xscore, XXscore, XXXscore, XXXXscore, Oscore, OOscore, OOOscore)
 +      (OOOOscore): Move into a let in lm-score-trans-table.
 +      (lm-winning-threshold, lm-loosing-threshold): Use lm-score-trans-table.
 +
 +      * electric.el (electric-indent-chars): Autoload.
 +      * progmodes/octave-mod.el (octave-mode):
 +      * progmodes/ruby-mode.el (ruby-mode): Take advantage of it.
 +      (ruby-mode-abbrev-table): Merge initialization and declaration.
 +
 +2010-10-27  Glenn Morris  <rgm@gnu.org>
 +
 +      * abbrev.el (abbrev-mode): Remove one of the three definitions of this
 +      variable.
 +
 +      * server.el (server-host, server-port, server-auth-dir): Autoload risky.
 +
 +      * term/ns-win.el: Restore require of cl when compiling.
 +      (menu-bar-final-items): Remove non-existent `windows' menu.
 +      (ns-handle-nxopen): Optionally handle the temp-case.
 +      (ns-handle-nxopentemp): Just call ns-handle-nxopen.
 +      (ns-insert-file, ns-find-file): Use `pop'.
 +
 +2010-10-26  Glenn Morris  <rgm@gnu.org>
 +
 +      * term/common-win.el (xw-defined-colors): Simplify the 'ns case.
 +
 +2010-10-26  Adrian Robert  <Adrian.B.Robert@gmail.com>
 +
 +      * term/ns-win.el (ns-new-frame, ns-show-prefs): Don't add to
 +      global map.
 +      * term/common-win.el (x-setup-function-keys): Remove most of the
 +      keymappings.  Comment on the remaining ones.
 +
 +2010-10-26  Peter Oliver  <p.d.oliver@mavit.org.uk>  (tiny change)
 +
 +      * server.el (server-port): New option.  (Bug#854)
 +      (server-start): Use server-port.
 +
 +2010-10-26  Glenn Morris  <rgm@gnu.org>
 +
 +      * term/ns-win.el (ns-version-string): Remove unused declaration.
 +      (ns-invocation-args): Change to x-invocation-args.
 +      (ns-handle-switch, ns-handle-numeric-switch, ns-handle-iconic)
 +      (ns-handle-name-switch, ns-ignore-2-arg): Remove.
 +      (ns-handle-nxopen, ns-handle-nxopentemp, ns-ignore-1-arg):
 +      Use x-invocation-args instead of ns-invocation-args.
 +      (ns-initialize-window-system, handle-args-function-alist):
 +      Use x-handle-args instead of ns-handle-args.
 +      * term/common-win.el (x-handle-args): Also handle nextstep arguments.
 +      * startup.el (command-line-ns-option-alist): Replace
 +      ns-handle-name-switch, ns-handle-switch, ns-handle-numeric-switch,
 +      ns-handle-iconic with the x- equivalents.
 +
 +      * term/common-win.el (x-select-enable-clipboard):
 +      * term/pc-win.el (x-select-enable-clipboard): Doc fix.
 +
 +      * term/ns-win.el: No need to require cl when compiling.
 +      (x-display-name, x-setup-function-keys, x-select-text, x-colors)
 +      (xw-defined-colors): Use the common-win definitions.
 +      (ns-alternatives-map): Make it an obsolete alias for x-alternatives-map.
 +      (ns-handle-iconic): Make it an alias for x-handle-iconic.
 +      * term/common-win.el (x-select-text, x-alternatives-map)
 +      (x-setup-function-keys, x-colors, xw-defined-colors): Handle 'ns case.
 +      * loadup.el [ns]: Load common-win.
 +
 +2010-10-26  Daiki Ueno  <ueno@unixuser.org>
 +
 +      * epa-mail.el (epa-mail-encrypt): Handle local-part only
 +      recipients; expand mail aliases (Bug#7280).
 +
 +2010-10-25  Glenn Morris  <rgm@gnu.org>
 +
 +      * term/common-win.el (x-handle-switch): Simplify with pop.
 +      Optionally handle numeric switches.
 +      (x-handle-numeric-switch): Just call x-handle-switch.
 +      (x-handle-initial-switch, x-handle-xrm-switch, x-handle-geometry)
 +      (x-handle-name-switch, x-handle-display, x-handle-args):
 +      Simplify with pop.
 +
 +      * term/ns-win.el: Do not require easymenu.
 +      (menu-bar-edit-menu) <copy, paste, paste-from-menu, separator-undo>:
 +      <spell>: Move adjustments to menu-bar.el.
 +      * menu-bar.el (menu-bar-edit-menu) <copy, paste, paste-from-menu>:
 +      <separator-undo, spell>: Move ns-win's adjustments here.
 +      * loadup.el [ns]: Do not load easymenu.
 +
 +2010-10-24  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * image.el (image-checkbox-checked, image-checkbox-unchecked):
 +      Delete (Bug#7222).
 +
 +      * startup.el (fancy-startup-tail): Instead of using inline images,
 +      refer to image files from etc/.
 +
 +      * wid-edit.el (checkbox): Likewise.
 +      (widget-image-find): Center image specs.
 +
 +2010-10-24  Glenn Morris  <rgm@gnu.org>
 +
 +      * term/ns-win.el (x-select-text): Doc fix.
 +      * w32-fns.el (x-alternatives-map, x-setup-function-keys)
 +      (x-select-text): Move to term/common-win.
 +      * term/w32-win.el (xw-defined-colors): Move to common-win.
 +      * term/x-win.el (xw-defined-colors, x-alternatives-map)
 +      (x-setup-function-keys, x-select-text): Move to common-win.
 +      * term/common-win.el (x-select-text, x-alternatives-map)
 +      (x-setup-function-keys, xw-defined-colors): Merge x- and w32-
 +      definitions here.
 +
 +2010-10-24  T.V. Raman  <tv.raman.tv@gmail.com>  (tiny change)
 +
 +      * net/mairix.el (mairix-searches-mode-map):
 +      * mail/mspools.el (mspools-mode-map): Fix 2010-10-10 change.
 +
 +2010-10-24  Michael McNamara  <mac@mail.brushroad.com>
 +
 +      * verilog-mode.el (verilog-directive-re): Make this variable
 +      auto-built for efficiency of execution and updating.
 +      (verilog-extended-complete-re): Support 'pure' fucntion & task
 +      declarations (these have no bodies).
 +      (verilog-beg-of-statement): General cleanup to enable support of
 +      'pure' fucntion & task declarations (these have no bodies).
 +      These efforts together fix Verilog bug210 from veripool; which was also
 +      noticed by Steve Pearlmutter.
 +      (verilog-directive-re, verilog-directive-begin, verilog-indent-re)
 +      (verilog-directive-nest-re, verilog-set-auto-endcomments):
 +      Support `elsif.  Reported by Shankar Giri.
 +      (verilog-forward-ws&directives, verilog-in-attribute-p): Fixes for
 +      attribute handling for lining up declarations and assignments.
 +      (verilog-beg-of-statement-1): Fix issue where continued declaration
 +      is indented differently if it is after a begin..end clock.
 +      (verilog-in-attribute-p, verilog-skip-backward-comments)
 +      (verilog-skip-forward-comment-p): Support proper treatment of
 +      attributes by indent code. Reported by Jeff Steele.
 +      (verilog-in-directive-p): Fix comment to correctly describe function.
 +      (verilog-backward-up-list, verilog-in-struct-region-p)
 +      (verilog-backward-token, verilog-in-struct-p)
 +      (verilog-in-coverage-p, verilog-do-indent)
 +      (verilog-pretty-declarations): Use verilog-backward-up-list as
 +      wrapper around backward-up-list inorder to properly skip comments.
 +      Reported by David Rogoff.
 +      (verilog-property-re, verilog-endcomment-reason-re)
 +      (verilog-beg-of-statement, verilog-set-auto-endcomments)
 +      (verilog-calc-1 ): Fix for assert a; else b; indentation (new form
 +      of if). Reported by Max Bjurling and
 +      (verilog-calc-1): Fix for clocking block in modport
 +      declaration. Reported by Brian Hunter.
 +
 +2010-10-24  Wilson Snyder  <wsnyder@wsnyder.org>
 +
 +      * verilog-mode.el (verilog-auto-inst, verilog-gate-ios)
 +      (verilog-gate-keywords, verilog-read-sub-decls)
 +      (verilog-read-sub-decls-gate, verilog-read-sub-decls-gate-ios)
 +      (verilog-read-sub-decls-line, verilog-read-sub-decls-sig): Support
 +      AUTOINST for gate primitives, bug284.  Reported by Mark Johnson.
 +      (verilog-read-decls): Fix spaces in V2K module parameters causing
 +      mis-identification as interfaces, bug287.
 +      (verilog-read-decls): Fix not treating "parameter string" as a
 +      parameter in AUTOINSTPARAM.
 +      (verilog-read-always-signals-recurse, verilog-read-decls): Fix not
 +      treating `elsif similar to `endif inside AUTOSENSE.
 +      (verilog-do-indent): Implement correct automatic or static task or
 +      function end comment highlight. Reported by Steve Pearlmutter.
 +      (verilog-font-lock-keywords-2): Fix highlighting of single
 +      character pins, bug264.  Reported by Michael Laajanen.
 +      (verilog-auto-inst, verilog-read-decls, verilog-read-sub-decls)
 +      (verilog-read-sub-decls-in-interfaced, verilog-read-sub-decls-sig)
 +      (verilog-subdecls-get-interfaced, verilog-subdecls-new):
 +      Support interfaces with AUTOINST, bug270.  Reported by Luis Gutierrez.
 +      (verilog-pretty-expr): Fix interactive arguments, bug272.
 +      Reported by Mark Johnson.
 +      (verilog-auto-tieoff, verilog-auto-tieoff-ignore-regexp):
 +      Add 'verilog-auto-tieoff-ignore-regexp' for AUTOTIEOFF,
 +      bug269. Suggested by Gary Delp.
 +      (verilog-mode-map, verilog-preprocess, verilog-preprocess-history)
 +      (verilog-preprocessor, verilog-set-compile-command):
 +      Create verilog-preprocess and verilog-preprocessor to show
 +      preprocessed output.
 +      (verilog-get-beg-of-line, verilog-get-end-of-line)
 +      (verilog-modi-file-or-buffer, verilog-modi-name)
 +      (verilog-modi-point, verilog-within-string): Move defmacro's
 +      before first use to avoid warning. Reported by Steve Pearlmutter.
 +      (verilog-colorize-buffer, verilog-colorize-include-files-buffer)
 +      (verilog-colorize-region, verilog-highlight-buffer)
 +      (verilog-highlight-includes, verilog-highlight-modules)
 +      (verilog-highlight-region, verilog-mode): Rename colorize to
 +      highlight to match other packages.  Disable module highlighting,
 +      as received speed complaints, reenable for experimentation only
 +      using new verilog-highlight-modules.
 +      (verilog-read-decls): Fix regexp stack overflow in very large
 +      AUTO_TEMPLATEs, bug250.
 +      (verilog-auto, verilog-delete-auto, verilog-save-buffer-state)
 +      (verilog-scan): Create verilog-save-buffer-state to standardize
 +      making insignificant changes that shouldn't call hooks.
 +      (verilog-save-no-change-functions, verilog-save-scan-cache)
 +      (verilog-scan, verilog-scan-cache-ok-p, verilog-scan-region):
 +      Create verilog-save-no-change-functions to wrap verilog-scan
 +      preservation, and fix to work with nested preserved calls.
 +      (verilog-auto-inst, verilog-auto-inst-dot-name): Support .name
 +      port syntax for AUTOWIRE, and with new verilog-auto-inst-dot-name
 +      generate .name with AUTOINST, bug245.  Suggested by David Rogoff.
 +      (verilog-submit-bug-report): Update variable list to be complete.
 +      (verilog-auto, verilog-colorize-region): Fix AUTO expansion
 +      breaking on-the-fly font-locking.
 +      (verilog-colorize-buffer, verilog-colorize-include-files)
 +      (verilog-colorize-include-files-buffer, verilog-colorize-region)
 +      (verilog-load-file-at-mouse, verilog-load-file-at-point)
 +      (verilog-mode, verilog-read-inst-module-matcher): With point on a
 +      AUTOINST cell instance name, middle mouse button now finds-file on
 +      it.  Suggested by Brad Dobbie.
 +      (verilog-alw-get-temps, verilog-auto-reset)
 +      (verilog-auto-sense-sigs, verilog-read-always-signals)
 +      (verilog-read-always-signals-recurse): Fix loop indexes being
 +      AUTORESET. AUTORESET now assumes any variables in the
 +      initialization section of a for() should be ignored.
 +      Reported by Dan Dever.
 +      (verilog-error-font-lock-keywords)
 +      (verilog-error-regexp-emacs-alist)
 +      (verilog-error-regexp-xemacs-alist): Fix error detection of
 +      Cadence HAL, reported by David Asher.  Repair drift between the
 +      three similar error variables.
 +      (verilog-modi-lookup, verilog-modi-lookup-cache)
 +      (verilog-modi-lookup-last-current, verilog-modi-lookup-last-mod)
 +      (verilog-modi-lookup-last-modi, verilog-modi-lookup-last-tick):
 +      Fix slow verilog-auto expansion on very large files.
 +      (verilog-read-sub-decls-expr, verilog-read-sub-decls-line):
 +      Fix AUTOOUTPUT treating "1*2" as a signal name in submodule connection
 +      "{1*2{...".  Broke in last revision.
 +      (verilog-read-sub-decls-expr): Fix AUTOOUTPUT not detecting
 +      submodule connections with replications "{#{a},#{b}}".
 +
 +2010-10-24  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * progmodes/dcl-mode.el (dcl-electric-reindent-regexps):
 +      Fix typo in docstring.
 +
 +2010-10-24  Kenichi Handa  <handa@m17n.org>
 +
 +      * face-remap.el (text-scale-adjust): Call read-event with a proper
 +      prompt.
 +
 +2010-10-24  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * emacs-lisp/unsafep.el: Don't mark functions that display
 +      messages as safe.  Suggested by Johan Bockgård.
 +
 +2010-10-24  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * emacs-lisp/regexp-opt.el (regexp-opt-group, regexp-opt-charset):
 +      Turn comments into docstrings.
 +
 +      * minibuffer.el (completion--replace): Move point where it belongs
 +      when there's a common suffix (bug#7215).
 +
 +2010-10-24  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      Merge read-color and facemenu-read-color (Bug#7242).
 +
 +      * faces.el (read-color): Use the completion code from
 +      facemenu-read-color.  Require match in completion.  Doc fix.
 +
 +      * facemenu.el (facemenu-read-color): Alias for read-color.
 +      (facemenu-set-foreground, facemenu-set-background):
 +      Use read-color.
 +
 +      * frame.el (set-background-color, set-foreground-color)
 +      (set-cursor-color, set-mouse-color, set-border-color):
 +      Use read-color.
 +
 +2010-10-24  Leo  <sdl.web@gmail.com>
 +
 +      * eshell/em-unix.el (eshell-remove-entries): Use the TRASH
 +      argument of delete-file and delete-directory (Bug#7011).
 +
 +2010-10-24  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * emacs-lisp/package.el (package-menu-mode-map): Inherit from
 +      button-buffer-map.
 +
 +2010-10-24  Ralf Angeli  <angeli@caeruleus.net>
 +
 +      * emacs-lisp/package.el (package--generate-package-list): Make the
 +      *Packages* buffer read-only.
 +
 +2010-10-24  Alan Mackenzie  <acm@muc.de>
 +
 +      * progmodes/cc-fonts.el (c-font-lock-declarations): Cache the
 +      result of `c-beginning-of-decl-1' between invocations of a lambda
 +      function (Bug #7265).
 +
 +2010-10-24  Daiki Ueno  <ueno@unixuser.org>
 +
 +      * epg-config.el (epg-gpg-program): Try to use "gpg2" if "gpg"
 +      executable is not available on the system (Bug#7268).
 +
 +2010-10-24  Glenn Morris  <rgm@gnu.org>
 +
 +      * select.el (selection-coding-system, next-selection-coding-system):
 +      Sync doc with C versions.
 +
 +      * w32-vars.el (x-select-enable-clipboard):
 +      * term/x-win.el (x-select-enable-clipboard): Move to common-win.
 +      * term/common-win.el (x-select-enable-clipboard): Move here.
 +
 +      * term/tty-colors.el (tty-defined-color-alist): Remove duplicate
 +      definition of C variable.
 +
 +      * frame.el (show-trailing-whitespace, auto-hscroll-mode)
 +      (display-hourglass, hourglass-delay, cursor-in-non-selected-windows):
 +      Don't redefine things that are defined in C.
 +      * cus-start.el: Also handle :risky, :safe, :set, and :tag.
 +      (show-trailing-whitespace, auto-hscroll-mode)
 +      (display-hourglass, hourglass-delay, cursor-in-non-selected-windows):
 +      Set up the appropriate custom properties.
 +
 +2010-10-24  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      Bind "C-c ]" to ...
 +      * progmodes/f90.el (f90-mode-map): ... f90-insert-end.
 +      * nxml/nxml-mode.el (nxml-mode-map): ... nxml-finish-element.
 +      * textmodes/tex-mode.el (tex-mode-map): ... latex-close-block.
 +      * textmodes/sgml-mode.el (sgml-mode-map): ... sgml-close-tag.
 +
 +2010-10-23  Glenn Morris  <rgm@gnu.org>
 +
 +      * textmodes/flyspell.el (flyspell-mode): If there was an error,
 +      say what it was.
 +
 +      * frame.el (auto-hscroll-mode, cursor-in-non-selected-windows):
 +      Sync docs with C version.
 +
 +      * term/ns-win.el (xw-defined-colors):
 +      * term/x-win.el (xw-defined-colors): Make docs identical to w32-win.
 +
 +      * term/pc-win.el (x-select-enable-clipboard):
 +      * term/x-win.el (x-select-enable-clipboard):
 +      * w32-vars.el (x-select-enable-clipboard): Make doc-strings identical.
 +
 +      * comint.el (comint-password-prompt-regexp): Make it less vague.
 +      Bump version.
 +
 +      * help-fns.el (doc-file-to-man, doc-file-to-info): New commands.
 +
 +      * help.el (finder-by-keyword): Remove unnecessary autoload.
 +
 +2010-10-22  Glenn Morris  <rgm@gnu.org>
 +
 +      * loadup.el: Unconditionally load float-sup.
 +      * paren.el (show-paren-delay):
 +      * emacs-lisp/float-sup.el:
 +      * emulation/cua-base.el (cua-prefix-override-inhibit-delay):
 +      * obsolete/lazy-lock.el (lazy-lock-defer-time, lazy-lock-stealth-nice)
 +      (lazy-lock-stealth-verbose): Assume float support.
 +      * ps-print.el: Assume float support on Emacs.
 +      * emacs-lisp/timer.el (timer-next-integral-multiple-of-time):
 +      Remove non-float branch.
 +
 +      * emacs-lisp/autoload.el (batch-update-autoloads): Update for
 +      src/Makefile no longer being pre-processed.
 +
 +2010-10-22  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * emacs-lisp/find-func.el (find-library): Use test-completion.
 +
 +2010-10-21  Lars Magne Ingebrigtsen  <larsi@gnus.org>
 +
 +      * newcomment.el (comment-dwim): Fix the intentation in the doc string.
 +
 +2010-10-21  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/tramp-sh.el (tramp-do-file-attributes-with-stat): Do not use
 +      space in stat format string.
 +      (tramp-send-command): Unset $PS1 when using here documents, in
 +      order not to get several prompts.
 +      (tramp-get-inline-coding): Return `nil' in case of errors.
 +
 +2010-10-21  Daiki Ueno  <ueno@unixuser.org>
 +
 +      * hexl.el (hexl-mode, hexl-mode-exit):
 +      Tweak revert-buffer-function to inhibit auto-mode-alist (Bug#7252).
 +      (hexl-revert-buffer-function): New function.
 +      (hexl-before-revert-hook, hexl-after-revert-hook): Abolish.
 +
 +2010-10-19  Alan Mackenzie  <acm@muc.de>
 +
 +      * progmodes/cc-langs.el (c-type-decl-prefix-key): C++ bit:
 +      Move "\(const\|throw\|volatile\)\>" nearer the start of the regexp, so
 +      that these keywords aren't wrongly matched as identifiers.
 +
 +      * progmodes/cc-mode.el (c-before-change, c-after-change): Move the
 +      setting of c-new-BEG and c-new-END from c-before-change to
 +      c-after-change.  (Bug#7181)
 +
 +2010-10-19  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * cus-face.el (custom-theme-set-faces): Revert 2010-10-18 change.
 +      Don't mark as safe.
 +
 +      * custom.el (custom-theme-set-variables): Likewise.
 +      (load-theme): Add custom-theme-set-faces and
 +      custom-theme-set-variables to safe-functions while loading.
 +      (custom-enabled-themes): Mark as risky.
 +
 +2010-10-18  Julien Danjou  <julien@danjou.info>
 +
 +      * bindings.el: Remove end dashes in default mode-line-format.
 +
 +2010-10-19  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * bindings.el (global-map): Bind C-d to delete-char and deletechar
 +      to delete-forward-char.
 +
 +      * simple.el (normal-erase-is-backspace-mode): Remap delete to
 +      deletechar, and hence delete-forward-char.
 +
 +2010-10-19  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * repeat.el (repeat): Use read-key (bug#6256).
 +
 +2010-10-19  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * emacs-lisp/unsafep.el: Don't mark functions that display
 +      messages as safe.  Suggested by Johan Bockgård.
 +
 +2010-10-19  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * minibuffer.el (completion--replace): Move point where it belongs
 +      when there's a common suffix (bug#7215).
 +
 +2010-10-19  Kenichi Handa  <handa@m17n.org>
 +
 +      * international/characters.el: Add category '|' (word breakable)
 +      to fullwidth characters.
 +
 +2010-10-19  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/tramp-sh.el (tramp-do-file-attributes-with-stat)
 +      (tramp-do-directory-files-and-attributes-with-stat): Use "e0" in
 +      order to make stat results a float.  Patch by Andreas Schwab
 +      <schwab@linux-m68k.org>.
 +
 +2010-10-18  Julien Danjou  <julien@danjou.info>
 +
 +      * avoid.el (mouse-avoidance-ignore-p): Ignore mouse when it is
 +      hidden by `make-pointer-invisible'.
 +
 +2010-10-18  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * files.el (locate-file-completion-table): Strip non-matching elements
 +      before checking length of list (bug#7238).
 +
 +2010-10-18  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * custom.el (custom-theme-set-variables): Mark as a safe function.
 +      (load-theme): Check forms using unsafep.
 +
 +      * cus-face.el (custom-theme-set-faces): Mark as a safe function.
 +
 +2010-10-17  Agustín Martín  <agustin.martin@hispalinux.es>
 +
 +      * textmodes/ispell.el (ispell-aspell-find-dictionary):
 +      Fix aspell data file searching (bug#7230).
 +
 +2010-10-16  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * cus-theme.el (custom-theme--migrate-settings): New var.
 +      (customize-create-theme): Allow editing the `user' theme.
 +      (custom-theme-add-variable, custom-theme-add-var-1)
 +      (custom-theme-add-face, custom-theme-add-face-1): Add a checkbox
 +      to the front of each variable or face widget.
 +      (custom-theme-write): Save theme settings in the correct order.
 +      Optionally, remove saved settings from user customizations.
 +      (custom-theme-write-variables, custom-theme-write-faces):
 +      Save only the checked widgets.
 +      (customize-themes): Add a link for migrating custom settings.
 +
 +      * custom.el (custom-declare-theme, provide-theme):
 +      Use custom-theme-name-valid-p.
 +      (custom-theme-name-valid-p): Remove checks that are now
 +      unnecessary since themes no longer obey load-path.
 +
 +      * cus-edit.el (custom-variable-value-create): For the simple
 +      style, hide documentation string when hidden.
 +
 +2010-10-16  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * cus-edit.el (custom-variable, custom-face): Combine the
 +      :inhibit-magic and :display-style properties into a single
 +      :custom-style property.
 +      (custom-toggle-hide-variable, custom-toggle-hide-face):
 +      New functions.  If hiding an edited value, save it to :shown-value.
 +      (custom-variable-value-create, custom-face-value-create): Use them.
 +      (custom-magic-reset): Allow magic property to be unset.
 +
 +      * custom.el: Custom themes no longer use load-path.
 +      (custom-theme-load-path): New option.  Change built-in theme
 +      directory to etc/.
 +      (custom-enabled-themes): Add custom-theme-load-path dependency.
 +      (custom-theme--load-path): New function.
 +      (load-theme, custom-available-themes): Use it.
 +
 +      * cus-theme.el (describe-theme-1): Use custom-theme--load-path.
 +      (customize-themes): Link to custom-theme-load-path variable.
 +      (custom-theme-add-var-1, custom-theme-add-face-1): Use the
 +      :custom-style property.
 +
 +      * themes/*.el: Moved to etc/.
 +
 +2010-10-16  Ralf Angeli  <angeli@caeruleus.net>
 +
 +      * textmodes/reftex-cite.el
 +      (reftex-extract-bib-entries-from-thebibliography): Do not move
 +      point when searching for \bibitem entries.  Match entries with
 +      spaces or tabs in front of arguments.
 +
 +2010-10-16  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * cus-theme.el (customize-create-theme): Delete overlays after
 +      erasing.  If given a THEME arg, display only the faces of that arg
 +      instead of custom-theme--listed-faces.
 +      (custom-theme-variable-menu, custom-theme-variable-action)
 +      (custom-variable-reset-theme, custom-theme-delete-variable): Delete.
 +      (custom-theme-add-variable, custom-theme-add-face): Apply value
 +      from the theme settings, instead of the current value.
 +      (custom-theme-add-var-1, custom-theme-add-face-1): New functions.
 +      (custom-theme-visit-theme): Allow calling outside theme buffers.
 +      (custom-theme-merge-theme): Don't enable the theme when merging.
 +      (custom-theme-write-variables, custom-theme-write-faces): Use the
 +      :shown-value properties to save buffer values, not global ones.
 +      (customize-themes): Display a warning about user customizations.
 +
 +      * cus-edit.el (custom-variable-value-create)
 +      (custom-face-value-create): Obey new special properties
 +      :shown-value and :inhibit-magic.
 +
 +2010-10-15  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
 +      Suppress expansion of tabs to spaces.  Reported by Dale Sedivec
 +      <dale@codefu.org>.
 +
 +2010-10-14  Kenichi Handa  <handa@m17n.org>
 +
 +      * mail/rmail.el (rmail-show-message-1): Catch an error of
 +      base64-decode-region and just show an error message (bug#7165).
 +
 +      * ps-mule.el (ps-mule-font-spec-list): Delete it.  Not used anymore.
 +      (ps-mule-begin-job): Fix for the case that only ENCODING is set in
 +      a font-spec (bug#7197).
 +
 +2010-10-14  Glenn Morris  <rgm@gnu.org>
 +
 +      * mail/emacsbug.el (report-emacs-bug): Mention debbugs.gnu.org.
 +
 +2010-10-14  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * international/mule.el (define-coding-system):
 +      * international/titdic-cnv.el (quail-cxterm-package-ext-info):
 +      * composite.el (compose-region): Fix typo in docstring.
 +
 +2010-10-14  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * cus-face.el (custom-theme-set-faces): Call custom-push-theme
 +      only after checking the theme-face property.
 +
 +      * faces.el (face-spec-reset-face): Reset all attributes in one
 +      single call to set-face-attribute.
 +      (face-spec-match-p): Make it a defsubst.
 +      (frame-set-background-mode): New arg KEEP-FACE-SPECS.
 +      (x-create-frame-with-faces, tty-create-frame-with-faces)
 +      (tty-set-up-initial-frame-faces): Don't recompute face specs in
 +      frame-set-background-mode, since they are recomputed immediately
 +      afterwards in face-set-after-frame-default.
 +      (face-set-after-frame-default): Minor optimization.
 +      (cursor): Provide non-trivial defface spec.
 +
 +      * custom.el (custom-theme-recalc-face): Simplify.
 +
 +2010-10-14  Jay Belanger  <jay.p.belanger@gmail.com>
 +
 +      * calc/calc-alg.el (math-var): Rename from `var'.
 +      (math-is-polynomial, math-is-poly-rec): Replace `var'
 +      with `math-var'.
 +
 +      * calc/calcalg2.el (math-var): Rename from `var'.
 +      (calcFunc-table, math-scan-for-limits): Replace `var'
 +      with `math-var'.
 +
 +2010-10-13  Glenn Morris  <rgm@gnu.org>
 +
 +      * subr.el (last): Deal with dotted lists (reported in bug#7174).
 +
 +2010-10-13  Stephen Berman  <stephen.berman@gmx.net>
 +
 +      * subr.el (last): Use `safe-length' instead of `length' (bug#7206).
 +
 +2010-10-13  Lars Magne Ingebrigtsen  <larsi@gnus.org>
 +
 +      * net/tls.el (tls-program): Remove spurious %s from openssl.
 +      (tls-starttls-switches): Remove starttls hack.
 +      (open-tls-stream): Ditto.
 +      (tls-find-starttls-argument): Ditto.
 +
 +2010-10-13  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * image.el (image-library-alist): Declare as obsolete alias.
 +      (image-type-available-p): Use `dynamic-library-alist'.
 +
 +      * term/w32-win.el (dynamic-library-alist):
 +      Use instead of `image-library-alist'.
 +
 +2010-10-13  IRIE Shinsuke  <irieshinsuke@yahoo.co.jp>  (tiny change)
 +
 +      * subr.el (last): Make it faster.  (Bug#7174)
 +
 +2010-10-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>  (tiny change)
 +
 +      * Makefile.in (compile-clean): Use `` instead of $().  (Bug#7178)
 +
 +2010-10-12  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * cus-theme.el (custom-theme--listed-faces): Add cursor face.
 +      (describe-theme-1): Extract doc from unloaded themes.
 +
 +      * custom.el (custom-theme-name-valid-p): Don't list color-themes.
 +
 +      * themes/tango-theme.el:
 +      * themes/tango-dark-theme.el:
 +      * themes/wheatgrass-theme.el: New files.
 +
 +2010-10-12  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * cus-theme.el (describe-theme, customize-themes)
 +      (custom-theme-save): New commands.
 +      (custom-new-theme-mode-map): Bind C-x C-s.
 +      (custom-new-theme-mode): Use custom--initialize-widget-variables.
 +      (customize-create-theme): New optional arg THEME.
 +      (custom-theme-revert): Use it.
 +      (custom-theme-visit-theme): Remove dead code.
 +      (custom-theme-merge-theme): Use custom-available-themes.
 +      (custom-theme-write): Make interactive.
 +      (custom-theme-write): Use custom-theme-name-valid-p.
 +      (describe-theme-1, custom-theme-choose-revert)
 +      (custom-theme-checkbox-toggle, custom-theme-selections-toggle):
 +      New funs.
 +      (custom-theme-allow-multiple-selections): New option.
 +      (custom-theme-choose-mode): New major mode.
 +
 +      * custom.el (custom-theme-set-variables): Remove dead code.
 +      Obey custom--inhibit-theme-enable.
 +      (custom--inhibit-theme-enable): New var.
 +      (provide-theme): Obey it.
 +      (load-theme): Replace load with manual read/eval, in order to
 +      check for correctness.  Use custom-theme-name-valid-p.
 +      (custom-theme-name-valid-p): New function.
 +      (custom-available-themes): Use it.
 +
 +      * cus-edit.el (custom--initialize-widget-variables): New function.
 +      (Custom-mode): Use it.
 +
 +      * cus-face.el (custom-theme-set-faces): Remove dead code.
 +      Obey custom--inhibit-theme-enable.
 +
 +      * help-mode.el (help-theme-def, help-theme-edit): New buttons.
 +
 +2010-10-12  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * net/telnet.el (telnet-mode-map): Fix previous change (bug#7193).
 +
 +2010-10-12  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * term/ns-win.el (ns-right-alternate-modifier): New defvar.
 +      (ns-right-option-modifier): New alias for ns-right-alternate-modifier.
 +      (mac-right-option-modifier): New alias for ns-right-option-modifier.
 +
 +      * cus-start.el (all): ns-right-alternate-modifier is new.
 +
 +2010-10-12  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * emacs-lisp/lisp.el (lisp-completion-at-point):
 +      Use emacs-lisp-mode-syntax-table for the whole function.
 +
 +2010-10-12  David Koppelman  <koppel@ece.lsu.edu>
 +
 +      * hi-lock.el (hi-lock-font-lock-hook): Check font-lock-fontified
 +      instead of font-lock-mode before adding keywords.
 +      Remove hi-lock-mode off code.  Remove inhibit hack.
 +      (hi-lock-set-pattern): Only add keywords if font-lock-fontified
 +      non-nil; removed hook inhibit hack.
 +
 +2010-10-12  Glenn Morris  <rgm@gnu.org>
 +
 +      * emacs-lisp/shadow.el (find-emacs-lisp-shadows): Rename it...
 +      (load-path-shadows-find): ... to this.
 +      (list-load-path-shadows): Update for above change.
 +
 +      * mail/mail-utils.el (mail-mbox-from): Also try return-path.
 +
 +2010-10-11  Katsumi Yamaoka  <yamaoka@jpl.org>
 +
 +      * mail/hashcash.el, net/imap.el, pgg-parse.el, pgg.el:
 +      Fix comment for declare-function.
 +
 +2010-10-11  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * custom.el (custom-fix-face-spec): New function; code moved from
 +      custom-face-edit-fix-value.
 +      (custom-push-theme): Use it when checking if a face has been
 +      changed outside customize.
 +      (custom-available-themes): New function.
 +      (load-theme): Use it.
 +
 +      * cus-edit.el (custom-face-edit-fix-value): Use custom-fix-face-spec.
 +
 +      * custom.el (custom-push-theme): Cleanup (use cond).
 +      (disable-theme): Recompute the saved-face property.
 +      (custom-theme-recalc-face): Follow face alias before setting prop.
 +
 +      * image.el (image-checkbox-checked, image-checkbox-unchecked):
 +      New variables, containing checkbox images.
 +
 +      * startup.el (fancy-startup-tail):
 +      * wid-edit.el (checkbox): Use them.
 +
 +2010-10-10  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * shell.el (shell-mode-map):
 +      * progmodes/modula2.el (m2-mode-map):
 +      * progmodes/inf-lisp.el (inferior-lisp-mode-map):
 +      * play/mpuz.el (mpuz-mode-map):
 +      * play/landmark.el (lm-mode-map):
 +      * play/decipher.el (decipher-mode-map):
 +      * play/5x5.el (5x5-mode-map):
 +      * net/telnet.el (telnet-mode-map):
 +      * net/quickurl.el (quickurl-list-mode-map):
 +      * net/mairix.el (mairix-searches-mode-map):
 +      * net/eudc-hotlist.el (eudc-hotlist-mode-map):
 +      * net/dig.el (dig-mode-map):
 +      * mail/mspools.el (mspools-mode-map):
 +      * hexl.el (hexl-mode-map):
 +      * emulation/ws-mode.el (wordstar-C-k-map, wordstar-mode-map)
 +      (wordstar-C-o-map, wordstar-C-q-map):
 +      * emacs-lisp/edebug.el (edebug-eval-mode-map):
 +      * emacs-lisp/chart.el (chart-map):
 +      * edmacro.el (edmacro-mode-map):
 +      * erc/erc-list.el (erc-list-menu-mode-map):
 +      * array.el (array-mode-map): Declare and define in one step.
 +
 +      * vc/log-view.el (log-view-mode-map): Bind revert-buffer.
 +
 +2010-10-10  Daiki Ueno  <ueno@unixuser.org>
 +
 +      * epa.el (epa-passphrase-callback-function): Display filename
 +      passed as the 3rd arg.
 +      * epa-file.el (epa-file-passphrase-callback-function):
 +      Pass filename to epa-passphrase-callback-function.
 +
 +2010-10-09  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * cus-edit.el (custom-face-widget-to-spec)
 +      (custom-face-get-current-spec, custom-face-state): New functions.
 +      (custom-face-set, custom-face-mark-to-save)
 +      (custom-face-value-create, custom-face-state-set): Use them.
 +
 +      * cus-theme.el (custom-theme--listed-faces): New var.
 +      (customize-create-theme): Use *Custom Theme* as the buffer name.
 +      Set revert-buffer-function.  Optional arg BUFFER.  Insert all
 +      faces listed in custom-theme--listed-faces.
 +      (custom-theme-revert): New function.
 +      (custom-theme-add-variable, custom-theme-add-face): Insert at the
 +      bottom of the list.
 +      (custom-theme-write): Prompt for theme name if empty.
 +      (custom-theme-write-variables): Use dolist.
 +      (custom-theme-write-faces): Handle hidden (collapsed) widgets.
 +
 +2010-10-09  Alan Mackenzie  <acm@muc.de>
 +
 +      Enhance fontification of declarators to take account of the
 +      presence/absence of "typedef".
 +
 +      * cc-engine.el (c-forward-type): New &optional param
 +      "brace-block-too".
 +      (c-forward-decl-or-cast-1): cdr of return value now indicates the
 +      presence of either or both of a "struct"-like keyword and "typedef".
 +
 +      * cc-fonts.el (c-complex-decl-matchers): Remove the heuristic
 +      fontification of declarators which follow a "}".
 +      (c-font-lock-declarations): Fontify declarators according to the
 +      presence/absence of "typedef".
 +
 +      * cc-langs.el (c-typedef-kwds c-typedef-key): New lang variable
 +      for "typedef".
 +      (c-typedef-decl-key): New lang variable built from
 +      c-typedef-decl-kwds.
 +
 +2010-10-09  Lars Magne Ingebrigtsen  <larsi@gnus.org>
 +
 +      * ibuffer.el (ibuffer-mode-map): Don't redefine the cursor keys,
 +      since that's too annoying.  Move the filter groups commands to
 +      TAB/backtab.
 +
 +      * epa.el (epa-passphrase-callback-function): Say what we're
 +      querying the password for.
 +
 +      * ibuffer.el (ibuffer-visit-buffer): To mimick list-buffers
 +      behaviour, don't bury the ibuffer buffer when visiting other buffers.
 +
 +2010-10-08  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * cus-edit.el (custom-commands, custom-buffer-create-internal)
 +      (custom-magic-value-create): Pad button tags with spaces.
 +      (custom-face-edit): New variable.
 +      (custom-face-value-create): Determine whether to use the usual
 +      face editor here, instead of using custom-face-selected.
 +      Pass face defaults to custom-face-edit widget.
 +      (custom-face-selected, custom-display-unselected): Delete widgets.
 +      (custom-display-unselected-match): Function removed.
 +      (custom-face-set, custom-face-mark-to-save):
 +      Accept custom-face-edit widgets as the direct widget child.
 +
 +      * wid-edit.el (widget--completing-widget): New var.
 +      (widget-default-complete): Bind it when doing completion.
 +      (widget-string-complete, widget-file-complete): Use it.
 +
 +2010-10-09  Glenn Morris  <rgm@gnu.org>
 +
 +      * calendar/cal-hebrew.el (holiday-hebrew-rosh-hashanah)
 +      (holiday-hebrew-passover, holiday-hebrew-tisha-b-av)
 +      (holiday-hebrew-misc): Small simplifications.
 +
 +      * emacs-lisp/authors.el (authors-valid-file-names): Add b2m.c.
 +
 +      * net/browse-url.el: Don't require thingatpt, term, dired,
 +      executable, or w3-auto when compiling.
 +      (dired-get-filename, term-char-mode, term-send-down, term-send-string):
 +      Declare.
 +      (browse-url-text-emacs): Require term.
 +
 +2010-10-08  Andreas Schwab  <schwab@linux-m68k.org>
 +
 +      * net/browse-url.el (browse-url-xdg-open): Remove use of /bin/sh.
 +
 +2010-10-08  Glenn Morris  <rgm@gnu.org>
 +
 +      * emacs-lisp/cl-compat.el, emacs-lisp/lmenu.el: Move to obsolete/.
 +
 +      * emacs-lisp/shadow.el (lisp-shadow): Change prefix.
 +      (shadows-compare-text-p): Make it an obsolete alias for...
 +      (load-path-shadows-compare-text): ... new name.
 +      (find-emacs-lisp-shadows): Update for above name change.
 +      (load-path-shadows-same-file-or-nonexistent): New name for the old
 +      shadow-same-file-or-nonexistent.
 +
 +2010-10-08  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * minibuffer.el (completion--some, completion--do-completion)
 +      (minibuffer-complete-and-exit, minibuffer-completion-help)
 +      (completion-basic-try-completion)
 +      (completion-basic-all-completions)
 +      (completion-pcm--find-all-completions): Use lexical-let to
 +      avoid some false matches in variable completion (Bug#7056)
 +
 +2010-10-08  Olof Ohlsson Sax  <olof.ohlsson.sax@gmail.com>  (tiny change)
 +
 +      * vc-svn.el (vc-svn-merge-news): Use --non-interactive.  (Bug#7152)
 +
 +2010-10-08  Leo  <sdl.web@gmail.com>
 +
 +      * dnd.el (dnd-get-local-file-name): If MUST-EXIST is non-nil, only
 +      return non-nil if the file exists (Bug#7090).
 +
 +2010-10-08  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * minibuffer.el (completion--replace):
 +      Better preserve markers (bug#7138).
 +
 +2010-10-08  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * server.el (server-process-filter): Doc fix.
 +
 +2010-10-08  Drew Adams  <drew.adams@oracle.com>
 +
 +      * dired.el (dired-save-positions): Doc fix.  (Bug#7119)
 +
 +2010-10-08  Glenn Morris  <rgm@gnu.org>
 +
 +      * vc/ediff-wind.el (ediff-setup-control-frame):
 +      * vc/ediff-ptch.el (ediff-default-backup-extension):
 +      * vc/ediff-diff.el (ediff-shell, ediff-diff-options)
 +      (ediff-exec-process): Remove system-types emx, windows-95.
 +
 +      * net/browse-url.el (browse-url-xdg-open): Shell-quote url.  (Bug#7166)
 +
 +2010-10-07  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * cus-edit.el (custom-variable, custom-face): Doc fix.
 +      (custom-face-edit): Add value-create attribute.
 +      (custom-face-edit-value-create)
 +      (custom-face-edit-value-visibility-action): New functions.
 +      Hide unused face attributes by default, and add a visibility toggle.
 +      (custom-face-edit-deactivate): Show empty values with shadow face.
 +      (custom-face-selected): Only use this for face specs with default
 +      attributes.
 +      (custom-face-value-create): Cleanup.
 +
 +      * wid-edit.el (widget-checklist-value-create): Use dolist.
 +      (widget-checklist-match-find): Make second arg optional.
 +
 +2010-10-07  Glenn Morris  <rgm@gnu.org>
 +
 +      * hilit-chg.el (hilit-chg-get-diff-info, hilit-chg-get-diff-list-hk):
 +      Prefix things.
 +
 +      * emacs-lisp/shadow.el (shadow-font-lock-keywords)
 +      (load-path-shadows-mode, list-load-path-shadows): Rename shadow-mode to
 +      load-path-shadows-mode, update references.
 +      (load-path-shadows-font-lock-keywords, load-path-shadows-find-file):
 +      Rename variable and button.
 +      (list-load-path-shadows): Update button caller.
 +
 +2010-10-07  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * emacs-lisp/smie.el (smie-bnf-classify): New function.
 +      (smie-bnf-precedence-table): Use it to remember the closers/openers.
 +      (smie-merge-prec2s): Handle those new entries.
 +      (smie-prec2-levels): Only set precedence to nil for actual
 +      openers/closers.
 +      * progmodes/octave-mod.el (octave-smie-op-levels): Remove dummy entry
 +      that is now unnecessary.
 +
 +2010-10-07  Miles Bader  <miles@gnu.org>
 +
 +      * emacs-lisp/regexp-opt.el (regexp-opt): Add `symbols' mode.
 +
 +2010-10-07  Glenn Morris  <rgm@gnu.org>
 +
 +      * mail/rmail.el (mail-sendmail-delimit-header, mail-header-end)
 +      (mail-position-on-field): Remove declarations.
 +      (mail-position-on-field): Autoload it.
 +      (rmail-retry-failure): Replace use of mail-sendmail-delimit-header
 +      and mail-header-end.  Don't require sendmail.
 +
 +      * emacs-lisp/shadow.el (shadow-font-lock-keywords): New variable.
 +      (shadow-mode): New mode.
 +      (shadow-find-file): New button.
 +      (list-load-path-shadows): Use shadow-mode and buttons.
 +
 +      * iimage.el (iimage-version): Remove.
 +      (iimage-mode-image-search-path, iimage-mode-image-regex-alist):
 +      Turn into defcustoms.
 +      (iimage-mode-map): Give it a doc string.
 +
 +      * calendar/appt.el (appt-activate): Give a warning rather than an error
 +      if there is no diary-file.
 +
 +2010-10-06  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/tramp-sh.el (tramp-sh-file-name-handler-alist):
 +      Use `tramp-handle-find-backup-file-name'.
 +
 +2010-10-06  Glenn Morris  <rgm@gnu.org>
 +
 +      * font-core.el (font-lock-defaults-alist): Remove variable.
 +      (font-lock-mode): Doc fix.
 +      (font-lock-default-function): Do not consult font-lock-defaults-alist.
 +      * font-lock.el (font-lock-refresh-defaults): Doc fix.
 +      (font-lock-set-defaults): Doc fix.
 +      Do not consult font-lock-defaults-alist.
 +
 +      * hilit-chg.el (hilit-chg-get-diff-list-hk): Declare `e' for compiler.
 +
 +      * emacs-lisp/cl.el: No longer provide cl-19.
 +
 +2010-10-05  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/tramp.el (tramp-handle-directory-files-and-attributes)
 +      (tramp-handle-file-exists-p, tramp-handle-file-newer-than-file-p):
 +      New defuns, taken from tramp-smb.el.
 +      (tramp-coding-system-change-eol-conversion)
 +      (tramp-set-process-query-on-exit-flag): Remove.
 +
 +      * net/tramp-compat.el (top): Do not check for byte-compiler objects.
 +      (tramp-compat-coding-system-change-eol-conversion)
 +      (tramp-compat-set-process-query-on-exit-flag): New defuns, taken
 +      from tramp.el.
 +
 +      * net/tramp-gvfs.el:
 +      * net/tramp-gw.el: Replace `tramp-set-process-query-on-exit-flag'
 +      by `tramp-compat-set-process-query-on-exit-flag'.
 +
 +      * net/tramp-imap.el (tramp-imap-file-name-handler-alist):
 +      Use `tramp-handle-directory-files-and-attributes',
 +      `tramp-handle-file-exists-p' and
 +      `tramp-handle-file-newer-than-file-p'.
 +      (tramp-imap-handle-file-exists-p)
 +      (tramp-imap-handle-file-executable-p)
 +      (tramp-imap-handle-file-readable-p)
 +      (tramp-imap-handle-directory-files-and-attributes)
 +      (tramp-imap-handle-file-newer-than-file-p): Remove.
 +
 +      * net/tramp-sh.el: Replace `tramp-set-process-query-on-exit-flag'
 +      by `tramp-compat-set-process-query-on-exit-flag' and
 +      `tramp-coding-system-change-eol-conversion' by
 +      `tramp-compat-coding-system-change-eol-conversion'.
 +
 +      * net/tramp-smb.el (tramp-smb-file-name-handler-alist):
 +      Use `tramp-handle-directory-files-and-attributes',
 +      `tramp-handle-file-exists-p' and
 +      `tramp-handle-file-newer-than-file-p'.
 +      (tramp-smb-handle-directory-files-and-attributes)
 +      (tramp-smb-handle-file-exists-p)
 +      (tramp-smb-handle-file-newer-than-file-p): Remove.
 +      (tramp-smb-maybe-open-connection):
 +      Replace `tramp-set-process-query-on-exit-flag' by
 +      `tramp-compat-set-process-query-on-exit-flag'.
 +
 +2010-10-05  Glenn Morris  <rgm@gnu.org>
 +
 +      * obsolete/rnews.el, obsolete/rnewspost.el: Remove files.
 +
 +2010-10-04  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      Continue reorganization of load dependencies.  (Bug#7156)
 +
 +      * net/tramp.el (tramp-handle-file-local-copy-hook)
 +      (tramp-delete-temp-file-function): Move down.
 +      (tramp-exists-file-name-handler): Move up.
 +      (tramp-register-file-name-handlers): Simplify autoload.
 +      (tramp-handle-write-region-hook, tramp-handle-directory-file-name)
 +      (tramp-handle-directory-files, tramp-handle-dired-uncache)
 +      (tramp-handle-file-modes, tramp-handle-file-name-as-directory)
 +      (tramp-handle-file-name-completion)
 +      (tramp-handle-file-name-directory)
 +      (tramp-handle-file-name-nondirectory, tramp-handle-file-regular-p)
 +      (tramp-handle-file-remote-p, tramp-handle-file-symlink-p)
 +      (tramp-handle-find-backup-file-name)
 +      (tramp-handle-insert-file-contents, tramp-handle-load)
 +      (tramp-handle-substitute-in-file-name)
 +      (tramp-handle-unhandled-file-name-directory)
 +      (tramp-mode-string-to-int, tramp-local-host-p)
 +      (tramp-make-tramp-temp-file): Move from tramp-sh.el.
 +
 +      * net/tramp-gvfs.el (top):
 +      * net/tramp-smb.el (top): Do not require 'tramp-sh.
 +
 +      * net/tramp-sh.el (all): Move several objects to tramp.el, see
 +      there.  Rename `tramp-handle-*' to `tramp-sh-handle-*'.
 +
 +2010-10-04  Glenn Morris  <rgm@gnu.org>
 +
 +      * calendar/appt.el (appt-add): Ensure reminders are enabled.
 +      (appt-activate): Give status messages.
 +
 +2010-10-03  Teodor Zlatanov  <tzz@lifelogs.com>
 +
 +      * net/gnutls.el: Improve docs.  Remove starttls and ssl emulation.
 +      Provide only `open-gnutls-stream' (formerly `open-ssl-stream') and
 +      `gnutls-negotiate' (formerly `starttls-negotiate').
 +      Remove trivial wrapper `starttls-open-stream'.
 +
 +2010-10-03  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      Make 'g' (AKA revert-buffer) rerun the VC log, log-incoming and
 +      log-outgoing commands.
 +      * vc/vc.el (vc-log-internal-common): Add a new argument and use it
 +      to create a buffer local revert-buffer-function variable.
 +      (vc-print-log-internal, vc-log-incoming, vc-log-outgoing): Pass a
 +      revert-buffer-function lambda.
 +
 +2010-10-03  Teodor Zlatanov  <tzz@lifelogs.com>
 +
 +      * net/gnutls.el (starttls-negotiate): Use the plist interface to
 +      `gnutls-boot'.  Make TYPE the only required parameter.
 +      Allow TRUSTFILES and KEYFILES to be lists.
 +      (open-ssl-stream): Use it.
 +
 +2010-10-03  Glenn Morris  <rgm@gnu.org>
 +
 +      * subr.el (directory-sep-char): Remove obsolete variable.
 +      * net/tramp-compat.el: Don't mess about with the byte-compiler unless
 +      it is "necessary".
 +
 +      * vc/vc-hooks.el (vc-header-alist): Remove obsolete variable.
 +      * vc/vc.el (vc-static-header-alist): Doc fix.
 +      * vc/vc-cvs.el (vc-cvs-header):
 +      * vc/vc-rcs.el (vc-rcs-header):
 +      * vc/vc-sccs.el (vc-sccs-header):
 +      * vc/vc-svn.el (vc-svn-header): Do not consult vc-header-alist.
 +      * obsolete/vc-mcvs.el (vc-mcvs-header):
 +      * progmodes/cperl-mode.el (cperl-mode): Only set vc-header-alist
 +      on XEmacs.
 +
 +2010-10-03  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * emacs-lisp/bytecomp.el (byte-compile-from-buffer):
 +      Remove obsolete use of binary-overwrite-mode (Bug#7001).
 +
 +2010-10-03  Glenn Morris  <rgm@gnu.org>
 +
 +      * obsolete/x-menu.el: Remove file, obsolete since 21.1
 +
 +      * textmodes/rst.el (rst-font-lock-keywords-function):
 +      Drop Emacs 20 code.
 +
 +      * textmodes/artist.el (artist-replace-char): Drop Emacs 20 code.
 +
 +      * printing.el: Drop Emacs 20 code.
 +
 +      * calendar/appt.el (appt-delete): Don't autoload it (you can't use it
 +      without having used appt.el already).
 +
 +      * subr.el (make-local-hook): Remove function obsolete since 21.1.
 +      * progmodes/cc-mode.el (make-local-hook): Don't do cc-bytecomp stuff.
 +      (c-basic-common-init, c-font-lock-init): Only call make-local-hook on
 +      XEmacs.
 +      * progmodes/cc-styles.el (make-local-hook): Don't do cc-bytecomp stuff.
 +      (c-make-styles-buffer-local): Only call make-local-hook on XEmacs.
 +
 +      * ps-def.el (leading-code-private-22, charset-bytes, charset-id)
 +      (charset-width, find-charset-region, chars-in-region, forward-point)
 +      (encode-coding-string, coding-system-p, ccl-execute-on-string)
 +      (define-ccl-program, multibyte-string-p, string-make-multibyte):
 +      Remove compatibility cruft (none of these are used by ps*.el).
 +
 +2010-10-03  Kevin Rodgers  <kevin.d.rodgers@gmail.com>
 +
 +      * subr.el (booleanp): Return t instead of a list (Bug#7086).
 +
 +2010-10-03  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * server.el (server-process-filter, server-return-error):
 +      Give emacsclient time to shut down after receiving an error string.
 +
 +2010-10-02  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * files.el (remote-file-name-inhibit-cache): New defcustom.
 +
 +      * time.el (display-time-file-nonempty-p):
 +      Use `remote-file-name-inhibit-cache'.
 +
 +      * net/tramp.el (tramp-completion-reread-directory-timeout):
 +      Fix docstring.
 +
 +      * net/tramp-cache.el (tramp-cache-inhibit-cache): Remove.
 +      (tramp-get-file-property): Replace `tramp-cache-inhibit-cache' by
 +      `remote-file-name-inhibit-cache'.  Check also for an integer
 +      value.  Add/increase counter when `tramp-verbose' >= 10.
 +      (tramp-set-file-property): Add/increase counter when
 +      `tramp-verbose' >= 10.
 +
 +      * net/tramp-cmds.el (tramp-cleanup-all-connections)
 +      (tramp-cleanup-all-buffers): Set tramp-autoload cookie.
 +      (tramp-bug): Set tramp-autoload cookie.  Report all interned
 +      tramp-* variables.  Report also `remote-file-name-inhibit-cache'.
 +      (tramp-reporter-dump-variable): Fix docstring.  Mask non-7bit
 +      characters only in strings.
 +
 +      * net/tramp-compat.el (remote-file-name-inhibit-cache): Define due
 +      to backward compatibility.
 +
 +      * net/tramp-sh.el (tramp-handle-verify-visited-file-modtime)
 +      (tramp-handle-file-name-all-completions)
 +      (tramp-handle-vc-registered): Use `remote-file-name-inhibit-cache'.
 +      (tramp-open-connection-setup-interactive-shell):
 +      Call `tramp-cleanup-connection' directly.
 +
 +2010-10-02  Glenn Morris  <rgm@gnu.org>
 +
 +      * emacs-lisp/checkdoc.el (checkdoc-minor-keymap): Remove obsolete alias.
 +
 +      * subr.el (char-bytes): Remove obsolete function.
 +
 +      * isearch.el (isearch-return-char): Remove obsolete function.
 +
 +      * mouse.el: No longer provide mldrag.
 +      (mldrag-drag-mode-line, mldrag-drag-vertical-line):
 +      Remove obsolete aliases.
 +
 +      * comint.el (comint-kill-output): Remove obsolete alias.
 +
 +      * composite.el (decompose-composite-char): Remove obsolete function.
 +      * ps-def.el (decompose-composite-char): Remove unused function.
 +
 +      * iswitchb.el (iswitchb-default-keybindings): Remove obsolete function.
 +
 +      * outline.el (outline-visible): Remove obsolete function.
 +
 +      * term/pc-win.el (x-frob-font-slant, x-frob-font-weight):
 +      * faces.el (internal-find-face, internal-get-face)
 +      (frame-update-faces, frame-update-face-colors)
 +      (x-frob-font-weight, x-frob-font-slant)
 +      (internal-frob-font-weight, internal-frob-font-slant)
 +      (x-make-font-bold, x-make-font-demibold, x-make-font-unbold)
 +      (x-make-font-italic, x-make-font-oblique, x-make-font-unitalic)
 +      (x-make-font-bold-italic): Remove functions and aliases, obsolete
 +      since Emacs 21.1.
 +      * emulation/viper-util.el (viper-get-face):
 +      * obsolete/lucid.el (find-face, get-face): Use facep.
 +      * vc/ediff-init.el (ediff-valid-color-p, ediff-get-face):
 +      Remove unused functions.
 +      * vc/ediff-util.el (ediff-submit-report): Doc fix.
 +
 +      * emacs-lisp/bytecomp.el (byte-compile-file): Use kill-emacs-hook to
 +      delete tempfile if interrupted during compilation.
 +
 +2010-10-01  Lars Magne Ingebrigtsen  <larsi@gnus.org>
 +
 +      * net/tls.el (tls-starttls-switches): Give up on using starttls with
 +      gnutls-cli.
 +      (tls-program): Add --insecure to be consistent with the defaults from
 +      openssl s_client.  Now all three commands are insecure.
 +
 +2010-10-01  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * makefile.w32-in (DEST, TAGS, TAGS-LISP, TAGS-nmake)
 +      (TAGS-LISP-nmake, TAGS-gmake, TAGS-LISP-gmake, TAGS-SH)
 +      (TAGS-LISP-SH, TAGS-CMD, TAGS-LISP-CMD): New targets.
 +
 +2010-10-01  Glenn Morris  <rgm@gnu.org>
 +
 +      * obsolete/sc.el: Remove file.
 +
 +      * files.el (temporary-file-directory): On darwin, also try
 +      DARWIN_USER_TEMP_DIR (see discussion in bug#7135).
 +
 +2010-10-01  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * server.el (server-start): Revert part of 2010-09-30T02:53:26Z!lekktu@gmail.com.
 +      Let's not break compatibility gratuitously, shall we?
 +
 +2010-09-30  Lars Magne Ingebrigtsen  <larsi@gnus.org>
 +
 +      * net/tls.el (tls-starttls-switches): New variable.
 +      (tls-find-starttls-argument): Use it.
 +      (open-tls-stream): Ditto.
 +
 +      * net/netrc.el (netrc-credentials): Return the value of the "default"
 +      entry.
 +      (netrc-machine): Ditto.
 +
 +2010-09-30  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * vc/vc-hooks.el (vc-default-mode-line-string): Doc fix.
 +
 +2010-09-30  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * server.el (server-start): Don't write pid to the authentication file.
 +      (server-create-tty-frame): Don't send pid.
 +      (server-process-filter): Send pid at the start of every connection.
 +
 +2010-09-30  Glenn Morris  <rgm@gnu.org>
 +
 +      * calendar/diary-lib.el (view-diary-entries, list-diary-entries)
 +      (show-all-diary-entries): Remove obsolete function aliases.
 +
 +      * calendar/appt.el (appt-issue-message, appt-visible, appt-msg-window):
 +      Remove options, obsolete since 22.1.
 +      (appt-display-format, appt-display-message):
 +      Remove backwards-compatibility code.
 +      (appt-check): No longer check appt-issue-message.
 +      (appt-make-list): No longer autoload it.  Doc fix.  No longer
 +      activate the package.
 +
 +2010-09-29  Lars Magne Ingebrigtsen  <larsi@gnus.org>
 +
 +      * net/gnutls.el (starttls-negotiate): Loop a lot longer.
 +      (starttls-negotiate): Just call boot, and let the handshake be
 +      triggered from the read loop.
 +
 +2010-09-29  Glenn Morris  <rgm@gnu.org>
 +
 +      * calendar/diary-lib.el (diary-list-entries): Use temp buffers when
 +      not displaying the diary.
 +      (diary-add-to-list): If no buffer-file-name, fall back to diary-file.
 +      * calendar/appt.el (appt-check): No longer need to kill diary.
 +
 +      * calendar/diary-lib.el (diary-list-entries): Move the
 +      "Preparing..." message entirely here.
 +      (diary-simple-display, diary-fancy-display): Move "Preparing..."
 +      messages to diary-list-entries.
 +      (diary-include-other-diary-files): Use LIST-ONLY rather than setting
 +      diary-display-function.
 +
 +      * calendar/diary-lib.el (diary-include-other-diary-files):
 +      Trap some recursive includes.
 +
 +      * calendar/appt.el (appt-activate): Check diary file.
 +
 +2010-09-29  Katsumi Yamaoka  <yamaoka@jpl.org>
 +
 +      * pgg.el (pgg-run-at-time-1): Define it for XEmacs only; fix if/else
 +      construction.
 +
 +      * calendar/time-date.el: No need to require cl for Emacs 21.
 +
 +2010-09-28  Glenn Morris  <rgm@gnu.org>
 +
 +      * calendar/appt.el (appt-check): Minor simplification.
 +
 +2010-09-28  Katsumi Yamaoka  <yamaoka@jpl.org>
 +
 +      * mail/sendmail.el (mail-citation-prefix-regexp): Remove "}" from
 +      citation prefix.
 +
 +2010-09-27  Andreas Schwab  <schwab@linux-m68k.org>
 +
 +      * emacs-lisp/byte-opt.el (byte-optimize-form-code-walker):
 +      Avoid infinite recursion on erroneous lambda form.  (Bug#7114)
 +
 +2010-09-27  Kenichi Handa  <handa@m17n.org>
 +
 +      * tar-mode.el (tar-header-block-tokenize): Decode filenames in
 +      "ustar" format.
 +
 +2010-09-27  Kenichi Handa  <handa@m17n.org>
 +
 +      * international/mule.el (define-coding-system): Docstring fixed.
 +
 +      * international/mule-diag.el (describe-character-set): Use princ
 +      with proper print-length and print-level instead of insert.
 +
 +2010-09-27  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * window.el (walk-windows): Doc fix (bug#7105).
 +
 +2010-09-27  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * emacs-lisp/float-sup.el (e): Remove.
 +
 +2010-09-27  Teodor Zlatanov  <tzz@lifelogs.com>
 +
 +      * net/gnutls.el (gnutls, gnutls-log-level): Add group and custom
 +      variable.
 +      (starttls-negotiate): Use it.
 +
 +2010-09-27  Lars Magne Ingebrigtsen  <larsi@gnus.org>
 +
 +      * net/gnutls.el (starttls-negotiate): Stop looping when we get a t
 +      back.
 +
 +2010-09-26  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * emacs-lisp/pcase.el (pcase-let*, pcase-let): plet -> pcase-let.
 +
 +2010-09-26  Lars Magne Ingebrigtsen  <larsi@gnus.org>
 +
 +      * net/gnutls.el (starttls-negotiate): Avoid the cl.el decf function.
 +
 +      * net/netrc.el (netrc-store-data): New function.
 +
 +2010-09-26  Teodor Zlatanov  <tzz@lifelogs.com>
 +
 +      * net/gnutls.el: GnuTLS glue code to set up a connection.
 +
 +2010-09-25  Julien Danjou  <julien@danjou.info>
 +
 +      * notifications.el: Call dbus-register-signal only if it is bound.
 +
 +2010-09-25  Glenn Morris  <rgm@gnu.org>
 +
 +      * eshell/em-alias.el, eshell/em-banner.el, eshell/em-basic.el:
 +      * eshell/em-cmpl.el, eshell/em-dirs.el, eshell/em-glob.el:
 +      * eshell/em-hist.el, eshell/em-ls.el, eshell/em-pred.el:
 +      * eshell/em-prompt.el, eshell/em-rebind.el, eshell/em-script.el:
 +      * eshell/em-smart.el, eshell/em-term.el, eshell/em-unix.el:
 +      * eshell/esh-cmd.el, eshell/esh-ext.el, eshell/esh-io.el:
 +      * eshell/esh-mode.el, eshell/esh-proc.el, eshell/esh-test.el:
 +      * eshell/esh-util.el, eshell/esh-var.el:
 +      Remove leading `*' from docs of faces and defcustoms.
 +
 +2010-09-25  Ulrich Mueller  <ulm@gentoo.org>
 +
 +      * eshell/em-ls.el (eshell-ls-archive-regexp):
 +      * eshell/esh-util.el (eshell-tar-regexp):
 +      * ibuffer.el (ibuffer-compressed-file-name-regexp):
 +      * info.el (Info-suffix-list):
 +      * international/mule.el (auto-coding-alist):
 +      * woman.el (woman-file-regexp, woman-file-compression-regexp):
 +      * progmodes/etags.el (tags-compression-info-list):
 +      Support xz compression.
 +
 +2010-09-25  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * files.el (get-free-disk-space): Don't assume the "df" output
 +      columns line up (Bug#6995).
 +
 +2010-09-25  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * finder.el (finder-unknown-keywords):
 +      * progmodes/gdb-mi.el (gdb-jsonify-buffer, gdb-running-threads-count):
 +      * progmodes/etags.el (tags-table-including): Fix typos in docstrings.
 +
 +2010-09-25  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * server.el (server-start): Revert part of 2010-08-08 change.  Using
 +      address 127.0.0.1 for local host is now done in Fmake_network_process.
 +
 +2010-09-24  Glenn Morris  <rgm@gnu.org>
 +
 +      * image-mode.el, progmodes/compile.el, progmodes/gud.el:
 +      * progmodes/mixal-mode.el, textmodes/bibtex-style.el:
 +      * textmodes/css-mode.el, textmodes/dns-mode.el:
 +      Move autoloaded auto-mode-alist entries to files.el.
 +      * files.el (auto-mode-alist): Move entries here.
 +
 +2010-09-23  Glenn Morris  <rgm@gnu.org>
 +
 +      * isearch.el (isearch-lazy-highlight-cleanup)
 +      (isearch-lazy-highlight-initial-delay)
 +      (isearch-lazy-highlight-interval)
 +      (isearch-lazy-highlight-max-at-a-time, isearch-lazy-highlight-face):
 +      * net/net-utils.el (ipconfig-program-options):
 +      Move aliases to options before the associated definitions.
 +
 +2010-09-23  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * newcomment.el (comment-normalize-vars): Better test validity of
 +      comment-end-skip.
 +
 +2010-09-23  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * emacs-lisp/float-sup.el (float-pi): New name for `pi'.
 +      (float-e): New name for `e'.
 +      (degrees-to-radians, radians-to-degrees):
 +      * calendar/solar.el (solar-longitude):
 +      * calculator.el (calculator-registers, calculator-funcall):
 +      * textmodes/artist.el (artist-spray-random-points):
 +      * play/bubbles.el (bubbles--initialize-images): Use new names.
 +
 +2010-09-23  Eric M. Ludlam  <zappo@gnu.org>
 +
 +      Update to CEDET 1.0's version of EIEIO.
 +
 +      * emacs-lisp/eieio.el (eieio-specialized-key-to-generic-key):
 +      New function.
 +      (eieio-defmethod, eieio-generic-form, eieio-generic-call): Use it.
 +      (eieio-default-eval-maybe): Eval val instead of unquoting only.
 +      (class-precedence-list): If class is nil, return nil.
 +      (eieio-generic-call): If class of first input arg is nil, don't
 +      look up static methods, and do check for primary methods.
 +      (initialize-instance): See if the default needs to be evaluated
 +      during the constructor.
 +      (eieio-perform-slot-validation-for-default): Don't do the check
 +      for values that will eventually be evaluated.
 +      (eieio-eval-default-p): New function.
 +      (eieio-default-eval-maybe): Use it.
 +
 +2010-09-23  Jan Moringen  <jan.moringen@uni-bielefeld.de>
 +
 +      * emacs-lisp/eieio.el (eieio-defclass): Allow :c3
 +      method-invocation-order.
 +      (eieio-c3-candidate, eieio-c3-merge-lists): New functions.
 +      (eieio-class-precedence-dfs): Compute class precedence list using
 +      dfs algorithm.
 +      (eieio-class-precedence-bfs): Compute class precedence list using
 +      bfs algorithm.
 +      (eieio-class-precedence-c3): Compute class precedence list using
 +      c3 algorithm.
 +      (class-precedence-list): New function.
 +      (eieiomt-method-list, eieiomt-sym-optimize): Use it.
 +      (inconsistent-class-hierarchy): New error symbol.
 +      (call-next-method): Stow the replacement argument list for future
 +      call-next-method invocations.
 +
 +2010-09-23  Glenn Morris  <rgm@gnu.org>
 +
 +      * calendar/appt.el (appt-check): If not displaying the diary,
 +      use (diary 1) to only get the entries we need.
 +      (appt-make-list): Sort diary-list-entries, if we cannot guarantee
 +      that it is in day order.  (Bug#7019)
 +
 +      * calendar/appt.el (appt-check): Rather than showing the diary,
 +      just turn off invisible display, and only if needed.
 +
 +      * calendar/diary-lib.el (diary-list-entries): Doc fix.  (Bug#7019)
 +
 +2010-09-23  Glenn Morris  <rgm@gnu.org>
 +
 +      * emacs-lisp/bytecomp.el (byte-compile-file-form-defvar):
 +      (byte-compile-defvar, byte-compile-cl-warn):
 +      Start warnings with lower-case, like the majority.
 +
 +      * files.el (auto-mode-alist): Add .xa, .xw, .xsw for ld-script-mode.
 +
 +      * files.el (auto-mode-alist): Prefer C-mode for .xs.  (Bug#7071)
 +
 +      * progmodes/ld-script.el (auto-mode-alist): Move to files.el.
 +      * files.el (auto-mode-alist): Move ld-script entries here, further down
 +      the list.
 +
 +      * vc/add-log.el: Don't require timezone when compiling.
 +      (timezone-make-date-sortable): Autoload it.
 +      (change-log-sortable-date-at): Don't require timezone.
 +      Use `ignore-errors'.
 +
 +      * comint.el (comint-use-prompt-regexp-instead-of-fields):
 +      Move alias before definition, so it does not need autoloading.
 +
 +      * emulation/crisp.el, emulation/cua-base.el, emulation/edt.el:
 +      * emulation/pc-select.el, emulation/vip.el, international/iso-ascii.el:
 +      * international/kkc.el, international/ogonek.el, mail/feedmail.el:
 +      * net/browse-url.el, net/eudc-vars.el, net/net-utils.el:
 +      * net/rcompile.el, net/rlogin.el, textmodes/enriched.el:
 +      * textmodes/makeinfo.el, textmodes/page-ext.el, textmodes/picture.el:
 +      * textmodes/refer.el, textmodes/spell.el, textmodes/table.el:
 +      * textmodes/tex-mode.el, textmodes/two-column.el:
 +      Remove leading `*' from docs of defcustoms etc.
 +
 +2010-09-23  Teodor Zlatanov  <tzz@lifelogs.com>
 +
 +      * net/netrc.el (netrc-parse): Remove encrypt.el mentions.
 +
 +2010-09-22  Dan Christensen  <jdc@uwo.ca>
 +
 +      * calendar/time-date.el (date-to-time): Try using parse-time-string
 +      first before using the slower timezone-make-date-arpa-standard.
 +
 +2010-09-22  Katsumi Yamaoka  <yamaoka@jpl.org>
 +
 +      * calendar/time-date.el (format-seconds): Comment fix.
 +
 +2010-09-22  Glenn Morris  <rgm@gnu.org>
 +
 +      * emacs-lisp/package.el (package-menu-mode): `revert-buffer-function'
 +      is not automatically buffer-local.
 +
 +2010-09-21  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * emacs-lisp/smie.el (smie-debug--describe-cycle): Fix typo.
 +      (smie-indent-comment): Be more careful with comment-start-skip.
 +      (smie-indent-comment-close, smie-indent-comment-inside): New funs.
 +      (smie-indent-functions): Use them.
 +
 +2010-09-21  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/ange-ftp.el (ange-ftp-skip-msgs): Add "^504 ..." message.
 +
 +2010-09-21  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * menu-bar.el (menu-bar-set-tool-bar-position): customize-set-variable
 +      tool-bar-position.  Don't modify frame parameters here.
 +      (menu-bar-options-save): Add tool-bar-position.
 +
 +      * tool-bar.el (tool-bar-position): New defcustom (Bug#7049).
 +
 +2010-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * textmodes/reftex-parse.el (reftex-what-macro)
 +      (reftex-context-substring): Let-bind forward-sexp-function to nil
 +      since we don't need/want to treat \begin...\end as a block (bug#7053).
 +
 +      * emacs-lisp/lisp.el (up-list): Don't do nothing silently.
 +
 +      * simple.el (blink-matching-open): Use syntax-class.
 +
 +      * progmodes/pascal.el (pascal-mode): Use define-derived-mode.
 +      Set invisibility spec for pascal's outline mode.
 +      (pascal-outline-change): Clean up calling convention.
 +      (pascal-show-all, pascal-hide-other-defuns): Update callers.
 +
 +      * progmodes/prolog.el (prolog-smie-forward-token)
 +      (prolog-smie-backward-token): New functions.
 +      (prolog-mode-variables): Use them to parse "!," correctly.
 +      Set up smie-blink-matching for ".".
 +
 +      * textmodes/ispell.el (ispell-start, ispell-end): Rename from `start'
 +      and `end'.
 +      (ispell-region, ispell-process-line): Update users.
 +
 +      * textmodes/reftex-parse.el (reftex-what-macro): Don't hardcode
 +      point-min==1.
 +
 +      * textmodes/ispell.el: Fix commenting convention.
 +      (ispell-parse-output): Simplify, use push.
 +      (ispell-region): Use match-string-no-properties.
 +      (ispell-begin-skip-region-regexp): Use mapconcat to simplify.
 +      (ispell-minor-mode): Use define-minor-mode.
 +      (ispell-message): Remove unused var `skip-regexp'.
 +      (ispell-add-per-file-word-list): Use dynamic let-binding.
 +      Try and use the proper comment marker.
 +
 +      * mail/sendmail.el: Fix commenting convention.
 +      (sendmail-send-it): Use line-beginning-position.
 +
 +      * help-fns.el (describe-variable): Add original value, if applicable.
 +
 +2010-09-20  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * subr.el (y-or-n-p): Remove leftover code from 2010-09-17T13:30:30Z!monnier@iro.umontreal.ca.
 +
 +      * emacs-lisp/smie.el (smie-indent--hanging-p): Use `smie-indent--bolp'.
 +
 +2010-09-19  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * emacs-lisp/smie.el (smie-bnf-precedence-table): Improve error message.
 +      (smie-debug--prec2-cycle, smie-debug--describe-cycle): New functions.
 +      (smie-prec2-levels): Use them to better diagnose precedence cycles.
 +      (smie-blink-matching-check): Don't signal a mismatch if car is t.
 +      (smie-blink-matching-open): Rewrite to remove assumptions, so that
 +      something like "." can also be a closer.
 +      (smie--associative-p, smie-indent--hanging-p, smie-indent--bolp)
 +      (smie-indent--offset, smie-indent--offset-rule, smie-indent--column):
 +      Rename internal functions to use "--".  Update callers.
 +
 +      * frame.el (make-frame-names-alist): Don't list frames on other displays.
 +
 +      * fringe.el (fringe-styles): New var.
 +      (fringe-mode, fringe-query-style): Use it.
 +
 +2010-09-18  Michael R. Mauger  <mmaug@yahoo.com>
 +
 +      * progmodes/sql.el: Version 2.8
 +      (sql-login-params): Update widget structure; changes still needed.
 +      (sql-product-alist): Add :list-all and :list-table features for
 +      SQLite, Postgres and MySQL products.
 +      (sql-redirect): Handle default value.
 +      (sql-execute, sql-execute-feature): New functions.
 +      (sql-read-table-name): New function.
 +      (sql-list-all, sql-list-table): New functions.  User API.
 +      (sql-mode-map, sql-interactive-mode-map): Add key definitions
 +      for above functions.
 +      (sql-mode-menu, sql-interactive-mode-menu): Add menu definitions
 +      for above functions.
 +      (sql-postgres-login-params): Add user and database defaults.
 +      (sql-buffer-live-p): Bug fix.
 +      (sql-product-history): New variable.
 +      (sql-read-product): New function. Use it.
 +      (sql-set-product, sql-product-interactive): Use it.
 +      (sql-connection-history): New variable.
 +      (sql-read-connection): New function.  Use it.
 +      (sql-connect): New function.
 +      (sql-for-each-login): Redesign function interface.
 +      (sql-make-alternate-buffer-name, sql-save-connection): Use it.
 +      (sql-get-login-ext, sql-get-login): Use it.  Handle default values.
 +      (sql-comint): Check for program.  Existing live buffer.
 +      (sql-comint-postgres): Add port parameter.
 +
 +2010-09-19  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * emacs-lisp/warnings.el: Fix commenting convention.
 +      (display-warning): Use special mode and make the buffer read-only.
 +
 +2010-09-18  Jay Belanger  <jay.p.belanger@gmail.com>
 +
 +      * calc/calc-prog.el (calc-read-parse-table-part): Don't "fix" the
 +      empty string when it follows a repeated or optional pattern.
 +
 +2010-09-18  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * indent.el (indent-according-to-mode): Apply syntax-propertize.
 +      (indent-region): Use indent-according-to-mode.
 +
 +2010-09-18  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * fringe.el (fringe-mode): Doc fix.
 +
 +2010-09-14  Kan-Ru Chen  <kanru@kanru.info>  (tiny change)
 +
 +      * textmodes/nroff-mode.el (nroff-view): Kill old buffer before
 +      refreshing the preview buffer.
 +
 +2010-09-18  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * textmodes/tex-mode.el (tex-syntax-propertize-rules)
 +      (latex-syntax-propertize-rules): New consts; replace
 +      tex-font-lock-syntactic-keywords.
 +      (tex-env-mark, latex-env-before-change): New functions.
 +      (latex-electric-env-pair-mode): New minor mode.
 +      (tex-font-lock-verb): Change arguments; do move point.
 +      (tex-font-lock-syntactic-face-function): Adjust to new verbatim
 +      representation as a form of comment.
 +      (tex-font-lock-keywords-1): Remove workaround, now unneeded.
 +      (doctex-syntax-propertize-rules): New const; replaces
 +      doctex-font-lock-syntactic-keywords.
 +      (tex-common-initialization, doctex-mode): Use syntax-propertize-rules.
 +
 +      * progmodes/fortran.el (fortran--font-lock-syntactic-keywords): Remove.
 +      (fortran-make-syntax-propertize-function): New function; replaces
 +      fortran-font-lock-syntactic-keywords.
 +      (fortran-mode): Use it.
 +      (fortran-line-length): Use it.  Improve interactive spec.
 +
 +      * emacs-lisp/syntax.el (syntax-propertize-precompile-rules): New macro.
 +      (syntax-propertize-rules): Add var-ref case.  Fix offset computation
 +      when adding surrounding \(..\).
 +
 +      * progmodes/js.el (js-mode): Fix last change (bug#7054).
 +
 +2010-09-17  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * obsolete/old-whitespace.el (whitespace-rescan-files-in-buffers):
 +      Use with-current-buffer.
 +
 +      * isearch.el (isearch-face): Rename from `isearch'.
 +      (isearch-highlight): Use new name.
 +
 +2010-09-17  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * fringe.el (fringe-mode, fringe-query-style): Use 4 pixels, not
 +      5, for `half' width fringes.  (Bug#6933)
 +
 +2010-09-17  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * emacs-lisp/bytecomp.el (byte-compile-file-form-defvar)
 +      (byte-compile-defvar): "foo/bar" does not lack a prefix.
 +
 +      * subr.el (y-or-n-p): Add the "(y or n)" that was lost somehow.
 +
 +2010-09-17  Stephen Berman  <stephen.berman@gmx.net>
 +
 +      * dframe.el (dframe-reposition-frame-emacs): Use tool-bar-pixel-width
 +      in calculating new frame position.  Add more space between new and
 +      parent on the left (Bug#7048).
 +
 +2010-09-17  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/tramp-compat.el (tramp-compat-with-temp-message): Make it a
 +      defmacro.
 +
 +2010-09-16  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * mail/sendmail.el: Add "*unsent mail*" to same-window-buffer-names.
 +
 +      * term/x-win.el (x-cut-buffer-or-selection-value): Define as
 +      obsolete alias for x-selection-value.
 +
 +      * ido.el (ido-make-buffer-list): Fix error in 2010-08-22 merge.
 +
 +2010-09-16  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/tramp-cmds.el (tramp-cleanup-connection): Set tramp-autoload
 +      cookie.
 +
 +2010-09-15  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/tramp-compat.el (tramp-compat-with-temp-message)
 +      (tramp-compat-font-lock-add-keywords, tramp-compat-process-get)
 +      (tramp-compat-process-put): New defuns.
 +
 +      * net/tramp.el (top):
 +      * net/tramp-gvfs.el (top):
 +      * net/tramp-cache.el (top): Use `tramp-compat-font-lock-add-keywords'.
 +
 +      * net/tramp.el (tramp-progress-reporter-update):
 +      Use `tramp-compat-funcall'.
 +
 +      * net/tramp.el (tramp-process-actions):
 +      * net/tramp-gvfs.el (tramp-handle-vc-registered):
 +      * net/tramp-sh.el (tramp-gvfs-handler-askquestion)
 +      (tramp-get-remote-stat, tramp-get-remote-readlink):
 +      Use `tramp-compat-with-temp-message'.
 +
 +      * net/tramp-sh.el (top): Require 'cl.
 +      (tramp-handle-start-file-process): Use `tramp-compat-process-get'.
 +      (tramp-open-connection-setup-interactive-shell):
 +      Use `tramp-compat-process-put'.
 +
 +2010-09-15  Alan Mackenzie  <acm@muc.de>
 +
 +      * progmodes/cc-engine.el (c-forward-<>-arglist-recur): Correct the
 +      indentation.
 +      (c-forward-<>-arglist-recur): Fix an infinite recursion.
 +
 +2010-09-15  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * emacs-lisp/bytecomp.el (byte-compile-warning-types): New type
 +      `lexical' for warnings related to lexical scoping.
 +      (byte-compile-file-form-defvar, byte-compile-defvar): Warn about
 +      global vars which don't have a prefix and could hence affect lexical
 +      scoping in unrelated files.
 +
 +2010-09-14  Lars Magne Ingebrigtsen  <larsi@gnus.org>
 +
 +      * net/imap.el: Revert back to version
 +      cb950ed8ff3e0f40dac437a51b269166f9ffb60d, since some of the changes
 +      seem problematic.
 +
 +2010-09-14  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * obsolete/old-whitespace.el (whitespace-unload-function):
 +      Explicitly pass `obarray' to `unintern' to avoid a warning.
 +
 +2010-09-14  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * emacs-lisp/byte-run.el (set-advertised-calling-convention):
 +      Add `when' argument.  Update callers.
 +
 +      * subr.el (unintern): Declare the obarray arg mandatory.
 +
 +2010-09-14  Glenn Morris  <rgm@gnu.org>
 +
 +      * calendar/diary-lib.el (diary-list-entries-hook, diary-sort-entries):
 +      Doc fixes.
 +
 +      * calendar/diary-lib.el (diary-included-files): New variable.
 +      (diary-list-entries): Maybe initialize diary-included-files.
 +      (diary-include-other-diary-files): Append to diary-included-files.
 +      * calendar/appt.el (appt-update-list): Also check the members of
 +      diary-included-files.  (Bug#6999)
 +      (appt-check): Doc fix.
 +
 +2010-09-14  David Reitter  <david.reitter@gmail.com>
 +
 +      * simple.el (line-move-visual): Do not truncate goal column to
 +      integer size.  (Bug#7020)
 +
 +2010-09-14  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * repeat.el (repeat): Allow repeating when the last event is a click.
 +      Suggested by Drew Adams (bug#6256).
 +
 +2010-09-14  Sascha Wilde  <wilde@sha-bang.de>
 +
 +      * vc/vc-hg.el (vc-hg-state,vc-hg-working-revision):
 +      Replace setting HGRCPATH to "" by some less invasive --config options.
 +
 +2010-09-14  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * font-lock.el (font-lock-beginning-of-syntax-function):
 +      Mark as obsolete.
 +
 +2010-09-14  Glenn Morris  <rgm@gnu.org>
 +
 +      * menu-bar.el (menu-bar-options-save): Fix handling of menu-bar
 +      and tool-bar modes.  (Bug#6211)
 +      (menu-bar-mode): Move setting of standard-value after the
 +      minor-mode definition, otherwise it seems to have no effect.
 +
 +2010-09-14  Masatake YAMATO  <yamato@redhat.com>
 +
 +      * progmodes/antlr-mode.el (antlr-font-lock-additional-keywords):
 +      Fix typo.  (Bug#6976)
 +
 +2010-09-14  Vinicius Jose Latorre  <viniciusjl@ig.com.br>
 +
 +      * whitespace.el: Allow cleaning up blanks without blank
 +      visualization (Bug#6651).  Adjust help window for
 +      whitespace-toggle-options (Bug#6479).  Allow to use fill-column
 +      instead of whitespace-line-column (from EmacsWiki).  New version 13.1.
 +      (whitespace-style): Add new value 'face.  Adjust docstring.
 +      (whitespace-space, whitespace-hspace, whitespace-tab):
 +      Adjust foreground property face.
 +      (whitespace-line-column): Adjust docstring and type declaration.
 +      (whitespace-style-value-list, whitespace-toggle-option-alist)
 +      (whitespace-help-text): Adjust const initialization.
 +      (whitespace-toggle-options, global-whitespace-toggle-options):
 +      Adjust docstring.
 +      (whitespace-display-window, whitespace-interactive-char)
 +      (whitespace-style-face-p, whitespace-color-on): Adjust code.
 +      (whitespace-help-scroll): New fun.
 +
 +2010-09-14  Katsumi Yamaoka  <yamaoka@jpl.org>
 +
 +      * calendar/time-date.el (format-seconds): Comment fix.
 +
 +2010-09-13  Michael R. Mauger  <mmaug@yahoo.com>
 +
 +      * progmodes/sql.el: Version 2.7.
 +      (sql-buffer-live-p): Improve detection.
 +      (sql-find-sqli-buffer, sql-set-sqli-buffer-generally)
 +      (sql-set-sqli-buffer): Use it.
 +      (sql-product-interactive): Run `sql-set-sqli-hook'.
 +      (sql-rename-buffer): Code cleanup.
 +      (sql-redirect, sql-redirect-value): New functions.  More to come.
 +
 +2010-09-13  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      Port tramp-related Makefile changes of 2010-09-08T14:42:54Z!michael.albinus@gmx.de, 2010-09-13T15:17:01Z!michael.albinus@gmx.de to Windows.
 +      * makefile.w32-in (LOADDEFS): Add $(lisp)/net/tramp-loaddefs.el.
 +      (TRAMP_SRC): New macro.
 +      ($(lisp)/net/tramp-loaddefs.el): New target.
 +
 +2010-09-13  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      Major code cleanup.  Split tramp.el into tramp.el and tramp-sh.el.
 +
 +      * Makefile.in (TRAMP_SRC): Remove tramp-fish.el.  Add tramp-sh.el.
 +
 +      * net/tramp.el (top): Don't show loading message.  Require just
 +      'tramp-compat, everything else is required there.
 +      Use `ignore-errors' where appropriate.
 +      (tramp-inline-compress-start-size, tramp-copy-size-limit)
 +      (tramp-terminal-type, tramp-end-of-output)
 +      (tramp-initial-end-of-output, tramp-completion-function-alist-rsh)
 +      (tramp-completion-function-alist-ssh)
 +      (tramp-completion-function-alist-telnet)
 +      (tramp-completion-function-alist-su)
 +      (tramp-completion-function-alist-putty, tramp-remote-path)
 +      (tramp-remote-process-environment, tramp-sh-extra-args)
 +      (tramp-actions-before-shell, tramp-uudecode)
 +      (tramp-perl-file-truename, tramp-perl-file-name-all-completions)
 +      (tramp-perl-file-attributes)
 +      (tramp-perl-directory-files-and-attributes)
 +      (tramp-perl-encode-with-module, tramp-perl-decode-with-module)
 +      (tramp-perl-encode, tramp-perl-decode)
 +      (tramp-vc-registered-read-file-names, tramp-file-mode-type-map)
 +      (tramp-file-name-handler-alist, tramp-make-tramp-temp-file)
 +      (tramp-handle-make-symbolic-link, tramp-handle-load)
 +      (tramp-handle-file-name-as-directory)
 +      (tramp-handle-file-name-directory)
 +      (tramp-handle-file-name-nondirectory, tramp-handle-file-truename)
 +      (tramp-handle-file-exists-p, tramp-handle-file-attributes)
 +      (tramp-do-file-attributes-with-ls)
 +      (tramp-do-file-attributes-with-perl)
 +      (tramp-do-file-attributes-with-stat)
 +      (tramp-handle-set-visited-file-modtime)
 +      (tramp-handle-verify-visited-file-modtime)
 +      (tramp-handle-set-file-modes, tramp-handle-set-file-times)
 +      (tramp-set-file-uid-gid, tramp-remote-selinux-p)
 +      (tramp-handle-file-selinux-context)
 +      (tramp-handle-set-file-selinux-context)
 +      (tramp-handle-file-executable-p, tramp-handle-file-readable-p)
 +      (tramp-handle-file-newer-than-file-p, tramp-handle-file-modes)
 +      (tramp-handle-file-directory-p, tramp-handle-file-regular-p)
 +      (tramp-handle-file-symlink-p, tramp-handle-file-writable-p)
 +      (tramp-handle-file-ownership-preserved-p)
 +      (tramp-handle-directory-file-name, tramp-handle-directory-files)
 +      (tramp-handle-directory-files-and-attributes)
 +      (tramp-do-directory-files-and-attributes-with-perl)
 +      (tramp-do-directory-files-and-attributes-with-stat)
 +      (tramp-handle-file-name-all-completions)
 +      (tramp-handle-file-name-completion, tramp-handle-add-name-to-file)
 +      (tramp-handle-copy-file, tramp-handle-copy-directory)
 +      (tramp-handle-rename-file, tramp-do-copy-or-rename-file)
 +      (tramp-do-copy-or-rename-file-via-buffer)
 +      (tramp-do-copy-or-rename-file-directly)
 +      (tramp-do-copy-or-rename-file-out-of-band)
 +      (tramp-handle-make-directory, tramp-handle-delete-directory)
 +      (tramp-handle-delete-file)
 +      (tramp-handle-dired-recursive-delete-directory)
 +      (tramp-handle-dired-compress-file, tramp-handle-dired-uncache)
 +      (tramp-handle-insert-directory)
 +      (tramp-handle-unhandled-file-name-directory)
 +      (tramp-handle-expand-file-name)
 +      (tramp-handle-substitute-in-file-name)
 +      (tramp-handle-executable-find, tramp-process-sentinel)
 +      (tramp-handle-start-file-process, tramp-handle-process-file)
 +      (tramp-handle-call-process-region, tramp-handle-shell-command)
 +      (tramp-handle-file-local-copy, tramp-handle-file-remote-p)
 +      (tramp-handle-insert-file-contents)
 +      (tramp-handle-insert-file-contents-literally)
 +      (tramp-handle-find-backup-file-name)
 +      (tramp-handle-make-auto-save-file-name, tramp-handle-write-region)
 +      (tramp-vc-registered-file-names, tramp-handle-vc-registered)
 +      (tramp-sh-file-name-handler, tramp-vc-file-name-handler)
 +      (tramp-maybe-send-script, tramp-set-auto-save, tramp-run-test)
 +      (tramp-run-test2, tramp-find-executable, tramp-set-remote-path)
 +      (tramp-find-file-exists-command, tramp-open-shell)
 +      (tramp-find-shell, tramp-barf-if-no-shell-prompt)
 +      (tramp-open-connection-setup-interactive-shell)
 +      (tramp-local-coding-commands, tramp-remote-coding-commands)
 +      (tramp-find-inline-encoding, tramp-call-local-coding-command)
 +      (tramp-inline-compress-commands, tramp-find-inline-compress)
 +      (tramp-compute-multi-hops, tramp-maybe-open-connection)
 +      (tramp-send-command, tramp-wait-for-output)
 +      (tramp-send-command-and-check, tramp-barf-unless-okay)
 +      (tramp-send-command-and-read, tramp-mode-string-to-int)
 +      (tramp-convert-file-attributes, tramp-check-cached-permissions)
 +      (tramp-file-mode-from-int, tramp-file-mode-permissions)
 +      (tramp-shell-case-fold, tramp-make-copy-program-file-name)
 +      (tramp-method-out-of-band-p, tramp-local-host-p)
 +      (tramp-get-remote-path, tramp-get-remote-tmpdir)
 +      (tramp-get-ls-command, tramp-get-ls-command-with-dired)
 +      (tramp-get-test-command, tramp-get-test-nt-command)
 +      (tramp-get-file-exists-command, tramp-get-remote-ln)
 +      (tramp-get-remote-perl, tramp-get-remote-stat)
 +      (tramp-get-remote-readlink, tramp-get-remote-trash)
 +      (tramp-get-remote-id, tramp-get-remote-uid, tramp-get-remote-gid)
 +      (tramp-get-local-uid, tramp-get-local-gid)
 +      (tramp-get-inline-compress, tramp-get-inline-coding): Move to
 +      tramp-sh.el.
 +      (tramp-methods, tramp-default-method-alist)
 +      (tramp-default-user-alist, tramp-foreign-file-name-handler-alist):
 +      Move initialization to tramp-sh.el.
 +      (tramp-temp-name-prefix): Make it a defconst.
 +      (tramp-dissect-file-name): Don't check anymore for multi-hop
 +      methods.
 +      (tramp-debug-outline-regexp): Add a docstring.
 +      (tramp-debug-outline-level): Rename from `tramp-outline-level'.
 +      (tramp-get-debug-buffer): Use it.
 +
 +      * net/tramp-cache.el (top): Set tramp-autoload cookie for
 +      initialization forms.
 +      (tramp-set-connection-property): Don't protect `tramp-message'
 +      call, it isn't necessary any longer.
 +      (tramp-dump-connection-properties): Use `ignore-errors'.
 +
 +      * net/tramp-compat.el (top): Require 'advice, 'format-spec,
 +      'password-cache and 'auth-source.
 +
 +      * net/tramp-gvfs.el (top):
 +      * net/tramp-smb.el (top): Require 'tramp-sh.
 +
 +      * net/tramp-gw.el (tramp-gw-open-network-stream): Use `ignore-errors'.
 +
 +      * net/tramp-sh.el: New file, derived from tramp.el.
 +      (top): Initialize `tramp-methods', `tramp-default-method-alist',
 +      `tramp-default-user-alist', `tramp-foreign-file-name-handler-alist'.
 +      Remove "scp1_old", "scp2_old", "ssh1_old", "ssh2_old".
 +      Use `ignore-errors' where appropriate.
 +      (tramp-sh-file-name-handler-alist): Rename from
 +      `tramp-file-name-handler-alist'.
 +      (tramp-send-command-and-check): Return t or nil.  Remove all
 +      `zerop' checks, where called.
 +      (tramp-handle-set-file-modes)
 +      (tramp-do-copy-or-rename-file-directly)
 +      (tramp-handle-delete-directory, tramp-handle-delete-file)
 +      (tramp-maybe-send-script): Use `tramp-barf-unless-okay'.
 +      (tramp-sh-file-name-handler, tramp-send-command-and-check)
 +      (tramp-get-remote-ln): Set tramp-autoload cookie.
 +
 +      * net/tramp-fish.el: Remove file.
 +
 +2010-09-13  Daiki Ueno  <ueno@unixuser.org>
 +
 +      * epa-file.el (epa-file-insert-file-contents): If visiting, bind
 +      buffer-file-name to avoid file-locking.  (Bug#7026)
 +
 +2010-09-13  Julien Danjou  <julien@danjou.info>
 +
 +      * notifications.el (notifications-notify): Add support for
 +      image-path and sound-name.
 +      (notifications-specification-version): Add this variable.
 +
 +2010-09-12  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * subr.el (y-or-n-p): New function, moved from src/fns.c; use read-key.
 +
 +2010-09-12  Leo  <sdl.web@gmail.com>
 +
 +      * net/rcirc.el (rcirc-server-commands, rcirc-client-commands)
 +      (rcirc-completion-start): New variables.
 +      (rcirc-nick-completions): Rename to rcirc-completions.
 +      (rcirc-nick-completion-start-offset): Delete.
 +      (rcirc-completion-at-point): New function for constructing
 +      completion data for both nicks and irc commands.  Add to
 +      completion-at-point-functions in rcirc mode.
 +      (rcirc-complete): Rename from rcirc-nick-complete; use
 +      rcirc-completion-at-point.
 +      (defun-rcirc-command): Update rcirc-client-commands.
 +
 +2010-09-11  Glenn Morris  <rgm@gnu.org>
 +
 +      * emacs-lisp/bytecomp.el (byte-compile-file): Create .elc files
 +      atomically, to avoid parallel build errors.  (Bug#4196)
 +
 +2010-09-11  Michael R. Mauger  <mmaug@yahoo.com>
 +
 +      * progmodes/sql.el: Version 2.6
 +      (sql-dialect): Synonym for "sql-product".
 +      (sql-find-sqli-buffer, sql-set-sqli-buffer-generally)
 +      (sql-set-sqli-buffer, sql-show-sqli-buffer, sql-interactive-mode):
 +      Set "sql-buffer" to buffer name not buffer object so multiple sql
 +      interactive buffers work properly.  Reverts misguided changes in
 +      earlier work.
 +      (sql-comint): Make sure different buffer name is used if "*SQL*"
 +      buffer is for a different product.
 +      (sql-make-alternate-buffer-name): Fix bug with "sql-database"
 +      login param.
 +      (sql-oracle, sql-sybase, sql-informix, sql-sqlite, sql-mysql)
 +      (sql-solid, sql-ingres, sql-ms, sql-postgres, sql-interbase)
 +      (sql-db2, sql-linter, sql-product-interactive, sql-rename-buffer):
 +      Accept new buffer name or prompt for one.
 +      (sql-port): Default to zero.
 +      (sql-comint-mysql): Handle "sql-port" as a numeric.
 +      (sql-port-history): Delete unused variable.
 +      (sql-get-login): Default "sql-port" to a number.
 +      (sql-product-alist): Correct Postgres prompt and terminator regexp.
 +      (sql-sqlite-program): Dynamically detect presence of "sqlite" or
 +      "sqlite3" executables.
 +      (sql-sqlite-login-params): Add "*.sqlite[23]?" database name pattern.
 +      (sql-buffer-live-p): New function.
 +      (sql-mode-menu, sql-send-string): Use it.
 +      (sql-mode-oracle-font-lock-keywords): Improve SQL*Plus REMARK
 +      syntax pattern.
 +      (sql-mode-postgres-font-lock-keywords): Support Postgres V9.
 +      (sql-mode-sqlite-font-lock-keywords): Hilight sqlite commands.
 +
 +2010-09-10  Lars Magne Ingebrigtsen  <larsi@gnus.org>
 +
 +      * net/netrc.el (netrc-credentials): New convenience function.
 +
 +2010-09-10  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * textmodes/texinfo.el (texinfo-syntax-propertize-function): New fun
 +      to replace texinfo-font-lock-syntactic-keywords.
 +      (texinfo-mode): Use it.
 +
 +      * textmodes/tex-mode.el (tex-common-initialization, doctex-mode):
 +      Use syntax-propertize-function.
 +
 +      * textmodes/sgml-mode.el (sgml-syntax-propertize-function): New var to
 +      replace sgml-font-lock-syntactic-keywords.
 +      (sgml-mode): Use it.
 +
 +      * textmodes/reftex.el (font-lock-syntactic-keywords): Don't declare
 +      since we don't use it.
 +
 +      * textmodes/bibtex.el (bibtex-mode): Use syntax-propertize-function.
 +
 +      * progmodes/vhdl-mode.el (vhdl-mode): Use syntax-propertize-function
 +      if available.
 +      (vhdl-fontify-buffer): Adjust.
 +
 +      * progmodes/tcl.el (tcl-syntax-propertize-function): New var to
 +      replace tcl-font-lock-syntactic-keywords.
 +      (tcl-mode): Use it.
 +
 +      * progmodes/simula.el (simula-syntax-propertize-function): New var to
 +      replace simula-font-lock-syntactic-keywords.
 +      (simula-mode): Use it.
 +
 +      * progmodes/sh-script.el (sh-st-symbol): Remove.
 +      (sh-font-lock-close-heredoc, sh-font-lock-open-heredoc): Add eol arg.
 +      (sh-font-lock-flush-syntax-ppss-cache, sh-font-lock-here-doc): Remove.
 +      (sh-font-lock-quoted-subshell): Assume we've already matched $(.
 +      (sh-font-lock-paren): Set syntax-multiline.
 +      (sh-font-lock-syntactic-keywords): Remove.
 +      (sh-syntax-propertize-function): New function to replace it.
 +      (sh-mode): Use it.
 +
 +      * progmodes/ruby-mode.el (ruby-here-doc-beg-re):
 +      Define while compiling.
 +      (ruby-here-doc-end-re, ruby-here-doc-beg-match)
 +      (ruby-font-lock-syntactic-keywords, ruby-comment-beg-syntax)
 +      (syntax-ppss, ruby-in-ppss-context-p, ruby-in-here-doc-p)
 +      (ruby-here-doc-find-end, ruby-here-doc-beg-syntax)
 +      (ruby-here-doc-end-syntax): Only define when
 +      syntax-propertize is not available.
 +      (ruby-syntax-propertize-function, ruby-syntax-propertize-heredoc):
 +      New functions.
 +      (ruby-in-ppss-context-p): Update to new syntax of heredocs.
 +      (electric-indent-chars): Silence bytecompiler.
 +      (ruby-mode): Use prog-mode, syntax-propertize-function, and
 +      electric-indent-chars.
 +
 +      * progmodes/python.el (python-syntax-propertize-function): New var to
 +      replace python-font-lock-syntactic-keywords.
 +      (python-mode): Use it.
 +      (python-quote-syntax): Simplify and adjust to new use.
 +
 +      * progmodes/perl-mode.el (perl-syntax-propertize-function): New fun to
 +      replace perl-font-lock-syntactic-keywords.
 +      (perl-syntax-propertize-special-constructs): New fun to replace
 +      perl-font-lock-special-syntactic-constructs.
 +      (perl-font-lock-syntactic-face-function): New fun.
 +      (perl-mode): Use it.
 +
 +      * progmodes/octave-mod.el (octave-syntax-propertize-sqs): New function
 +      to replace octave-font-lock-close-quotes.
 +      (octave-syntax-propertize-function): New function to replace
 +      octave-font-lock-syntactic-keywords.
 +      (octave-mode): Use it.
 +
 +      * progmodes/mixal-mode.el (mixal-syntax-propertize-function): New var;
 +      replaces mixal-font-lock-syntactic-keywords.
 +      (mixal-mode): Use it.
 +
 +      * progmodes/make-mode.el (makefile-syntax-propertize-function):
 +      New var; replaces makefile-font-lock-syntactic-keywords.
 +      (makefile-mode): Use it.
 +      (makefile-imake-mode): Adjust.
 +
 +      * progmodes/js.el (js--regexp-literal): Define while compiling.
 +      (js-syntax-propertize-function): New var; replaces
 +      js-font-lock-syntactic-keywords.
 +      (js-mode): Use it.
 +
 +      * progmodes/gud.el (gdb-script-syntax-propertize-function): New var;
 +      replaces gdb-script-font-lock-syntactic-keywords.
 +      (gdb-script-mode): Use it.
 +
 +      * progmodes/fortran.el (fortran-mode): Use syntax-propertize-function.
 +      (fortran--font-lock-syntactic-keywords): New var.
 +      (fortran-line-length): Update syntax-propertize-function and
 +      fortran--font-lock-syntactic-keywords.
 +
 +      * progmodes/cperl-mode.el (cperl-mode): Use syntax-propertize-function.
 +
 +      * progmodes/cfengine.el (cfengine-mode):
 +      Use syntax-propertize-function.
 +      (cfengine-font-lock-syntactic-keywords): Remove.
 +
 +      * progmodes/autoconf.el (autoconf-mode):
 +      Use syntax-propertize-function.
 +      (autoconf-font-lock-syntactic-keywords): Remove.
 +
 +      * progmodes/ada-mode.el (ada-set-syntax-table-properties)
 +      (ada-after-change-function, ada-initialize-syntax-table-properties)
 +      (ada-handle-syntax-table-properties): Only define when
 +      syntax-propertize is not available.
 +      (ada-mode): Use syntax-propertize-function.
 +
 +      * font-lock.el (font-lock-syntactic-keywords): Make obsolete.
 +      (font-lock-fontify-syntactic-keywords-region): Move handling of
 +      font-lock-syntactically-fontified to...
 +      (font-lock-default-fontify-region): ...here.
 +      Let syntax-propertize-function take precedence.
 +      (font-lock-fontify-syntactically-region): Cal syntax-propertize.
 +
 +      * emacs-lisp/syntax.el (syntax-propertize-function)
 +      (syntax-propertize-chunk-size, syntax-propertize--done)
 +      (syntax-propertize-extend-region-functions): New vars.
 +      (syntax-propertize-wholelines, syntax-propertize-multiline)
 +      (syntax-propertize--shift-groups, syntax-propertize-via-font-lock)
 +      (syntax-propertize): New functions.
 +      (syntax-propertize-rules): New macro.
 +      (syntax-ppss-flush-cache): Set syntax-propertize--done.
 +      (syntax-ppss): Call syntax-propertize.
 +
 +      * emacs-lisp/regexp-opt.el (regexp-opt-depth): Skip named groups.
 +
 +2010-09-10  Agustín Martín  <agustin.martin@hispalinux.es>
 +
 +      * textmodes/ispell.el (ispell-init-process): Improve comments.
 +      XEmacs compatibility changes regarding (add-hook) 'local option
 +      and (set-process-query-on-exit-flag).
 +
 +2010-09-09  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/tramp-cache.el (tramp-parse-connection-properties):
 +      Set tramp-autoload cookie.
 +
 +2010-09-09  Glenn Morris  <rgm@gnu.org>
 +
 +      * image.el (imagemagick-types-inhibit): Add :type, :version, :group.
 +      (imagemagick-register-types): Doc fix.
 +
 +2010-09-08  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * progmodes/octave-mod.el (electric-indent-chars): Silence bytecomp.
 +
 +      * progmodes/js.el (require): Require is already "eval-and-compile".
 +      (js--re-search-forward): Avoid `eval'.  Preserve the error data.
 +      (js--re-search-backward): Use js--re-search-forward.
 +
 +      * progmodes/fortran.el (fortran-line-length): Don't recompute
 +      syntactic keywords redundantly a second time.
 +
 +      * progmodes/ada-mode.el: Replace "(set '" with setq.
 +      (ada-mode): Simplify.
 +      (ada-create-case-exception, ada-adjust-case-interactive)
 +      (ada-adjust-case-region, ada-format-paramlist, ada-indent-current)
 +      (ada-search-ignore-string-comment, ada-move-to-start)
 +      (ada-move-to-end): Use with-syntax-table.
 +
 +      * font-lock.el (save-buffer-state): Remove `varlist' arg.
 +      (font-lock-unfontify-region, font-lock-default-fontify-region):
 +      Update usage correspondingly.
 +      (font-lock-fontify-syntactic-keywords-region):
 +      Set parse-sexp-lookup-properties buffer-locally here.
 +      (font-lock-fontify-syntactically-region): Remove unused `ppss' arg.
 +
 +      * simple.el (blink-matching-open): Don't burp if we can't find a match.
 +
 +2010-09-08  Glenn Morris  <rgm@gnu.org>
 +
 +      * emacs-lisp/bytecomp.el (byte-compile-report-ops):
 +      Error if not compiled with -DBYTE_CODE_METER.
 +
 +      * emacs-lisp/bytecomp.el (byte-recompile-directory):
 +      Ignore dir-locals-file.
 +
 +2010-09-08  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * progmodes/compile.el (compilation-error-regexp-alist-alist):
 +      Not a const.
 +      (compilation-error-regexp-alist-alist): Rule out ": " in file names
 +      for the `gnu' messages.
 +      (compilation-set-skip-threshold): New command.
 +      (compilation-start): Use \' rather than $.
 +      (compilation-forget-errors): Use clrhash.
 +
 +2010-09-08  Agustín Martín  <agustin.martin@hispalinux.es>
 +
 +      * textmodes/ispell.el (ispell-valid-dictionary-list):
 +      Simplify logic.
 +
 +2010-09-08  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      Migrate to Tramp 2.2.  Rearrange load dependencies.
 +      (Bug#1529, Bug#5448, Bug#5705)
 +
 +      * Makefile.in (TRAMP_DIR, TRAMP_SRC): New variables.
 +      ($(TRAMP_DIR)/tramp-loaddefs.el): New target.
 +      (LOADDEFS): Add $(lisp)/net/tramp-loaddefs.el.
 +
 +      * net/tramp.el (top): Remove all other tramp-* loads except
 +      tramp-compat.el.  Remove all changes to tramp-unload-hook for
 +      other tramp-* packages.  Rearrange defun order.  Change calls of
 +      `tramp-compat-call-process', `tramp-compat-decimal-to-octal',
 +      `tramp-compat-octal-to-decimal' to new function names.
 +      (tramp-terminal-type, tramp-initial-end-of-output)
 +      (tramp-methods, tramp-foreign-file-name-handler-alist)
 +      (tramp-tramp-file-p, tramp-completion-mode-p)
 +      (tramp-send-command-and-check, tramp-get-remote-path)
 +      (tramp-get-remote-tmpdir, tramp-get-remote-ln)
 +      (tramp-shell-quote-argument): Set tramp-autoload cookie.
 +      (with-file-property, with-connection-property): Move to
 +      tramp-cache.el.
 +      (tramp-local-call-process, tramp-decimal-to-octal)
 +      (tramp-octal-to-decimal): Move to tramp-compat.el.
 +      (tramp-handle-shell-command): Do not require 'shell.
 +      (tramp-compute-multi-hops): No special handling for tramp-gw-*
 +      symbols.
 +      (tramp-unload-tramp): Do not call `tramp-unload-file-name-handlers'.
 +
 +      * net/tramp-cache.el (top): Require 'tramp.  Add to
 +      `tramp-unload-hook'.
 +      (tramp-cache-data, tramp-get-file-property)
 +      (tramp-set-file-property, tramp-flush-file-property)
 +      (tramp-flush-directory-property, tramp-get-connection-property)
 +      (tramp-set-connection-property, tramp-flush-connection-property)
 +      (tramp-cache-print, tramp-list-connections): Set tramp-autoload
 +      cookie.
 +      (with-file-property, with-connection-property): New defuns, moved
 +      from tramp.el.
 +      (tramp-flush-file-function): Use `with-parsed-tramp-file-name'
 +      macro.
 +
 +      * net/tramp-cmds.el (top): Add to `tramp-unload-hook'.
 +      (tramp-version): Set tramp-autoload cookie.
 +
 +      * net/tramp-compat.el (top): Require 'tramp-loaddefs.  Remove all
 +      changes to tramp-unload-hook for other tramp-* packages.  Add to
 +      `tramp-unload-hook'.
 +      (tramp-compat-decimal-to-octal, tramp-compat-octal-to-decimal)
 +      (tramp-compat-call-process): New defuns, moved from tramp.el.
 +
 +      * net/tramp-fish.el (top) Require just 'tramp.  Add objects to
 +      `tramp-methods' and `tramp-foreign-file-name-handler-alist'.
 +      Add to `tramp-unload-hook'.  Change call of
 +      `tramp-compat-decimal-to-octal' to new function name.
 +      (tramp-fish-method): Make it a defconst.
 +      (tramp-fish-file-name-p): Make it a defsubst.
 +      (tramp-fish-method, tramp-fish-file-name-handler)
 +      (tramp-fish-file-name-p): Set tramp-autoload cookie.
 +
 +      * net/tramp-ftp.el (top) Add objects to `tramp-methods' and
 +      `tramp-foreign-file-name-handler-alist'.  Add to
 +      `tramp-unload-hook'.
 +      (tramp-ftp-method): Make it a defconst.
 +      (tramp-ftp-file-name-p): Make it a defsubst.
 +      (tramp-ftp-method, tramp-ftp-file-name-handler)
 +      (tramp-ftp-file-name-p): Set tramp-autoload cookie.
 +
 +      * net/tramp-gvfs.el (top) Add objects to `tramp-methods' and
 +      `tramp-foreign-file-name-handler-alist'.  Add to
 +      `tramp-unload-hook'.  Change checks, whether package can be
 +      loaded.
 +      (tramp-gvfs-file-name-p): Make it a defsubst.
 +      (tramp-gvfs-methods, tramp-gvfs-file-name-handler)
 +      (tramp-gvfs-file-name-p): Set tramp-autoload cookie.
 +      (tramp-gvfs-handle-file-directory-p): New defun.
 +      (tramp-gvfs-file-name-handler-alist): Use it.
 +
 +      * net/tramp-gw.el (top) Add objects to `tramp-methods' and
 +      `tramp-foreign-file-name-handler-alist'.  Add to
 +      `tramp-unload-hook'.
 +      (tramp-gw-tunnel-method, tramp-gw-default-tunnel-port)
 +      (tramp-gw-socks-method, tramp-gw-default-socks-port): Make it a
 +      defconst.
 +      (tramp-gw-tunnel-method, tramp-gw-socks-method)
 +      (tramp-gw-open-connection): Set tramp-autoload cookie.
 +
 +      * net/tramp-imap.el (top) Require just 'tramp.  Add objects to
 +      `tramp-methods' and `tramp-foreign-file-name-handler-alist'.
 +      Add to `tramp-unload-hook'.  Change checks, whether package can be
 +      loaded.
 +      (tramp-imap-file-name-p): Make it a defsubst.
 +      (tramp-imap-method, tramp-imaps-method)
 +      (tramp-imap-file-name-handler)
 +      (tramp-imap-file-name-p): Set tramp-autoload cookie.
 +
 +      * net/tramp-smb.el (top) Require just 'tramp.  Add objects to
 +      `tramp-methods' and `tramp-foreign-file-name-handler-alist'.
 +      Add to `tramp-unload-hook'.  Change checks, whether package can be
 +      loaded.  Change call of `tramp-compat-decimal-to-octal' to new
 +      function name.
 +      (tramp-smb-tunnel-method): Make it a defconst.
 +      (tramp-smb-file-name-p): Make it a defsubst.
 +      (tramp-smb-method, tramp-smb-file-name-handler)
 +      (tramp-smb-file-name-p): Set tramp-autoload cookie.
 +
 +      * net/tramp-uu.el (top) Add to `tramp-unload-hook'.
 +      (tramp-uuencode-region): Set tramp-autoload cookie.
 +
 +      * net/trampver.el (top) Add to `tramp-unload-hook'.
 +      (tramp-version, tramp-bug-report-address): Set tramp-autoload
 +      cookie.  Update release number.
 +
 +2010-09-07  Agustín Martín  <agustin.martin@hispalinux.es>
 +
 +      * textmodes/ispell.el (ispell-start-process): Make sure original
 +      arg list is properly initialized (Bug#6993, Bug#6994).
 +
 +2010-09-06  Alexander Klimov  <alserkli@inbox.ru>  (tiny change)
 +
 +      * files.el (directory-abbrev-alist): Use \` as default regexp.
 +
 +      * emacs-lisp/rx.el (rx-any): Don't explode ranges that end in special
 +      chars like - or ] (bug#6984).
 +      (rx-any-condense-range): Explode 2-char ranges.
 +
 +2010-09-06  Glenn Morris  <rgm@gnu.org>
 +
 +      * desktop.el (desktop-path): Bump :version after 2009-09-15 change.
 +
 +2010-09-06  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * textmodes/bibtex.el:
 +      * proced.el: Update to new email for Roland Winkler <winkler@gnu.org>.
 +
 +2010-09-05  Lars Magne Ingebrigtsen  <larsi@gnus.org>
 +
 +      * net/imap.el (imap-message-map): Remove optional buffer parameter,
 +      since no callers use it.
 +      (imap-message-get): Ditto.
 +      (imap-message-put): Ditto.
 +      (imap-mailbox-map): Ditto.
 +      (imap-mailbox-put): Ditto.
 +      (imap-mailbox-get): Ditto.
 +      (imap-mailbox-get): Revert last change for this function.
 +
 +2010-09-05  Lars Magne Ingebrigtsen  <larsi@gnus.org>
 +
 +      * net/imap.el (imap-fetch-safe): Remove function, and alter all
 +      callers to use `imap-fetch' instead.  According to the comments, this
 +      should be safe, since all other IMAP clients use the 1:* syntax.
 +      (imap-enable-exchange-bug-workaround): Remove.
 +      (imap-debug): Remove -- doesn't seem very useful.
 +
 +2010-09-05  Lars Magne Ingebrigtsen  <larsi@gnus.org>
 +
 +      * net/imap.el (imap-log): New convenience function used throughout
 +      instead of repeating the same code all over the place.
 +
 +2010-09-05  David De La Harpe Golden  <david@harpegolden.net>
 +
 +      * mouse.el (mouse-save-then-kill): Save region to kill-ring
 +      when mouse-drag-copy-region is non-nil (Bug#6956).
 +
 +2010-09-05  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * dired.el (dired-ls-sorting-switches, dired-sort-by-name-regexp):
 +      Improve regexps (Bug#6987).
 +      (dired-sort-toggle): Search more robustly for -t flag.
 +
 +      * files.el (get-free-disk-space): Search more robustly for
 +      "available" column.  Suggested by Ehud Karni
 +      <ehud@unix.mvs.co.il>.
 +
 +2010-09-05  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * international/uni-bidi.el:
 +      * international/uni-category.el:
 +      * international/uni-combining.el:
 +      * international/uni-decimal.el:
 +      * international/uni-mirrored.el:
 +      * international/uni-name.el: Regenerate.
 +
 +2010-09-04  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * electric.el (electric-indent-post-self-insert-function):
 +      Don't reindent with a sloppy indentation function.
 +
 +      * emacs-lisp/syntax.el (syntax-ppss): More sanity check to catch
 +      border case in change-log-mode.
 +
 +2010-09-04  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * progmodes/compile.el (compilation-error-regexp-alist-alist):
 +      Remove ruby regexp; handle Ruby errors with gcc-include and gnu.
 +      Recognize leading tab in gcc-include regexp.  Ignore names with
 +      leading "from" or "in" in gnu regexp (Bug#6937).
 +
 +2010-09-04  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      Avoid global recursive calls to kill-buffer-hooks; fit into 80 cols.
 +      * textmodes/ispell.el (ispell-process-buffer-name): Remove.
 +      (ispell-start-process): Avoid setq and simplify logic.
 +      (ispell-init-process): Setup kill-buffer-hook locally when needed.
 +      (kill-buffer-hook): Don't use it globally with code that uses
 +      expand-file-name since that may call kill-buffer via
 +      code_conversion_restore.
 +
 +2010-09-04  Noorul Islam K M  <noorul@noorul.com>  (tiny change)
 +
 +      * emacs-lisp/package.el (package-directory-list): Only call
 +      file-name-nondirectory on a string.
 +
 +2010-09-02  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * emacs-lisp/package.el (package--download-one-archive):
 +      Ensure that archive-contents is valid before saving it.
 +      (package-activate-1, package-mark-obsolete, define-package)
 +      (package-compute-transaction, package-list-maybe-add): Use push.
 +
 +2010-09-03  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      Use SMIE's blink-paren for octave-mode.
 +      * progmodes/octave-mod.el (octave-font-lock-close-quotes):
 +      Backslashes do not escape single-quotes, single-quotes do.
 +      (octave-block-else-regexp, octave-block-end-regexp)
 +      (octave-block-match-alist): Remove.
 +      (octave-smie-bnf-table): New var, with old content.
 +      (octave-smie-op-levels): Use it.
 +      (octave-smie-closer-alist): New var.
 +      (octave-mode): Use it.  Setup smie-blink-matching and electric-indent.
 +      (octave-blink-matching-block-open): Remove.
 +      (octave-reindent-then-newline-and-indent, octave-electric-semi)
 +      (octave-electric-space): Let self-insert-command run expand-abbrev and
 +      blink parens.
 +
 +      * electric.el (electricity): New group.
 +      (electric-indent-chars): New var.
 +      (electric-indent-post-self-insert-function): New fun.
 +      (electric-indent-mode): New minor mode.
 +      (electric-pair-skip-self): New custom.
 +      (electric-pair-post-self-insert-function): New function.
 +      (electric-pair-mode): New minor mode.
 +
 +      * calc/calc-aent.el (calcAlg-blink-matching-check): New fun, to replace
 +      calcAlg-blink-matching-open.
 +      (calc-alg-ent-map, calc-alg-ent-esc-map): Initialize in the declaration.
 +      (calc-do-alg-entry): Only touch the part of the keymap that varies.
 +      Use the new blink-matching-check-function.
 +
 +      Provide blink-matching support to SMIE.
 +      * emacs-lisp/smie.el (smie-bnf-closer-alist): New function.
 +      (smie-blink-matching-triggers, smie-blink-matching-inners): New vars.
 +      (smie-blink-matching-check, smie-blink-matching-open): New functions.
 +
 +      * simple.el (newline): Fix last change to properly remove itself from
 +      the hook.
 +
 +2010-09-02  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * simple.el (newline): Eliminate optimization.
 +      Use post-self-insert-hook to set hard-newline and things before
 +      running post-self-insert-hook.
 +      (blink-matching-check-mismatch): New function.
 +      (blink-matching-check-function): New variable.
 +      (blink-matching-open): Use them.
 +      Skip back forward over prefix chars skipped by forward-sexp.
 +      Don't check if the parens are backslash escaped.
 +      (blink-paren-post-self-insert-function): Check backslash escaping here.
 +
 +2010-09-02  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * emacs-lisp/package.el (package-menu-mode-map):
 +      Change package-menu-revert bindings to revert-buffer.
 +      (package-menu-mode): Set revert-buffer-function.
 +      (package-menu-revert): Doc fix.
 +
 +2010-09-02  Agustín Martín  <agustin.martin@hispalinux.es>
 +
 +      * textmodes/ispell.el (ispell-init-process): Use "~/" as
 +      `default-directory' unless using Ispell per-directory personal
 +      dictionaries and not in a mini-buffer under XEmacs.
 +      (kill-buffer-hook): Do not kill ispell process on exit when
 +      `ispell-process-directory' is "~/".  (Bug#6143)
 +
 +2010-09-02  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * simple.el (kill-new): Call interprogram-cut-function with only
 +      one argument.
 +
 +      * term.el (term-mouse-paste): Don't call x-get-cutbuffer.
 +      Remove cut buffer from error message.
 +
 +      * term/x-win.el (x-select-text):
 +      * term/pc-win.el (x-selection-value):
 +      * term/ns-win.el (x-selection-value):
 +      * eshell/em-term.el:
 +      * w32-fns.el (x-get-selection-value):
 +      * mouse-sel.el (mouse-sel-set-selection-function):
 +      * frame.el (display-selections-p): Remove cut-buffer in documentation.
 +
 +      * term/x-win.el: Update documentation for x-last-selected-text-*.
 +      (x-last-selected-text-cut, x-last-selected-text-cut-encoded)
 +      (x-last-cut-buffer-coding, x-cut-buffer-max): Remove.
 +      (x-select-text): Remove argument PUSH, update documentation.
 +      Remove cut-buffer code.
 +      (x-selection-value-internal): Was previously x-selection-value.
 +      (x-selection-value): Rename from x-cut-buffer-or-selection-value.
 +      Update documentation, remove cut-buffer code.
 +      Call x-selection-value-internal.
 +      (x-clipboard-yank): Call x-selection-value-internal.
 +      (x-initialize-window-system): Remove setting of x-cut-buffer-max.
 +
 +      * term/pc-win.el (x-last-selected-text):
 +      x-cut-buffer-or-selection-value renamed to x-selection-value
 +      (x-select-text): Remove argument PUSH, update documentation.
 +
 +      * term/ns-win.el (x-setup-function-keys, ns-last-selected-text):
 +      x-cut-buffer-or-selection-value renamed to x-selection-value
 +      (x-selection-value): Rename from x-cut-buffer-or-selection-value.
 +      (x-select-text): Remove argument PUSH, update documentation.
 +
 +      * emacs-lisp/cl-macs.el (x-get-cutbuffer, x-get-cut-buffer): Remove.
 +
 +      * w32-fns.el (x-last-selected-text):
 +      x-cut-buffer-or-selection-value renamed to x-selection-value.
 +      (x-cut-buffer-max): Remove.
 +      (x-select-text): Remove argument PUSH, update documentation.
 +
 +      * simple.el (interprogram-cut-function): Remove mention of PUSH.
 +
 +      * select.el (x-get-cut-buffer, x-set-cut-buffer): Remove.
 +
 +      * mouse-sel.el (mouse-sel-get-selection-function):
 +      x-cut-buffer-or-selection-value renamed to x-selection-value.
 +      (x-select-text): Remove optional push.
 +
 +2010-09-01  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * simple.el (blink-paren-function): Move from C to here.
 +      (blink-paren-post-self-insert-function): New function.
 +      (post-self-insert-hook): Use it.
 +
 +      * emacs-lisp/pcase.el (pcase-split-memq):
 +      Fix overenthusiastic optimisation.
 +      (pcase-u1): Handle the case of a lambda pred.
 +
 +2010-08-31  Kenichi Handa  <handa@m17n.org>
 +
 +      * international/mule-cmds.el (standard-display-european-internal):
 +      Setup standard-display-table for 8-bit characters by storing 8-bit
 +      characters in the element vector.
 +
 +      * disp-table.el (standard-display-8bit):
 +      Setup standard-display-table for 8-bit characters by storing 8-bit
 +      characters in the element vector.
 +      (standard-display-european): Likewise.
 +
 +2010-08-31  Masatake YAMATO  <yamato@redhat.com>
 +
 +      * textmodes/nroff-mode.el (nroff-view): New command.
 +      (nroff-mode-map): Bind it to C-c C-c.
 +
 +2010-08-31  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * emacs-lisp/smie.el (smie-down-list): New command.
 +
 +      Remove old indentation and navigation code on octave-mode.
 +      * progmodes/octave-mod.el (octave-mode-map): Remap down-list to
 +      smie-down-list rather than add a binding for octave-down-block.
 +      (octave-mark-block, octave-blink-matching-block-open):
 +      Rely on forward-sexp-function.
 +      (octave-fill-paragraph): Don't narrow, so you can use
 +      indent-according-to-mode.
 +      (octave-block-begin-regexp, octave-block-begin-or-end-regexp): Remove.
 +      (octave-in-block-p, octave-re-search-forward-kw)
 +      (octave-re-search-backward-kw, octave-indent-calculate)
 +      (octave-end-as-array-index-p, octave-block-end-offset)
 +      (octave-scan-blocks, octave-forward-block, octave-backward-block)
 +      (octave-down-block, octave-backward-up-block, octave-up-block)
 +      (octave-before-magic-comment-p, octave-indent-line): Remove.
 +
 +2010-08-31  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * emacs-lisp/package.el (package--read-archive-file): Just use
 +      `read', to avoid copying an additional string.
 +      (package-menu-mode): Set header-line-format here.
 +      (package-menu-refresh, package-menu-revert): Signal an error if
 +      not in the Package Menu.
 +      (package-menu-package-list): New var.
 +      (package--generate-package-list): Operate on the current buffer;
 +      don't assume that it is *Packages*, since the user may rename it.
 +      Allow persistent package listings and sort keys using
 +      package-menu-package-list and package-menu-package-sort-key.
 +      (package-menu--version-predicate): Fix version calculation.
 +      (package-menu-sort-by-column): Don't select the window.
 +      (package--list-packages): Create the *Packages* buffer.
 +      Set package-menu-package-list-key.
 +      (list-packages): Sorting by status is now the default.
 +      (package-buffer-info): Use match-string-no-properties.
 +      (define-package): Add a &rest argument for future proofing, but
 +      don't use it yet.
 +      (package-install-from-buffer, package-install-buffer-internal):
 +      Merge into a single function, package-install-from-buffer.
 +      (package-install-file): Change caller.
 +
 +      * finder.el: Load finder-inf using `require'.
 +      (finder-list-matches): Sorting by status is now the default.
 +      (finder-compile-keywords): Simpify printing.
 +
 +2010-08-30  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * progmodes/octave-mod.el (octave-font-lock-keywords): Use regexp-opt.
 +      (octave-mode-map): Remove special bindings for forward/backward-block
 +      and octave-backward-up-block.  Use smie-close-block.
 +      (octave-continuation-marker-regexp): New var.
 +      (octave-continuation-regexp): Use it.
 +      (octave-operator-table, octave-smie-op-levels)
 +      (octave-operator-regexp, octave-smie-indent-rules): New vars.
 +      (octave-smie-backward-token, octave-smie-forward-token): New funs.
 +      (octave-mode): Use SMIE.
 +      (octave-close-block): Delete.
 +
 +2010-08-30  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * menu-bar.el (menu-bar-edit-menu) <"Paste">: Check selection in
 +      CLIPBOARD, not in PRIMARY.  (Bug#6944)
 +
 +2010-08-30  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * emacs-lisp/smie.el (smie-indent-offset-rule): Let :parent take
 +      a list of parents.
 +      (smie-indent-column): Allow indirection through variables.
 +
 +      * composite.el (save-buffer-state): Delete, unused.
 +      * font-lock.el (save-buffer-state): Use with-silent-modifications.
 +      (font-lock-default-fontify-region): Use with-syntax-table.
 +      * jit-lock.el (with-buffer-unmodified): Remove.
 +      (with-buffer-prepared-for-jit-lock): Use with-silent-modifications.
 +
 +      Use `declare' in defmacros.
 +      * window.el (save-selected-window):
 +      * subr.el (with-temp-file, with-temp-message, with-syntax-table):
 +      * progmodes/python.el (def-python-skeleton):
 +      * net/dbus.el (dbus-ignore-errors):
 +      * jka-cmpr-hook.el (with-auto-compression-mode):
 +      * international/mule.el (with-category-table):
 +      * emacs-lisp/timer.el (with-timeout):
 +      * emacs-lisp/lisp-mnt.el (lm-with-file):
 +      * emacs-lisp/eieio.el (with-slots):
 +      * emacs-lisp/easymenu.el (easy-menu-define):
 +      * emacs-lisp/debug.el (debugger-env-macro):
 +      * emacs-lisp/cl-compat.el (Multiple-value-bind, Multiple-value-setq)
 +      (Multiple-value-call, Multiple-value-prog1):
 +      * emacs-lisp/cl-seq.el (cl-parsing-keywords, cl-check-key)
 +      (cl-check-test-nokey, cl-check-test, cl-check-match): Move indent and
 +      edebug rule to definition.
 +      * emacs-lisp/lisp-mode.el (save-selected-window)
 +      (with-current-buffer, combine-after-change-calls)
 +      (with-output-to-string, with-temp-file, with-temp-buffer)
 +      (with-temp-message, with-syntax-table, read-if, eval-after-load)
 +      (dolist, dotimes, when, unless):
 +      * emacs-lisp/byte-run.el (inline): Remove indent rule, redundant.
 +
 +2010-08-29  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * finder.el: Require `package'.
 +      (finder-known-keywords): Tweak descriptions.  Retire `oop' keyword.
 +      (finder-package-info): Var deleted.
 +      (finder-keywords-hash, finder--builtins-alist): New vars.
 +      (finder-compile-keywords): Compute package--builtins and
 +      finder-keywords-hash instead of finder-keywords-hash, respecting
 +      the "Package" header.
 +      (finder-unknown-keywords, finder-list-matches):
 +      Use finder-keywords-hash and package--list-packages.
 +      (finder-mode): Don't set font-lock-defaults.
 +      (finder-exit): We don't use "*Finder-package*" and "*Finder
 +      Category*" buffers anymore.
 +
 +      * emacs-lisp/package.el (package--builtins-base): Var deleted.
 +      (package--builtins): Set default value to nil.
 +      (package-initialize): Load precomputed value of package--builtins
 +      from finder-inf.el.
 +      (package-alist, package-compute-transaction)
 +      (package-download-transaction): Improve docstring.
 +      (package-read-all-archive-contents): Do not change
 +      package--builtins here.
 +      (list-packages): Make package-list-packages an alias for this.
 +      Sort by status by default.
 +      (package--list-packages): Add optional PACKAGES arg.
 +      (describe-package-1): Use font-lock-face property.  For built-in
 +      packages, insert file commentary.
 +      (package--generate-package-list): Rename from
 +      package-list-packages-internal; all callers changed.  Add optional
 +      PACKAGES arg.  Add alphabetical sort fallbacks.
 +      (package-menu--version-predicate, package-menu--status-predicate)
 +      (package-menu--description-predicate)
 +      (package-menu--name-predicate): New functions.
 +
 +      * info.el (Info-finder-find-node): Search package-alist instead of
 +      finder-package-info.
 +
 +2010-08-29  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * subr.el (version-regexp-alist): Don't use "a" and "b" for
 +      "alpha" and "beta".
 +      (version-to-list): Handle versions like "10.3d".
 +
 +2010-08-28  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * emacs-lisp/macroexp.el (macroexpand-all-1): Use pcase.
 +      (macroexp-accumulate): Use `declare'.
 +
 +2010-08-27  Vinicius Jose Latorre  <viniciusjl@ig.com.br>
 +
 +      * whitespace.el (whitespace-style): Adjust type declaration.
 +
 +2010-08-26  Magnus Henoch  <magnus.henoch@gmail.com>
 +
 +      * net/tramp-gvfs.el (tramp-gvfs-handle-copy-file): Do not pass
 +      empty argument to gvfs-copy.
 +
 +2010-08-26  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * net/tramp-compat.el (tramp-compat-delete-file): Rewrite to
 +      handle new TRASH arg of `delete-file'.
 +
 +2010-08-26  Christian Lynbech  <christian.lynbech@tieto.com>  (tiny change)
 +
 +      * net/tramp.el (tramp-handle-insert-directory): Don't use
 +      `forward-word', its default syntax could be changed.
 +
 +2010-08-26  Toru TSUNEYOSHI  <t_tuneyosi@hotmail.com>
 +            Michael Albinus  <michael.albinus@gmx.de>
 +
 +      Implement compression for inline methods.
 +
 +      * net/tramp.el (tramp-inline-compress-start-size): New defcustom.
 +      (tramp-copy-size-limit): Allow also nil.
 +      (tramp-inline-compress-commands): New defconst.
 +      (tramp-find-inline-compress, tramp-get-inline-compress)
 +      (tramp-get-inline-coding): New defuns.
 +      (tramp-get-remote-coding, tramp-get-local-coding): Remove,
 +      replaced by `tramp-get-inline-coding'.
 +      (tramp-handle-file-local-copy, tramp-handle-write-region)
 +      (tramp-method-out-of-band-p): Use `tramp-get-inline-coding'.
 +
 +2010-08-26  Noah Lavine  <noah549@gmail.com>  (tiny change)
 +
 +      Detect ssh 'ControlMaster' argument automatically in some cases.
 +
 +      * net/tramp.el (tramp-detect-ssh-controlmaster): New defun.
 +      (tramp-default-method): Use it.
 +
 +2010-08-26  Karel Klíč  <kklic@redhat.com>
 +
 +      * net/tramp.el (tramp-file-name-for-operation):
 +      Add file-selinux-context.
 +
 +2010-08-26  Łukasz Stelmach  <lukasz.stelmach@iem.pw.edu.pl>  (tiny change)
 +
 +      * play/cookie1.el (read-cookie): Fix off-by-one error (bug#6921).
 +
 +2010-08-26  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * simple.el (beginning-of-buffer, end-of-buffer): Doc fix
 +      (Bug#6907).
 +
 +2010-08-26  Nathan Weizenbaum  <nweiz@cressida.sea.corp.google.com>  (tiny change)
 +
 +      * progmodes/js.el: Make indentation more customizable (Bug#6914).
 +      (js-paren-indent-offset, js-square-indent-offset)
 +      (js-curly-indent-offset): New options.
 +      (js--proper-indentation): Use them.
 +
 +2010-08-26  Daniel Colascione  <dan.colascione@gmail.com>
 +
 +      * progmodes/sh-script.el (sh-get-indent-info): Use syntax-ppss
 +      instead of inspecting font-lock properties (Bug#6916).
 +
 +2010-08-26  David Reitter  <david.reitter@gmail.com>
 +
 +      * server.el (server-visit-files): Run pre-command-hook and
 +      post-command-hook for each buffer while it is current (Bug#6910).
 +      (server-execute): Do not run hooks here.
 +
 +2010-08-26  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      Sync with Tramp 2.1.19.
 +
 +      * net/tramp-cmds.el (tramp-cleanup-all-connections)
 +      (tramp-reporter-dump-variable, tramp-load-report-modules)
 +      (tramp-append-tramp-buffers): Use `tramp-compat-funcall'.
 +      (tramp-bug): Recommend setting of `tramp-verbose' to 9.
 +
 +      * net/tramp-compat.el (top): Do not autoload
 +      `tramp-handle-file-remote-p'.  Load tramp-util.el and tramp-vc.el
 +      only when `start-file-process' is not bound.
 +      (byte-compile-not-obsolete-vars): Define if not bound.
 +      (tramp-compat-funcall): New defmacro.
 +      (tramp-compat-line-beginning-position)
 +      (tramp-compat-line-end-position)
 +      (tramp-compat-temporary-file-directory)
 +      (tramp-compat-make-temp-file, tramp-compat-file-attributes)
 +      (tramp-compat-copy-file, tramp-compat-copy-directory)
 +      (tramp-compat-delete-file, tramp-compat-delete-directory)
 +      (tramp-compat-number-sequence, tramp-compat-process-running-p):
 +      Use it.
 +      (tramp-advice-file-expand-wildcards): Do not use
 +      `tramp-handle-file-remote-p'.
 +      (tramp-compat-make-temp-file): Simplify fallback implementation.
 +      (tramp-compat-copy-file): Add PRESERVE-SELINUX-CONTEXT.
 +      (tramp-compat-copy-tree): Remove function.
 +      (tramp-compat-delete-file): New defun.
 +      (tramp-compat-delete-directory): Provide implementation for older
 +      Emacsen.
 +      (tramp-compat-file-attributes): Handle only
 +      `wrong-number-of-arguments' error.
 +
 +      * net/tramp-fish.el (tramp-fish-handle-copy-file):
 +      Add PRESERVE_SELINUX_CONTEXT.
 +      (tramp-fish-handle-delete-file): Add TRASH arg.
 +      (tramp-fish-handle-directory-files-and-attributes):
 +      Do not use `tramp-fish-handle-file-attributes.
 +      (tramp-fish-handle-file-local-copy)
 +      (tramp-fish-handle-insert-file-contents)
 +      (tramp-fish-maybe-open-connection): Use `with-progress-reporter'.
 +
 +      * net/tramp-gvfs.el (top): Require url-util.
 +      (tramp-gvfs-mount-point): Remove.
 +      (tramp-gvfs-file-name-handler-alist): Add `file-selinux-context'
 +      and `set-file-selinux-context'.
 +      (tramp-gvfs-stringify-dbus-message, tramp-gvfs-send-command)
 +      (tramp-gvfs-handle-file-selinux-context)
 +      (tramp-gvfs-handle-set-file-selinux-context): New defuns.
 +      (with-tramp-dbus-call-method): Format trace message.
 +      (tramp-gvfs-handle-copy-file): Handle PRESERVE-SELINUX-CONTEXT.
 +      (tramp-gvfs-handle-copy-file, tramp-gvfs-handle-rename-file):
 +      Implement backup call, when operation on local files fails.
 +      Use progress reporter.  Flush properties of changed files.
 +      (tramp-gvfs-handle-delete-file): Add TRASH arg.
 +      Use `tramp-compat-delete-file'.
 +      (tramp-gvfs-handle-expand-file-name): Expand "~/".
 +      (tramp-gvfs-handle-make-directory): Make more traces.
 +      (tramp-gvfs-handle-write-region): Protect deleting tmpfile.
 +      (tramp-gvfs-url-file-name): Hexify file name in url.
 +      (tramp-gvfs-fuse-file-name): Take also prefix (like dav shares)
 +      into account for the resulting file name.
 +      (tramp-gvfs-handler-askquestion): Preserve current message, in
 +      order to let progress reporter continue afterwards.  (Bug#6257)
 +      Return dummy mountpoint, when the answer is "no".
 +      See `tramp-gvfs-maybe-open-connection'.
 +      (tramp-gvfs-handler-mounted-unmounted)
 +      (tramp-gvfs-connection-mounted-p): Test also for new mountspec
 +      attribute "default_location".  Set "prefix" property.
 +      Handle default-location.
 +      (tramp-gvfs-mount-spec): Return both prefix and mountspec.
 +      (tramp-gvfs-maybe-open-connection): Test, whether mountpoint
 +      exists.  Raise an error, if not (due to a corresponding answer
 +      "no" in interactive questions, for example).
 +      Use `tramp-compat-funcall'.
 +
 +      * net/tramp-imap.el (top): Autoload `epg-make-context'.
 +      (tramp-imap-handle-copy-file): Add PRESERVE-SELINUX-CONTEXT.
 +      (tramp-imap-do-copy-or-rename-file)
 +      (tramp-imap-handle-insert-file-contents)
 +      (tramp-imap-handle-file-local-copy): Use `with-progress-reporter'.
 +      (tramp-imap-handle-delete-file): Add TRASH arg.
 +
 +      * net/tramp-smb.el (tramp-smb-handle-copy-file):
 +      Add PRESERVE-SELINUX-CONTEXT.
 +      (tramp-smb-handle-copy-file)
 +      (tramp-smb-handle-file-local-copy, tramp-smb-handle-rename-file)
 +      (tramp-smb-handle-write-region, tramp-smb-maybe-open-connection):
 +      Use `with-progress-reporter'.
 +      (tramp-smb-handle-delete-file): Add TRASH arg.
 +
 +      * net/tramp.el (tramp-methods): Move hostname to the end in all
 +      ssh `tramp-login-args'.  Add `tramp-async-args' attribute where
 +      appropriate.
 +      (tramp-verbose): Describe verbose level 9.
 +      (tramp-completion-function-alist)
 +      (tramp-file-name-regexp, tramp-chunksize)
 +      (tramp-local-coding-commands, tramp-remote-coding-commands)
 +      (with-connection-property, tramp-completion-mode-p)
 +      (tramp-action-process-alive, tramp-action-out-of-band)
 +      (tramp-check-for-regexp, tramp-file-name-p, tramp-equal-remote)
 +      (tramp-exists-file-name-handler): Fix docstring.
 +      (tramp-remote-process-environment): Use `format' instead of
 +      `concat'.  Protect version string by apostroph.
 +      (tramp-shell-prompt-pattern): Do not use a shy group in case of
 +      XEmacs.
 +      (tramp-file-name-regexp-unified)
 +      (tramp-completion-file-name-regexp-unified): On W32 systems, do
 +      not regard the volume letter as remote filename.  (Bug#5447)
 +      (tramp-perl-file-attributes)
 +      (tramp-perl-directory-files-and-attributes): Don't pass "$3".
 +      (tramp-vc-registered-read-file-names): Read input as
 +      here-document, otherwise the command could exceed maximum length
 +      of command line.
 +      (tramp-file-name-handler-alist): Add `file-selinux-context' and
 +      `set-file-selinux-context'.
 +      (tramp-debug-message): Add `tramp-compat-funcall' to ignored
 +      backtrace functions.
 +      (tramp-error-with-buffer): Don't show the connection buffer when
 +      we are in completion mode.
 +      (tramp-progress-reporter-update, tramp-remote-selinux-p)
 +      (tramp-handle-file-selinux-context)
 +      (tramp-handle-set-file-selinux-context, tramp-process-sentinel)
 +      (tramp-connectable-p, tramp-open-shell, tramp-get-remote-trash):
 +      New defuns.
 +      (with-progress-reporter): New defmacro.
 +      (tramp-debug-outline-regexp): New defconst.
 +      (top, tramp-rfn-eshadow-setup-minibuffer)
 +      (tramp-rfn-eshadow-update-overlay, tramp-handle-set-file-times)
 +      (tramp-handle-dired-compress-file, tramp-handle-shell-command)
 +      (tramp-completion-mode-p, tramp-check-for-regexp)
 +      (tramp-open-connection-setup-interactive-shell)
 +      (tramp-compute-multi-hops, tramp-read-passwd, tramp-clear-passwd)
 +      (tramp-time-diff, tramp-coding-system-change-eol-conversion)
 +      (tramp-set-process-query-on-exit-flag, tramp-unload-tramp):
 +      Use `tramp-compat-funcall'.
 +      (tramp-handle-make-symbolic-link): Flush file properties.
 +      (tramp-handle-load, tramp-handle-file-local-copy)
 +      (tramp-handle-insert-file-contents, tramp-handle-write-region)
 +      (tramp-handle-vc-registered, tramp-maybe-send-script)
 +      (tramp-find-shell): Use `with-progress-reporter'.
 +      (tramp-do-file-attributes-with-stat): Add space in format string,
 +      in order to work around a bug in pdksh.  Reported by Gilles Pion
 +      <gpion@lfdj.com>.
 +      (tramp-handle-verify-visited-file-modtime): Do not send a command
 +      when the connection is not established.
 +      (tramp-handle-set-file-times): Simplify the check for utc.
 +      (tramp-handle-directory-files-and-attributes)
 +      (tramp-get-remote-path): Use `copy-tree'.
 +      (tramp-completion-handle-file-name-all-completions): Ensure, that
 +      non remote files are still checked.  Oops.
 +      (tramp-handle-copy-file, tramp-do-copy-or-rename-file):
 +      Handle PRESERVE-SELINUX-CONTEXT.
 +      (tramp-do-copy-or-rename-file): Add progress reporter.
 +      (tramp-do-copy-or-rename-file-directly): Do not use
 +      `tramp-handle-file-remote-p'.
 +      (tramp-do-copy-or-rename-file-out-of-band):
 +      Use `tramp-compat-delete-directory'.
 +      (tramp-do-copy-or-rename-file-out-of-band)
 +      (tramp-compute-multi-hops, tramp-maybe-open-connection):
 +      Use `format-spec-make'.
 +      (tramp-handle-delete-file): Add TRASH arg.
 +      (tramp-handle-dired-uncache): Flush directory cache, not only file
 +      cache.
 +      (tramp-handle-expand-file-name)
 +      (tramp-completion-handle-file-name-all-completions)
 +      (tramp-completion-handle-file-name-completion):
 +      Use `tramp-connectable-p'.
 +      (tramp-handle-start-file-process): Set connection property "vec".
 +      Use it, in order to invalidate file caches.  Check only for
 +      `remote-tty' process property.
 +      Implement tty setting.  (Bug#4604, Bug#6360)
 +      (tramp-file-name-for-operation): Add `call-process-region' and
 +      `set-file-selinux-context'.
 +      (tramp-find-foreign-file-name-handler)
 +      (tramp-advice-make-auto-save-file-name)
 +      (tramp-set-auto-save-file-modes): Remove superfluous check for
 +      `stringp'.  This is done inside `tramp-tramp-file-p'.
 +      (tramp-file-name-handler): Trace 'quit.  Catch the error for some
 +      operations when we are in completion mode.  This gives the user
 +      the chance to correct the file name in the minibuffer.
 +      (tramp-completion-mode-p): Use `non-essential'.
 +      (tramp-handle-file-name-all-completions): Backward/ XEmacs
 +      compatibility: Use `completion-ignore-case' if
 +      `read-file-name-completion-ignore-case' does not exist.
 +      (tramp-get-debug-buffer): Use `tramp-debug-outline-regexp'.
 +      (tramp-find-shell, tramp-open-connection-setup-interactive-shell):
 +      `tramp-open-shell'.
 +      (tramp-action-password): Hide password prompt before next run.
 +      (tramp-process-actions): Widen connection buffer for the trace.
 +      (tramp-open-connection-setup-interactive-shell): Set `remote-tty'
 +      process property.  Trace stty settings if `tramp-verbose' >= 9.
 +      Apply workaround for IRIX64 bug.  Move argument of last
 +      `tramp-send-command' where it belongs to.
 +      (tramp-maybe-open-connection): Use `async-args' and `gw-args' in
 +      front of `login-args'.
 +      (tramp-get-ls-command, tramp-get-ls-command-with-dired): Run tests
 +      on "/dev/null" instead of "/".
 +      (tramp-get-ls-command-with-dired): Make test for "--dired"
 +      stronger.
 +      (tramp-set-auto-save-file-modes): Adapt version check.
 +      (tramp-set-process-query-on-exit-flag): Fix wrong parentheses.
 +      (tramp-handle-process-file): Call the program in a subshell, in
 +      order to preserve working directory.
 +      (tramp-handle-shell-command): Don't use hard-wired "/bin/sh" but
 +      `tramp-remote-sh' from `tramp-methods'.
 +      (tramp-get-ls-command): Make test for "--color=never" stronger.
 +      (tramp-check-for-regexp): Use (forward-line 1).
 +
 +      * net/trampver.el: Update release number.
 +
 +2010-08-26  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * help.el (help-map): Bind `C-h P' to describe-package.
 +
 +      * menu-bar.el (menu-bar-describe-menu): Add describe-package.
 +
 +      * emacs-lisp/package.el (package-refresh-contents): Catch errors
 +      when downloading archives.
 +      (describe-package-1): Add package commentary.
 +      (package-install-button-action): New function.
 +      (package-menu-mode-map): Bind ? to package-menu-describe-package.
 +      (package-menu-view-commentary): Function removed.
 +      (package-list-packages-internal): Hide the `package' package too.
 +
 +2010-08-25  Kenichi Handa  <handa@m17n.org>
 +
 +      * language/misc-lang.el ("Arabic"): New language environment.
 +      Setup composition-function-table for Arabic characters.
 +
 +      * international/fontset.el (setup-default-fontset): Fix typo for
 +      arabic OTF spec (fini->fina).
 +
 +2010-08-25  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * menu-bar.el (menu-bar-set-tool-bar-position): Set frame parameter
 +      on all frames.
 +
 +2010-08-24  Vinicius Jose Latorre  <viniciusjl@ig.com.br>
 +
 +      * whitespace.el: Allow cleaning up blanks without blank
 +      visualization (Bug#6651).  Adjust help window for
 +      whitespace-toggle-options (Bug#6479).  Allow to use fill-column
 +      instead of whitespace-line-column (from EmacsWiki).  New version
 +      13.1.
 +      (whitespace-style): Add new value 'face.  Adjust docstring.
 +      (whitespace-space, whitespace-hspace, whitespace-tab):
 +      Adjust foreground property face.
 +      (whitespace-line-column): Adjust docstring and type declaration.
 +      (whitespace-style-value-list, whitespace-toggle-option-alist)
 +      (whitespace-help-text): Adjust const initialization.
 +      (whitespace-toggle-options, global-whitespace-toggle-options):
 +      Adjust docstring.
 +      (whitespace-display-window, whitespace-interactive-char)
 +      (whitespace-style-face-p, whitespace-color-on): Adjust code.
 +      (whitespace-help-scroll): New fun.
 +
 +2010-08-24  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * emacs-lisp/package.el (list-packages): Alias for
 +      package-list-packages.
 +
 +2010-08-24  Kevin Ryde  <user42@zip.com.au>
 +
 +      * textmodes/flyspell.el (flyspell-check-tex-math-command): Doc fix
 +      (Bug#5651).
 +
 +      * progmodes/ruby-mode.el (ruby): Add defgroup.
 +
 +2010-08-24  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * progmodes/python.el: Add Ipython support (Bug#5390).
 +      (python-shell-prompt-alist)
 +      (python-shell-continuation-prompt-alist): New options.
 +      (python--set-prompt-regexp): New function.
 +      (inferior-python-mode, run-python, python-shell):
 +      Require ansi-color.  Use python--set-prompt-regexp to set the comint
 +      prompt based on the Python interpreter.
 +      (python--prompt-regexp): New var.
 +      (python-check-comint-prompt)
 +      (python-comint-output-filter-function): Use it.
 +      (run-python): Use a pipe (Bug#5694).
 +
 +2010-08-24  Fabian Ezequiel Gallina  <galli.87@gmail.com>  (tiny change)
 +
 +      * progmodes/python.el (python-send-region): Send a different
 +      Python command if Ipython is in use.
 +      (python-check-version): Use a Python command to find the version.
 +
 +2010-08-24  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * mouse.el (mouse-yank-primary): Avoid setting primary when
 +      deactivating the mark (Bug#6872).
 +
 +2010-08-23  Chris Foote  <chris@foote.com.au>  (tiny change)
 +
 +      * progmodes/python.el (python-block-pairs): Allow use of "finally"
 +      with "else" (Bug#3991).
 +
 +2010-08-23  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/dbus.el: Accept UNIX domain sockets as bus address.
 +      (top): Don't initialize `dbus-registered-objects-table' anymore,
 +      this is done in dbusbind,c.
 +      (dbus-check-event): Adapt test for bus.
 +      (dbus-return-values-table, dbus-unregister-service)
 +      (dbus-event-bus-name, dbus-introspect, dbus-register-property):
 +      Adapt doc string.
 +
 +2010-08-23  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * ido.el (ido-use-virtual-buffers): Fix typo in docstring.
 +
 +2010-08-22  Juri Linkov  <juri@jurta.org>
 +
 +      * simple.el (read-extended-command): New function with the logic
 +      for `completing-read' moved to Elisp from `execute-extended-command'.
 +      Use `function-called-at-point' in `minibuffer-default-add-function'
 +      to get a command name for M-n (bug#5364, bug#5214).
 +
 +2010-08-22  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * startup.el (command-line-1): Issue warning for ignored arguments
 +      --unibyte, etc (Bug#6886).
 +
 +2010-08-22  Leo  <sdl.web@gmail.com>
 +
 +      * net/rcirc.el (rcirc-add-or-remove): Accept a list of elements.
 +      (ignore, bright, dim, keyword): Split list of nicknames before
 +      passing to rcirc-add-or-remove (Bug#6894).
 +
 +2010-08-22  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * emacs-lisp/easy-mmode.el (define-minor-mode): Doc fix (Bug#6880).
 +
 +2010-08-22  Leo  <sdl.web@gmail.com>
 +
 +      Fix buffer-list rename&refresh after killing a buffer in ido.
 +      * ido.el: Revert Óscar's.
 +      (ido-kill-buffer-at-head): Exit the minibuffer with ido-exit=refresh.
 +      Remember the buffers at head, rather than their name.
 +      * iswitchb.el (iswitchb-kill-buffer): Re-make the list.
 +
 +2010-08-22  Kirk Kelsey  <kirk.kelsey@0x4b.net>  (tiny change)
 +            Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * progmodes/make-mode.el (makefile-fill-paragraph): Account for the
 +      extra backslash added to each line (bug#6890).
 +
 +2010-08-22  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * subr.el (read-key): Don't echo keystrokes (bug#6883).
 +
 +2010-08-22  Glenn Morris  <rgm@gnu.org>
 +
 +      * menu-bar.el (menu-bar-games-menu): Add landmark.
 +
 +2010-08-22  Glenn Morris  <rgm@gnu.org>
 +
 +      * align.el (align-regexp): Make group and spacing arguments
 +      use the interactive defaults when non-interactive.  (Bug#6698)
 +
 +      * mail/rmail.el (rmail-forward): Replace mail-text-start with its
 +      expansion, so as not to need sendmail.
 +      (mail-text-start): Remove declaration.
 +      (rmail-retry-failure): Require sendmail.
 +
 +2010-08-22  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * subr.el (read-key): Don't hide the menu-bar entries (bug#6881).
 +
 +2010-08-22  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * progmodes/flymake.el (flymake-start-syntax-check-process):
 +      Use `start-file-process' in order to let it run also on remote hosts.
 +
 +2010-08-22  Kenichi Handa  <handa@m17n.org>
 +
 +      * files.el: Add `word-wrap' as safe local variable.
 +
 +2010-08-22  Glenn Morris  <rgm@gnu.org>
 +
 +      * woman.el (woman-translate): Case matters.  (Bug#6849)
 +
 +2010-08-22  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * simple.el (kill-region): Doc fix (Bug#6787).
 +
 +2010-08-22  Glenn Morris  <rgm@gnu.org>
 +
 +      * calendar/diary-lib.el (diary-header-line-format):
 +      Fit it to the window, not the frame.
 +
 +2010-08-22  Andreas Schwab  <schwab@linux-m68k.org>
 +
 +      * subr.el (ignore-errors): Add debug declaration.
 +
 +2010-08-22  Geoff Gole  <geoffgole@gmail.com>  (tiny change)
 +
 +      * whitespace.el (whitespace-color-off): Remove post-command-hook
 +      locally.
 +
 +2010-08-21  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * vc/add-log.el (add-log-file-name): Don't get confused by symlinks.
 +
 +2010-08-21  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * cus-edit.el (custom-group-value-create): Add extra newline
 +      before end line (Bug#6876).
 +
 +2010-08-21  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * mouse.el (mouse-save-then-kill): Don't save region to kill ring
 +      when extending it.  Before killing on the second click, check if
 +      the buffer is the correct one.  Doc fix.
 +      (mouse-secondary-save-then-kill): Allow usage without first
 +      calling mouse-start-secondary, by defaulting to point.  Don't save
 +      an empty secondary selection.  Doc fix.
 +
 +2010-08-21  Vinicius Jose Latorre  <viniciusjl@ig.com.br>
 +
 +      * whitespace.el: Fix slow cursor movement (Bug#6172).  Reported by
 +      Christoph Groth <cwg@falma.de> and Liu Xin <x_liu@neusoft.com>.
 +      New version 13.0.
 +      (whitespace-empty-at-bob-regexp, whitespace-empty-at-eob-regexp):
 +      Adjust initialization.
 +      (whitespace-bob-marker, whitespace-eob-marker)
 +      (whitespace-buffer-changed): New vars.
 +      (whitespace-cleanup, whitespace-color-on, whitespace-color-off)
 +      (whitespace-empty-at-bob-regexp, whitespace-empty-at-eob-regexp)
 +      (whitespace-post-command-hook, whitespace-display-char-on):
 +      Adjust code.
 +      (whitespace-looking-back, whitespace-buffer-changed): New funs.
 +      (whitespace-space-regexp, whitespace-tab-regexp): Fun eliminated.
 +
 +2010-08-19  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * files.el (locate-file-completion-table): Only list the .el and .elc
 +      extensions if there's no other choice (bug#5955).
 +
 +      * facemenu.el (facemenu-self-insert-data): New var.
 +      (facemenu-post-self-insert-function, facemenu-set-self-insert-face):
 +      New functions.
 +      (facemenu-add-face): Use them.
 +
 +      * simple.el (blink-matching-open): Obey forward-sexp-function.
 +
 +2010-08-18  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * simple.el (prog-mode-map): New var.
 +      (prog-indent-sexp): New command.
 +
 +      * progmodes/octave-mod.el (octave-mode-menu): Make toggle buttons.
 +
 +      * progmodes/prolog.el (smie): Require.
 +
 +      * emacs-lisp/smie.el (smie-default-backward-token)
 +      (smie-default-forward-token): Strip properties.
 +      (smie-next-sexp): Be more careful with associative operators.
 +      (smie-forward-sexp-command): Generalize.
 +      (smie-backward-sexp-command): Simplify.
 +      (smie-closer-alist): New var.
 +      (smie-close-block): New command.
 +      (smie-indent-debug-log): New var.
 +      (smie-indent-offset-rule): Add a few more cases.
 +      (smie-indent-column): New function.
 +      (smie-indent-after-keyword): Use it.
 +      (smie-indent-keyword): Use it.
 +      Fix up the opener code's point position.
 +      (smie-indent-comment): Only applies at BOL.
 +      (smie-indent-debug): New command.
 +
 +      * emacs-lisp/autoload.el (make-autoload): Preload the macros's
 +      declarations that are useful before running the macro.
 +
 +2010-08-18  Joakim Verona  <joakim@verona.se>
 +
 +      * image.el (imagemagick-types-inhibit): New variable.
 +      (imagemagick-register-types): New function.
 +      * image-mode.el (image-transform-properties): New function.
 +      (image-transform-set-scale, image-transform-fit-to-height)
 +      (image-transform-set-rotation, image-transform-set-resize)
 +      (image-transform-fit-to-width, image-transform-fit-to-height):
 +      New functions.
 +      (image-toggle-display-image): Support image transforms.
 +
 +2010-08-18  Katsumi Yamaoka  <yamaoka@jpl.org>
 +
 +      * image.el (create-animated-image): Don't add heuristic mask to image
 +      (Bug#6839).
 +
 +2010-08-18  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * term/ns-win.el (ns-get-pasteboard, ns-set-pasteboard):
 +      Use QCLIPBOARD instead of QPRIMARY (Bug#6677).
 +
 +2010-08-17  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * emacs-lisp/lisp.el (up-list): Obey forward-sexp-function if set.
 +
 +      Font-lock '...' strings, plus various simplifications and fixes.
 +      * progmodes/octave-mod.el (octave-font-lock-keywords): Use regexp-opt.
 +      (octave-font-lock-close-quotes): New function.
 +      (octave-font-lock-syntactic-keywords): New var.
 +      (octave-mode): Use it.  Set beginning-of-defun-function.
 +      (octave-mode-map): Don't override the <foo>-defun commands.
 +      (octave-mode-menu): Pass it directly to easy-menu-define;
 +      remove (now generic) <foo>-defun commands; use info-lookup-symbol.
 +      (octave-block-match-alist): Fix up last change so that
 +      octave-close-block uses the more specific keyword.
 +      (info-lookup-mode): Silence byte-compiler.
 +      (octave-beginning-of-defun): Not interactive any more.
 +      Optimize slightly.
 +      (octave-end-of-defun, octave-mark-defun, octave-in-defun-p): Remove.
 +      (octave-indent-defun, octave-send-defun): Use mark-defun instead.
 +      (octave-completion-at-point-function): Make sure point is within
 +      beg..end.
 +      (octave-reindent-then-newline-and-indent):
 +      Use reindent-then-newline-and-indent.
 +      (octave-add-octave-menu): Remove.
 +
 +2010-08-17  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * mail/emacsbug.el (report-emacs-bug-insert-to-mailer)
 +      (report-emacs-bug-can-use-xdg-email): New functions.
 +      (report-emacs-bug): Set can-xdg-email to result of
 +      report-emacs-bug-can-use-xdg-email.  If can-xdg-email bind
 +      \C-cm to report-emacs-bug-insert-to-mailer and add help text
 +      about it.
 +
 +      * net/browse-url.el (browse-url-default-browser): Add cond
 +      for browse-url-xdg-open.
 +      (browse-url-can-use-xdg-open, browse-url-xdg-open): New functions.
 +
 +2010-08-17  Glenn Morris  <rgm@gnu.org>
 +
 +      * progmodes/cc-engine.el (c-new-BEG, c-new-END)
 +      (c-fontify-recorded-types-and-refs): Define for compiler.
 +      * progmodes/cc-mode.el (c-new-BEG, c-new-END): Move definitions
 +      before use.
 +
 +      * calendar/icalendar.el (icalendar--convert-recurring-to-diary):
 +      Fix format call.
 +
 +2010-08-17  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/tramp.el (tramp-handle-make-symbolic-link): Flush file
 +      properties.
 +      (tramp-handle-process-file): Call the program in a subshell, in
 +      order to preserve working directory.
 +      (tramp-action-password): Hide password prompt before next run.
 +      (tramp-process-actions): Widen connection buffer for the trace.
 +
 +2010-08-16  Deniz Dogan  <deniz.a.m.dogan@gmail.com>
 +
 +      * net/rcirc.el (rcirc-log-process-buffers): New option.
 +      (rcirc-print): Use it.
 +      (rcirc-generate-log-filename): New function.
 +      (rcirc-log-filename-function): Change default to
 +      rcirc-generate-log-filename (Bug#6828).
 +
 +2010-08-16  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * simple.el (deactivate-mark): If select-active-regions is `only',
 +      only set selection for temporarily active regions.
 +
 +      * cus-start.el: Change defcustom for select-active-regions.
 +
 +2010-08-15  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * mouse.el (mouse--drag-set-mark-and-point): New function.
 +      (mouse-drag-track): Use LOCATION arg to push-mark.
 +      Use mouse--drag-set-mark-and-point to take click-count into
 +      consideration when updating point and mark (Bug#6840).
 +
 +2010-08-15  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * progmodes/compile.el (compilation-error-regexp-alist-alist):
 +      Give the Ruby rule a lower priority than Gnu (Bug#6778).
 +
 +2010-08-14  Štěpán Němec  <stepnem@gmail.com>  (tiny change)
 +
 +      * font-lock.el (lisp-font-lock-keywords-2):
 +      Add combine-after-change-calls, condition-case-no-debug,
 +      with-demoted-errors, and with-silent-modifications (Bug#6025).
 +
 +2010-08-14  Kevin Ryde  <user42@zip.com.au>
 +
 +      * emacs-lisp/copyright.el (copyright-update-year)
 +      (copyright-update): Temporary switch-to-buffer to ensure the
 +      buffer change being queried is visible (Bug#5394).
 +
 +2010-08-14  Tom Tromey  <tromey@redhat.com>
 +
 +      * progmodes/etags.el (tags-file-name): Mark safe if stringp
 +      (Bug#6733).
 +
 +2010-08-14  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * mouse.el (mouse-yank-primary): Fix mouse-2 on MS-Windows and
 +      MS-DOS.  (Bug#6689)
 +
 +2010-08-13  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * menu-bar.el (menu-bar-set-tool-bar-position): New function.
 +      (menu-bar-showhide-tool-bar-menu-customize-enable-left)
 +      (menu-bar-showhide-tool-bar-menu-customize-enable-right)
 +      (menu-bar-showhide-tool-bar-menu-customize-enable-top)
 +      (menu-bar-showhide-tool-bar-menu-customize-enable-bottom):
 +      Call menu-bar-set-tool-bar-position.
 +
 +2010-08-12  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * progmodes/octave-mod.el (octave-mode-syntax-table): Use the new "c"
 +      comment style (bug#6834).
 +      * progmodes/scheme.el (scheme-mode-syntax-table):
 +      * emacs-lisp/lisp-mode.el (lisp-mode-syntax-table): Remove spurious
 +      "b" flag in "' 14b" syntax.
 +
 +      * progmodes/octave-mod.el (octave-mode-map): Remove special bindings
 +      for (un)commenting the region and performing completion.
 +      (octave-mode-menu): Use standard commands for help and completion.
 +      (octave-mode-syntax-table): Support %{..%} comments (sort of).
 +      (octave-mode): Use define-derived-mode.
 +      Set completion-at-point-functions and don't set columns.
 +      Don't disable adaptive-fill-regexp.
 +      (octave-describe-major-mode, octave-comment-region)
 +      (octave-uncomment-region, octave-comment-indent)
 +      (octave-indent-for-comment): Remove.
 +      (octave-indent-calculate): Rename from calculate-octave-indent.
 +      (octave-indent-line, octave-fill-paragraph): Update caller.
 +      (octave-initialize-completions): No need to make an alist.
 +      (octave-completion-at-point-function): New function.
 +      (octave-complete-symbol): Use it.
 +      (octave-insert-defun): Use define-skeleton.
 +
 +      * progmodes/octave-mod.el (octave-mode): Set comment-add.
 +      (octave-mode-map): Use comment-dwim (bug#6829).
 +
 +2010-08-12  Antoine Levitt  <antoine.levitt@gmail.com>  (tiny change)
 +
 +      * cus-edit.el (custom-save-variables, custom-save-faces): Fix up
 +      indentation of inserted comment.
 +
 +2010-08-11  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * faces.el (region): Add type gtk that uses gtk colors.
 +
 +      * dynamic-setting.el (dynamic-setting-handle-config-changed-event):
 +      Handle theme-name change.
 +
 +2010-08-10  Michael R. Mauger  <mmaug@yahoo.com>
 +
 +      * progmodes/sql.el: Version 2.5
 +      (sql-product-alist): Add :prompt-cont-regexp property for several
 +      database products.
 +      (sql-prompt-cont-regexp): New variable.
 +      (sql-output-newline-count, sql-output-by-send):
 +      New variables.  Record number of newlines in input text.
 +      (sql-send-string): Handle multiple filters and count newlines.
 +      (sql-send-magic-terminator): Count terminator newline.
 +      (sql-interactive-remove-continuation-prompt): Filters output to
 +      remove continuation prompts; one for each newline.
 +      (sql-interactive-mode): Set up new variables, prompt regexp and
 +      output filter.
 +      (sql-mode-sqlite-font-lock-keywords): Correct some keywords.
 +      (sql-make-alternate-buffer-name): Correct buffer name in edge cases.
 +
 +2010-08-10  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * emacs-lisp/pcase.el: New file.
 +
 +2010-08-10  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/tramp.el (tramp-vc-registered-read-file-names): Read input
 +      as here-document, otherwise the command could exceed maximum
 +      length of command line.
 +      (tramp-handle-vc-registered): Call script accordingly.
 +      Reported by Toru TSUNEYOSHI <t_tuneyosi@hotmail.com>.
 +
 +2010-08-10  Kenichi Handa  <handa@m17n.org>
 +
 +      * language/hebrew.el: Exclude U+05C3 (Hebrew SOF PASUQ) from the
 +      composable pattern.
 +
 +2010-08-09  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * emacs-lisp/package.el (package-version-split)
 +      (package--version-first-nonzero, package-version-compare):
 +      Functions removed.
 +      (package-directory-list, package-load-all-descriptors)
 +      (package--built-in, package-activate, define-package)
 +      (package-installed-p, package-compute-transaction)
 +      (package-read-all-archive-contents)
 +      (package--add-to-archive-contents, package-buffer-info)
 +      (package-tar-file-info, package-list-packages-internal):
 +      Use version-to-list and version-list-*.
 +
 +      * emacs-lisp/package-x.el (package-upload-buffer-internal):
 +      Use version-to-list.
 +      (package-upload-buffer-internal): Use version-list-<=.
 +
 +2010-08-09  Kenichi Handa  <handa@m17n.org>
 +
 +      * language/hebrew.el: Exclude U+05BD (Hebrew MAQAF) from the
 +      composable pattern.
 +
 +2010-08-08  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * tutorial.el (tutorial--default-keys): C-d is now bound to
 +      delete-forward-char (Bug#6826).
 +
 +      * mouse.el (mouse-drag-track): Remove accidentally-removed check
 +      for `double' value of mouse-1-click-follows-link (Bug#6807).
 +
 +2010-08-08  Johan Bockgård  <bojohan@gnu.org>
 +
 +      * replace.el (replace-highlight): Bind isearch-forward and
 +      isearch-error, ensuring that highlighting is updated if the user
 +      switches the search direction (Bug#6808).
 +
 +      * isearch.el (isearch-lazy-highlight-forward): New var.
 +      (isearch-lazy-highlight-new-loop, isearch-lazy-highlight-search):
 +      (isearch-lazy-highlight-update): Use it.
 +
 +2010-08-08  Kenichi Handa  <handa@m17n.org>
 +
 +      * international/mule.el (define-charset): Store NAME as :base property.
 +      (ctext-non-standard-encodings-table): Pay attention to charset aliases.
 +      (ctext-pre-write-conversion): Sort ctext-standard-encodings by the
 +      current priority.  Force using the designation of the specific
 +      charset by adding `charset' text property.  Improve the whole algorithm.
 +
 +2010-08-08  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * emulation/pc-select.el (pc-selection-mode-hook)
 +      (copy-region-as-kill-nomark, beginning-of-buffer-mark)
 +      (pc-selection-mode): Fix typos in docstrings.
 +
 +2010-08-08  Kenichi Handa  <handa@m17n.org>
 +
 +      * language/cyrillic.el: Don't add "microsoft-cp1251" to
 +      ctext-non-standard-encodings-alist here.
 +
 +      * international/mule.el (ctext-non-standard-encodings-alist):
 +      Add "koi8-r" and "microsoft-cp1251".
 +      (ctext-standard-encodings): New variable.
 +      (ctext-non-standard-encodings-table): List only elements for
 +      non-standard encodings.
 +      (ctext-pre-write-conversion): Adjust for the above change.
 +      Check ctext-standard-encodings.
 +
 +      * international/mule-conf.el (compound-text): Doc fix.
 +      (ctext-no-compositions): Doc fix.
 +      (compound-text-with-extensions): Doc fix.
 +
 +2010-08-08  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * simple.el (exchange-dot-and-mark): Mark obsolete, finally.
 +
 +2010-08-08  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * progmodes/which-func.el (which-func-format): Split help-echo text
 +      into lines, like other mode-line tooltips.
 +
 +      * server.el (server-start): When using TCP sockets, force IPv4
 +      and use a literal 127.0.0.1 for localhost.  (Related to bug#6781.)
 +
 +2010-08-08  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * bindings.el (complete-symbol): Run completion-at-point as a fallback.
 +
 +2010-08-08  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * term.el (term-delimiter-argument-list): Reflow docstring.
 +      (term-read-input-ring, term-write-input-ring, term-send-input)
 +      (term-bol, term-erase-in-display, serial-supported-or-barf):
 +      Fix typos in docstrings.
 +
 +2010-08-08  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * bindings.el (function-key-map): Add a S-tab => backtab fallback.
 +
 +2010-08-08  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * dabbrev.el (dabbrev-completion): Fix typo in docstring.
 +
 +2010-08-08  MON KEY  <monkey@sandpframing.com>  (tiny change)
 +
 +      * emacs-lisp/syntax.el (syntax-ppss-toplevel-pos):
 +      Fix typo in docstring (bug#6747).
 +
 +2010-08-08  Leo  <sdl.web@gmail.com>
 +
 +      * eshell/esh-io.el (eshell-get-target): Better detection of
 +      read-only file (Bug#6762).
 +
 +2010-08-08  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * align.el (align-default-spacing): Doc fix.
 +      (align-region-heuristic, align-regexp): Fix typos in docstrings.
 +
 +2010-08-08  Stephen Peters  <speters@itasoftware.com>
 +
 +      * calendar/icalendar.el
 +      (icalendar--split-value): Fix splitting regexp.  (Bug#6766)
 +      (icalendar--get-weekday-numbers): New.
 +      (icalendar--convert-recurring-to-diary): Handle multiple byday
 +      values in weekly rules.  (Bug#6766)
 +
 +2010-08-08  Ulf Jasper  <ulf.jasper@web.de>
 +
 +      * calendar/icalendar.el (icalendar-uid-format): Doc fix.
 +      (icalendar--create-uid, icalendar-export-region)
 +      (icalendar--parse-summary-and-rest): Code formatting.
 +
 +2010-08-08  Jay Belanger  <jay.p.belanger@gmail.com>
 +
 +      * calc/calc.el (calc-trail-mode,calc-refresh): Use `face' property
 +      to italicize headers.
 +      (calc-highlight-selections-with-faces): New variable.
 +      (calc-selected-face, calc-nonselected-face): New faces.
 +
 +      * calc/calccomp.el (math-comp-highlight-string): Use
 +      `calc-highlight-selections-with-faces' to determine how to highlight
 +      sub-formulas.
 +
 +      * calc/calc-sel.el (calc-show-selections): Change message to when
 +      using faces to highlight selections.
 +
 +2010-08-07  Michael R. Mauger  <mmaug@yahoo.com>
 +
 +      * progmodes/sql.el (sql-mode-sqlite-font-lock-keywords):
 +      Add SQLite 3 keywords, functions and datatypes.
 +      (sql-interactive-mode): Remove `comint-process-echoes' set to t
 +      (Bug#6686).
 +
 +2010-08-07  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * simple.el (select-active-regions): Move to keyboard.c.
 +      (deactivate-mark): Used saved-region-selection.
 +      (select-active-region): Function removed.
 +      (activate-mark, set-mark, push-mark-command)
 +      (handle-shift-selection): Don't call it.
 +      (keyboard-quit): Avoid adding the region to the window selection.
 +
 +      * mouse.el (mouse-drag-track): Remove hacks to deal with old
 +      select-active-regions implementation.
 +      (mouse-yank-at-click): Doc fix.
 +
 +      * cus-start.el: Add custom declaration for select-active-regions.
 +
 +2010-08-07  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * simple.el (delete-forward-char): Doc fix.
 +
 +      * tutorial.el (help-with-tutorial): Hack safe file-local variables
 +      after reading the tutorial.
 +
 +2010-08-06  Alan Mackenzie  <bug-cc-mode@gnu.org>
 +
 +      * progmodes/cc-cmds.el (c-mask-paragraph, c-fill-paragraph):
 +      Fix for the case that a C style comment has its delimiters alone on
 +      their respective lines.
 +
 +2010-08-06  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/tramp.el (tramp-handle-start-file-process): Set connection
 +      property "vec".
 +      (tramp-process-sentinel): Use it for flushing the cache.
 +      We cannot do it via the process buffer, the buffer could be deleted
 +      already when running the sentinel.
 +
 +2010-08-06  Jürgen Hötzel  <juergen@archlinux.org>  (tiny change)
 +
 +      * comint.el (comint-mode): Make directory tracking functions
 +      functional on remote files.  (Bug#6764)
 +
 +2010-08-06  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * vc/diff-mode.el (diff-mode-shared-map): Bind g to revert-buffer.
 +
 +2010-08-05  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * emacs-lisp/find-gc.el (find-gc-source-files):
 +      Rename unexec.c => unexcoff.c.
 +
 +      * emacs-lisp/authors.el (authors-fixed-entries):
 +      Rename unexec.c => unexcoff.c.
 +
 +2010-08-05  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/tramp.el (tramp-handle-dired-uncache): Flush directory
 +      cache, not only file cache.
 +      (tramp-process-sentinel): New defun.
 +      (tramp-handle-start-file-process): Use it, in order to invalidate
 +      file caches.
 +
 +2010-08-03  Leo  <sdl.web@gmail.com>
 +
 +      * server.el (server-start): Simplify loop.
 +
 +2010-08-02  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * frame.el (screen-height, screen-width, set-screen-width)
 +      (set-screen-height): Remove ancient compatibility aliases.
 +
 +      * textmodes/fill.el (justify-current-line): Don't add 1 to nspaces
 +      when justifying.  It seems useless and harmful for ncols=1 (bug#6738).
 +
 +      * emacs-lisp/timer.el (timer-event-handler): Protect against timers
 +      that change current buffer.
 +
 +2010-08-01  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
 +
 +      * mouse.el (mouse-fixup-help-message): Match "mouse-2" only at the
 +      beginning of the string.  Use `string-match-p'.  (Bug#6765)
 +
 +2010-08-01  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * cus-start.el (x-gtk-use-system-tooltips): New variable.
 +
 +2010-08-01  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * emacs-lisp/package.el (package--list-packages): Fix column alignment.
 +      (package--builtins): Tweak descriptions.
 +      (package-print-package): Upcase descriptions if necessary.
 +      Show all built-in packages in font-lock-builtin-face.
 +      (package-list-packages-internal): Omit "emacs" package.
 +      Show status of built-in packages as "built-in".
 +
 +2010-07-31  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * mouse.el (mouse-save-then-kill): Doc fix.  Deactivate mark
 +      before killing to preserve the primary selection (Bug#6701).
 +
 +      * term/x-win.el (x-select-text): Doc fix.
 +
 +2010-07-31  Nathaniel Flath  <flat0103@gmail.com>
 +
 +      * progmodes/cc-vars.el (c-offsets-alist, c-inside-block-syms)
 +      (objc-font-lock-extra-types):
 +      * progmodes/cc-mode.el (c-basic-common-init):
 +      * progmodes/cc-langs.el (c-make-mode-syntax-table)
 +      (c++-make-template-syntax-table)
 +      (c-identifier-syntax-modifications, c-symbol-start, c-operators)
 +      (c-<-op-cont-regexp, c->-op-cont-regexp, c-class-decl-kwds)
 +      (c-brace-list-decl-kwds, c-modifier-kwds, c-prefix-spec-kwds-re)
 +      (c-type-list-kwds, c-decl-prefix-re, c-opt-type-suffix-key):
 +      * progmodes/cc-fonts.el (c-make-inverse-face)
 +      (c-basic-matchers-after):
 +      * progmodes/cc-engine.el (c-forward-keyword-clause)
 +      (c-forward-<>-arglist, c-forward-<>-arglist-recur)
 +      (c-forward-name, c-forward-type, c-forward-decl-or-cast-1)
 +      (c-guess-continued-construct, c-guess-basic-syntax):
 +      Enhance Java Mode to handle Java 5.0 (Tiger) and Java 6 (Mustang).
 +      The above functions were modified or created.
 +
 +2010-07-31  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * faces.el (face-all-attributes): Improve documentation (Bug#6767).
 +
 +2010-07-31  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * files.el (bidi-paragraph-direction): Define safe local values.
 +
 +      * language/hebrew.el ("Hebrew"): Add TUTORIAL.he to
 +      language-info-alist.  Remove outdated FIXME in a comment.
 +
 +2010-07-31  Alan Mackenzie  <acm@muc.de>
 +
 +      * progmodes/cc-cmds.el (c-mask-paragraph): Fix bug #6688:
 +      Auto-fill broken in C/C++ modes.
 +
 +2010-07-29  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * menu-bar.el (menu-bar-showhide-tool-bar-menu-customize-enable-left)
 +      (menu-bar-showhide-tool-bar-menu-customize-disable)
 +      (menu-bar-showhide-tool-bar-menu-customize-enable-right)
 +      (menu-bar-showhide-tool-bar-menu-customize-enable-bottom)
 +      (menu-bar-showhide-tool-bar-menu-customize-enable-top): New functions
 +      (menu-bar-showhide-tool-bar-menu): If tool bar is moveable,
 +      make a menu for Options => toolbar that can move it.
 +
 +2010-07-29  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * emacs-lisp/package-x.el (package--make-rss-entry):
 +      (package-maint-add-news-item, package--update-news)
 +      (package-upload-buffer-internal): New arg ARCHIVE-URL.
 +
 +      * emacs-lisp/package.el (package-archive-url): Rename from
 +      package-archive-id.
 +      (package-install): Doc fix.
 +      (package-download-single, package-download-tar, package-install)
 +      (package-menu-view-commentary): Callers changed.
 +
 +2010-07-29  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/tramp.el (tramp-handle-start-file-process): Check only for
 +      `remote-tty' process property.
 +      (tramp-open-shell): Don't check for tty.
 +      (tramp-open-connection-setup-interactive-shell): Set `remote-tty'
 +      process property.
 +
 +      * progmodes/gdb-mi.el (gdb-init-1): Check also for tty on a remote
 +      host.
 +
 +2010-07-28  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * emacs-lisp/package.el (package-load-list, package-archives)
 +      (package-archive-contents, package-user-dir)
 +      (package-directory-list, package--builtins, package-alist)
 +      (package-activated-list, package-obsolete-alist): Mark as risky.
 +
 +2010-07-28  Phil Hagelberg  <phil@evri.com>
 +
 +      Add support for non-default package repositories.
 +      * emacs-lisp/package.el (package-archive-base): Var deleted.
 +      (package-archives): New variable.
 +      (package-archive-contents): Doc fix.
 +      (package-load-descriptor): Do nothing if descriptor file is missing.
 +      (package--write-file-no-coding): New function.
 +      (package-unpack-single): Use it.
 +      (package-archive-id): New function.
 +      (package-download-single, package-download-tar)
 +      (package-menu-view-commentary): Use it.
 +      (package-installed-p): Make second argument optional.
 +      (package-read-all-archive-contents): New function.
 +      (package-initialize): Use it.
 +      (package-read-archive-contents): Add ARCHIVE argument.
 +      (package--add-to-archive-contents): New function.
 +      (package-install): Don't call package-read-archive-contents.
 +      (package--download-one-archive): Store archive file in a
 +      subdirectory of package-user-dir.
 +      (package-menu-execute): Remove spurious line movement.
 +
 +2010-07-28  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * cus-start.el (tool-bar-style): Add text-image-horiz.
 +
 +2010-07-28  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * progmodes/gud.el (gud-common-init): Check for remoteness of
 +      `file', and not of `default-directory'.
 +
 +2010-07-28  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/tramp.el (tramp-methods): Move hostname to the end in all
 +      ssh `tramp-login-args'.
 +      (tramp-verbose): Describe verbose level 9.
 +      (tramp-open-shell): Check for tty if `tramp-verbose' >= 9.
 +      (tramp-open-connection-setup-interactive-shell): Trace stty
 +      settings if `tramp-verbose' >= 9.
 +      (tramp-handle-start-file-process): Implement tty setting.
 +      (Bug#4604, Bug#6360)
 +
 +      * net/tramp-cmds.el (tramp-bug): Recommend setting of
 +      `tramp-verbose' to 9.
 +
 +2010-07-27  Aaron S. Hawley  <ashawley@burlingtontelecom.net>
 +
 +      * emacs-lisp/re-builder.el (reb-re-syntax, reb-lisp-mode)
 +      (reb-lisp-syntax-p, reb-change-syntax, reb-cook-regexp):
 +      Remove references to package `lisp-re' (bug#4369).
 +
 +2010-07-27  Tom Tromey  <tromey@redhat.com>
 +
 +      * progmodes/js.el (js-mode):
 +      * progmodes/make-mode.el (makefile-mode):
 +      * progmodes/simula.el (simula-mode):
 +      * progmodes/tcl.el (tcl-mode): Derive from prog-mode.
 +
 +2010-07-27  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * help-fns.el (find-lisp-object-file-name): Doc fix (bug#6494).
 +
 +      * time.el (display-time-day-and-date): Remove spurious * in docstring.
 +      (display-time-world-buffer-name, display-time-world-mode-map):
 +      Fix typos in docstrings.
 +
 +2010-07-27  Shyam Karanatt  <shyam@swathanthran.in>  (tiny change)
 +
 +      * image-mode.el (image-display-size): New function.
 +      (image-forward-hscroll, image-next-line, image-eol, image-eob)
 +      (image-mode-fit-frame): Use it (Bug#6639).
 +
 +2010-07-27  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * dired.el (dired-buffers-for-dir): Handle list values of
 +      dired-directory (Bug#6636).
 +
 +2010-07-26  Sam Steingold  <sds@gnu.org>
 +
 +      * mouse.el (mouse-yank-primary, mouse-yank-secondary):
 +      Do not call `x-get-selection' the second time, reuse the value.
 +
 +2010-07-26  Daiki Ueno  <ueno@unixuser.org>
 +
 +      * epa-mail.el (epa-mail-mode-map): Add alternative key bindings
 +      which consist of control chars only.  Suggested by Richard Stallman.
 +
 +2010-07-25  Daiki Ueno  <ueno@unixuser.org>
 +
 +      * epa-file.el (epa-file-insert-file-contents): Check if LOCAL-FILE
 +      exists before passing an error to find-file-not-found-functions
 +      (bug#6723).
 +
 +2010-07-23  Lukas Huonker  <l.huonker@gmail.com>
 +
 +      * play/tetris.el (tetris-tty-colors, tetris-x-colors, tetris-blank):
 +      Remove leading nil element, adjust values.
 +      (tetris-shapes, tetris-shape-scores):
 +      Change representation of shapes and remove some redundancy.
 +      (tetris-get-shape-cell, tetris-shape-width, tetris-draw-next-shape)
 +      (tetris-draw-shape, tetris-erase-shape, tetris-test-shape):
 +      Adjust for working with new representation of shapes.
 +      (tetris-shape-rotations): New function.
 +      (tetris-move-bottom, tetris-move-left, tetris-move-right)
 +      (tetris-rotate-prev, tetris-rotate-next):
 +      Adjust for working with the new version of tetris-test-shape.
 +
 +2010-07-23  Markus Triska  <markus.triska@gmx.at>
 +
 +      * progmodes/ps-mode.el: Use comint (bug#5954).
 +      (ps-run-mode-map): Adapt for comint-mode; omit "\r", [return]..
 +      (ps-mode-other-newline): Simplify.
 +      (ps-run-mode): Derive from comint-mode instead of
 +      fundamental-mode, yielding input history etc.
 +      (ps-run-start, ps-run-quit, ps-run-clear, ps-run-region)
 +      (ps-run-send-string): Adapt for comint-mode.
 +      (ps-run-newline): Remove now unneeded function.
 +
 +2010-07-23  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/tramp.el (tramp-methods): Move hostname to the end in all
 +      plink `tramp-login-args'.
 +
 +2010-07-23  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/tramp.el (tramp-open-shell): New defun.
 +      (tramp-find-shell, tramp-open-connection-setup-interactive-shell):
 +      Use it.
 +
 +2010-07-23  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/tramp.el (tramp-file-name-regexp-unified)
 +      (tramp-completion-file-name-regexp-unified): On W32 systems, do
 +      not regard the volume letter as remote filename.  (Bug#5447)
 +
 +2010-07-23  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * custom.el (custom-declare-variable): Give a clearer error message
 +      when the docstring is missing (bug#6476).
 +
 +2010-07-22  Michael R. Mauger  <mmaug@yahoo.com>
 +
 +      * progmodes/sql.el: Version 2.4.  Improved Login prompting.
 +      (sql-login-params): New widget definition.
 +      (sql-oracle-login-params, sql-mysql-login-params)
 +      (sql-solid-login-params, sql-sybase-login-params)
 +      (sql-informix-login-params, sql-ingres-login-params)
 +      (sql-ms-login-params, sql-postgres-login-params)
 +      (sql-interbase-login-params, sql-db2-login-params)
 +      (sql-linter-login-params): Use it.
 +      (sql-sqlite-login-params): Use it; Define "database" parameter as
 +      a file name.
 +      (sql-sqlite-program): Change to "sqlite3".
 +      (sql-comint-sqlite): Make sure database name is complete.
 +      (sql-for-each-login): New function.
 +      (sql-connect, sql-save-connection): Use it.
 +      (sql-get-login-ext): New function.
 +      (sql-get-login): Use it.
 +      (sql-make-alternate-buffer-name): Handle :file parameters.
 +
 +2010-07-22  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * dired.el (dired-no-confirm): Document value t and fix defcustom to
 +      accept it (bug#6597).  Suggested by Drew Adams <drew.adams@oracle.com>.
 +
 +2010-07-22  Teemu Likonen  <tlikonen@iki.fi>  (tiny change)
 +
 +      * dired.el (dired-mode-map): Use command remapping (bug#6632).
 +
 +2010-07-22  Lawrence Mitchell  <wence@gmx.li>
 +
 +      * term/vt100.el (vt100-wide-mode): Fix :init-value keyword (bug#6620).
 +
 +2010-07-21  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/tramp.el (tramp-get-ls-command)
 +      (tramp-get-ls-command-with-dired): Run tests on "/dev/null"
 +      instead of "/".
 +
 +2010-07-20  Michael R. Mauger  <mmaug@yahoo.com>
 +
 +      * progmodes/sql.el: Version 2.3.
-       * progmodes/compile.el (buffer-modtime): New buffer-local variable:
-       the buffer modification time, for buffers not associated with files.
++      (sql-connection-alist): Change keys from symbols to strings;
 +      enhanced the widget definition.
 +      (sql-mode-menu): Add submenu to select connections.
 +      (sql-interactive-mode-menu): Add "Save Connection" item.
 +      (sql-add-product): Fix menu item.
 +      (sql-get-product-feature): Improved error handling.
 +      (sql--alt-buffer-part, sql--alt-if-not-empty): Removed.
 +      (sql-make-alternate-buffer-name): Simplified.
 +      (sql-product-interactive): Handle missing product.
 +      (sql-connect): Support string keys, minor improvements.
 +      (sql-save-connection): New function.
 +      (sql-connection-menu-filter): New function.
 +
 +2010-07-20  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/tramp.el (tramp-file-name-handler): Trace 'quit.
 +      (tramp-open-connection-setup-interactive-shell):
 +      Apply workaround for IRIX64 bug.  Move argument of last
 +      `tramp-send-command' where it belongs to.
 +
 +2010-07-20  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/tramp.el (tramp-perl-file-attributes)
 +      (tramp-perl-directory-files-and-attributes): Don't pass "$3".
 +      (tramp-maybe-open-connection): Use `async-args' and `gw-args' in
 +      front of `login-args'.
 +
 +2010-07-19  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * time.el (display-time-world-mode): Define with `define-derived-mode'.
 +      Set `show-trailing-whitespace' to nil.
 +      (display-time-world-display): Simplify.
 +
 +2010-07-18  Alan Mackenzie  <acm@muc.de>
 +
 +      Enhance `c-file-style' in file/directory local variables.
 +      * progmodes/cc-mode.el (c-count-cfss): New function.
 +      (c-before-hack-hook): Call `c-set-style' differently according to
 +      whether c-file-style was set in file or directory local
 +      variables.
 +
 +2010-07-18  Michael R. Mauger  <mmaug@yahoo.com>
 +
 +      * progmodes/sql.el: Version 2.2.
 +      (sql-product, sql-user, sql-database, sql-server, sql-port):
 +      Use defcustom :safe keyword rather than putting safe-local-variable
 +      property.
 +      (sql-password): Use defcustom :risky keyword rather than putting
 +      risky-local-variable property.
 +      (sql-oracle-login-params, sql-sqlite-login-params)
 +      (sql-solid-login-params, sql-sybase-login-params)
 +      (sql-informix-login-params, sql-ingres-login-params)
 +      (sql-ms-login-params, sql-postgres-login-params)
 +      (sql-interbase-login-params, sql-db2-login-params)
 +      (sql-linter-login-params): Add `port' option.
 +      (sql-get-product-feature): Add NO-INDIRECT parameter.
 +      (sql-comint-oracle, sql-comint-sybase)
 +      (sql-comint-informix, sql-comint-sqlite, sql-comint-mysql)
 +      (sql-comint-solid, sql-comint-ingres, sql-comint-ms)
 +      (sql-comint-postgres, sql-comint-interbase, sql-comint-db2)
 +      (sql-comint-linter): Rename sql-connect-* functions to
 +      sql-comint-*.
 +      (sql-product-alist, sql-mode-menu): Rename as above and
 +      :sqli-connect-func to :sqli-comint-func.
 +      (sql-connection): New variable.
 +      (sql-interactive-mode): Set it.
 +      (sql-connection-alist): New variable.
 +      (sql-connect): New function.
 +      (sql--alt-buffer-part, sql--alt-if-not-empty)
 +      (sql-make-alternate-buffer-name): Improved alternative buffer name.
 +
 +2010-07-17  Thierry Volpiatto  <thierry.volpiatto@gmail.com>
 +
 +      * image-mode.el (image-bookmark-make-record): Do not set context
 +      in an image (Bug#6650).
 +
 +2010-07-17  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * simple.el (select-active-region): New function.
 +      (push-mark-command, set-mark, activate-mark)
 +      (handle-shift-selection): Use it.
 +      (deactivate-mark): Don't check for size of region.
 +
 +      * mouse.el (mouse-drag-track): Use select-active-region.
 +
 +2010-07-17  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/tramp.el (tramp-get-ls-command-with-dired): Make test for
 +      "--dired" stronger.
 +
 +2010-07-17  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * term/x-win.el (x-select-enable-primary): Change default to nil.
 +      (x-select-enable-clipboard): Add :version keyword.
 +
 +      * mouse.el (mouse-drag-copy-region):
 +      * simple.el (select-active-regions): Likewise.
 +
 +2010-07-16  Reiner Steib  <Reiner.Steib@gmx.de>
 +
 +      * vc/vc.el (vc-coding-system-inherit-eol): New defvar.
 +      (vc-coding-system-for-diff): Use it to decide whether to inherit
 +      from the file the EOL format for reading the diffs of that file.
 +      (Bug#4451)
 +
 +2010-07-16  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * mail/rmailmm.el (rmail-mime-save): Make the temp buffer
 +      unibyte, so compressed attachments are not compressed again.
 +
 +2010-07-16  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/tramp.el (tramp-handle-shell-command): Don't use hard-wired
 +      "/bin/sh" but `tramp-remote-sh' from `tramp-methods'.
 +      (tramp-find-shell): Simplify setting connection property.
 +      (tramp-get-ls-command): Make test for "--color=never" stronger.
 +
 +2010-07-15  Simon South  <ssouth@member.fsf.org>
 +
 +      * progmodes/delphi.el (delphi-previous-indent-of): Indent case
 +      blocks within record declarations (i.e. variant parts) correctly.
 +
 +2010-07-15  Simon South  <ssouth@member.fsf.org>
 +
 +      * progmodes/delphi.el (delphi-token-at): Give newlines precedence
 +      over literal tokens when parsing so newlines aren't "absorbed" by
 +      single-line comments.  Corrects the indentation of case blocks
 +      that have a comment on the first line.
 +
 +2010-07-14  Karl Fogel  <kfogel@red-bean.com>
 +
 +      * bookmark.el (bookmark-load-hook): Fix doc string as suggested
 +      by Drew Adams (Bug#5504).
 +
 +2010-07-14  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * xt-mouse.el (xterm-mouse-event-read): Fix for characters > 127
 +      now that Unicode is used (Bug#6594).
 +
 +2010-07-14  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * term/x-win.el (x-select-enable-clipboard): Default to t.
 +      (x-initialize-window-system): Don't overwrite Paste menu item.
 +
 +      * simple.el (select-active-regions): Default to t.
 +      (push-mark-command): Don't overwrite primary with empty string.
 +
 +      * mouse.el: Bind mouse-2 to mouse-yank-primary.
 +      (mouse-drag-copy-region): Default to nil.
 +
 +      * menu-bar.el (menu-bar-enable-clipboard): Don't overwrite
 +      Cut/Copy/Paste menu bar items.
 +
 +2010-07-13  Thierry Volpiatto  <thierry.volpiatto@gmail.com>
 +
 +      Allow C-w when setting a bookmark in a Gnus Article buffer (Bug#5975).
 +      Patch applied by Karl Fogel.
 +
 +      * bookmark.el (bookmark-set): Don't set `bookmark-yank-point'
 +      and `bookmark-current-buffer' if they have been already set in
 +      another buffer (e.g gnus-art).
 +
 +2010-07-13  Karl Fogel  <kfogel@red-bean.com>
 +            Thierry Volpiatto  <thierry.volpiatto@gmail.com>
 +
 +      Preparation for setting bookmarks in Gnus article buffers (Bug#5975).
 +
 +      * bookmark.el (bookmark-make-record-default): Allow unneeded
 +      information to be omitted from the record.
 +
 +      Adjust declarations and calls:
 +
 +      * info.el (bookmark-make-record-default): Adjust declaration.
 +      (Info-bookmark-make-record): Adjust call.
 +
 +      * woman.el (bookmark-make-record-default): Adjust declaration.
 +      (woman-bookmark-make-record): Adjust call.
 +
 +      * man.el (bookmark-make-record-default): Adjust declaration.
 +      (Man-bookmark-make-record): Adjust call.
 +
 +      * image-mode.el (bookmark-make-record-default): Adjust declaration.
 +
 +      * doc-view.el (bookmark-make-record-default): Adjust declaration.
 +
 +2010-07-13  Karl Fogel  <kfogel@red-bean.com>
 +
 +      * bookmark.el (bookmark-show-annotation): Use `when' instead of `if'.
 +      This is also from Thierry Volpiatto's patch in bug #6444.  However,
 +      because it was extraneous to the functional change in that patch,
 +      and causes a re-indendation, I am committing it separately.
 +
 +2010-07-13  Thierry Volpiatto  <thierry.volpiatto@gmail.com>
 +
 +      * bookmark.el (bookmark-show-annotation): Ensure annotations show,
 +      e.g. in Info bookmarks, by using `switch-to-buffer-other-window'.
 +      Patch applied by Karl Fogel (Bug#6444).
 +
 +2010-07-13  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * frame.el (make-frame): Fix typo in 2010-06-30 change (Bug#6625).
 +
 +2010-07-13  Adrian Robert  <Adrian.B.Robert@gmail.com>
 +
 +      * term/ns-win.el: Bind M-~ to 'ns-prev-frame (due to Matthew
 +      Dempsky; bug#5084).  Remove incorrect binding for S-tab.
 +      (ns-alternatives-map): Change S-tab binding to backtab
 +      (bug#6616).
 +
 +      * simple.el (normal-erase-is-backspace-setup-frame): Set mode on
 +      under ns.
 +
 +2010-07-12  Andreas Schwab  <schwab@linux-m68k.org>
 +
 +      * language/tai-viet.el ("TaiViet"): Try to fix re-encoding bugs.
 +      (Bug#5806)
 +
 +      * language/tv-util.el (tai-viet-re): Remove format.
 +
 +2010-07-12  Kenichi Handa  <handa@m17n.org>
 +
 +      * language/hebrew.el: Remove no-byte-compile declaration.
 +      Change coding: tag to utf-8.  Register hebrew-shape-gstring in
 +      composition-function-table for 3-character looking back.
 +      (hebrew-font-get-precomposed): New function.
 +      (hebrew-shape-gstring): Utilize precomposed glyphs if available.
 +
 +2010-07-11  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * mouse.el (mouse-drag-track): Handle select-active-regions
 +      (Bug#6612).
 +
 +2010-07-11  Magnus Henoch  <magnus.henoch@gmail.com>
 +
 +      * net/tramp-gvfs.el (tramp-gvfs-handle-copy-file): Do not pass
 +      empty argument to gvfs-copy.
 +
 +2010-07-10  Glenn Morris  <rgm@gnu.org>
 +
 +      * calendar/calendar.el (calendar-week-end-day): New function.
 +      * calendar/cal-tex.el (cal-tex-cursor-month): Remove unused vars.
 +      Respect calendar-week-start-day.  (Bug#6606)
 +      (cal-tex-insert-day-names, cal-tex-insert-blank-days)
 +      (cal-tex-insert-blank-days-at-end): Respect calendar-week-start-day.
 +      (cal-tex-first-blank-p, cal-tex-last-blank-p): Simplify, and
 +      respect calendar-week-start-day.
 +
 +2010-07-10  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * simple.el (use-region-p): Doc fix (Bug#6607).
 +
 +2010-07-10  Aleksei Gusev  <aleksei.gusev@gmail.com>  (tiny change)
 +
 +      * progmodes/compile.el (compilation-error-regexp-alist-alist):
 +      Add regexps for cucumber and ruby.
 +
 +2010-07-08  Daiki Ueno  <ueno@unixuser.org>
 +
 +      * epa-file.el (epa-file-error, epa-file--find-file-not-found-function)
 +      (epa-file-insert-file-contents): Hack to prevent
 +      find-file from opening empty buffer when decryption failed
 +      (bug#6568).
 +
 +2010-07-07  Agustín Martín  <agustin.martin@hispalinux.es>
 +
 +      * textmodes/ispell.el (ispell-alternate-dictionary):
 +      Use file-readable-p.
 +      Return nil if no word-list is found at default locations.
 +      (ispell-complete-word-dict): Default to nil.
 +      (ispell-command-loop): Use 'word-list' when using lookup-words.
 +      (lookup-words): Use ispell-complete-word-dict or
 +      ispell-alternate-dictionary.  Check for word-list availability
 +      and handle errors if needed with better messages (Bug#6539).
 +      (ispell-complete-word): Use ispell-complete-word-dict or
 +      ispell-alternate-dictionary.
 +
 +2010-07-07  Christoph Scholtes  <cschol2112@gmail.com>
 +
 +      * progmodes/python.el (python-font-lock-keywords): Add Python 2.7
 +      builtins (BufferError, BytesWarning, WindowsError; callables
 +      bin, bytearray, bytes, format, memoryview, next, print; __package__).
 +
 +2010-07-07  Glenn Morris  <rgm@gnu.org>
 +
 +      * play/zone.el (top-level): Do not require timer, tabify, or cl.
 +      (zone-shift-left): Ignore intangibility, and any errors from
 +      forward-char.
 +      (zone-shift-right): Remove no-op end-of-line.  Ignore intangibility.
 +      (zone-pgm-putz-with-case): Use upcase-region rather than inserting,
 +      deleting, and copying text properties.
 +      (zone-line-specs, zone-pgm-stress): Check forward-line exit status.
 +      (zone-pgm-rotate): Handle odd buffers like that of gomoku, where getting
 +      to point-max is hard.
 +      (zone-fret, zone-fill-out-screen): Replace cl's do with dotimes.
 +      (zone-fill-out-screen): Ignore intangibility.
 +
 +2010-07-05  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * menu-bar.el (menu-bar-mode):
 +      * tool-bar.el (tool-bar-mode): Replace default-frame-alist element
 +      if it has been set.
 +
 +      * mouse.el (mouse-drag-track): Call mouse-start-end to handle
 +      word/line selection (Bug#6565).
 +
 +2010-07-04  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * net/dbus.el (dbus-send-signal): Declare function.
 +
 +2010-07-04  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/dbus.el: Implement signal "PropertiesChanged" (from D-Bus 1.3.1).
 +      (dbus-register-property): New optional argument EMITS-SIGNAL.
 +      (dbus-property-handler): Send signal "PropertiesChanged" if requested.
 +
 +2010-07-03  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * mouse.el (mouse-drag-overlay): Variable deleted.
 +      (mouse-move-drag-overlay, mouse-show-mark): Functions deleted.
 +      (mouse--remap-link-click-p): New function.
 +      (mouse-drag-track): Handle dragging by using temporary Transient
 +      Mark mode, instead of a special overlay.
 +      (mouse-kill-ring-save, mouse-save-then-kill): Don't call
 +      mouse-show-mark.
 +
 +      * mouse-sel.el (mouse-sel-selection-alist): mouse-drag-overlay
 +      deleted.
 +
 +2010-07-02  Juri Linkov  <juri@jurta.org>
 +
 +      * autoinsert.el (auto-insert-alist): Fix readability
 +      by using dotted pair notation for lambda.
 +
 +2010-07-02  Juri Linkov  <juri@jurta.org>
 +
 +      * faces.el (read-face-name): Rename arg `string-describing-default'
 +      to `default'.  Doc fix.  Display the default value in quotes
 +      in the prompt.  With empty input, return the `default' arg,
 +      unless the default value is a string (in which case return nil).
 +      (describe-face): Replace the string `default' arg of `read-face-name'
 +      with the symbol `default'.
 +
 +2010-07-02  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * emulation/viper-cmd.el (viper-delete-backward-char)
 +      (viper-del-backward-char-in-insert)
 +      (viper-del-backward-char-in-replace, viper-change)
 +      (viper-backward-indent): Replace delete-backward-char with
 +      delete-char (Bug#6552).
 +
 +2010-07-01  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * ruler-mode.el (ruler--save-header-line-format): Fix typos.
 +
 +2010-06-30  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * frame.el (make-frame): Add default-frame-alist to the PARAMETERS
 +      argument passed to frame-creation-function (Bug#5378).
 +
 +      * faces.el (x-handle-named-frame-geometry)
 +      (x-handle-reverse-video, x-create-frame-with-faces)
 +      (face-set-after-frame-default, tty-create-frame-with-faces):
 +      Don't separately consult default-frame-alist.  It is now passed as the
 +      PARAMETER argument.
 +
 +2010-06-30  Andreas Schwab  <schwab@linux-m68k.org>
 +
 +      * startup.el (command-line): Don't call tool-bar-setup in a
 +      tty-only build.
 +
 +2010-06-30  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * ruler-mode.el (ruler--save-header-line-format): New fun.
 +      (ruler-mode): Use it as a setter function, so as not to overwrite
 +      ruler-mode-header-line-format-old if Ruler mode is on (Bug#5370).
 +
 +2010-06-29  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * vc/vc.el (vc-deduce-backend): New fun.  Handle diff buffers.
 +      (vc-root-diff, vc-print-root-log, vc-log-incoming)
 +      (vc-log-outgoing): Use it.
 +      (vc-diff-internal): Set diff-vc-backend.
 +
 +      * vc/diff-mode.el (diff-vc-backend): New var.
 +
 +2010-06-28  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * dynamic-setting.el (font-setting-change-default-font):
 +      Remove call to message.
 +
 +2010-06-28  Kenichi Handa  <handa@m17n.org>
 +
 +      * international/quail.el (quail-insert-kbd-layout): Fix the
 +      showing of untranslated characters.
 +
 +2010-06-28  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * simple.el (delete-active-region): New option.
 +      (delete-backward-char): Implement in Lisp.
 +      (delete-forward-char): New command.
 +
 +      * mouse.el (mouse-region-delete-keys): Deleted.
 +      (mouse-show-mark): Simplify.
 +
 +      * bindings.el (global-map): Bind delete and DEL, the former to
 +      delete-forward-char.
 +
 +2010-06-27  Lennart Borgman  <lennart.borgman@gmail.com>
 +
 +      * progmodes/ruby-mode.el (ruby-mode-map): Don't bind TAB.
 +      (ruby-mode): Bind indent-line-function (Bug#5119).
 +
 +2010-06-27  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * startup.el (command-line): Recognize "0" X resource value.
 +
 +2010-06-27  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * startup.el (command-line): Use X resources to set the value of
 +      menu-bar-mode and tool-bar-mode, before calling frame-initialize.
 +
 +      * menu-bar.el (menu-bar-mode):
 +      * tool-bar.el (tool-bar-mode): Don't change default-frame-alist.
 +      Set init-value to t.
 +
 +      * frame.el (frame-notice-user-settings): Don't change
 +      default-frame-alist based on menu-bar-mode and tool-bar-mode, or
 +      vice versa (Bug#2249).
 +
 +2010-06-26  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * w32-fns.el (w32-convert-standard-filename): Doc fix.
 +
 +2010-06-25  Agustín Martín  <agustin.martin@hispalinux.es>
 +
 +      * textmodes/flyspell.el (flyspell-check-previous-highlighted-word):
 +      Make sure `flyspell-word' re-checks word after function run (Bug#6504).
 +
 +      * textmodes/ispell.el (ispell-init-process): Make sure ispell and
 +      default directories are expanded (Bug#6143).
 +
 +2010-06-24  Juri Linkov  <juri@jurta.org>
 +
 +      * minibuffer.el (completions-format): Change default from nil to
 +      `horizontal'.  Remove `nil' value from :type.  Doc fix.  (Bug#6459)
 +
 +2010-06-24  Juri Linkov  <juri@jurta.org>
 +
 +      * vc/vc.el (vc-diff-internal): Set `revert-buffer-function'
 +      buffer-locally to lambda that re-runs the vc diff command.
 +      (Bug#6447)
 +
 +2010-06-24  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * kmacro.el (kmacro-call-macro): Don't issue hint message if the
 +      echo area is in use (Bug#3412).
 +
 +2010-06-22  Glenn Morris  <rgm@gnu.org>
 +
 +      * textmodes/texinfmt.el (texinfo-format-region)
 +      (texinfo-raise-lower-sections, texinfo-format-separate-node)
 +      (texinfo-itemize-item, texinfo-multitable-item, texinfo-alias)
 +      (texinfo-format-option, texinfo-noindent):
 +      Use line-beginning-position and line-end-position.
 +
 +      * calc/calc-aent.el, calc/calc-ext.el, calc/calc-lang.el:
 +      * calc/calc-store.el, calc/calc-units.el, calc/calc.el:
 +      * calc/calccomp.el: Add explicit utf-8 coding cookies to files with
 +      utf-8 characters.
 +
 +2010-06-21  Karl Fogel  <kfogel@red-bean.com>
 +
 +      * play/zone.el (zone-fall-through-ws): Fix next-line ->
 +      forward-line fallout.
 +
 +2010-07-06  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * mouse.el (mouse-appearance-menu): Add docstring.
 +
 +      * help.el (describe-key): Print up-event using key-description.
 +
 +2010-07-03  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/zeroconf.el (zeroconf-resolve-service)
 +      (zeroconf-service-resolver-handler): Use `dbus-byte-array-to-string'.
 +      (zeroconf-publish-service): Use `dbus-string-to-byte-array'.
 +
 +2010-07-03  Jan Moringen  <jan.moringen@uni-bielefeld.de>
 +
 +      * net/zeroconf.el (zeroconf-service-remove-hook): New defun.
 +
 +2010-06-30  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      Avoid displaying files with a nil state in vc-dir.
 +      * vc/vc-dir.el (vc-dir-update): Obey the noinsert argument in all
 +      cases that cause insertion.
 +      (vc-dir-resynch-file): Tell vc-dir-update to avoid inserting files
 +      with a nil state.
 +
 +2010-06-30  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * xml.el (xml-parse-region): Avoid infloop (Bug#5281).
 +
 +2010-06-29  Leo  <sdl.web@gmail.com>
 +
 +      * emacs-lisp/rx.el (rx): Doc fix.  (Bug#6537)
 +
 +2010-06-27  Oleksandr Gavenko  <gavenkoa@gmail.com>  (tiny change)
 +
 +      * generic-x.el (bat-generic-mode): Fix regexp for command line
 +      switches (Bug#5719).
 +
 +2010-06-27  Masatake YAMATO  <yamato@redhat.com>
 +
 +      * htmlfontify.el (hfy-face-attr-for-class): Use append instead
 +      of nconc to avoid pure storage error (Bug#6239).
 +
 +2010-06-27  Christoph  <cschol2112@googlemail.com>  (tiny change)
 +
 +      * bookmark.el (bookmark-bmenu-2-window, bookmark-bmenu-other-window)
 +      (bookmark-bmenu-other-window-with-mouse): Remove unnecessary
 +      bindings of bookmark-automatically-show-annotations (Bug#6515).
 +
 +2010-06-25  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * arc-mode.el (archive-zip-extract): Don't quote the file name on
 +      MS-Windows and MS-DOS.  (Bug#6467, Bug#6144)
 +
 +2010-06-24  Štěpán Němec  <stepnem@gmail.com>  (tiny change)
 +
 +      * comint.el (make-comint, make-comint-in-buffer): Mention return
 +      value in the docstrings.  (Bug#6498)
 +
 +2010-06-24  Yoni Rabkin  <yoni@rabkins.net>
 +
 +      * bs.el (bs-mode-font-lock-keywords): Remove "by" from Dired pattern,
 +      since it is not present when using some non-default switches.
 +
 +2010-06-23  Karl Fogel  <kfogel@red-bean.com>
 +
 +      * simple.el (compose-mail): Fix doc string to refer to
 +      `compose-mail-user-agent-warnings', instead of to the
 +      nonexistent `compose-mail-check-user-agent'.
 +
 +2010-06-21  Alan Mackenzie  <bug-cc-mode@gnu.org>
 +
 +      Fix an indentation bug:
 +
 +      * progmodes/cc-mode.el (c-common-init): Initialise c-new-BEG/END.
 +      (c-neutralize-syntax-in-and-mark-CPP): c-new-BEG/END: Take account
 +      of existing values.
 +
 +      * progmodes/cc-engine.el (c-clear-<-pair-props-if-match-after)
 +      (c-clear->-pair-props-if-match-before): now return t when they've
 +      cleared properties, nil otherwise.
 +      (c-before-change-check-<>-operators): Set c-new-beg/end correctly
 +      by taking account of the existing value.
 +
 +      * progmodes/cc-defs.el
 +      (c-clear-char-property-with-value-function): Fix this to clear the
 +      property rather than overwriting it with nil.
 +
 +2010-06-20  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * emacs-lisp/package.el (package-print-package): Add link to
 +      package description via describe-package.
 +      (describe-package-1): List package requirements.  Add button to
 +      perform installation.
 +      (package-menu-describe-package): New command.
 +
 +      * help-mode.el (help-package): New button type.
 +
 +2010-06-19  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * emacs-lisp/package.el: Move package-list-packages binding to
 +      menu-bar.el.
 +      (describe-package, describe-package-1, package--dir): New funs.
 +      (package-activate-1): Use package--dir.
 +
 +      * emacs-lisp/package-x.el (gnus-article-buffer): Require package.
 +
 +      * help-mode.el (help-package-def): New button type.
 +
 +      * menu-bar.el: Move package-list-packages binding here from
 +      package.el.
 +
 +2010-06-19  Gustav Hållberg  <gustav@gmail.com>  (tiny change)
 +
 +      * descr-text.el (describe-char): Avoid trailing whitespace.  (Bug#6423)
 +
 +2010-06-18  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * emacs-lisp/edebug.el (edebug-read-list):
 +      Phase out old-style backquotes.
 +
 +2010-06-17  Juri Linkov  <juri@jurta.org>
 +
 +      * help-mode.el (help-mode): Set buffer-local variable
 +      revert-buffer-function to help-mode-revert-buffer.
 +      (help-mode-revert-buffer): New function.
 +
 +      * info.el (Info-revert-find-node): Check for major-mode Info-mode
 +      before popping to "*info*" (like in other Info functions).
 +      Keep buffer-name in old-buffer-name.  Keep Info-history-forward in
 +      old-history-forward.  Pop to old-buffer-name or "*info*" to
 +      recreate the killed buffer.  Set Info-history-forward from
 +      old-history-forward.
 +      (Info-breadcrumbs-depth): Add :group and :version.
 +
 +2010-06-17  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * emacs-lisp/package.el (package-menu-mode-map): Add a menu.
 +
 +2010-06-17  Agustín Martín  <agustin.martin@hispalinux.es>
 +
 +      * textmodes/ispell.el (ispell-aspell-find-dictionary): Fix regexp
 +      for languages like Portuguese with pt_{BR,PT} and no plain pt.
 +
 +2010-06-17  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * emacs-lisp/package.el (package-menu-mode-map):
 +      Move initialization into declaration.
 +
 +      * menu-bar.el (menu-bar-options-menu): Fix typo in menu entry.
 +
 +2010-06-17  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * emacs-lisp/package.el (package-archive-base): Point to
 +      elpa.gnu.org.
 +      (package-enable, package-load-list): New defcustoms.
 +      (package-user-dir, package-directory-list): Turn into defcustoms.
 +      Don't include package-user-dir in package-directory-list.
 +      (package--builtins-base): Don't include Emacs as a "package".
 +      (package-subdirectory-regexp): New var.
 +      (package-load-all-descriptors, package-compute-transaction)
 +      (package-download-transaction): Obey package-load-list.
 +      (package-activate-1): Rename from package-do-activate.
 +      (package-list-packages-internal): Check package-load-list.
 +      (package-load-descriptor, package-generate-autoloads)
 +      (package-unpack, package-unpack-single)
 +      (package--read-archive-file, package-delete):
 +      Use expand-file-name.
 +
 +      * emacs-lisp/package-x.el: New file.  Package uploading
 +      functionality split out from package.el.
 +
 +      * startup.el (command-line): Load packages after reading init file.
 +
 +2010-06-17  Tom Tromey  <tromey@redhat.com>
 +
 +      * emacs-lisp/package.el: New file.
 +
 +2010-06-22  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      Fix vc-annotate for renamed files when using Git.
 +      * vc/vc-git.el (vc-git-find-revision): Deal with empty results from
 +      ls-files.  Doe not pass the object as a file name to cat-file, it
 +      is not a file name.
 +      (vc-git-annotate-command): Pass the file name using -- to avoid
 +      ambiguity with the revision.
 +      (vc-git-previous-revision): Pass a relative file name.
 +
 +2010-06-22  Glenn Morris  <rgm@gnu.org>
 +
 +      * progmodes/js.el (js-mode-map): Use standard capitalization and
 +      ellipses for menu entries.
 +
 +      * wid-edit.el (widget-complete): Doc fix.
 +
 +2010-06-22  Jürgen Hötzel  <juergen@hoetzel.info>  (tiny change)
 +
 +      * wid-edit.el (widget-complete): Fix typo in 2009-12-02 change.
 +
 +2010-06-22  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      Fix annotating other revisions for renamed files in vc-annotate.
 +      * vc/vc-annotate.el (vc-annotate): Add an optional argument for the
 +      VC backend.  Use it when non-nil.
 +      (vc-annotate-warp-revision): Pass the VC backend to vc-annotate.
 +      (Bug#6487).
 +
 +      Fix vc-annotate-show-changeset-diff-revision-at-line for git.
 +      * vc/vc-annotate.el (vc-annotate-show-diff-revision-at-line-internal):
 +      Do not pass the file name to the 'previous-revision call when we
 +      don't want a file diff.  (Bug#6489)
 +
 +2010-06-21  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      Fix finding revisions for renamed files in vc-annotate.
 +      * vc/vc.el (vc-find-revision): Add an optional argument for
 +      the VC backend.  Use it when non-nil.
 +      * vc/vc-annotate.el (vc-annotate-find-revision-at-line): Pass the VC
 +      backend to vc-find-revision.  (Bug#6487)
 +
 +2010-06-21  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      Fix reading file names in Git annotate buffers.
 +      * vc/vc-git.el (vc-git-annotate-extract-revision-at-line):
 +      Remove trailing whitespace.  Suggested by Eric Hanchrow.  (Bug#6481)
 +
 +2010-06-20  Alan Mackenzie  <acm@muc.de>
 +
 +      * progmodes/cc-mode.el (c-before-hack-hook): When the mode is set
 +      in file local variables, set it first.
 +
 +2010-06-19  Glenn Morris  <rgm@gnu.org>
 +
 +      * descr-text.el (describe-char-unicode-data): Insert separating
 +      space when needed.  (Bug#6422)
 +
 +      * progmodes/idlwave.el (idlwave-action-and-binding):
 +      Fix typo in 2009-12-03 change.  (Bug#6450)
 +
 +2010-06-17  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * emacs-lisp/macroexp.el (macroexpand-all-1): Put back special
 +      handling for `lambda' (misunderstanding).
 +
 +2010-06-16  Jay Belanger  <jay.p.belanger@gmail.com>
 +
 +      * calc/calc-poly.el (math-accum-factors): Make sure that
 +      constants aren't distributed after they are factored out.
 +
 +2010-06-16  Juri Linkov  <juri@jurta.org>
 +
 +      * facemenu.el (list-colors-display): Call `pop-to-buffer' before
 +      `list-colors-print'.  (Bug#6332)
 +
 +      * subr.el (read-quoted-char): Fix up last change (bug#6290).
 +
 +2010-06-16  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * emacs-lisp/macroexp.el (macroexpand-all-1): Don't handle `lambda'
 +      specially, since it's a macro.  Fix up wrong hint passed to maybe-cons.
 +
 +      * font-lock.el (font-lock-major-mode): Rename from
 +      font-lock-mode-major-mode to distinguish it from
 +      global-font-lock-mode's own font-lock-mode-major-mode (bug#6135).
 +      (font-lock-set-defaults):
 +      * font-core.el (font-lock-default-function): Adjust users.
 +      (font-lock-mode): Don't set it at all.
 +
 +2010-06-16  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * vc/vc-annotate.el (vc-annotate): Use vc-read-revision.
 +
 +2010-06-16  Glenn Morris  <rgm@gnu.org>
 +
 +      * calendar/appt.el (appt-time-msg-list): Doc fix.
 +      (appt-check): Let-bind appt-warn-time.
 +      (appt-add): Make the 3rd argument optional.
 +      Simplify argument names.  Doc fix.  Check for integer WARNTIME.
 +      Only add WARNTIME to the output list if non-nil.
 +
 +2010-06-16  Ivan Kanis  <apple@kanis.eu>
 +
 +      * calendar/appt.el (appt-check): Let the 3rd element of
 +      appt-time-msg-list specify the warning time.
 +      (appt-add): Add new argument with the warning time.  (Bug#5176)
 +
 +2010-06-16  Bob Rogers  <rogers-emacs@rgrjr.dyndns.org>
 +
 +      * vc/vc-svn.el (vc-svn-after-dir-status): Fix regexp for Subversions
 +      older than version 1.6.  (Bug#6361)
 +
 +2010-06-16  Helmut Eller  <eller.helmut@gmail.com>
 +
 +      * emacs-lisp/cl-macs.el (destructuring-bind): Bind `bind-enquote',
 +      used by cl-do-arglist.  (Bug#6408)
 +
 +2010-06-16  Agustín Martín  <agustin.martin@hispalinux.es>
 +
 +      * textmodes/ispell.el (ispell-dictionary-base-alist):
 +      Fix portuguese casechars/not-casechars for missing 'çÇ'.
 +      Suggested by Rolando Pereira (bug#6434).
 +
 +2010-06-15  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * facemenu.el (list-colors-sort): Doc fix.
 +
 +2010-06-15  Bob Rogers  <rogers-emacs@rgrjr.dyndns.org>
 +
 +      * progmodes/sql.el (sql-connect-mysql): Fix typo.
 +
 +2010-06-14  Juri Linkov  <juri@jurta.org>
 +
 +      Add sort option `list-colors-sort'.  (Bug#6332)
 +      * facemenu.el (color-rgb-to-hsv): New function.
 +      (list-colors-sort): New defcustom.
 +      (list-colors-sort-key): New function.
 +      (list-colors-display): Doc fix.  Sort list according to the option
 +      `list-colors-sort'.
 +      (list-colors-print): Add HSV values to `help-echo' property of
 +      RGB strings.
 +
 +2010-06-14  Juri Linkov  <juri@jurta.org>
 +
 +      * compare-w.el: Move to the "vc" subdirectory.
 +
 +2010-06-14  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * image-mode.el (image-mode-map): Remap left-char and right-char.
 +
 +      * nxml/nxml-mode.el (nxml-indent-line): Standardize indent behavior.
 +
 +2010-06-12  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * term/common-win.el (x-colors): Add all the color names defined
 +      in rgb.txt (Bug#6332).
 +
 +      * facemenu.el (list-colors-print): Don't print extra names if it
 +      will overflow the window width.
 +
 +      * vc/log-edit.el (log-edit-font-lock-keywords): Revert 2010-06-02
 +      change (Bug#6343).
 +
 +2010-06-12  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * files.el (make-directory): Doc fix (bug#6396).
 +
 +2010-06-12  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/tramp.el (tramp-remote-process-environment): Protect version
 +      string by apostroph.
 +      (tramp-shell-prompt-pattern): Do not use a shy group in case of
 +      XEmacs.
 +      (tramp-file-name-for-operation): Add `call-process-region'.
 +      (tramp-set-process-query-on-exit-flag): Fix wrong parentheses.
 +
 +      * net/tramp-compat.el (top): Do not autoload
 +      `tramp-handle-file-remote-p'.  Load tramp-util.el and tramp-vc.el
 +      only when `start-file-process' is not bound.
 +      (tramp-advice-file-expand-wildcards): Do not use
 +      `tramp-handle-file-remote-p'.
 +      (tramp-compat-make-temp-file): Handle the case, that
 +      `make-temp-file' has no third argument EXTENSION.
 +
 +2010-06-11  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * makefile.w32-in (WINS_BASIC): Include new directory vc.
 +
 +      * loadup.el ("vc-hooks", "ediff-hook"): Load from lisp/vc/.
 +
 +2010-06-11  Juri Linkov  <juri@jurta.org>
 +
 +      * finder.el (finder-known-keywords): Add keyword "vc"
 +      for version control.
 +
 +      * add-log.el, cvs-status.el, diff.el, diff-mode.el, ediff.el,
 +      * emerge.el, log-edit.el, log-view.el, pcvs.el, smerge-mode.el,
 +      * vc-annotate.el, vc-bzr.el, vc-dir.el, vc-dispatcher.el, vc-git.el,
 +      * vc-hg.el, vc-mtn.el, vc.el: Add keyword "vc".
 +
 +2010-06-11  Juri Linkov  <juri@jurta.org>
 +
 +      Move version control related files to the "vc" subdirectory.
 +      * add-log.el, cvs-status.el, diff.el, diff-mode.el, ediff-diff.el,
 +      * ediff.el, ediff-help.el, ediff-hook.el, ediff-init.el,
 +      * ediff-merg.el, ediff-mult.el, ediff-ptch.el, ediff-util.el,
 +      * ediff-vers.el, ediff-wind.el, emerge.el, log-edit.el, log-view.el,
 +      * pcvs-defs.el, pcvs.el, pcvs-info.el, pcvs-parse.el, pcvs-util.el,
 +      * smerge-mode.el, vc-annotate.el, vc-arch.el, vc-bzr.el, vc-cvs.el,
 +      * vc-dav.el, vc-dir.el, vc-dispatcher.el, vc.el, vc-git.el,
 +      * vc-hg.el, vc-hooks.el, vc-mtn.el, vc-rcs.el, vc-sccs.el, vc-svn.el:
 +      Move files to the "vc" subdirectory.
 +
 +2010-06-11  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * comint.el (comint-password-prompt-regexp): Fix 2010-04-10 change
 +      (Bug#6367).
 +
 +2010-06-11  Stephen Eglen  <stephen@gnu.org>
 +
 +      * shell.el: Bind `shell-resync-dirs' to M-RET.
 +
 +2010-06-10  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * notifications.el: Move file from lisp/net, because it is
 +      supposed to talk locally to the user.
 +
 +2010-06-10  Julien Danjou  <julien@danjou.info>
 +
 +      * net/notifications.el (notifications-on-action-signal)
 +      (notifications-on-closed-signal): Pass notification id as first
 +      argument to the callback functions.  Add docstrings.
 +      (notifications-notify): Fix docstring.
 +
 +2010-06-10  Glenn Morris  <rgm@gnu.org>
 +
 +      * emacs-lisp/authors.el (authors-ignored-files)
 +      (authors-valid-file-names): Add some files.
 +
 +2010-06-10  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * net/rcirc.el (rcirc-server-alist, rcirc, rcirc-connect): Resolve
 +      merge conflict, giving preference to the emacs-23 version of the code.
 +
 +2010-06-09  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * emacs-lisp/advice.el (ad-compile-function):
 +      Define warning-suppress-types before we let-bind it (bug#6275).
 +
 +      * vc-dispatcher.el: Rename mode-line-hook to vc-mode-line-hook;
 +      declare it, make it buffer-local and permanent-local (bug#6324).
 +      (vc-resynch-window): Adjust name.
 +      * vc-hooks.el (vc-find-file-hook): Adjust name.
 +
 +2010-06-09  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/notifications.el (notifications-notify): Fix docstring.
 +
 +2010-06-09  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      Update to Unicode 6.0.0 beta.
 +      * international/charprop.el: Update copyright.
 +      * international/mule-cmds.el (ucs-names): Update character ranges.
 +      * international/uni-bidi.el:
 +      * international/uni-category.el:
 +      * international/uni-combining.el:
 +      * international/uni-comment.el:
 +      * international/uni-decimal.el:
 +      * international/uni-decomposition.el:
 +      * international/uni-digit.el:
 +      * international/uni-lowercase.el:
 +      * international/uni-mirrored.el:
 +      * international/uni-name.el:
 +      * international/uni-numeric.el:
 +      * international/uni-old-name.el:
 +      * international/uni-titlecase.el:
 +      * international/uni-uppercase.el: Regenerate.
 +
 +2010-06-09  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * emacs-lisp/smie.el (comment-string-strip): Declare function.
 +      (smie-precs-precedence-table): Fix typo in docstring.
 +
 +      * vc-mtn.el (log-edit-extract-headers): Declare function.
 +
 +      * vc-hg.el (log-edit-extract-headers): Remove duplicate declaration.
 +
 +      * net/notifications.el (dbus-register-signal): Declare function.
 +      (notifications-notify): Fix typos and reflow docstring.
 +
 +2010-06-09  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      Improve VC create/retrieve tag/branch.
 +      * vc.el (vc-create-tag): Do not read the directory name for VCs
 +      with repository revision granularity.  Adjust the tag/branch
 +      prompt.  Reset VC properties.
 +      (vc-retrieve-tag): Do not read the directory name for VCs
 +      with repository revision granularity.  Reset VC properties.
 +
 +2010-06-09  Julien Danjou  <julien@danjou.info>
 +
 +      * net/notifications.el: New file.
 +
 +2010-06-09  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      Add optional support for resetting VC properties.
 +      * vc-dispatcher.el (vc-resynch-window): Add new optional argument,
 +      call vc-file-clearprops when true.
 +      (vc-resynch-buffer): Add new optional argument, pass it down.
 +      (vc-resynch-buffers-in-directory): Likewise.
 +
 +      Improve support for special markup in the VC commit message.
 +      * vc-mtn.el (vc-mtn-checkin): Add support for Author: and Date: markup.
 +      * vc-hg.el (vc-hg-checkin): Add support for Date:.
 +      * vc-git.el (vc-git-checkin):
 +      * vc-bzr.el (vc-bzr-checkin): Likewise.
 +
 +2010-06-09  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * emacs-lisp/smie.el (smie-indent-keyword): Remove special case that
 +      can be handled with a ((:before "fn") (:prev "=>" parent)) rule.
 +
 +2010-06-07  Martin Pohlack  <mp26@os.inf.tu-dresden.de>
 +
 +      * iimage.el: Remove images as soon as the underlying text is modified.
 +      (iimage-modification-hook): New function.
 +      (iimage-mode-buffer): Use it.
 +
 +2010-06-07  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * emacs-lisp/smie.el (smie-indent-offset-rule): Rename from
 +      smie-indent-offset-after.  Add :prev case.  Make a bit more generic.
 +      (smie-indent-virtual): Remove `virtual' arg.  Update callers.
 +      (smie-indent-keyword): Add handling of open-paren keywords.
 +      (smie-indent-comment-continue): Don't assume comment-continue.
 +
 +2010-06-07  Martin Rudalics  <rudalics@gmx.at>
 +
 +      * window.el (pop-to-buffer): Remove the conditional that
 +      compares new-window and old-window, so it will reselect
 +      the selected window unconditionally.
 +      http://lists.gnu.org/archive/html/emacs-devel/2010-06/msg00078.html
 +
 +2010-06-07  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * emacs-lisp/smie.el (smie-indent-offset-after)
 +      (smie-indent-forward-token, smie-indent-backward-token): New functions.
 +      (smie-indent-after-keyword): Use them.
 +      (smie-indent-fixindent): Only applies to the indentation of the BOL.
 +      (smie-indent-keyword): Tweak the black magic.
 +      (smie-indent-comment-continue): Strip comment-continue before use.
 +      (smie-indent-functions): Indent comments before keywords.
 +
 +2010-06-06  Juri Linkov  <juri@jurta.org>
 +
 +      * isearch.el (isearch-lazy-highlight-search): Fix looping
 +      by checking for empty match.  This syncs this loop with the
 +      similar loop in `isearch-search'.  (Bug#6362)
 +
 +2010-06-05  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * net/dbus.el (dbus-register-method): Declare function.
 +      (dbus-handle-event, dbus-property-handler): Fix typos in docstrings.
 +      (dbus-introspect): Doc fix.
 +      (dbus-event-bus-name, dbus-introspect-get-interface)
 +      (dbus-introspect-get-argument): Reflow docstrings.
 +
 +2010-06-05  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      vc-log-incoming/vc-log-outgoing fixes for Git.
 +      * vc-git.el (vc-git-log-view-mode): Fix font lock for
 +      incoming/outgoing logs.
 +      (vc-git-log-outgoing, vc-git-log-incoming): Use @{upstream}
 +      instead of vc-git-compute-remote.
 +      (vc-git-compute-remote): Remove.
 +
 +2010-06-04  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * term/common-win.el (x-colors): Add "dark green" and "dark
 +      turquoise" (Bug#6332).
 +
 +2010-06-04  Juri Linkov  <juri@jurta.org>
 +
 +      * simple.el (kill-new): Fix logic of kill-do-not-save-duplicates.
 +      Instead of setting `replace' to t and replacing the same string
 +      with itself, don't do certain actions when
 +      kill-do-not-save-duplicates is non-nil and string is equal to car
 +      of kill-ring: don't call menu-bar-update-yank-menu, don't push
 +      interprogram-paste strings to kill-ring, and don't push the input
 +      argument `string' to kill-ring.
 +      http://lists.gnu.org/archive/html/emacs-devel/2010-06/msg00072.html
 +
 +2010-06-04  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * subr.el (directory-sep-char): Move from fileio.c and make a defconst.
 +
 +2010-06-04  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/tramp-gvfs.el (tramp-gvfs-handle-expand-file-name): Expand "~/".
 +      (tramp-gvfs-handler-mounted-unmounted)
 +      (tramp-gvfs-connection-mounted-p): Handle default-location.
 +
 +      * net/tramp-smb.el (tramp-smb-handle-delete-directory): Don't try to
 +      move files to trash.
 +
 +2010-06-04  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * international/mule-cmds.el (nonascii-insert-offset)
 +      (nonascii-translation-table): Add obsolescence information.
 +
 +      * international/mule.el (make-translation-table-from-vector): Doc fix.
 +
 +2010-06-03  Glenn Morris  <rgm@gnu.org>
 +
 +      * desktop.el (desktop-clear-preserve-buffers):
 +      Add "*Warnings*" buffer.  (Bug#6336)
 +
 +2010-06-03  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      vc-log-incoming/vc-log-outgoing improvements for Git.
 +      * vc-git.el (vc-git-log-outgoing): Use the same format as the
 +      short log.
 +      (vc-git-log-incoming): Likewise.  Run "git fetch" before the log command.
 +
 +      Add bindings for vc-log-incoming and vc-log-outgoing.
 +      * vc-hooks.el (vc-prefix-map): Add bindings for vc-log-incoming
 +      and vc-log-outgoing.
 +      * vc-dir.el (vc-dir-menu-map): Add menu bindings for vc-log-incoming
 +      and vc-log-outgoing.
 +
 +2010-06-03  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * net/rcirc.el (rcirc-sort-nicknames): Remove.
 +      (rcirc-handler-366): Always sort nicknames.
 +
 +2010-06-03  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * emacs-lisp/smie.el (comment-continue): Declare for byte-compiler.
 +
 +2010-06-03  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * net/rcirc.el (rcirc-nickname<, rcirc-sort-nicknames-join): Doc fix.
 +
 +2010-06-03  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * net/rcirc.el (rcirc-sort-nicknames): Change default.
 +      (rcirc-sort-nicknames-join): Avoid setq.
 +
 +2010-06-03  Deniz Dogan  <deniz.a.m.dogan@gmail.com>
 +
 +      * net/rcirc.el (rcirc-sort-nicknames): New custom.
 +      (rcirc-nickname<, rcirc-sort-nicknames-join): New funs.
 +      (rcirc-handler-366): Use them.
 +
 +2010-06-03  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      Split smie-indent-calculate into more manageable chunks.
 +      * emacs-lisp/smie.el (smie-indent-virtual, smie-indent-fixindent)
 +      (smie-indent-comment, smie-indent-after-keyword, smie-indent-keyword)
 +      (smie-indent-close, smie-indent-comment-continue, smie-indent-bob)
 +      (smie-indent-exps): Extract from smie-indent-calculate.
 +      (smie-indent-functions): New var.
 +      (smie-indent-functions): Use them.
 +
 +2010-06-02  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * emacs-lisp/smie.el (smie-indent-hanging-p): Use smie-bolp.
 +      (smie-indent-calculate): Simplify and cleanup.
 +
 +2010-06-02  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/tramp-gvfs.el (top): Require url-util.
 +      (tramp-gvfs-mount-point): Remove.
 +      (tramp-gvfs-stringify-dbus-message, tramp-gvfs-send-command):
 +      New defuns.
 +      (with-tramp-dbus-call-method): Format trace message.
 +      (tramp-gvfs-handle-copy-file, tramp-gvfs-handle-rename-file):
 +      Implement backup call, when operation on local files fails.
 +      Use progress reporter.  Flush properties of changed files.
 +      (tramp-gvfs-handle-make-directory): Make more traces.
 +      (tramp-gvfs-url-file-name): Hexify file name in url.
 +      (tramp-gvfs-fuse-file-name): Take also prefix (like dav shares)
 +      into account for the resulting file name.
 +      (tramp-gvfs-handler-askquestion): Return dummy mountpoint, when
 +      the answer is "no".  See `tramp-gvfs-maybe-open-connection'.
 +      (tramp-gvfs-handler-mounted-unmounted)
 +      (tramp-gvfs-connection-mounted-p): Test also for new mountspec
 +      attribute "default_location".  Set "prefix" property.
 +      (tramp-gvfs-mount-spec): Return both prefix and mountspec.
 +      (tramp-gvfs-maybe-open-connection): Test, whether mountpoint
 +      exists.  Raise an error, if not (due to a corresponding answer
 +      "no" in interactive questions, for example).
 +
 +2010-06-02  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * log-edit.el (log-edit-font-lock-keywords): Make group 4 match lax.
 +
 +2010-06-01  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * emacs-lisp/eldoc.el: Add completions for new commands left-* and
 +      right-*.  (Bug#6265)
 +
 +2010-06-01  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      Add support for vc-log-incoming, improve vc-log-outgoing for Git.
 +      * vc-git.el (vc-git-compute-remote): New function.
 +      (vc-git-log-outgoing): Use it instead of hard coding a value.
 +      (vc-git-log-incoming): New function.
 +
 +      Improve state updating for VC tag commands.
 +      * vc.el (vc-create-tag, vc-retrieve-tag): Call vc-resynch-buffer
 +      to update the state of all buffers in the directory.
 +
 +      * vc-dir.el (vc-dir-update): Remove entries with a nil state (bug#5539).
 +
 +2010-06-01  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * vc-bzr.el (vc-bzr-revision-completion-table): Apply
 +      `file-directory-p' to the filename part rather than to the whole text.
 +
 +2010-05-31  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * man.el (Man-completion-table): Let the user type "-k " (bug#6319).
 +
 +2010-05-31  Drew Adams  <drew.adams@oracle.com>
 +
 +      * files.el (directory-files-no-dot-files-regexp): Doc fix (bug#6298).
 +
 +2010-05-31  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * subr.el (momentary-string-display): Just use read-event to read
 +      the exit event (Bug#6238).
 +
 +2010-05-30  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * international/mule.el (define-coding-system): Doc fix (bug#6313).
 +
 +2010-05-30  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * emulation/cua-base.el: Recognize also `right-word' and `left-word'.
 +      Suggested by Eli Zaretskii <eliz@gnu.org>.
 +
 +2010-05-30  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * minibuffer.el (completion-file-name-table): Don't return a boundary
 +      past the end of `string' (bug#6299).
 +      (completion--file-name-table): Delegate to completion-file-name-table
 +      for the `boundaries' case.
 +
 +2010-05-30  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * emulation/cua-base.el: Recognize `right-char' and `left-char' as
 +      movement commands.
 +
 +      * progmodes/ada-xref.el (ada-prj-ada-project-path-sep): Set from
 +      `path-separator', but maintain compatibility with Emacs 20.2.
 +
 +2010-05-29  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * server.el (server-process-filter): Receive parent-id argument
 +      from emacsclient.
 +      (server-create-window-system-frame): New arg.  Pass parent-id as
 +      frame parameter.
 +
 +2010-05-29  Eli Zaretskii  <eliz@gnu.org>
 +
 +      Bidi-sensitive word movement with arrow keys.
 +      * subr.el (right-arrow-command, left-arrow-command): Move to
 +      bindings.el.
 +
 +      * bindings.el (right-char, left-char): Move from subr.el and
 +      rename from right-arrow-command and left-arrow-command.
 +      (right-word, left-word): New functions.
 +      (global-map) <right>: Bind to right-char.
 +      (global-map) <left>: Bind to left-char.
 +      (global-map) <C-right>: Bind to right-word.
 +      (global-map) <C-left>: Bind to left-word.
 +
 +      * ls-lisp.el (ls-lisp-classify-file): New function.
 +      (ls-lisp-insert-directory): Call it if switches include -F (bug#6294).
 +      (ls-lisp-classify): Call ls-lisp-classify-file.
 +      (insert-directory): Remove blanks from switches.
 +
 +2010-05-29  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * ansi-color.el: Delete unused escape sequences (Bug#6085).
 +      (ansi-color-drop-regexp): New constant.
 +      (ansi-color-apply, ansi-color-filter-region)
 +      (ansi-color-apply-on-region): Delete unrecognized control sequences.
 +      (ansi-color-apply): Build string list before calling concat.
 +
 +2010-05-28  Juri Linkov  <juri@jurta.org>
 +
 +      * image-dired.el (image-dired-dired-toggle-marked-thumbs):
 +      Replace LOCALP arg of `dired-get-filename' 'no-dir with nil.
 +      (Bug#5270)
 +
 +2010-05-28  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/tramp.el (tramp-debug-message): Add `tramp-compat-funcall'
 +      to ignored backtrace functions.
 +      (with-progress-reporter): Expand docstring.
 +      (tramp-handle-delete-file): Implement TRASH argument.
 +      (tramp-get-remote-trash): New defun.
 +
 +2010-05-28  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/tramp-compat.el (tramp-compat-delete-file):
 +      Use `symbol-value' for backward compatibility.
 +
 +      * net/tramp.el (tramp-handle-make-symbolic-link)
 +      (tramp-handle-load)
 +      (tramp-do-copy-or-rename-file-via-buffer)
 +      (tramp-do-copy-or-rename-file-directly)
 +      (tramp-do-copy-or-rename-file-out-of-band)
 +      (tramp-handle-process-file, tramp-handle-call-process-region)
 +      (tramp-handle-shell-command, tramp-handle-file-local-copy)
 +      (tramp-handle-insert-file-contents, tramp-handle-write-region)
 +      (tramp-delete-temp-file-function): Use `delete-file' instead
 +      of `tramp-compat-delete-file'.
 +
 +      * net/tramp-fish.el (tramp-fish-handle-delete-directory)
 +      (tramp-fish-handle-make-symbolic-link)
 +      (tramp-fish-handle-process-file): Use `delete-file' instead
 +      of `tramp-compat-delete-file'.
 +
 +      * net/tramp-ftp.el (tramp-ftp-file-name-handler):
 +      Use `delete-file' instead of `tramp-compat-delete-file'.
 +
 +      * net/tramp-gvfs.el (tramp-gvfs-handle-delete-file): Rename arg.
 +      (tramp-gvfs-handle-write-region): Use `delete-file' instead of
 +      `tramp-compat-delete-file'.
 +
 +      * net/tramp-imap.el (tramp-imap-do-copy-or-rename-file):
 +      Use `delete-file' instead of `tramp-compat-delete-file'.
 +
 +      * net/tramp-smb.el (tramp-smb-handle-copy-file)
 +      (tramp-smb-handle-file-local-copy, tramp-smb-handle-rename-file)
 +      (tramp-smb-handle-write-region): Use `delete-file' instead of
 +      `tramp-compat-delete-file'.
 +      (tramp-smb-handle-delete-directory): Use 'trash as arg.
 +
 +2010-05-27  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * dired.el (dired-delete-file): New arg TRASH.
 +      (dired-internal-do-deletions): New arg TRASH.  Use progress reporter.
 +      (dired-do-flagged-delete, dired-do-delete): Use trash.
 +
 +      * speedbar.el (speedbar-item-delete): Allow trashing.
 +
 +      * files.el (delete-directory): New arg TRASH.
 +
 +      * net/ange-ftp.el (ange-ftp-del-tmp-name, ange-ftp-delete-file)
 +      (ange-ftp-rename-remote-to-remote)
 +      (ange-ftp-rename-local-to-remote)
 +      (ange-ftp-rename-remote-to-local, ange-ftp-load)
 +      (ange-ftp-compress, ange-ftp-uncompress): Remove optional arg from
 +      `delete-file'.
 +      (ange-ftp-delete-directory): Add optional arg to `delete-file', to
 +      allow trashing.
 +
 +      * net/tramp-compat.el (tramp-compat-delete-file): Rewrite to
 +      handle new TRASH arg of `delete-file'.
 +
 +      * net/tramp.el (tramp-handle-delete-file): Change FORCE arg to TRASH.
 +      (tramp-handle-make-symbolic-link, tramp-handle-load)
 +      (tramp-do-copy-or-rename-file-via-buffer)
 +      (tramp-do-copy-or-rename-file-directly)
 +      (tramp-do-copy-or-rename-file-out-of-band)
 +      (tramp-handle-process-file, tramp-handle-call-process-region)
 +      (tramp-handle-shell-command, tramp-handle-file-local-copy)
 +      (tramp-handle-insert-file-contents, tramp-handle-write-region)
 +      (tramp-delete-temp-file-function): Use null TRASH arg in
 +      tramp-compat-delete-file call.
 +
 +      * net/tramp-fish.el (tramp-fish-handle-delete-directory)
 +      (tramp-fish-handle-delete-file)
 +      (tramp-fish-handle-make-symbolic-link)
 +      (tramp-fish-handle-process-file): Use null TRASH arg in
 +      `tramp-compat-delete-file' call.
 +
 +      * net/tramp-ftp.el (tramp-ftp-file-name-handler): Use null TRASH
 +      arg in `tramp-compat-delete-file' call.
 +
 +      * net/tramp-gvfs.el (tramp-gvfs-handle-delete-file): Rename arg.
 +      (tramp-gvfs-handle-write-region): Use null TRASH arg in
 +      `tramp-compat-delete-file' call.
 +
 +      * net/tramp-imap.el (tramp-imap-handle-delete-file): Rename arg.
 +      (tramp-imap-do-copy-or-rename-file): Use null TRASH arg in
 +      `tramp-compat-delete-file' call.
 +
 +      * net/tramp-smb.el (tramp-smb-handle-copy-file)
 +      (tramp-smb-handle-file-local-copy, tramp-smb-handle-rename-file)
 +      (tramp-smb-handle-write-region): Use null TRASH arg in
 +      tramp-compat-delete-file call.
 +      (tramp-smb-handle-delete-directory): Use tramp-compat-delete-file.
 +      (tramp-smb-handle-delete-file): Rename arg.
 +
 +      * diff.el (diff-sentinel):
 +      * epg.el (epg--make-temp-file, epg-decrypt-string)
 +      (epg-verify-string, epg-sign-string, epg-encrypt-string):
 +      * jka-compr.el (jka-compr-partial-uncompress)
 +      (jka-compr-call-process, jka-compr-write-region):
 +      * server.el (server-sentinel): Remove optional arg from
 +      delete-file, reverting 2010-05-03 change.
 +
 +2010-05-27  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * progmodes/verilog-mode.el (verilog-type-font-keywords):
 +      Use font-lock-constant-face, not obsolete font-lock-reference-face.
 +
 +2010-05-27  Kenichi Handa  <handa@m17n.org>
 +
 +      * language/hebrew.el (hebrew-shape-gstring): Check if a glyph
 +      element of GSTRING is nil.
 +
 +2010-05-27  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * emacs-lisp/smie.el (smie-forward-token-function)
 +      (smie-backward-token-function): New vars.
 +      (smie-backward-sexp, smie-forward-sexp)
 +      (smie-indent-hanging-p, smie-indent-calculate): Use them.
 +      (smie-default-backward-token): Rename from smie-backward-token and
 +      skip comments.
 +      (smie-default-forward-token): Rename from smie-forward-token and
 +      skip comments.
 +      (smie-next-sexp): Handle nil results from next-token.
 +      (smie-indent-calculate): Add a new case for special `fixindent' comments.
 +
 +2010-05-27  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * progmodes/verilog-mode.el (verilog-type-font-keywords):
 +      Use font-lock-constant-face, not obsolete font-lock-reference-face.
 +
 +2010-05-27  Masatake YAMATO  <yamato@redhat.com>
 +
 +      * htmlfontify.el (hfy-face-resolve-face): New function.
 +      (hfy-face-to-style): Use it (Bug#6279).
 +
 +2010-05-26  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * progmodes/ada-xref.el (ada-gnat-parse-gpr):
 +      * emulation/edt.el (edt-load-keys): Avoid (expand-file-name ".").
 +
 +2010-05-26  Glenn Morris  <rgm@gnu.org>
 +
 +      * emulation/edt.el (edt-load-keys): Use locate-library.
 +
 +2010-05-25  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * log-edit.el (log-edit-strip-single-file-name): Default to nil.
 +      (log-edit-changelog-entries): Doc fix.
 +      (log-edit-changelog-insert-entries): Args changed.
 +      Rename relative filenames in ChangeLog entries.  Delete tabs.
 +      (log-edit-insert-changelog-entries): Reorganize return value of
 +      `log-edit-changelog-entries' to pass filenames to
 +      log-edit-changelog-insert-entries.
 +
 +2010-05-25  Thierry Volpiatto  <thierry.volpiatto@gmail.com>
 +
 +      * dired.el (dired-mode-map): Rebind "\C-t\C-t" from
 +      `image-dired-dired-insert-marked-thumbs' to
 +      `image-dired-dired-toggle-marked-thumbs'.
 +
 +      * image-dired.el: Require cl when compiling.
 +      (image-dired-dired-toggle-marked-thumbs): Rename from
 +      `image-dired-dired-insert-marked-thumbs'.  Add ARG.  Doc fix.
 +      Use interactive spec "P".  Set LOCALP arg of `dired-get-filename'
 +      to 'no-dir.  Skip files whose names don't match
 +      `image-file-name-regexp'.  When file has a thumbnail overlay,
 +      delete it.  (Bug#5270)
 +
 +2010-05-25  Juri Linkov  <juri@jurta.org>
 +
 +      * image-mode.el (image-mode): Add image-after-revert-hook to
 +      after-revert-hook.
 +      (image-after-revert-hook): New function.  (Bug#5669)
 +
 +2010-05-25  Juri Linkov  <juri@jurta.org>
 +
 +      * image.el (image-animated-p): When delay between animated images
 +      is 0, set it to 10 (0.1 sec).  (Bug#6258)
 +
 +2010-05-25  Christian Lynbech  <christian.lynbech@tieto.com>  (tiny change)
 +
 +      * net/tramp.el (tramp-handle-insert-directory): Don't use
 +      `forward-word', its default syntax could be changed.
 +
 +2010-05-25  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/tramp.el (tramp-progress-reporter-update): New defun.
 +      (with-progress-reporter): Use it.
 +      (tramp-process-actions):
 +      * net/tramp-gvfs.el (tramp-gvfs-handler-askquestion):
 +      Preserve current message, in order to let progress reporter continue
 +      afterwards.  (Bug#6257)
 +
 +2010-05-25  Glenn Morris  <rgm@gnu.org>
 +
 +      * net/rcirc.el (rcirc-default-user-name, rcirc-default-full-name):
 +      Add :version.
 +
 +2010-05-25  Ryan Yeske  <rcyeske@gmail.com>
 +
 +      * net/rcirc.el (rcirc-default-user-name): Change to "user".
 +      (rcirc-default-full-name): Change to "unknown".
 +      (rcirc-user-name-history): Add variable.
 +
 +2010-05-25  Ryan Yeske  <rcyeske@gmail.com>
 +            Jonathan Rockway  <jon@jrock.us>
 +
 +      * net/rcirc.el (rcirc-server-alist): Add :pass.
 +      (rcirc): When prompting for connection parameters, also prompt for
 +      username and password.
 +      (rcirc-connect): Take a PASS argument.  If PASS is non-nil, send
 +      value to server when connecting.
 +
 +2010-05-25  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * emacs-lisp/smie.el (smie-set-prec2tab): Check override before use.
 +      (smie-merge-prec2s): Pass the tables as separate args.
 +      (smie-bnf-precedence-table): Adjust call accordingly.
 +      (smie-prec2-levels): Set levels at the end.
 +
 +      Replace Lisp calls to delete-backward-char by delete-char.
 +      * bs.el, expand.el, ido.el, image-dired.el, lpr.el, pcomplete.el,
 +      * skeleton.el, term.el, time.el, wid-edit.el, woman.el,
 +      * calc/calc-graph.el, calc/calc-help.el, calc/calc-incom.el,
 +      * calc/calc.el, emacs-lisp/cl-extra.el, emacs-lips/cl-loaddefs.el,
 +      * emulation/cua-rect.el, emulation/viper-ex.el, eshell/esh-test.el,
 +      * eshell/eshell.el, gnus/gnus-uu.el, gnus/nndoc.el, gnus/nnrss.el,
 +      * gnus/rfc2047.el, gnus/utf7.el, international/utf-7.el,
 +      * language/ethio-util.el, mh-e/mh-alias.el, mh-e/mh-search.el,
 +      * net/imap.el, net/rcirc.el, obsolete/complete.el, play/decipher.el,
 +      * progmodes/ada-mode.el, progmodes/cc-awk.el, progmodes/dcl-mode.el,
 +      * progmodes/ps-mode.el, progmodes/verilog-mode.el,
 +      * progmodes/vhdl-mode.el, textmodes/bibtex.el, textmodes/fill.el,
 +      * textmodes/reftex-auc.el, textmodes/rst.el, textmodes/sgml-mode.el,
 +      * textmodes/table.el, textmodes/texinfmt.el: Replace Lisp calls to
 +      delete-backward-char by calls to delete-char.
 +
 +2010-05-25  Kenichi Handa  <handa@m17n.org>
 +
 +      * language/hebrew.el (hebrew-shape-gstring): New function.
 +      Register it in composition-function-table for all Hebrew combining
 +      characters.
 +
 +2010-05-25  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * epa.el (epa--select-keys): Don't explicitly delete the window since
 +      that can fail (e.g. sole window in frame).  Use dedication instead.
 +
 +2010-05-24  Uday S Reddy  <u.s.reddy@cs.bham.ac.uk>  (tiny change)
 +
 +      * textmodes/fill.el (fill-region): Don't fill past the end (bug#6201).
 +
 +2010-05-22  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * image.el (image-refresh): Define as an alias for image-flush.
 +
 +      * image-mode.el (image-toggle-display-image): Caller changed.
 +
 +2010-05-21  Juri Linkov  <juri@jurta.org>
 +
 +      * progmodes/grep.el (grep-read-files): Fix multi-pattern aliases.
 +      Remove "all" from grep-files-aliases.  Split grep-files-aliases by
 +      whitespace, call wildcard-to-regexp on substrings and concat them
 +      with "\\|".  (Bug#6114)
 +
 +2010-05-21  Alan Mackenzie  <acm@muc.de>
 +
 +      * progmodes/cc-engine.el (c-parse-state-get-strategy):
 +      Replace parameter `here' with `here-' and `here-plus', which sandwich
 +      any pertinent CPP construct.
 +      (c-remove-stale-state-cache-backwards): Fix a bug which happens
 +      when doing (c-parse-state) in a CPP construct: Exclude any "new"
 +      CPP construct from taking part in the scanning.
 +
 +2010-05-21  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/tramp.el (tramp-do-copy-or-rename-file)
 +      (tramp-handle-file-local-copy, tramp-maybe-open-connection):
 +      Tune `with-progress-reporter' messages.
 +      (tramp-handle-vc-registered):
 +      * net/tramp-fish.el (tramp-fish-handle-file-local-copy)
 +      (tramp-fish-handle-insert-file-contents)
 +      (tramp-fish-maybe-open-connection):
 +      * net/tramp-gvfs.el (tramp-gvfs-maybe-open-connection):
 +      * net/tramp-imap.el (tramp-imap-do-copy-or-rename-file)
 +      (tramp-imap-handle-insert-file-contents)
 +      (tramp-imap-handle-file-local-copy): Use `with-progress-reporter'.
 +
 +2010-05-21  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * add-log.el (change-log-font-lock-keywords):
 +      Highlight all authors in multi-author entries.
 +
 +      * smerge-mode.el (smerge-refine-ignore-whitespace)
 +      (smerge-refine-weight-hack, smerge-refine, smerge-makeup-conflict):
 +      Fix typos in docstrings.
 +      (smerge-resolve, smerge-refine-subst): Reflow docstrings.
 +
 +2010-05-21  Glenn Morris  <rgm@gnu.org>
 +
 +      * progmodes/fortran.el (fortran-mode):
 +      * progmodes/f90.el (f90-mode): Derive from prog-mode.
 +
 +      * loadup.el [CANNOT_DUMP]: Update for bootstrap-emacs no longer
 +      having a relative path in src/Makefile.in.
 +
 +2010-05-20  Kevin Ryde  <user42@zip.com.au>
 +
 +      * help-mode.el (help-make-xrefs): For Info node links turn
 +      newlines into spaces.  Link node names with newlines are matched
 +      by help-xref-info-regexp and buttonized, this change ensures they
 +      can be followed successfully with RET.  (Bug#6206)
 +
 +2010-05-20  Juri Linkov  <juri@jurta.org>
 +
 +      * locate.el (locate): Use pop-to-buffer instead of
 +      switch-to-buffer-other-window.  (Bug#6204)
 +
 +2010-05-20  Juri Linkov  <juri@jurta.org>
 +
 +      * replace.el (replace-highlight): Fix lazy-highlighting
 +      for `M-s w str M-% str RET'.
 +
 +2009-12-15  Masatake YAMATO  <yamato@redhat.com>
 +
 +      * isearch.el (isearch-yank-word-or-char): Pull next subword
 +      when `subword-mode' is activated.  (Bug#6220)
 +
 +2010-05-20  Mark A. Hershberger  <mah@everybody.org>
 +
 +      * isearch.el (isearch-update-post-hook): New hook.
 +      (isearch-update): Use the new hook.  (Bug#6225)
 +
 +2010-05-20  Juri Linkov  <juri@jurta.org>
 +
 +      * isearch.el (isearch-mode-map): Bind more keys to isearch-help-map:
 +      [f1], [help], and (char-to-string help-char) instead of "\C-h".
 +      (Bug#6222)
 +
 +2010-05-20  Juri Linkov  <juri@jurta.org>
 +
 +      * isearch.el (isearch-yank-string): Use isearch-process-search-string.
 +      (Bug#6223)
 +
 +2010-05-20  Juri Linkov  <juri@jurta.org>
 +
 +      * dired-x.el (dired-jump, dired-jump-other-window): Add arg
 +      FILE-NAME to read from the minibuffer when called interactively
 +      with prefix argument instead of using buffer-file-name.
 +      http://lists.gnu.org/archive/html/emacs-devel/2010-05/msg00534.html
 +
 +      * dired.el: Update autoloads.
 +
 +2010-05-20  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * nxml/nxml-mode.el (nxml-mode-map): Bind C-c / to
 +      nxml-finish-element, for consistency with SGML mode.
 +
 +      * progmodes/octave-mod.el (octave-mode-map): Bind C-c / to
 +      octave-close-block.
 +
 +2010-05-20  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * composite.el: Require cl when compiling.
 +      (reference-point-alist, compose-gstring-for-graphic)
 +      (compose-gstring-for-terminal): Fix typos in docstrings.
 +
 +2010-05-19  Juri Linkov  <juri@jurta.org>
 +
 +      * emacs-lisp/cl-macs.el (window-parameter): Add defsetf with
 +      set-window-parameter.
 +
 +2010-05-19  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/tramp.el (tramp-methods): Add `tramp-async-args' attribute
 +      where appropriate.
 +      (tramp-maybe-open-connection): Use it.
 +
 +2010-05-19  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * simple.el (move-end-of-line): Make sure we are at line beginning
 +      before backing up to end of previous line.
 +
 +2010-05-19  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * password-cache.el (password-cache-remove): Fix docstring.
 +
 +      * net/secrets.el: Autoload the widget functions.
 +      (secrets-search-items, secrets-create-item)
 +      (secrets-get-attributes, secrets-expand-item): Attributes will be
 +      stored on the password database without leading ":", as all other
 +      clients do as well.
 +      (secrets-mode): Fix docstring.
 +      (secrets-show-secrets): Provide it as autoloaded command only when
 +      D-Bus support is available.  Check existence of Secret Service API.
 +
 +2010-05-19  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * indent.el (indent-region): Deactivate region (bug#6200).
 +
 +2010-05-19  Glenn Morris  <rgm@gnu.org>
 +
 +      * vc-dir.el (vc-dir): Don't pop-up-windows.  (Bug#6204)
 +
 +2010-05-19  Kenichi Handa  <handa@m17n.org>
 +
 +      * composite.el: Register compose-gstring-for-graphic in
 +      composition-function-table only for combining characters (Mn, Mc, Me).
 +
 +2010-05-18  Jay Belanger  <jay.p.belanger@gmail.com>
 +
 +      * calc/calc-trail.el (calc-trail-isearch-forward)
 +      (calc-trail-isearch-backward): Ensure that the new window
 +      point is set correctly.
 +
 +2010-05-18  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * subr.el (read-quoted-char): Resolve modifiers after key
 +      remapping (bug#6212).
 +
 +2010-05-18  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      Add visualization code for secrets.
 +      * net/secrets.el (secrets-mode): New major mode.
 +      (secrets-show-secrets, secrets-show-collections)
 +      (secrets-expand-collection, secrets-expand-item)
 +      (secrets-tree-widget-after-toggle-function)
 +      (secrets-tree-widget-show-password): New defuns.
 +
 +2010-05-18  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * emacs-lisp/smie.el (smie-next-sexp): Break inf-loop at BOB.
 +      (smie-backward-sexp, smie-forward-sexp): Remove boundary condition now
 +      handled in smie-next-sexp.
 +      (smie-indent-calculate): Provide a starting indentation (so the
 +      recursion is well-founded ;-).
 +
 +      Fix handling of non-associative equal levels.
 +      * emacs-lisp/smie.el (smie-prec2-levels): Choose distinct levels even
 +      when it's not needed.
 +      (smie-op-left, smie-op-right): New functions.
 +      (smie-next-sexp): New function, extracted from smie-backward-sexp.
 +      Better handle equal levels to distinguish the associative case from
 +      the "multi-keyword construct" case.
 +      (smie-backward-sexp, smie-forward-sexp): Use it.
 +
 +2010-05-18  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * progmodes/prolog.el (smie-indent-basic): Declare for byte-compiler.
 +
 +      * emacs-lisp/smie.el (smie-precs-precedence-table, smie-backward-sexp)
 +      (smie-forward-sexp, smie-indent-calculate): Fix typos in docstrings.
 +
 +2010-05-17  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      Provide a simple generic indentation engine and use it for Prolog.
 +      * emacs-lisp/smie.el: New file.
 +      * progmodes/prolog.el (prolog-smie-op-levels)
 +      (prolog-smie-indent-rules): New var.
 +      (prolog-mode-variables): Use them to configure SMIE.
 +      (prolog-indent-line, prolog-indent-level): Remove.
 +
 +2010-05-17  Jay Belanger  <jay.p.belanger@gmail.com>
 +
 +      * calc/calc-vec.el (math-vector-avg): Put the vector elements in
 +      order before computing the averages.
 +
 +2010-05-16  Jay Belanger  <jay.p.belanger@gmail.com>
 +
 +      * calc/calc-vec.el (calc-histogram):
 +      (calcFunc-histogram): Allow vectors as inputs.
 +      (math-vector-avg): New function.
 +
 +      * calc/calc-ext.el (math-group-float): Have the number of digits
 +      being grouped depend on the radix (Bug#6189).
 +
 +2010-05-15  Ken Raeburn  <raeburn@raeburn.org>
 +
 +      * version.el (emacs-copyright, emacs-version): Don't define here,
 +      now that emacs.c defines it.
 +
 +2010-05-15  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * international/mule-cmds.el (mule-menu-keymap): Fix definition of
 +      "Describe Language Environment" menu item.
 +
 +      * language/hebrew.el ("Hebrew", "Windows-1255"): Doc fix.
 +
 +      Bidi-sensitive movement with arrow keys.
 +      * subr.el (right-arrow-command, left-arrow-command): New functions.
 +
 +      * bindings.el (global-map): Bind them to right and left arrow keys.
 +
 +      Don't override standard definition of convert-standard-filename.
 +      * files.el (convert-standard-filename):
 +      Call w32-convert-standard-filename and dos-convert-standard-filename on
 +      the corresponding systems.
 +
 +      * w32-fns.el (w32-convert-standard-filename): Rename from
 +      convert-standard-filename.  Doc fix.
 +
 +      * dos-fns.el (dos-convert-standard-filename): Doc fix.
 +      (convert-standard-filename): Don't defalias.
 +      (register-name-alist, make-register, register-value)
 +      (set-register-value, intdos): Obsolete aliases for the
 +      corresponding dos-* functions and variables.
 +      (dos-intdos): Add a doc string.
 +
 +2010-05-15  Jay Belanger  <jay.p.belanger@gmail.com>
 +
 +      * calc/calc-aent.el (math-read-token, math-find-user-tokens):
 +      * calc/calc-lang.el (math-read-big-rec, math-lang-read-symbol):
 +      (math-compose-tex-func):
 +      * calc/calccomp.el (math-compose-expr):
 +      * calc/calc-ext.el (math-format-flat-expr-fancy):
 +      * calc/calc-store.el (calc-read-var-name):
 +      * calc/calc-units.el (calc-explain-units-rec): Allow Greek letters.
 +
 +      * calc/calc.el (var-π, var-φ, var-γ): New variables.
 +      * calc/calc-aent.el (math-read-replacement-list): Add "micro" symbol.
 +      * calc/calc-units.el (math-unit-prefixes): Add mu for micro.
 +      (math-standard-units): Add units.
 +
 +2010-05-15  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * progmodes/asm-mode.el (asm-mode):
 +      * progmodes/prolog.el (prolog-mode): Use define-derived-mode.
 +
 +      * pcomplete.el (pcomplete-completions-at-point): New function,
 +      extracted from pcomplete-std-complete.
 +      (pcomplete-std-complete): Use it.
 +
 +2010-05-15  Glenn Morris  <rgm@gnu.org>
 +
 +      * Makefile.in (setwins, setwins_almost, setwins_for_subdirs):
 +      Remove references to CVS, RCS and Old directories.
 +
 +2010-05-14  Jay Belanger  <jay.p.belanger@gmail.com>
 +
 +      * calc/calc-bin.el (math-format-twos-complement): Group digits when
 +      appropriate.
 +
 +2010-05-14  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * progmodes/sh-script.el (sh-mode-default-syntax-table): Remove.
 +      (sh-mode-syntax-table): Give it a default value instead.
 +      (sh-header-marker): Make buffer-local.
 +      (sh-mode): Move make-local-variable to the corresponding setq.
 +      (sh-add-completer): Avoid gratuitously let-binding a buffer-local var.
 +      Use complete-with-action.
 +
 +      * simple.el (prog-mode): New (abstract) major mode.
 +      * emacs-lisp/lisp-mode.el (emacs-lisp-mode, lisp-mode): Use it.
 +      * progmodes/sh-script.el (sh-mode): Remove redundant var assignment.
 +
 +2010-05-14  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * progmodes/sql.el (sql-oracle-program): Reflow docstring.
 +      (sql-oracle-scan-on, sql-sybase-program, sql-product-font-lock)
 +      (sql-add-product-keywords, sql-highlight-product, sql-set-product)
 +      (sql-make-alternate-buffer-name, sql-placeholders-filter)
 +      (sql-escape-newlines-filter, sql-input-sender)
 +      (sql-send-magic-terminator, sql-sybase): Fix typos in docstrings.
 +
 +2010-05-13  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      Add TeX open-block and close-block keybindings to SGML, and vice versa.
 +
 +      * textmodes/tex-mode.el (tex-mode-map): Bind C-c C-t to
 +      latex-open-block and C-c / to latex-close-block.
 +
 +      * textmodes/sgml-mode.el (sgml-mode-map): Bind C-c C-o to sgml-tag
 +      and C-c C-e to sgml-close-tag.
 +
 +2010-05-13  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/tramp.el (with-progress-reporter): Create reporter object
 +      only when the message would be displayed.  Handle nested calls.
 +      (tramp-handle-load, tramp-handle-file-local-copy)
 +      (tramp-handle-insert-file-contents, tramp-handle-write-region)
 +      (tramp-maybe-send-script, tramp-find-shell):
 +      Use `with-progress-reporter'.
 +      (tramp-handle-dired-compress-file, tramp-maybe-open-connection):
 +      Fix message text.
 +
 +      * net/tramp-smb.el (tramp-smb-handle-copy-file)
 +      (tramp-smb-handle-file-local-copy, tramp-smb-handle-rename-file)
 +      (tramp-smb-handle-write-region, tramp-smb-maybe-open-connection):
 +      Use `with-progress-reporter'.
 +
 +2010-05-13  Agustín Martín  <agustin.martin@hispalinux.es>
 +
 +      * textmodes/ispell.el (ispell-init-process): Do not kill ispell
 +      process everytime when spellchecking from the minibuffer (bug#6143).
 +
 +2010-05-13  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * progmodes/sh-script.el (sh-mode): Use define-derived-mode.
 +
 +      * dos-fns.el: Add "dos-" prefix for namespace control.
 +      (convert-standard-filename): Define as alias for
 +      dos-convert-standard-filename but only if applicable.
 +
 +2010-05-12  Alan Mackenzie  <acm@muc.de>
 +
 +      * progmodes/cc-cmds.el (c-beginning-of-defun, c-end-of-defun):
 +      Push the mark at the start of these functions when appropriate.
 +
 +2010-05-12  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * minibuffer.el (completion-cycle-threshold): New custom var.
 +      (completion--do-completion): Use it.
 +      (minibuffer-complete): Use cycling if appropriate.
 +
 +2010-05-11  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * dirtrack.el (dirtrackp): Remove defcustom; don't make automatically
 +      buffer-local (it's an obsolete alias for `dirtrack-mode') (bug#6173).
 +
 +2010-05-11  Juri Linkov  <juri@jurta.org>
 +
 +      * scroll-all.el (scroll-all-check-to-scroll):
 +      Add `scroll-up-command' and `scroll-down-command' (bug#6164).
 +
 +2010-05-11  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * iimage.el (iimage-mode-map): Move initialization into declaration.
 +      (iimage-mode-buffer): Use with-silent-modifications.
 +      Simplify calling convention.  Adjust callers.
 +      (iimage-mode): Don't run hook redundantly.
 +
 +      * minibuffer.el (completion-pcm--pattern->regex):
 +      Fix last change (bug#6160).
 +
 +2010-05-10  Juri Linkov  <juri@jurta.org>
 +
 +      Remove nodes visited during Isearch from the Info history.
 +      * info.el (Info-isearch-initial-history)
 +      (Info-isearch-initial-history-list): New variables.
 +      (Info-isearch-start): Record initial values of
 +      Info-isearch-initial-history and Info-isearch-initial-history-list.
 +      Add Info-isearch-end to isearch-mode-end-hook.
 +      (Info-isearch-end): New function.
 +
 +2010-05-10  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/tramp.el (tramp-do-file-attributes-with-stat): Add space in
 +      format string, in order to work around a bug in pdksh.
 +      Reported by Gilles Pion <gpion@lfdj.com>.
 +      (tramp-handle-verify-visited-file-modtime): Do not send a command
 +      when the connection is not established.
 +      (tramp-handle-set-file-times): Simplify the check for utc.
 +
 +2010-05-10  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      Fix use of `filter-buffer-substring' (rework previous change).
 +      * emulation/cua-base.el (cua--filter-buffer-noprops): New function.
 +      (cua-repeat-replace-region):
 +      * emulation/cua-rect.el (cua--extract-rectangle, cua-incr-rectangle):
 +      * emulation/cua-gmrk.el (cua-copy-region-to-global-mark)
 +      (cua-cut-region-to-global-mark): Use it.
 +
 +2010-05-09  Michael R. Mauger  <mmaug@yahoo.com>
 +
 +      * progmodes/sql.el: Version 2.1.
 +      (sql-product-alist): Redesign structure of product info.
 +      (sql-product, sql-user, sql-server, sql-database): Safe variables.
 +      (sql-port, sql-port-history): New variables.
 +      (sql-interactive-product): New variable.
 +      (sql-send-terminator): New variable.
 +      (sql-imenu-generic-expression): Add "Types" imenu entry.
 +      (sql-oracle-login-params, sql-sqlite-login-params)
 +      (sql-mysql-login-params, sql-solid-login-params)
 +      (sql-sybase-login-params, sql-informix-login-params)
 +      (sql-ingres-login-params, sql-ms-login-params)
 +      (sql-postgres-login-params, sql-interbase-login-params)
 +      (sql-db2-login-params, sql-linter-login-params)
 +      (sql-oracle-scan-on): New variables.
 +      (sql-mode-map): Add C-c C-i to start interactive mode.
 +      (sql-mode-menu): Update existing menu entries.
 +      (sql-font-lock-keywords-builder): Compile-time font-lock optimization.
 +      (sql-mode-oracle-font-lock-keywords)
 +      (sql-mode-postgres-font-lock-keywords)
 +      (sql-mode-ms-font-lock-keywords)
 +      (sql-mode-sybase-font-lock-keywords)
 +      (sql-mode-informix-font-lock-keywords)
 +      (sql-mode-interbase-font-lock-keywords)
 +      (sql-mode-ingres-font-lock-keywords)
 +      (sql-mode-solid-font-lock-keywords)
 +      (sql-mode-mysql-font-lock-keywords)
 +      (sql-mode-sqlite-font-lock-keywords)
 +      (sql-mode-db2-font-lock-keywords)
 +      (sql-mode-linter-font-lock-keywords): Update initialization to
 +      reduce run-time complexity.
 +      (sql-add-product, sql-del-product): New functions.
 +      (sql-set-product-feature, sql-get-product-feature): New functions.
 +      (sql-product-font-lock): Update product API.
 +      (sql-add-product-keywords): New function.
 +      (sql-highlight-product): Update product API.
 +      (sql-help-list-products): New function.
 +      (sql-help): Dynamically lists free and non-free products.
 +      (sql-get-login): Correct bug in handling history and added
 +      prompt for port.
 +      (sql-copy-column): Copy without properties.
 +      (sqli-input-sender): Apply filters to SQLi input.
 +      (sql-query-placeholders-and-send): Obey `sql-oracle-scan-on' setting.
 +      Implement as a filter.
 +      (sql-escape-newlines-filter): Implement as a filter.
 +      (sql-remove-tabs-filter): New function.
 +      (sql-send-magic-terminator): New function.
 +      (sql-send-string): Implement magic terminator.
 +      (sql-send-region): Use `sql-send-string'.
 +      (sql-interactive-mode): Use product API.
 +      (sql-product-interactive): Use product API.
 +      (sql-oracle, sql-sybase, sql-informix, sql-sqlite, sql-mysql)
 +      (sql-solid, sql-ingres, sql-ms, sql-postgres, sql-interbase)
 +      (sql-db2, sql-linter): Use `sql-product-interactive'.
 +      (sql-connect): New function.
 +      (sql-connect-oracle, sql-connect-sybase, sql-connect-informix)
 +      (sql-connect-sqlite, sql-connect-mysql, sql-connect-solid)
 +      (sql-connect-ingres, sql-connect-ms, sql-connect-postgres)
 +      (sql-connect-interbase, sql-connect-db2, sql-connect-linter):
 +      Use `sql-connect'.
 +
 +2010-05-09  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * minibuffer.el (completion-pcm-complete-word-inserts-delimiters):
 +      New custom variable.
 +      (completion-pcm--string->pattern): Use it.
 +      (completion-pcm--pattern->regex, completion-pcm--pattern->string):
 +      Make it handle any symbol as `any'.
 +      (completion-pcm--merge-completions): Extract common suffix for the new
 +      `prefix' symbol as well.
 +      (completion-substring--all-completions): Use the new `prefix' symbol.
 +
 +2010-05-09  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/tramp-compat.el (byte-compile-not-obsolete-vars): Define if
 +      not bound.
 +      (tramp-compat-copy-file): Add PRESERVE-SELINUX-CONTEXT.
 +      (tramp-compat-funcall): New defmacro.
 +      (tramp-compat-line-beginning-position)
 +      (tramp-compat-line-end-position)
 +      (tramp-compat-temporary-file-directory)
 +      (tramp-compat-make-temp-file, tramp-compat-file-attributes)
 +      (tramp-compat-copy-file, tramp-compat-copy-directory)
 +      (tramp-compat-delete-file, tramp-compat-delete-directory)
 +      (tramp-compat-number-sequence, tramp-compat-process-running-p)
 +      * net/tramp.el (top, with-progress-reporter)
 +      (tramp-rfn-eshadow-setup-minibuffer)
 +      (tramp-rfn-eshadow-update-overlay, tramp-handle-set-file-times)
 +      (tramp-handle-dired-compress-file, tramp-handle-shell-command)
 +      (tramp-completion-mode-p, tramp-check-for-regexp)
 +      (tramp-open-connection-setup-interactive-shell)
 +      (tramp-compute-multi-hops, tramp-read-passwd, tramp-clear-passwd)
 +      (tramp-time-diff, tramp-coding-system-change-eol-conversion)
 +      (tramp-set-process-query-on-exit-flag, tramp-unload-tramp)
 +      * net/tramp-cmds.el (tramp-cleanup-all-connections)
 +      (tramp-reporter-dump-variable, tramp-load-report-modules)
 +      (tramp-append-tramp-buffers)
 +      * net/tramp-gvfs.el (tramp-gvfs-handle-file-selinux-context): Use it.
 +
 +      * net/tramp-imap.el (top): Autoload `epg-make-context'.
 +
 +2010-05-08  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * progmodes/compile.el (compilation-buffer-modtime): Rename from
 +      buffer-modtime.  Adjust users.
 +
 +2010-05-08  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * international/mule.el (auto-coding-alist): Only purecopy
 +      car of each item, not the whole list (Bug#6083).
 +
 +2010-05-08  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * progmodes/js.el (js-mode): Make paragraph variables local before
 +      calling c-setup-paragraph-variables (Bug#6071).
 +
 +2010-05-08  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * composite.el (compose-region, reference-point-alist): Fix typos
 +      in the doc strings.
 +
 +2010-05-08  Alexander Klimov  <alserkli@inbox.ru>  (tiny change)
 +
 +      * calc/calc-graph.el (calc-graph-plot): Use the proper form for
 +      gnuplot's "set" command.
 +
 +2010-05-08  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * abbrev.el (last-abbrev-text): Doc fix.
 +      (abbrev-prefix-mark): Don't escape parenthesis.
 +
 +2010-05-08  Andreas Schwab  <schwab@linux-m68k.org>
 +
 +      * composite.el (find-composition): Doc fix.
 +
 +2010-05-08  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * progmodes/sql.el (sql-electric-stuff): Fix typo in tag.
 +      (sql-oracle-program, sql-sqlite-options)
 +      (sql-query-placeholders-and-send): Doc fixes.
 +      (sql-set-product, sql-interactive-mode): Reflow docstrings.
 +      (sql-imenu-generic-expression, sql-buffer)
 +      (sql-mode-ansi-font-lock-keywords, sql-mode-oracle-font-lock-keywords)
 +      (sql-mode-postgres-font-lock-keywords, sql-mode-ms-font-lock-keywords)
 +      (sql-mode-sybase-font-lock-keywords)
 +      (sql-mode-informix-font-lock-keywords)
 +      (sql-mode-interbase-font-lock-keywords)
 +      (sql-mode-ingres-font-lock-keywords, sql-mode-solid-font-lock-keywords)
 +      (sql-mode-mysql-font-lock-keywords, sql-mode-sqlite-font-lock-keywords)
 +      (sql-mode-db2-font-lock-keywords, sql-mode-font-lock-keywords)
 +      (sql-product-feature, sql-highlight-product)
 +      (comint-line-beginning-position, sql-rename-buffer)
 +      (sql-toggle-pop-to-buffer-after-send-region sql-oracle)
 +      (sql-sybase, sql-informix, sql-sqlite, sql-mysql, sql-solid)
 +      (sql-ingres, sql-ms, sql-postgres, sql-interbase, sql-db2, sql-linter):
 +      Fix typos in docstrings.
 +
 +2010-05-08  Juri Linkov  <juri@jurta.org>
 +
 +      * info.el (Info-fontify-node): Put Info-breadcrumbs to the `display'
 +      property instead of `invisible' and `after-string' (bug#5998).
 +
 +2010-05-08  Juri Linkov  <juri@jurta.org>
 +
 +      * image-mode.el (image-mode-as-text): Fix typo in docstring.
 +
 +2010-05-08  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * filecache.el (file-cache-add-directory-list)
 +      (file-cache-add-directory-recursively): Fix typos in docstrings.
 +
 +2010-05-08  Kenichi Handa  <handa@m17n.org>
 +
 +      * language/indian.el (gurmukhi-composable-pattern): Fix typo.
 +      (gujarati-composable-pattern): Fix typo.
 +
 +2010-05-08  Kenichi Handa  <handa@m17n.org>
 +
 +      * language/indian.el (oriya-composable-pattern)
 +      (tamil-composable-pattern, malayalam-composable-pattern):
 +      Add two-part vowels to "v" (vowel sign).
 +
 +2010-05-08  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * files.el (copy-directory): Handle symlinks (Bug#5982).
 +
 +2010-05-08  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * vc-hg.el (vc-hg-state): Use HGRCPATH, not HGRC.
 +      (vc-hg-working-revision): Likewise.  Use hg parents, not hg parent
 +      (Bug#5846).
 +
 +2010-05-08  Glenn Morris  <rgm@gnu.org>
 +
 +      * emacs-lisp/lisp.el (lisp-completion-at-point): Give it a doc string.
 +
 +      * minibuffer.el (completion-at-point): Doc fix.
 +
 +2010-05-08  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * electric.el (Electric-command-loop): Minor tweak.
 +
 +      * ebuff-menu.el (electric-buffer-list): Try and make it behave a bit
 +      better with dedicated windows.
 +
 +2010-05-07  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * Version 23.2 released.
 +
 +2010-05-07  Deniz Dogan  <deniz.a.m.dogan@gmail.com>  (tiny change)
 +            Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      Highlight vendor specific properties.
 +      * textmodes/css-mode.el (css-proprietary-nmstart-re): New var.
 +      (css-proprietary-property): New face.
 +      (css-font-lock-keywords): Use them.
 +
 +2010-05-07  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * cus-start.el (all): Add native condition for tool-bar-* symbols.
 +
 +2010-05-07  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * textmodes/dns-mode.el (auto-mode-alist): Add entry for .zone files.
 +      * files.el (auto-mode-alist): Remove redundant entries.
 +
 +      * files.el (auto-save-mode): Move to simple.el to fix bootstrap.
 +      * simple.el (auto-save-mode): Move from files.el.
 +      * minibuffer.el (completion--common-suffix): Fix copy&paste error.
 +
 +2010-05-07  Christian von Roques  <roques@mti.ag>  (tiny change)
 +
 +      * epg.el (epg-key-capablity-alist): Add "D" flag (Bug#5592).
 +
 +2010-05-07  Katsumi Yamaoka  <yamaoka@jpl.org>
 +
 +      * mail/binhex.el (binhex-decode-region-internal)
 +      * mail/uudecode.el (uudecode-decode-region-internal)
 +      * net/dns.el (dns-read-string-name, dns-write, dns-read)
 +      (dns-read-type, dns-query)
 +      * pgg-parse.el (pgg-parse-armor)
 +      * pgg.el (pgg-verify-region)
 +      * sha1.el (sha1-string-external): Don't run set-buffer-multibyte for
 +      XEmacs.
 +
 +      * net/imap.el (imap-disable-multibyte): Redefine it as a macro.
 +
 +2010-05-07  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * progmodes/cperl-mode.el (cperl-mode-unload-function): New function.
 +
 +      Fix use of `filter-buffer-substring' (4th arg NOPROPS removed).
 +      * emulation/cua-base.el (cua-repeat-replace-region):
 +      * emulation/cua-gmrk.el (cua-copy-region-to-global-mark)
 +      (cua-cut-region-to-global-mark):
 +      Remove text properties with `set-text-properties'.
 +
 +2010-05-06  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/tramp.el (top, with-progress-reporter):
 +      Use `symbol-function' inside `funcall'.
 +
 +      * net/tramp-compat.el (tramp-compat-file-attributes)
 +      (tramp-compat-delete-file, tramp-compat-delete-directory):
 +      Handle only `wrong-number-of-arguments' error.
 +
 +      * net/tramp-gvfs.el (tramp-gvfs-handle-copy-file): Fix typo.
 +      (tramp-gvfs-handle-file-selinux-context): Use `symbol-function'
 +      inside `funcall'.
 +
 +2010-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * minibuffer.el (completion--sreverse, completion--common-suffix):
 +      New functions.
 +      (completion-pcm--merge-completions): Extract common suffix when safe.
 +
 +      * emacs-lisp/easy-mmode.el (define-minor-mode):
 +      Make :variable more flexible.
 +      * files.el (auto-save-mode): Use it to define using define-minor-mode.
 +
 +2010-05-05  Juri Linkov  <juri@jurta.org>
 +
 +      Add `slow' and `history' tags to the desktop data.
 +
 +      * info.el (Info-virtual-nodes) [*Index*]: Add `slow' tag.
 +      (Info-virtual-files) [*Apropos*]: Add `slow' tag.
 +      (Info-finder-find-node): Require `finder.el' to be able
 +      to restore node from the desktop.
 +      (Info-desktop-buffer-misc-data): Save all nodes.  Save additional
 +      data `Info-history' and `slow' tag in the assoc list.
 +      (Info-restore-desktop-buffer): Don't restore nodes with the
 +      `slow' tag.  Restore `Info-history'.
 +
 +2010-05-05  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      Add FORCE argument to `delete-file'.
 +
 +      * net/ange-ftp.el (ange-ftp-del-tmp-name): Make it a defun,
 +      forcing to delete the temporary file.
 +      (ange-ftp-delete-file): Add FORCE arg.
 +      (ange-ftp-rename-remote-to-remote)
 +      (ange-ftp-rename-local-to-remote, ange-ftp-rename-remote-to-local)
 +      (ange-ftp-load, ange-ftp-compress, ange-ftp-uncompress):
 +      Force file deletion.
 +
 +      * net/tramp-compat.el (tramp-compat-delete-file): New defun.
 +
 +      * net/tramp.el (tramp-handle-delete-file): Add FORCE arg.
 +      (tramp-handle-make-symbolic-link, tramp-handle-load)
 +      (tramp-do-copy-or-rename-file-via-buffer)
 +      (tramp-do-copy-or-rename-file-directly)
 +      (tramp-do-copy-or-rename-file-out-of-band)
 +      (tramp-handle-process-file, tramp-handle-call-process-region)
 +      (tramp-handle-shell-command, tramp-handle-file-local-copy)
 +      (tramp-handle-insert-file-contents, tramp-handle-write-region)
 +      (tramp-delete-temp-file-function): Use `tramp-compat-delete-file'.
 +
 +      * net/tramp-fish.el (tramp-fish-handle-delete-file): Add FORCE arg.
 +      (tramp-fish-handle-make-symbolic-link)
 +      (tramp-fish-handle-process-file): Use `tramp-compat-delete-file'.
 +
 +      * net/tramp-ftp.el (tramp-ftp-file-name-handler):
 +      Use `tramp-compat-delete-file'.
 +
 +      * net/tramp-gvfs.el (tramp-gvfs-handle-delete-file): Add FORCE arg.
 +      (tramp-gvfs-handle-write-region): Use `tramp-compat-delete-file'.
 +
 +      * net/tramp-imap.el (tramp-imap-handle-delete-file): Add FORCE arg.
 +      (tramp-imap-do-copy-or-rename-file): Use `tramp-compat-delete-file'.
 +
 +      * net/tramp-smb.el (tramp-smb-handle-delete-file): Add FORCE arg.
 +      (tramp-smb-handle-copy-file, tramp-smb-handle-file-local-copy)
 +      (tramp-smb-handle-rename-file, tramp-smb-handle-write-region):
 +      Use `tramp-compat-delete-file'.
 +
 +2010-05-05  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      Minor cleanups.
 +      * subr.el (add-minor-mode): Use push.
 +      * mail/supercite.el (sc-electric-mode): Use more descriptive arg name.
 +      * emulation/edt.el (edt-select-mode): Simplify.
 +
 +      Use define-minor-mode in more cases.
 +      * term/tvi970.el (tvi970-set-keypad-mode):
 +      * simple.el (auto-fill-mode, overwrite-mode, binary-overwrite-mode)
 +      (normal-erase-is-backspace-mode):
 +      * scroll-bar.el (scroll-bar-mode): Use it and define-minor-mode.
 +      (set-scroll-bar-mode-1): (Re)move to its sole caller.
 +      (get-scroll-bar-mode): New function.
 +      * emacs-lisp/cl-macs.el (eq): Handle a non-variable first arg.
 +
 +      Use define-minor-mode for less obvious cases.
 +      * emacs-lisp/easy-mmode.el (define-minor-mode): Add :variable keyword.
 +      * emacs-lisp/cl-macs.el (terminal-parameter, eq): Add setf method.
 +      * international/iso-ascii.el (iso-ascii-mode):
 +      * frame.el (auto-raise-mode, auto-lower-mode):
 +      * composite.el (global-auto-composition-mode): Use define-minor-mode.
 +
 +2010-05-04  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/tramp.el (tramp-methods): Remove "-q" from `tramp-login-args'
 +      in order to see error messages for failed logins.
 +
 +2010-05-03  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * diff.el (diff-sentinel):
 +
 +      * epg.el (epg--make-temp-file, epg-decrypt-string)
 +      (epg-verify-string, epg-sign-string, epg-encrypt-string):
 +
 +      * jka-compr.el (jka-compr-partial-uncompress)
 +      (jka-compr-call-process, jka-compr-write-region, jka-compr-load):
 +
 +      * server.el (server-sentinel): Use delete-file's new FORCE arg
 +      (Bug#6070).
 +
 +2010-05-03  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      Use define-minor-mode where applicable.
 +      * view.el (view-mode):
 +      * type-break.el (type-break-query-mode)
 +      (type-break-mode-line-message-mode):
 +      * textmodes/reftex.el (reftex-mode):
 +      * term/vt100.el (vt100-wide-mode):
 +      * tar-mode.el (tar-subfile-mode):
 +      * savehist.el (savehist-mode):
 +      * ibuf-ext.el (ibuffer-auto-mode):
 +      * composite.el (auto-composition-mode):
 +      * progmodes/vhdl-mode.el (vhdl-electric-mode, vhdl-stutter-mode):
 +      Use define-minor-mode.
 +      (vhdl-mode): Use static mode-line format.
 +      (vhdl-mode-line-update): Delete.
 +      (vhdl-create-mode-menu, vhdl-activate-customizations)
 +      (vhdl-hs-minor-mode): Don't bother calling it.
 +
 +2010-05-02  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * simple.el (with-wrapper-hook): Move.
 +      (buffer-substring-filters): Mark obsolete.
 +      (filter-buffer-substring-functions): New variable.
 +      (filter-buffer-substring): Use it.  Remove unused arg `noprops'.
 +
 +2010-05-01  Toru TSUNEYOSHI  <t_tuneyosi@hotmail.com>
 +            Michael Albinus  <michael.albinus@gmx.de>
 +
 +      Implement compression for inline methods.
 +
 +      * net/tramp.el (tramp-inline-compress-start-size): New defcustom.
 +      (tramp-copy-size-limit): Allow also nil.
 +      (tramp-inline-compress-commands): New defconst.
 +      (tramp-find-inline-compress, tramp-get-inline-compress)
 +      (tramp-get-inline-coding): New defuns.
 +      (tramp-get-remote-coding, tramp-get-local-coding): Remove,
 +      replaced by `tramp-get-inline-coding'.
 +      (tramp-handle-file-local-copy, tramp-handle-write-region)
 +      (tramp-method-out-of-band-p): Use `tramp-get-inline-coding'.
 +
 +2010-05-01  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * bindings.el (mode-line-abbrev-mode, mode-line-auto-fill-mode):
 +      Remove unused functions.
 +
 +      * emacs-lisp/lisp-mode.el (lisp-mode): Use define-derived-mode.
 +      Set find-tag-default-function as a variable rather than a property.
 +
 +      * minibuffer.el (tags-completion-at-point-function): Move to etags.el.
 +      * progmodes/etags.el (tags-completion-at-point-function):
 +      Remove left over interactive spec.  Add autoloading stub.
 +      (complete-tag): Use tags-completion-at-point-function.
 +
 +2010-04-30  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * minibuffer.el (tags-completion-at-point-function): Fix return value.
 +
 +2010-04-29  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * ido.el (ido-init-completion-maps): Remove C-v binding.
 +      (ido-minibuffer-setup): Don't set cua-inhibit-cua-keys (Bug#5765).
 +
 +2010-04-29  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * minibuffer.el (tags-completion-at-point-function): New function.
 +      (completion-at-point-functions): Use it.
 +
 +      * progmodes/etags.el (complete-tag): Revert last change.
 +
 +2010-04-29  Alan Mackenzie  <acm@muc.de>
 +
 +      * progmodes/cc-mode.el (c-extend-region-for-CPP): Fix an
 +      off-by-one error (in end of macro position).
 +
 +2010-04-29  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * net/browse-url.el (browse-url-firefox-program): Use iceweasel if
 +      firefox is absent.  Don't autoload.
 +      (browse-url-galeon-program): Don't autoload.
 +
 +2010-04-28  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * bindings.el (complete-symbol): Move into minibuffer.el.
 +
 +      * minibuffer.el (complete-tag): Move from etags.el.  If tags
 +      completion cannot be performed, return nil instead of signalling
 +      an error.
 +      (completion-at-point): Make it an alias for complete-symbol.
 +      (complete-symbol): Move from bindings.el, and replace with the
 +      body of completion-at-point.
 +
 +      * progmodes/etags.el (complete-tag): Move to minibuffer.el.
 +
 +2010-04-28  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/tramp.el (tramp-remote-selinux-p): New defun.
 +      (tramp-handle-file-selinux-context)
 +      (tramp-handle-set-file-selinux-context): Use it.
 +
 +2010-04-28  Sam Steingold  <sds@gnu.org>
 +
 +      * progmodes/bug-reference.el (bug-reference-url-format): Mark as
 +      `safe-local-variable' if the value is a string or a symbol with
 +      the property `bug-reference-url-format'.
 +
 +2010-04-28  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * progmodes/bug-reference.el (bug-reference-url-format):
 +      Revert 2010-04-27 change due to security risk.
 +
 +2010-04-28  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      Make it possible to locally disable a globally enabled mode.
 +      * simple.el (fundamental-mode): Run fundamental-mode-hook.
 +      * emacs-lisp/derived.el (define-derived-mode): Use fundamental-mode
 +      rather than kill-all-local-variables so it runs fundamental-mode-hook.
 +      * emacs-lisp/easy-mmode.el (define-globalized-minor-mode):
 +      Use fundamental-mode-hook to run MODE-enable-in-buffers earlier, so
 +      that subsequent hooks get a chance to disable it.
 +
 +2010-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * emacs-lisp/easy-mmode.el (define-globalized-minor-mode):
 +      Avoid re-enabling a minor mode after the user turned the minor mode
 +      off if MODE-enable-in-buffers is run twice (typically once from
 +      fundamental-mode's after-change-major-mode-hook and a second time from
 +      run-mode-hook's own after-change-major-mode-hook).
 +
 +      * emacs-lisp/lisp.el (lisp-complete-symbol): Fail gracefully.
 +
 +2010-04-27  Sam Steingold  <sds@gnu.org>
 +
 +      * progmodes/bug-reference.el (bug-reference-url-format): Mark as
 +      `safe-local-variable' if the value is a string or a function, as
 +      documented and implemented on 2010-04-02.
 +
 +2010-04-27  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * ido.el (ido-buffer-internal): Bind `ido-use-virtual-buffers' to nil
 +      when method is 'kill.
 +
 +2010-04-27  Agustín Martín  <agustin.martin@hispalinux.es>
 +
 +      * textmodes/ispell.el (ispell-init-process): Fix personal dictionary
 +      condition in default directory check.
 +      (ispell-init-process,ispell-kill-ispell,kill-buffer-hook):
 +      Kill ispell process when killing its associated buffer.
 +
 +2010-04-27  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * desktop.el (desktop-kill): ask-if-new: Ask if desktop file exists,
 +      but we aren't using it.
 +
 +2010-04-25  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * tool-bar.el (tool-bar-local-item-from-menu): Revert unintended
 +      checkin in 2010-04-23T16:26:11Z!monnier@iro.umontreal.ca.
 +
 +2010-04-24  Glenn Morris  <rgm@gnu.org>
 +
 +      * emacs-lisp/authors.el (authors-obsolete-files-regexps):
 +      Ignore VCS-ignore files, and deleted nextstep preferences files.
 +      (authors-ignored-files): Ignore deleted cedet test files, and "*.el".
 +      (authors-ambiguous-files): New list.
 +      (authors-valid-file-names): Add some deleted files.
 +      (authors-renamed-files-alist): Add font-setting.el, edt-user.doc.
 +      (authors-disambiguate-file-name): New function.  (Bug#5501)
 +      (authors-canonical-file-name): Doc fix.
 +      Don't warn about obsolete files.
 +      (authors-canonical-file-name, authors-scan-el):
 +      Use authors-disambiguate-file-name.
 +
 +      * hfy-cmap.el (htmlfontify-load-rgb-file, hfy-fallback-colour-values):
 +      Add autoload cookies.
 +      (htmlfontify-unload-rgb-file, hfy-fallback-colour-values): Add docs.
 +      (generated-autoload-file): Set file-local value to "htmlfontify.el".
 +      * htmlfontify.el (caddr, cadddr): Remove fallback definitions.
 +      They have definitions / compiler macros in cl.el.
 +      (htmlfontify-load-rgb-file, hfy-fallback-colour-values):
 +      Replace manual autoloads with generated ones.
 +      (htmlfontify-unload-rgb-file): Remove autoload.
 +      * Makefile.in (autoloads): Ensure htmlfontify.el is writable.
 +
 +2010-04-23  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * emacs-lisp/bytecomp.el (byte-compile-set-default): New function.
 +      (byte-compile-setq-default): Optimize for the
 +      single-var case and don't call byte-compile-form in this case to avoid
 +      inf-loop with byte-compile-set-default.
 +
 +      * progmodes/compile.el (compilation-start): Abbreviate default directory.
 +
 +2010-04-23  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      Implement SELINUX backends.
 +
 +      * net/tramp.el (tramp-file-name-handler-alist):
 +      Add `file-selinux-context' and `set-file-selinux-context'.
 +      (tramp-handle-file-selinux-context)
 +      (tramp-handle-set-file-selinux-context): New defuns.
 +      (tramp-handle-copy-file, tramp-do-copy-or-rename-file):
 +      Handle PRESERVE-SELINUX-CONTEXT.
 +
 +      * net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist):
 +      Add `file-selinux-context' and `set-file-selinux-context'.
 +      (tramp-gvfs-handle-file-selinux-context)
 +      (tramp-gvfs-handle-set-file-selinux-context): New defuns.
 +      (tramp-gvfs-handle-copy-file): Handle PRESERVE-SELINUX-CONTEXT.
 +
 +      * net/ange-ftp.el (ange-ftp-copy-file):
 +      * net/tramp-fish.el (tramp-fish-handle-copy-file):
 +      * net/tramp-imap.el (tramp-imap-handle-copy-file):
 +      * net/tramp-smb.el (tramp-smb-handle-copy-file):
 +      Add PRESERVE-SELINUX-CONTEXT.
 +
 +2010-04-22  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      Synchronize with Tramp repository.
 +
 +      * net/tramp.el (with-connection-property, tramp-completion-mode-p)
 +      (tramp-action-process-alive, tramp-action-out-of-band)
 +      (tramp-check-for-regexp, tramp-file-name-p, tramp-equal-remote)
 +      (tramp-exists-file-name-handler): Fix docstring.
 +      (with-progress-reporter): New defmacro.
 +      (tramp-do-copy-or-rename-file, tramp-handle-dired-compress-file)
 +      (tramp-maybe-open-connection): Use it.
 +
 +2010-04-22  Noah Lavine  <noah549@gmail.com>  (tiny change)
 +
 +      Detect ssh 'ControlMaster' argument automatically in some cases.
 +
 +      * net/tramp.el (tramp-detect-ssh-controlmaster): New defun.
 +      (tramp-default-method): Use it.
 +
 +2010-04-22  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/tramp.el (tramp-handle-copy-file): Add new optional
 +      parameter `preserve-selinux-context'.
 +      (tramp-file-name-for-operation): Add `set-file-selinux-context'.
 +
 +2010-04-22  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/tramp.el (tramp-completion-handle-file-name-all-completions):
 +      Ensure, that non remote files are still checked.  Oops.
 +
 +2010-04-21  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      Fix Bug#5840.
 +
 +      * icomplete.el (icomplete-completions): Use `non-essential'.
 +
 +      * net/tramp.el (tramp-connectable-p): New defun.
 +      (tramp-handle-expand-file-name)
 +      (tramp-completion-handle-file-name-all-completions)
 +      (tramp-completion-handle-file-name-completion): Use it.
 +
 +2010-04-21  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * emacs-lisp/lisp.el (lisp-completion-at-point): Try and handle errors.
 +
 +2010-04-21  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * vc-dir.el (vc-dir-tool-bar-map): Add :label on some tool bar items.
 +
 +      * tool-bar.el (tool-bar-setup): Add :label on some tool bar items.
 +
 +      * loadup.el: Load dynamic-setting.el if feature dynamic-setting
 +      is present.
 +
 +      * info.el (info-tool-bar-map): Add labels.
 +
 +      * cus-start.el (all): Add tool-bar-style and tool-bar-max-label-size.
 +
 +      * cus-edit.el (custom-commands): Add labels for tool bar.
 +      (custom-buffer-create-internal, Custom-mode): Adjust for
 +      labels in custom-commands.
 +
 +      * dynamic-setting.el: Renamed from font-setting.el.
 +
 +2010-04-21  John Wiegley  <jwiegley@gmail.com>
 +
 +      * ido.el (ido-init-completion-maps): For ido-switch-buffer, C-o
 +      toggles the use of virtual buffers.
 +      (ido-buffer-internal): Guard `ido-use-virtual-buffers' global value.
 +      (ido-toggle-virtual-buffers): New function.
 +
 +2010-04-21  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      Use `define-derived-mode'; fix window selection; doc fixes.
 +      * play/tetris.el (tetris, tetris-update-speed-function)
 +      (tetris-tty-colors, tetris-x-colors, tetris-move-bottom)
 +      (tetris-move-left, tetris-move-right, tetris-rotate-prev)
 +      (tetris-rotate-next, tetris-end-game, tetris-start-game)
 +      (tetris-pause-game): Fix typos in docstrings.
 +      (tetris-mode-map, tetris-null-map):
 +      Move initialization into declaration.
 +      (tetris-mode): Define with `define-derived-mode';
 +      set show-trailing-whitespace to nil.
 +      (tetris): Prefer window already displaying the "*Tetris*" buffer.
 +
 +2010-04-21  Karel Klíč  <kklic@redhat.com>
 +
 +      * files.el (backup-buffer): Handle SELinux context, and return it
 +      if a backup was made by renaming.
 +      (backup-buffer-copy): Set SELinux context to the target file.
 +      (basic-save-buffer): Set SELinux context of the newly written file.
 +      (basic-save-buffer-1): Now it also returns any SELinux context.
 +      (basic-save-buffer-2): Set SELinux context of the newly created file,
 +      and return it.
 +      * net/tramp.el (tramp-file-name-for-operation):
 +      Add file-selinux-context.
 +
 +2010-04-21  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      Make the log-edit comments use RFC822 format throughout.
 +
 +      * vc.el (vc-checkin, vc-modify-change-comment):
 +      Adjust to new vc-start/finish-logentry.
 +      (vc-find-conflicted-file): New command.
 +      (vc-transfer-file): Adjust to new vc-checkin.
 +      (vc-next-action): Improve scoping.
 +
 +      * vc-hg.el (vc-hg-log-edit-mode): Remove.
 +      (vc-hg-checkin): Remove extra arg.  Use log-edit-extract-headers.
 +
 +      * vc-git.el (vc-git-log-edit-mode): Remove.
 +      (vc-git-checkin): Remove extra arg.  Use log-edit-extract-headers.
 +      (vc-git-commits-coding-system): Rename from git-commits-coding-system.
 +
 +      * vc-dispatcher.el (vc-log-edit): Shorten names for log-edit-show-files.
 +      (vc-start-logentry): Remove argument `extra'.
 +      (vc-finish-logentry): Remove extra args.
 +
 +      * vc-bzr.el (vc-bzr-log-edit-mode): Remove.
 +      (vc-bzr-checkin): Remove extra arg.  Use log-edit-extract-headers.
 +      (vc-bzr-conflicted-files): New function.
 +
 +      * log-edit.el (log-edit-extra-flags)
 +      (log-edit-before-checkin-process): Remove.
 +      (log-edit-summary, log-edit-header, log-edit-unknown-header): New faces.
 +      (log-edit-headers-alist): New var.
 +      (log-edit-header-contents-regexp): New const.
 +      (log-edit-match-to-eoh): New function.
 +      (log-edit-font-lock-keywords): Use them.
 +      (log-edit): Insert a "Summary:" header as default.
 +      (log-edit-mode): Mark font-lock rules as case-insensitive.
 +      (log-edit-done): Cleanup headers.
 +      (log-view-process-buffer): Remove.
 +      (log-edit-extract-headers): New function to replace it.
 +
 +2010-04-20  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * subr.el (default-direction-reversed): Remove obsolescence info.
 +
 +2010-04-20  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * vc-dispatcher.el (vc-finish-logentry): Don't mess so badly with the
 +      windows/frames.
 +
 +      * emacs-lisp/lisp.el (lisp-completion-at-point): Complete around point.
 +      I.e. include text after point in the completion region.
 +      Also, return nil when we're not after/in a symbol.
 +
 +      * international/mule-cmds.el (view-hello-file): Don't fiddle with the
 +      default enable-multibyte-characters.
 +
 +2010-04-19  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * international/mule.el: Help the user choose a valid coding-system.
 +      (read-buffer-file-coding-system): New function.
 +      (set-buffer-file-coding-system): Use it.  Prompt the user if the
 +      coding-system cannot encode all the chars.
 +
 +      * vc-bzr.el: Use standard *vc* and *vc-diff* buffers.
 +      (vc-bzr-shelve-show, vc-bzr-shelve-apply)
 +      (vc-bzr-shelve-apply-and-keep, vc-bzr-shelve-snapshot):
 +      Don't use *vc-bzr-shelve*.
 +
 +2010-04-19  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      Fix the version number for added files.
 +      * vc-hg.el (vc-hg-working-revision): Check if the file is
 +      registered after hg parent fails (Bug#5961).
 +
 +2010-04-19  Glenn Morris  <rgm@gnu.org>
 +
 +      * htmlfontify.el (htmlfontify-buffer)
 +      (htmlfontify-copy-and-link-dir): Autoload entry points.
 +
 +2010-04-19  Magnus Henoch  <magnus.henoch@gmail.com>
 +
 +      * vc-hg.el (vc-hg-annotate-extract-revision-at-line): Expand file
 +      name relative to the project root (Bug#5960).
 +
 +2010-04-19  Glenn Morris  <rgm@gnu.org>
 +
 +      * vc-git.el (vc-git-print-log): Doc fix.
 +
 +2010-04-19  Óscar Fuentes  <ofv@wanadoo.es>
 +
 +      * ido.el (ido-file-internal): Fix 2009-12-02 change.
 +
 +2010-04-19  Christoph  <cschol2112@googlemail.com>  (tiny change)
 +
 +      * progmodes/grep.el (grep-compute-defaults): Fix handling of host
 +      default settings (Bug#5928).
 +
 +2010-04-19  Glenn Morris  <rgm@gnu.org>
 +
 +      * progmodes/fortran.el (fortran-match-and-skip-declaration):
 +      New function.
 +      (fortran-font-lock-keywords-3): Use it.  (Bug#1385)
 +
 +2010-04-19  Kenichi Handa  <handa@m17n.org>
 +
 +      * language/indian.el (malayalam-composable-pattern): Fix previous
 +      change (add U+0D4D "SIGN VIRAMA").
 +      (oriya-composable-pattern): Add U+0B30 and fix typo in the regexp.
 +      (tamil-composable-pattern): Fix typo in the regexp.
 +      (telugu-composable-pattern): Fix U+0C4D and typo in the regexp.
 +      (kannada-composable-pattern): Fix U+0CB0 and typo in the regexp.
 +      (malayalam-composable-pattern): Fix U+0D4D and typo in the regexp.
 +
 +2010-04-19  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * textmodes/tex-mode.el (latex-mode): Revert 2008-03-03 change to
 +      paragraph-separate (Bug#5821).
 +
 +2010-04-19  Juri Linkov  <juri@jurta.org>
 +
 +      Put breadcrumbs on overlay instead of inserting to buffer (bug#5809).
 +
 +      * info.el (Info-find-node-2): Comment out code that skips
 +      breadcrumbs line.
 +      (Info-mouse-follow-link): New command.
 +      (Info-link-keymap): New keymap.
 +      (Info-breadcrumbs): Rename from `Info-insert-breadcrumbs'.
 +      Return a string with links instead of inserting breadcrumbs
 +      to the Info buffer.
 +      (Info-fontify-node): Comment out code that inserts breadcrumbs.
 +      Instead of putting the `invisible' text property over the Info
 +      header, make an overlay over the Info header with the `invisible'
 +      property and `after-string' set to the string returned by
 +      `Info-breadcrumbs'.
 +
 +2010-04-19  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * help.el (help-window-setup-finish): Doc fix (Bug#5830).
 +      Reported by monkey@sandpframing.com.
 +
 +2010-04-19  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * tmm.el (tmm-prompt): Remove obsolete call to x-popup-menu.
 +      (tmm-get-keymap): Add key-binding shortcuts now that they're not
 +      available in the "keyseq cache" any more.
 +
 +      * custom.el (defcustom): Add edebug spec.
 +
 +2010-04-18  Juri Linkov  <juri@jurta.org>
 +
 +      Test for special mode-class in view-buffer instead of view-file (bug#5513).
 +
 +      * view.el (view-file, view-buffer): Move test for special mode-class
 +      from view-file to view-buffer.
 +
 +      * tar-mode.el (tar-extract): Turn if's into one cond
 +      like in arc-mode.el.
 +
 +2010-04-18  Juri Linkov  <juri@jurta.org>
 +
 +      Add 7z archive format support (bug#5475).
 +
 +      * arc-mode.el (archive-zip-extract): Try to find 7z executable.
 +      (archive-7z-extract): New defcustom.
 +      (archive-find-type): Add magic string for 7z.
 +      (archive-extract-by-stdout): Add new optional arg `stderr-file'.
 +      If `stderr-file' is non-nil, use `(t stderr-file)' for the
 +      `buffer' arg of `call-process'.
 +      (archive-zip-extract): Check `archive-zip-extract' for "7z" and
 +      call the function `archive-7z-extract' with the variable
 +      `archive-7z-extract' let-bound to `archive-zip-extract'.
 +      (archive-7z-summarize, archive-7z-extract): New functions.
 +
 +      * international/mule.el (auto-coding-alist):
 +      * files.el (auto-mode-alist): Add 7z file extension.
 +
 +2010-04-18  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * loadup.el: Setup hash-cons for pure data.
 +
 +      Fix duplicate entries in cedet's loaddefs.el files.
 +      * emacs-lisp/autoload.el (autoload-file-load-name): Be more clever.
 +      Should make most file-local generated-autoload-file unnecessary.
 +      (print-readably): Silence warnings.
 +      (autoload-find-destination): Take load-name as an arg to make sure
 +      it's the same as the one that will be in the file.
 +      (autoload-generate-file-autoloads): Adjust to above changes.
 +      Try to make the dataflow a bit simpler.
 +
 +      * cvs-status.el (cvs-refontify): Remove unused.
 +
 +2010-04-18  Jay Belanger  <jay.p.belanger@gmail.com>
 +
 +      * calc/calc.el (calc-mode-map): Bind "O" to `calc-missing-key'.
 +
 +      * calc/calc-bin.el (calc-radix): Have the "O" option turn on
 +      twos-complement mode.
 +
 +2010-04-17  Jay Belanger  <jay.p.belanger@gmail.com>
 +
 +      * calc/calc-ext.el (calc-init-extensions): Add keybinding for
 +      'calc-option'.  Add `calc-option-prefix-help' to calc-help autoloads.
 +      (calc-inverse): Add "Option" to message, as appropriate.
 +      (calc-hyperbolic): Add "Option" to message, as appropriate.
 +      (calc-option, calc-is-option): New functions.
 +
 +      * calc/calc-help.el (calc-full-help): Add `calc-option-help'.
 +      (calc-option-prefix-help): New function.
 +
 +      * calc/calc-misc.el (calc-help): Add "Option" entry.
 +
 +      * calc/calc.el (calc-local-var-list): Add `calc-option-flag'.
 +      (calc-option-flag): New variable.
 +      (calc-do): Set `calc-option-flag to nil.
 +      (calc-set-mode-line): Add "Opt " as appropriate.
 +
 +2010-04-16  Juri Linkov  <juri@jurta.org>
 +
 +      Move scrolling commands from simple.el to window.el
 +      because their primitives are implemented in window.c.
 +
 +      * simple.el (scroll-error-top-bottom)
 +      (scroll-up-command, scroll-down-command, scroll-up-line)
 +      (scroll-down-line, scroll-other-window-down)
 +      (beginning-of-buffer-other-window, end-of-buffer-other-window):
 +      * window.el (scroll-error-top-bottom)
 +      (scroll-up-command, scroll-down-command, scroll-up-line)
 +      (scroll-down-line, scroll-other-window-down)
 +      (beginning-of-buffer-other-window, end-of-buffer-other-window):
 +      Move from simple.el to window.el because their primitives are
 +      implemented in window.c.
 +
 +2010-04-16  Juri Linkov  <juri@jurta.org>
 +
 +      * isearch.el (isearch-lookup-scroll-key): Check both
 +      `isearch-scroll' and `scroll-command' properties.
 +      (scroll-up, scroll-down): Remove `isearch-scroll' property.
 +
 +      * mwheel.el (mwheel-scroll): Remove `isearch-scroll' property.
 +
 +      * simple.el (scroll-up-command, scroll-down-command)
 +      (scroll-up-line, scroll-down-line): Remove `isearch-scroll' property.
 +
 +2010-04-15  Juri Linkov  <juri@jurta.org>
 +
 +      * simple.el (scroll-up-command, scroll-down-command)
 +      (scroll-up-line, scroll-down-line): Put `scroll-command'
 +      property on the these symbols.  Remove them from
 +      `scroll-preserve-screen-position-commands'.
 +
 +      * mwheel.el (mwheel-scroll): Put `scroll-command' and
 +      `isearch-scroll' properties on the `mwheel-scroll' symbol.
 +      Remove it from `scroll-preserve-screen-position-commands'.
 +
 +      * isearch.el (isearch-allow-scroll): Doc fix.
 +
 +2010-04-15  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/tramp.el (tramp-error-with-buffer): Don't show the
 +      connection buffer when we are in completion mode.
 +      (tramp-file-name-handler): Catch the error for some operations
 +      when we are in completion mode.  This gives the user the chance to
 +      correct the file name in the minibuffer.
 +
 +2010-04-15  Glenn Morris  <rgm@gnu.org>
 +
 +      * progmodes/verilog-mode.el (verilog-forward-sexp): Avoid free variable.
 +
 +2010-04-15  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      Simplify by using `define-derived-mode'.
 +      * info.el (Info-mode):
 +      * calendar/todo-mode.el (todo-mode):
 +      * play/gomoku.el (gomoku-mode): Define with `define-derived-mode'.
 +      (gomoku-mode-map): Move initialization into declaration.
 +
 +2010-04-14  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      Fix Bug#5840.
 +      * ido.el (ido-file-name-all-completions-1):
 +      * minibuffer.el (minibuffer-completion-help):
 +      * net/tramp.el (tramp-completion-mode-p): Use `non-essential'.
 +
 +2010-04-14  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * simple.el (non-essential): New var.
 +
 +      Add a new field `location' to bookmarks for non-file bookmarks.
 +      * bookmark.el (bookmark-location): Use the new field, if present.
 +      (bookmark-insert-location): Undo last change, not needed any more.
 +      * man.el (Man-bookmark-make-record):
 +      * woman.el (woman-bookmark-make-record): Add `location' field.
 +
 +2010-04-14  Juri Linkov  <juri@jurta.org>
 +
 +      * simple.el (scroll-error-top-bottom): New defcustom.
 +      (scroll-up-command, scroll-down-command): Use it.  Doc fix.
 +
 +      * emulation/pc-select.el (pc-select-override-scroll-error):
 +      Obsolete in favor of `scroll-error-top-bottom'.
 +
 +2010-04-14  Juri Linkov  <juri@jurta.org>
 +
 +      * tutorial.el (tutorial--default-keys): Rebind `C-v' to
 +      `scroll-up-command' and `M-v' to `scroll-down-command'.
 +
 +      * emulation/cua-rect.el (cua--init-rectangles):
 +      * forms.el (forms--change-commands):
 +      * image-mode.el (image-mode-map):
 +      Remap scroll-down-command and scroll-up-command
 +      in addition to scroll-down and scroll-up.
 +
 +2010-04-14  Juri Linkov  <juri@jurta.org>
 +
 +      * mwheel.el (scroll-preserve-screen-position-commands):
 +      Add mwheel-scroll to this list of commands.
 +
 +      * simple.el (scroll-preserve-screen-position-commands):
 +      Add scroll-up-command, scroll-down-command, scroll-up-line,
 +      scroll-down-line to this list of commands.
 +
 +2010-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * obsolete/complete.el: Move from lisp/complete.el.
 +
 +      * pcomplete.el (pcomplete-here*): Fix mistaken change (bug#5935).
 +
 +      * emacs-lisp/easy-mmode.el (define-minor-mode): Passing a nil argument
 +      to the minor mode function now turns the mode ON unconditionally.
 +
 +2010-04-12  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * vc-dir.el (vc-dir-kill-line): New command.
 +      (vc-dir-mode-map): Bind it to C-k.
 +
 +      * bookmark.el (bookmark-insert-location): Handle a nil filename.
 +
 +      * woman.el: Add bookmark declarations to silence the compiler.
 +      (bookmark-prop-get): Use `man-args' rather than `filename' as a first
 +      step to compatibility between man and woman bookmarks.
 +      Adjust for Man-default-bookmark-title renaming.
 +      (woman-bookmark-jump): Adjust accordingly.  Don't forget to autoload.
 +
 +      * man.el: Add bookmark declarations to silence the compiler.
 +      (Man-name-local-regexp): Make it match NAME as well.
 +      (Man-getpage-in-background): Return the buffer.
 +      (Man-notify-when-ready): Use `case'.
 +      (man-set-default-bookmark-title): Rename to Man-default-bookmark-title.
 +      Don't hardcode "NAME".  Simplify.
 +      (Man-bookmark-make-record): Use Man-arguments rather than buffer-name.
 +      Rename from Man-bookmark-make-record.
 +      (Man-bookmark-jump): Rename from man-bookmark-jump.  Simplify now that
 +      we have the actual man-args.  Use Man-getpage-in-background rather
 +      than `man' since the arg is already processed.  Let bookmark.el do the
 +      window handling.  Only wait for the relevant process.
 +      Don't forget to autoload.
 +
 +      * bookmark.el (bookmark-default-file): Use locate-user-emacs-file.
 +
 +2010-04-12  Thierry Volpiatto  <thierry.volpiatto@gmail.com>
 +
 +      * woman.el (woman-bookmark-make-record, woman-bookmark-jump):
 +      New functions.
 +      (woman-mode): Setup bookmark support.
 +
 +      * man.el (man-set-default-bookmark-title, man-bookmark-make-record)
 +      (man-bookmark-jump): New functions.
 +      (Man-mode): Setup bookmark support.
 +
 +2010-04-10  Jari Aalto  <jari.aalto@cante.net>
 +
 +      * comint.el (comint-password-prompt-regexp): Use regexp-opt, and
 +      recognize ssh-keygen prompt (Bug#2817).
 +
 +2010-04-10  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/tramp.el (tramp-do-copy-or-rename-file): Add progress reporter.
 +
 +2010-04-10  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      Synchronize with Tramp repository.
 +
 +      * net/tramp.el (tramp-completion-function-alist)
 +      (tramp-file-name-regexp, tramp-chunksize)
 +      (tramp-local-coding-commands, tramp-remote-coding-commands):
 +      Fix docstring.
 +      (tramp-remote-process-environment): Use `format' instead of `concat'.
 +      (tramp-handle-directory-files-and-attributes)
 +      (tramp-get-remote-path): Use `copy-tree'.
 +      (tramp-handle-file-name-all-completions): Backward/ XEmacs
 +      compatibility: Use `completion-ignore-case' if
 +      `read-file-name-completion-ignore-case' does not exist.
 +      (tramp-do-copy-or-rename-file-directly): Do not use
 +      `tramp-handle-file-remote-p'.
 +      (tramp-do-copy-or-rename-file-out-of-band):
 +      Use `tramp-compat-delete-directory'.
 +      (tramp-do-copy-or-rename-file-out-of-band)
 +      (tramp-compute-multi-hops, tramp-maybe-open-connection):
 +      Use `format-spec-make'.
 +      (tramp-find-foreign-file-name-handler)
 +      (tramp-advice-make-auto-save-file-name)
 +      (tramp-set-auto-save-file-modes): Remove superfluous check for
 +      `stringp'.  This is done inside `tramp-tramp-file-p'.
 +      (tramp-debug-outline-regexp): New defconst.
 +      (tramp-get-debug-buffer): Use it.
 +      (tramp-check-for-regexp): Use (forward-line 1).
 +      (tramp-set-auto-save-file-modes): Adapt version check.
 +
 +      * net/tramp-compat.el (tramp-advice-file-expand-wildcards):
 +      Wrap call of `featurep' for 2nd argument.
 +      (tramp-compat-make-temp-file): Simplify fallback implementation.
 +      (tramp-compat-copy-tree): Remove function.
 +      (tramp-compat-delete-directory): Provide implementation for older
 +      Emacsen.
 +
 +      * net/tramp-fish.el (tramp-fish-handle-directory-files-and-attributes):
 +      Do not use `tramp-fish-handle-file-attributes.
 +
 +      * net/trampver.el: Update release number.
 +
 +2010-04-10  Glenn Morris  <rgm@gnu.org>
 +
 +      * progmodes/compile.el (compilation-save-buffers-predicate):
 +      Add missing :version tag.
 +
 +2010-04-09  Sam Steingold  <sds@gnu.org>
 +
 +      * progmodes/compile.el (compilation-save-buffers-predicate):
 +      Remove the "autoload" cookie.
 +
 +      * progmodes/bug-reference.el (turn-on-bug-reference-mode)
 +      (turn-on-bug-reference-prog-mode): Remove, `bug-reference-mode'
 +      and `bug-reference-prog-mode' can be used in hooks directly.
 +
 +2010-04-09  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      Add --author support to git commit.
 +      * vc-git.el (vc-git-checkin): Pass extra-args to the commit command.
 +      (vc-git-log-edit-mode): New minor mode.
 +      (log-edit-mode, log-edit-extra-flags, log-edit-mode):
 +      New declarations.
 +
 +2010-04-09  Eric Raymond  <esr@snark.thyrsus.com>
 +
 +      * vc-hooks.el, vc-git.el: Improve documentation comments.
 +
 +2010-04-08  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      Fix some of the problems in defsubst* (bug#5728).
 +      * emacs-lisp/cl-macs.el (defsubst*): Don't substitute non-trivial args.
 +      (cl-defsubst-expand): Do the substitutions simultaneously (bug#5728).
 +
 +2010-04-07  Sam Steingold  <sds@gnu.org>
 +
 +      * progmodes/compile.el (compilation-save-buffers-predicate):
 +      New custom variable.
 +      (compile, recompile): Pass it to `save-some-buffers'.
 +
 +2010-04-07  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * wid-edit.el (widget-choose): Move cursor to the second line of
 +      the buffer (Bug#5695).
 +
 +2010-04-07  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      Add new VC methods: vc-log-incoming and vc-log-outgoing.
 +      * vc.el (vc-print-log-setup-buttons): New function split out from
 +      vc-print-log-internal.
 +      (vc-log-internal-common): New function, a parametrized version of
 +      vc-print-log-internal.
 +      (vc-print-log-internal): Just call vc-log-internal-common with the
 +      right arguments.
 +      (vc-incoming-outgoing-internal):
 +      (vc-log-incoming, vc-log-outgoing): New functions.
 +      (vc-log-view-type): New permanent local variable.
 +
 +      * vc-hooks.el (vc-menu-map): Bind vc-log-incoming and vc-log-outgoing.
 +
 +      * vc-bzr.el (vc-bzr-log-view-mode): Use vc-log-view-type instead
 +      of the dynamic bound vc-short-log.
 +      (vc-bzr-log-incoming, vc-bzr-log-outgoing): New functions.
 +
 +      * vc-git.el (vc-git-log-outgoing): New function.
 +      (vc-git-log-view-mode): Use vc-log-view-type instead
 +      of the dynamic bound vc-short-log.
 +
 +      * vc-hg.el (vc-hg-log-view-mode): Use vc-log-view-type instead
 +      of the dynamic bound vc-short-log.  Highlight the tag.
 +      (vc-hg-log-incoming, vc-hg-log-outgoing): New functions.
 +      (vc-hg-outgoing, vc-hg-incoming, vc-hg-outgoing-mode):
 +      (vc-hg-incoming-mode): Remove.
 +      (vc-hg-extra-menu-map): Do not bind vc-hg-incoming and vc-hg-outgoing.
 +
 +2010-04-07  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      Fix default-directory for vc-root-diff.
 +      * vc.el (vc-root-diff): Bind default-directory to the root
 +      directory for the diff command.
 +
 +2010-04-07  Michael McNamara  <mac@mail.brushroad.com>
 +
 +      * progmodes/verilog-mode.el (verilog-forward-sexp):
 +      (verilog-calc-1): Support "disable fork" and "fork wait" multi
 +      word keywords, suggested by Steve Pearlmutter.
 +      (verilog-pretty-declarations): Support lineup of declarations in
 +      port lists.
 +      (verilog-skip-backward-comments, verilog-skip-forward-comment-p):
 +      fix bug for /* / comments.
 +      (verilog-backward-syntactic-ws, verilog-forward-syntactic-ws):
 +      Speed up and simplfy as this is never called with a bound.
 +      (verilog-pretty-declarations): Enhance to line up declarations
 +      inside a parameter list, suggested by Alan Morgan.
 +      (verilog-pretty-expr): Tune assignment regular expression match
 +      string for corner cases; also use markers instead of character
 +      number as indent changes the later.
 +
 +2010-04-07  Wilson Snyder  <wsnyder@wsnyder.org>
 +
 +      * progmodes/verilog-mode.el (verilog-type-keywords): Fix pulldown
 +      as missing keyword.
 +      (verilog-read-sub-decls-line): Fix comments in AUTO_TEMPLATE
 +      causing truncation of AUTOWIRE signals.  Reported by Bruce Tennant.
 +      (verilog-auto-inst, verilog-auto-inst-port): Add vl_mbits for
 +      AUTO_TEMPLATEs needing multiple array bits.  Suggested by Bruce
 +      Tennant.
 +      (verilog-keywords):
 +      (verilog-1800-2005-keywords, verilog-1800-2009-keywords): Add IEEE
 +      1800-2009 keywords, including "global.".
 +
 +2010-04-06  John Wiegley  <jwiegley@gmail.com>
 +
 +      * ido.el (ido-add-virtual-buffers-to-list): Fix duplicated names
 +      appearing in buffer list (if a live buffer name matched a recentf
 +      file basename).  Should use uniquify to offer a real solution.
 +
 +2010-04-06  John Wiegley  <jwiegley@gmail.com>
 +
 +      * ido.el (ido-use-virtual-buffers, ido-virtual): Move a ChangeLog
 +      comment to code, and add a :version tag.
 +      (ido-virtual-buffers): Move defvar to fix byte-compiler warning.
 +
 +2010-04-06  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      Enable recentf-mode if using virtual buffers.
 +      * ido.el (recentf-list): Declare for byte-compiler.
 +      (ido-virtual-buffers): Move up to silence byte-compiler.  Add docstring.
 +      (ido-make-buffer-list): Simplify.
 +      (ido-add-virtual-buffers-to-list): Simplify.  Enable recentf-mode.
 +
 +2010-04-05  Juri Linkov  <juri@jurta.org>
 +
 +      Scrolling commands which scroll a line instead of full screen.
 +      http://lists.gnu.org/archive/html/emacs-devel/2010-03/msg01452.html
 +
 +      * simple.el (scroll-up-line, scroll-down-line): New commands.
 +      Put property isearch-scroll=t on them.
 +
 +      * emulation/ws-mode.el (scroll-down-line, scroll-up-line):
 +      Remove commands.
 +
 +2010-04-05  Juri Linkov  <juri@jurta.org>
 +
 +      Scrolling commands which do not signal errors at top/bottom.
 +      http://lists.gnu.org/archive/html/emacs-devel/2010-03/msg01452.html
 +
 +      * simple.el (scroll-up-command, scroll-down-command): New commands.
 +      Put property isearch-scroll=t on them.
 +
 +      * bindings.el (global-map): Rebind [prior] from `scroll-down' to
 +      `scroll-down-command' and [next] from `scroll-up' to
 +      `scroll-up-command'.
 +
 +      * emulation/cua-base.el: Put property CUA=move on
 +      `scroll-up-command' and `scroll-down-command'.
 +      (cua--init-keymaps): Remap `scroll-up-command' to `cua-scroll-up'
 +      and `scroll-down-command' to `cua-scroll-down'.
 +
 +2010-04-05  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * help.el (describe-mode): Return nil.
 +
 +2010-04-04  John Wiegley  <jwiegley@gmail.com>
 +
 +      * ido.el (ido-use-virtual-buffers): New variable to indicate
 +      whether "virtual buffer" support is enabled for IDO.
 +      (ido-virtual): Face used to indicate virtual buffers in the list.
 +      (ido-buffer-internal): If a buffer is chosen, and no such buffer
 +      exists, but a virtual buffer of that name does (which would be why
 +      it was in the list), recreate the buffer by reopening the file.
 +      (ido-make-buffer-list): If virtual buffers are being used, call
 +      `ido-add-virtual-buffers-to-list' before the make list hook.
 +      (ido-virtual-buffers): New variable which contains a copy of the
 +      current contents of the `recentf-list', albeit pared down for the
 +      sake of speed, and with proper faces applied.
 +      (ido-add-virtual-buffers-to-list): Using the `recentf-list',
 +      create a list of "virtual buffers" to present to the user in
 +      addition to the currently open set.  Note that this logic could
 +      get rather slow if that list is too large.  With the default
 +      `recentf-max-saved-items' of 200, there is little speed penalty.
 +
 +2010-04-03  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * font-lock.el: Require CL when compiling.
 +      (font-lock-turn-on-thing-lock): Use `case'.
 +
 +2010-04-03  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * emacs-lisp/authors.el (authors-fixed-entries): Add entry for Eli
 +      Zaretskii.
 +
 +2010-04-02  Juri Linkov  <juri@jurta.org>
 +
 +      * ehelp.el (electric-help-orig-major-mode):
 +      New buffer-local variable.
 +      (electric-help-mode): Set it to original major-mode.  Doc fix.
 +      (with-electric-help): Use `electric-help-orig-major-mode' instead
 +      of (default-value 'major-mode).  Doc fix.
 +      http://lists.gnu.org/archive/html/emacs-devel/2010-04/msg00069.html
 +
 +2010-04-02  Sam Steingold  <sds@gnu.org>
 +
 +      * vc-hg.el (vc-hg-push, vc-hg-pull): Use `apply' when calling
 +      `vc-hg-command' with a list of flags.
 +
 +      * progmodes/bug-reference.el (bug-reference-bug-regexp):
 +      Also accept "patch" and "RFE".
 +      (bug-reference-fontify): `bug-reference-url-format' can also be a
 +      function to be able to handle the bug kind.
 +      (turn-on-bug-reference-mode, turn-on-bug-reference-prog-mode): Add.
 +
 +2010-04-02  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * tmm.el (tmm-get-keymap): Check with symbolp before passing
 +      value to fboundp, it may not be a symbol.
 +
 +2010-03-31  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * cus-edit.el (custom-buffer-sort-alphabetically): Update :version.
 +
 +2010-03-31  Juri Linkov  <juri@jurta.org>
 +
 +      * simple.el (next-line, previous-line): Re-throw a signal
 +      with `signal' instead of using `ding'.
 +      http://lists.gnu.org/archive/html/emacs-devel/2010-03/msg01432.html
 +
 +2010-03-31  Juri Linkov  <juri@jurta.org>
 +
 +      * simple.el (keyboard-escape-quit): Raise deselecting the active
 +      region higher than exiting the minibuffer.
 +      http://lists.gnu.org/archive/html/emacs-devel/2010-03/msg00904.html
 +
 +2010-03-31  Juri Linkov  <juri@jurta.org>
 +
 +      * image.el (image-animated-p): Use `image-metadata' instead of
 +      `image-extension-data'.  Get GIF extenstion data from metadata
 +      property `extension-data'.
 +
 +2010-03-31  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * simple.el (append-to-buffer): Simplify.
 +
 +2010-03-31  Tomas Abrahamsson  <tab@lysator.liu.se>
 +
 +      * textmodes/artist.el (artist-mode): Fix typo in docstring.
 +      Reported by Alex Schröder <kensanata@gmail.com>.  (Bug#5807)
 +
 +2010-03-31  Kenichi Handa  <handa@m17n.org>
 +
 +      * language/sinhala.el (composition-function-table): Fix regexp for
 +      the new Unicode specification.
 +
 +      * language/indian.el (devanagari-composable-pattern)
 +      (tamil-composable-pattern, kannada-composable-pattern)
 +      (malayalam-composable-pattern): Adjust for the new Unicode
 +      specification.
 +      (bengali-composable-pattern, gurmukhi-composable-pattern)
 +      (gujarati-composable-pattern, oriya-composable-pattern)
 +      (telugu-composable-pattern): New variables to cope with the new
 +      Unicode specification.  Use them in composition-function-table.
 +
 +2010-03-31  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      Make tmm-menubar work for the Buffers menu again (bug#5726).
 +      * tmm.el (tmm-prompt): Also handle keymap entries in the form of
 +      vectors rather than cons cells, as used in menu-bar-update-buffers.
 +
 +2010-03-31  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * progmodes/js.el (js-auto-indent-flag, js-mode-map)
 +      (js-insert-and-indent): Revert 2009-08-15 change, restoring
 +      electric punctuation for "{}();,:" (Bug#5586).
 +
 +      * mail/sendmail.el (mail-default-directory): Doc fix.
 +
 +2010-03-31  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * mail/sendmail.el (mail-default-directory): Doc fix.
 +
 +2010-03-31  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * subr.el (version-regexp-alist, version-to-list)
 +      (version-list-<, version-list-=, version-list-<=)
 +      (version-list-not-zero, version<, version<=, version=): Doc fix.
 +      (Bug#5744).
 +
 +2010-02-31  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * vc.el (vc-root-diff): Doc fix.
 +
 +2010-03-31  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * vc.el (vc-print-log, vc-print-root-log): Doc fix.
 +
 +      * simple.el (append-to-buffer): Fix last change.
 +
 +2010-03-31  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * simple.el (append-to-buffer): Ensure that point is preserved if
 +      BUFFER is the current buffer.  Suggested by YAMAMOTO Mitsuharu.
 +      (Bug#5749)
 +
 +2010-03-31  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * files.el (auto-mode-case-fold): Change default to t.
 +
 +2010-03-30  Juri Linkov  <juri@jurta.org>
 +
 +      * dired-x.el (dired-omit-mode): Doc fix.
 +
 +2010-03-30  Juri Linkov  <juri@jurta.org>
 +
 +      * replace.el (occur-accumulate-lines): Move occur-engine related
 +      functions `occur-accumulate-lines' and `occur-engine-add-prefix'
 +      to be located after `occur-engine'.
 +
 +2010-03-30  Juri Linkov  <juri@jurta.org>
 +
 +      Make occur handle multi-line matches cleanly with context.
 +      http://lists.gnu.org/archive/html/emacs-devel/2010-03/msg01280.html
 +
 +      * replace.el (occur-accumulate-lines): Add optional arg `pt'.
 +      (occur-engine): Add local variables `ret', `prev-after-lines',
 +      `prev-lines'.  Use more arguments for `occur-context-lines'.
 +      Set first elem of its returned list to `data', and the second elem
 +      to `prev-after-lines'.  Don't print the separator line.
 +      In the end, print remaining context after-lines.
 +      (occur-context-lines): Add new arguments `begpt', `endpt',
 +      `lines', `prev-lines', `prev-after-lines'.  Rewrite to combine
 +      after-lines of the previous match with before-lines of the
 +      current match and not overlap them.  Return a list with two
 +      values: the output line and the list of context after-lines.
 +
 +2010-03-30  Juri Linkov  <juri@jurta.org>
 +
 +      * replace.el (occur-accumulate-lines): Fix a bug where the first
 +      context line at the beginning of the buffer was missing.
 +
 +2010-03-30  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * files.el: Make bidi-display-reordering safe variable for boolean
 +      values.
 +
 +2010-03-29  Phil Hagelberg  <phil@evri.com>
 +            Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * subr.el: Extend progress reporters to perform "spinning".
 +      (progress-reporter-update, progress-reporter-do-update):
 +      Handle non-numeric value arguments.
 +      (progress-reporter--pulse-characters): New var.
 +
 +2010-03-28  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * progmodes/compile.el (compilation-start): Fix regexp detection
 +      of initial cd command (Bug#5771).
 +
 +2010-03-28  Stefan Guath  <stefan@automata.se>  (tiny change)
 +
 +      * find-dired.el (find-dired): Use read-directory-name (Bug#5777).
 +
 +2010-03-27  Nick Roberts  <nickrob@snap.net.nz>
 +
 +      Restore GDB/MI fuctionality removed by 2009-12-29T07:15:34Z!nickrob@snap.net.nz.
 +      * progmodes/gdb-mi.el: Restore.
 +      * progmodes/gdb-ui.el: Remove.
 +      * progmodes/gud.el: Re-accommodate for gdb-mi.el.
 +
 +2010-03-25  Glenn Morris  <rgm@gnu.org>
 +
 +      * desktop.el (desktop-save-buffer-p): Don't mistakenly include
 +      all dired buffers, even tramp ones.  (Bug#5755)
 +
 +2010-03-25  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      Add "union tags" in mpc.el.
 +      * mpc.el: Remove backward compatibility code.
 +      (mpc-browser-tags): Change default.
 +      (mpc--find-memoize-union-tags): New var.
 +      (mpc-cmd-flush, mpc-cmd-special-tag-p): New fun.
 +      (mpc-cmd-find): Handle the case where the playlist does not exist.
 +      Handle union-tags.
 +      (mpc-cmd-list): Use mpc-cmd-special-tag-p.  Handle union-tags.
 +      (mpc-cmd-add): Use mpc-cmd-flush.
 +      (mpc-tagbrowser-tag-name): New fun.
 +      (mpc-tagbrowser-buf): Use it.
 +      (mpc-songs-refresh): Use cond.  Move to point-min as a fallback.
 +
 +2010-03-24  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      Misc cleanup.
 +      * progmodes/make-mode.el (makefile-bsdmake-rule-action-regex):
 +      Use replace-regexp-in-string.
 +      (makefile-mode-abbrev-table): Merge defvar and define-abbrev-table.
 +      (makefile-imake-mode-syntax-table): Move init into defvar.
 +      (makefile-mode): Use define-derived-mode.
 +
 +      * progmodes/make-mode.el (makefile-rule-action-regex): Backtrack less.
 +      (makefile-make-font-lock-keywords): Adjust rule since submatch 1 may
 +      not be present any more.
 +
 +2010-03-24  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * faces.el (set-face-attribute): Fix typo in docstring.
 +      (face-valid-attribute-values): Reflow docstring.
 +
 +2010-03-24  Glenn Morris  <rgm@gnu.org>
 +
 +      * textmodes/flyspell.el (sgml-lexical-context): Autoload it (Bug#5752).
 +
 +2010-03-24  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * indent.el (indent-for-tab-command): Doc fix.
 +
 +2010-03-24  Alan Mackenzie  <acm@muc.de>
 +
 +      * progmodes/cc-engine.el (c-remove-stale-state-cache):
 +      Fix off-by-one error.  Fixes bug #5747.
 +
 +2010-03-24  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * image-dired.el (image-dired-display-thumbs): Fix typo in docstring.
 +      (image-dired-read-comment): Doc fix.
 +
 +      * json.el (json-object-type, json-array-type, json-key-type)
 +      (json-false, json-null, json-read-number):
 +      * minibuffer.el (completion-in-region-functions):
 +      * calendar/cal-tex.el (cal-tex-daily-end, cal-tex-number-weeks)
 +      (cal-tex-cursor-week):
 +      * emacs-lisp/trace.el (trace-function):
 +      * eshell/em-basic.el (eshell/printnl):
 +      * eshell/em-dirs.el (eshell-last-dir-ring, eshell-parse-drive-letter)
 +      (eshell-read-last-dir-ring, eshell-write-last-dir-ring):
 +      * obsolete/levents.el (allocate-event, event-key, event-object)
 +      (event-point, event-process, event-timestamp, event-to-character)
 +      (event-window, event-x, event-x-pixel, event-y, event-y-pixel):
 +      * textmodes/reftex-vars.el (reftex-index-macros-builtin)
 +      (reftex-section-levels, reftex-auto-recenter-toc, reftex-toc-mode-hook)
 +      (reftex-cite-punctuation, reftex-search-unrecursed-path-first)
 +      (reftex-highlight-selection): Fix typos in docstrings.
 +
 +2010-03-24  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * minibuffer.el (completion-in-region-functions): Fix docstring typos.
 +
 +2010-03-24  Glenn Morris  <rgm@gnu.org>
 +
 +      * mail/rmail.el (rmail-highlight-face): Restore option deleted
 +      2008-02-13 without comment; mark it obsolete.
 +      (rmail-highlight-headers): Use rmail-highlight-face once more.
 +
 +2010-03-24  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * woman.el (woman2-process-escapes): Only consume the newline if
 +      the filler character is on a line by itself (Bug#5729).
 +
 +2010-03-24  Kenichi Handa  <handa@m17n.org>
 +
 +      * language/indian.el (devanagari-composable-pattern): Add more
 +      consonants.
 +
 +2010-03-24  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/trampver.el: Update release number.
 +
 +2010-03-24  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/tramp.el (tramp-find-executable):
 +      Use `tramp-get-connection-buffer'.  Make the regexp for checking
 +      output of "wc -l" more robust.
 +      (tramp-find-shell): Use another shell but /bin/sh on OpenSolaris.
 +      (tramp-open-connection-setup-interactive-shell): Remove workaround
 +      for OpenSolaris bug, it is not needed anymore.
 +
 +2010-03-24  Glenn Morris  <rgm@gnu.org>
 +
 +      * emacs-lisp/cl-macs.el (defsubst*): Add autoload cookie.  (Bug#4427)
 +
 +2010-03-24  Wilson Snyder  <wsnyder@wsnyder.org>
 +
 +      * files.el (auto-mode-alist): Accept more verilog file patterns.
 +
 +2010-03-24  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * vc-dir.el (vc-dir-headers): Abbreviate the working dir.
 +
 +2010-03-24  Glenn Morris  <rgm@gnu.org>
 +
 +      * vc-bzr.el (vc-bzr-log-edit-mode): Add --fixes support to
 +      log-edit-before-checkin-process.
 +
 +      * vc.el (vc-modify-change-comment): Pass MODE to vc-start-logentry.
 +
 +      * vc.el, vc-bzr.el, vc-hg.el (log-edit-mode): Declare.
 +
 +      * vc-dispatcher.el (vc-start-logentry): Doc fix.
 +      (log-view-process-buffer, log-edit-extra-flags): Declare.
 +
 +      * log-edit.el (log-edit-before-checkin-process): Doc fix.
 +
 +2010-03-23  Sam Steingold  <sds@gnu.org>
 +
 +      Fix bug#5620: recalculate all markers on compilation buffer
 +      modifications, not on file modifications.
-   Copyright (C) 2009, 2010  Free Software Foundation, Inc.
++      * progmodes/compile.el (compilation-buffer-modtime): New buffer-local
++      variable: the buffer modification time, for buffers not associated with
++      files.
 +      (compilation-mode): Create it.
 +      (compilation-filter): Update it.
 +      (compilation-next-error-function): Use it instead of
 +      `visited-file-modtime' for timestamp.
 +
 +2010-03-23  Juri Linkov  <juri@jurta.org>
 +
 +      Implement Occur multi-line matches.
 +      http://lists.gnu.org/archive/html/emacs-devel/2010-03/msg01044.html
 +
 +      * replace.el (occur): Doc fix.
 +      (occur-engine): Set `begpt' to the beginning of the first line.
 +      Set `endpt' to the end of the last match line.  At first, count
 +      line numbers between `origpt' and `begpt'.  Split out code from
 +      `out-line' variable to new let-bindings `match-prefix' and
 +      `match-str'.  In `out-line' add non-numeric prefix to all
 +      non-first lines of multi-line matches.  Finally, count lines
 +      between `begpt' and `endpt' and add to `lines'.
 +
 +2010-03-23  Juri Linkov  <juri@jurta.org>
 +
 +      * replace.el (occur-accumulate-lines, occur-engine):
 +      Use `occur-engine-line' instead of duplicate code.
 +      (occur-engine-line): New function created from duplicate code
 +      in `occur-accumulate-lines' and `occur-engine'.
 +
 +      * replace.el (occur-engine-line): Add optional arg `keep-props'.
 +      (occur-accumulate-lines, occur-engine): Add arg `keep-props'.
 +
 +2010-03-23  Juri Linkov  <juri@jurta.org>
 +
 +      * finder.el: Remove TODO tasks.
 +
 +      * info.el (Info-finder-find-node): Add node "all"
 +      with all package info.  Handle a list of multiple keywords
 +      separated by comma.
 +      (info-finder): In interactive use with a prefix argument,
 +      use `completing-read-multiple' to read a list of keywords
 +      separated by comma.
 +
 +2010-03-23  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      Add a new completion style `substring'.
 +      * minibuffer.el (completion-basic--pattern): New function.
 +      (completion-basic-try-completion, completion-basic-all-completions):
 +      Use it.
 +      (completion-substring--all-completions)
 +      (completion-substring-try-completion)
 +      (completion-substring-all-completions): New functions.
 +      (completion-styles-alist): New style `substring'.
 +
 +2010-03-22  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      Get rid of .elc files after removal of the corresponding .el.
 +      * Makefile.in (compile-clean): New target.
 +      (compile-main): Use it.
 +
 +2010-03-22  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * Makefile.in (compile-main): cd to $(lisp) in a sub-shell, so we
 +      don't do make there.  When compiling with separate object dir, there
 +      is no Makefile there.
 +
 +2010-03-22  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      Get rid of the ELCFILES abomination, again.
 +      * Makefile.in (update-elclist, ELCFILES, compile-last): Remove.
 +      (all, compile): Don't call compile-last.
 +      (compile-main): Build the "elcfiles" list dynamically.
 +      (compile-targets): New (internal) target.
 +
 +2010-03-21  Andreas Schwab  <schwab@linux-m68k.org>
 +
 +      * Makefile.in (top_srcdir): Define.
 +      (abs_top_builddir): Define.
 +      (srcdir): Don't append `/..'.
 +      (EMACS): Use ${abs_top_builddir}.
 +      (all, compile, compile-always, compile-last): Don't set emacswd.
 +      (update-subdirs, update-authors): Use $(top_srcdir) instead of
 +      $(srcdir).
 +      (lisp): Use $(srcdir) instead of @srcdir@.
 +
 +2010-03-21  Juri Linkov  <juri@jurta.org>
 +
 +      Fix message of multi-line occur regexps and multi-buffer header lines.
 +      http://lists.gnu.org/archive/html/emacs-devel/2010-03/msg00457.html
 +
 +      * replace.el (occur-1): Don't display regexp if it is longer
 +      than window-width.  Use `query-replace-descr' to display regexp.
 +      (occur-engine): Don't display regexp in the buffer header for
 +      multi-buffer occur.  Display a separate header line with total
 +      match count and regexp for multi-buffer occur.
 +      Use `query-replace-descr' to display regexp.
 +
 +2010-03-20  Teodor Zlatanov  <tzz@lifelogs.com>
 +
 +      * net/secrets.el: Fix parenthesis.
 +      (secrets-enabled): Fix parenthesis.
 +
 +2010-03-20  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      Use more relative file and directory names.
 +      * Makefile.in (EMACS): Arrange for it to work when we chdir.
 +      (setwins, setwins_almost, setwins_for_subdirs):
 +      Don't `cd'; output relative names.
 +      (all, compile, compile-always, compile-last): Set emacswd.
 +      (custom-deps, finder-data, autoloads, update-subdirs, compile-last):
 +      Just cd to the lisp source dir so we can use relative file names.
 +
 +      * outline.el (hide-sublevels): Unfix the paren non-typo! (bug#5738).
 +
 +2010-03-20  Glenn Morris  <rgm@gnu.org>
 +
 +      * textmodes/rst.el: Use faces for font-lock customization, and make the
 +      old -face variables obsolete.
 +      (rst-block, rst-external, rst-definition, rst-directive, rst-comment)
 +      (rst-emphasis1, rst-emphasis2, rst-literal, rst-reference): New faces.
 +      (rst-block-face, rst-external-face, rst-definition-face)
 +      (rst-directive-face, rst-comment-face, rst-emphasis1-face)
 +      (rst-emphasis2-face, rst-literal-face, rst-reference-face):
 +      Make obsolete.
 +      (rst-font-lock-keywords-function): Update for above changes.
 +
 +2010-03-20  Juri Linkov  <juri@jurta.org>
 +
 +      * s-region.el:
 +      * obsolete/s-region.el: Move to obsolete.
 +
 +2010-03-19  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * vc-dispatcher.el (vc-do-command): Remove reference to `vc-path'.
 +
 +2010-03-19  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * vc-hooks.el (vc-path): Remove variable and obsolete declaration.
 +
 +2010-03-19  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      Add special markup processing for commit logs.
 +      * log-edit.el (log-edit-extra-flags): New variable.
 +      (log-edit): Add new argument MODE.  Use that mode when non-nil
 +      instead of the log-view-mode.
 +      (log-view-process-buffer): New function.
 +
 +      * vc.el: Document that the checkin method takes optional
 +      arguments.  Document new backend specific method: log-view-mode.
 +      (vc-default-log-edit-mode): New function.
 +      (vc-checkin): Use a backend specific log-view-mode.
 +      Pass extra arguments to the checkin method.
 +      (vc-modify-change-comment): Pass a dummy extra argument.
 +
 +      * vc-dispatcher.el (vc-log-edit): Add a mode argument, pass it to
 +      log-edit.
 +      (vc-start-logentry): Add a mode argument, pass it to vc-log-edit.
 +      (vc-finish-logentry): Process the log buffer before passing it
 +      down.  Pass log-edit-extra-flags.
 +
 +      * vc-bzr.el (vc-bzr-checkin): Pass extra arguments to the commit
 +      command.
 +      (log-edit-extra-flags, log-edit-before-checkin-process):
 +      New declarations.
 +
 +      * vc-hg.el (vc-hg-checkin): Pass extra arguments to the commit
 +      command.
 +      (log-edit-extra-flags, log-edit-before-checkin-process):
 +      New declarations.
 +      (vc-hg-log-edit-mode): New derived mode.
 +
 +      * vc-arch.el (vc-arch-checkin):
 +      * vc-cvs.el (vc-cvs-checkin):
 +      * vc-git.el (vc-git-checkin):
 +      * vc-mtn.el (vc-mtn-checkin):
 +      * vc-rcs.el (vc-rcs-checkin):
 +      * vc-sccs.el (vc-sccs-checkin):
 +      * vc-svn.el (vc-svn-checkin): Add an optional ignored argument.
 +
 +2010-03-19  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * outline.el (hide-sublevels): Don't hide trailing newline (and fix
 +      parent typo).
 +
 +2010-03-19  Glenn Morris  <rgm@gnu.org>
 +
 +      * password-cache.el (password-cache, password-cache-expiry): Autoload.
 +
 +2010-03-18  Glenn Morris  <rgm@gnu.org>
 +
 +      * emacs-lisp/autoload.el (autoload-rubric): Doc fix.
 +
 +      * replace.el (query-replace-history): Give it a doc string.
 +      (map-query-replace-regexp): Use query-replace-from-history-variable
 +      and query-replace-to-history-variable.
 +
 +      * mail/hashcash.el (declare-function): Remove duplicate definition.
 +
 +      * mail/emacsbug.el (report-emacs-bug-pretest-address):
 +      Make it an obsolete alias for report-emacs-bug-address.
 +      (message-strip-special-text-properties): Declare.
 +      (report-emacs-bug): Remove test for a pretest bug address.
 +      Combine message-mode-specific code.
 +
 +      * mail/supercite.el: Don't require sendmail.
 +      (mh-in-header-p): Declare rather than using with-no-warnings.
 +      (sc-no-blank-line-or-header): Use rfc822-goto-eoh rather than
 +      mail-header-end.  Don't bind mysterious variable `kill-lines-magic'.
 +
 +      * calendar/cal-french.el: Convert to utf-8.
 +
 +      * files.el (interpreter-mode-alist): Use emacs-lisp-mode for
 +      Emacs scripts.
 +
 +2010-03-16  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/secrets.el (secrets-enabled): New variable.  Use it instead
 +      of a subfeature.
 +
 +2010-03-15  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/secrets.el (top): Register the D-Bus signals only when the
 +      service "org.freedesktop.secrets" can be pinged.
 +      Provide subfeature `enabled'.
 +
 +2010-03-14  Juri Linkov  <juri@jurta.org>
 +
 +      Add finder unknown keywords.
 +
 +      * finder.el (finder-unknown-keywords): New function.
 +
 +      * info.el (Info-finder-find-node): Use `finder-unknown-keywords'
 +      to create a Finder node with unknown keywords.
 +
 +2010-03-14  Juri Linkov  <juri@jurta.org>
 +
 +      * finder.el (finder-compile-keywords): Replace `princ' with
 +      `prin1' on a list of symbols interned from keyword strings.
 +
 +      * emacs-lisp/lisp-mnt.el (lm-keywords-list): If `keywords' contains
 +      a comma, then split keywords using a comma and optional whitespace.
 +      Otherwise, split by whitespace.
 +
 +      * complete.el:
 +      * face-remap.el:
 +      * log-view.el:
 +      * net/hmac-def.el:
 +      * net/hmac-md5.el:
 +      * net/netrc.el:
 +      * progmodes/mixal-mode.el: Fix keywords.
 +
 +2010-03-13  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * Makefile.in (ELCFILES): Add net/secrets.elc.
 +
 +      * net/secrets.el: New file.
 +
 +2010-03-12  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * facemenu.el (list-colors-display, list-colors-print): New arg
 +      callback.  Use it to allow selecting colors.
 +
 +      * wid-edit.el (widget-image-insert): Insert image prop even if the
 +      current display is non-graphic.
 +      (widget-field-value-set): New fun.
 +      (editable-field): Use it.
 +      (widget-field-value-get): Clean up unused var.
 +      (widget-color-value-create, widget-color--choose-action):
 +      New funs.  Allow using list-colors-display to choose color.
 +
 +2010-03-12  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * cus-edit.el: Resort topmost custom groups.
 +      (custom-buffer-sort-alphabetically): Default to t.
 +      (customize-apropos): Use apropos-parse-pattern.
 +      (custom-search-field): New var.
 +      (custom-buffer-create-internal): Add custom-apropos search field.
 +      (custom-add-parent-links): Don't display parent doc.
 +      (custom-group-value-create): Don't sort top-level custom group.
 +      (custom-magic-value-create): Show visibility button before option name.
 +
 +      (custom-variable-state): New fun, from custom-variable-state-set.
 +      (custom-variable-state-set): Use it.
 +      (custom-group-value-create): Hide options with standard values
 +      using the :hidden-states property.  Use progress reporter.
 +
 +      (custom-show): Simplify.
 +      (custom-visibility): Disable images by default.
 +      (custom-variable): New property :hidden-states.
 +      (custom-variable-value-create): Enable images for
 +      custom-visibility widgets.  Use :hidden-states property to
 +      determine initial visibility.
 +
 +      * wid-edit.el (widget-image-find): Give images center ascent.
 +      (visibility): Add :on-image and :off-image properties.
 +      (widget-visibility-value-create): Use them.
 +
 +2010-03-12  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * cus-edit.el (processes): Remove from development group.
 +      (oop, hypermedia): Delete group.
 +      (comm): Promote to top-level group.
 +
 +      * net/browse-url.el (browse-url):
 +      * net/xesam.el (xesam):
 +      * net/tramp.el (tramp):
 +      * net/goto-addr.el (goto-address):
 +      * net/ange-ftp.el (ange-ftp): Put in comm group.
 +
 +      * view.el (view): Remove from editing group.
 +
 +      * uniquify.el (uniquify): Put in files group.
 +
 +      * net/browse-url.el (browse-url):
 +      * ps-print.el (postscript): Put in external group.
 +
 +      * cus-edit.el (outlines):
 +      * textmodes/text-mode.el (text-mode-hook):
 +      * textmodes/table.el (table):
 +      * textmodes/picture.el (picture):
 +      * outline.el (outlines): Put in wp group.
 +
 +      * nxml/nxml-mode.el (nxml): Remove from wp group.
 +
 +      * net/tramp-imap.el (tramp-imap): Put in tramp group.
 +
 +      * mail/metamail.el (metamail): Remove from hypermedia group.
 +
 +      * cus-edit.el (abbrev):
 +      * whitespace.el (whitespace):
 +      * vcursor.el (vcursor):
 +      * reveal.el (reveal):
 +      * hl-line.el (hl-line): Put in convenience group.
 +
 +      * epg-config.el (epg): Put in data group.
 +
 +      * emulation/pc-select.el (pc-select): Put in emulations group.
 +
 +      * calculator.el (calculator): Put in applications group.
 +
 +2010-03-12  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      Add .dir-locals.el support for file-less buffers.
 +      * files.el (hack-local-variables): Split out code to apply local
 +      variable settings ...
 +      (hack-local-variables-apply): ... here.  New function.
 +      (hack-dir-local-variables): Use the default directory for when the
 +      buffer does not have an associated file.
 +      (hack-dir-local-variables-non-file-buffer): New function.
 +      * diff-mode.el (diff-mode):
 +      * vc-annotate.el (vc-annotate-mode):
 +      * vc-dir.el (vc-dir-mode):
 +      * log-edit.el (log-edit-mode):
 +      * log-view.el (log-view-mode): Call hack-dir-local-variables-non-file-buffer.
 +
 +2010-03-12  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      Add support for shelving snapshots and for showing shelves.
 +      * vc-bzr.el (vc-bzr-shelve-show, vc-bzr-shelve-show-at-point)
 +      (vc-bzr-shelve-apply-and-keep-at-point, vc-bzr-shelve-snapshot):
 +      New functions.
 +      (vc-bzr-shelve-map, vc-bzr-shelve-menu-map)
 +      (vc-bzr-extra-menu-map): Map them.
 +
 +2010-03-11  Glenn Morris  <rgm@gnu.org>
 +
 +      * cus-edit.el (customize-changed-options-previous-release):
 +      Bump to 23.1.
 +
 +      * image.el (image-animate-max-time): Fix :version tag.
 +
 +2010-03-10  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * Branch for 23.2.
 +
 +2010-03-10  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * vc-git.el (vc-git-revision-table): Include remote branches.
 +
 +2010-03-10  Kim F. Storm  <storm@cua.dk>
 +
 +      Animated image API.
 +      http://lists.gnu.org/archive/html/emacs-devel/2010-03/msg00211.html
 +
 +      * image.el (image-animate-max-time): New defcustom.
 +      (image-animated-types): New defconst.
 +      (create-animated-image, image-animate-timer)
 +      (image-animate-start, image-animate-stop, image-animate-timeout)
 +      (image-animated-p): New functions.
 +
 +      * image-mode.el (image-toggle-display-image):
 +      Replace `create-image' with `create-animated-image'.
 +
 +2010-03-09  Miles Bader  <miles@gnu.org>
 +
 +      * vc-git.el (vc-git-print-log): Use "tformat:" for shortlog,
 +      instead of "format:"; this ensures that the output is
 +      newline-terminated.
 +
 +2010-03-08  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * mail/rfc822.el (rfc822-addresses): Use nested catches to ensure
 +      that all errors are caught, and that the return value is always a
 +      list (Bug#5692).
 +
 +2010-03-08  Kenichi Handa  <handa@m17n.org>
 +
 +      * language/misc-lang.el (windows-1256): New coding system.
 +      (cp1256): New alias of windows-1256 (bug#5690).
 +
 +2010-03-07  Andreas Schwab  <schwab@linux-m68k.org>
 +
 +      * mail/rfc822.el (rfc822-addresses): Move catch clause down around
 +      call to rfc822-bad-address.  (Bug#5692)
 +
 +2010-03-07  Štěpán Němec  <stepnem@gmail.com>  (tiny change)
 +
 +      * vc-git.el (vc-git-annotate-extract-revision-at-line):
 +      Use vc-git-root as default directory for revision path (Bug#5657).
 +
 +2010-03-06  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * calculator.el (calculator): Don't bind split-window-keep-point
 +      (Bug#5674).
 +
 +2010-03-06  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * vc-git.el: Re-flow to fit into 80 columns.
 +      (vc-git-after-dir-status-stage, vc-git-dir-status-goto-stage):
 +      Remove spurious `quote' element in each case alternative.
 +      (vc-git-show-log-entry): Use prog1.
 +      (vc-git-after-dir-status-stage): Remove unused var `remaining'.
 +
 +2010-03-05  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * man.el (Man-files-regexp): Tighten up the regexp (bug#5686).
 +
 +2010-03-03  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * macros.el (insert-kbd-macro): Look up keyboard macro using the
 +      definition, not the name (Bug#5481).
 +
 +2010-03-03  Štěpán Němec  <stepnem@gmail.com>  (tiny change)
 +
 +      * subr.el (momentary-string-display): Don't overwrite the MESSAGE
 +      argument with a local variable.  (Bug#5670)
 +
 +2010-03-02  Juri Linkov  <juri@jurta.org>
 +
 +      * info.el (Info-index-next): Decrement line number by 2.  (Bug#5652)
 +
 +2010-03-02  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/tramp.el (tramp-do-copy-or-rename-file-out-of-band): Fix an
 +      error when FILENAME and NEWNAME are existing remote directories.
 +
 +      * net/tramp-compat.el (tramp-compat-make-temp-file): Add optional
 +      parameter DIR-FLAG.
 +
 +2010-03-02  Glenn Morris  <rgm@gnu.org>
 +
 +      * calendar/cal-hebrew.el (holiday-hebrew-passover): Fix date
 +      of Yom HaAtzma'ut when it falls on a Monday (rule changed in 2004).
 +
 +2010-03-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * language/burmese.el (burmese-composable-pattern): Rename from
 +      myanmar-composable-pattern.
 +
 +      * international/characters.el (script-list):
 +      * international/fontset.el (script-representative-chars):
 +      Change myanmar to burmese.
 +      (otf-script-alist): Likewise.
 +      (setup-default-fontset): Likewise.  Re-fix :otf spec.
 +
 +2010-02-28  Katsumi Yamaoka  <yamaoka@jpl.org>
 +
 +      * menu-bar.el (menu-bar-manuals-menu): Fix typo.
 +
 +2010-02-28  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * scroll-bar.el (scroll-bar-drag-1): Add save-excursion, bug #5654.
 +
 +2010-02-28  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/tramp.el (tramp-handle-write-region): START can be a string.
 +      Take care in the checks.  Reported by Dan Davison
 +      <davison@stats.ox.ac.uk>.
 +
 +2010-02-28  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/dbus.el (dbus-introspect, dbus-get-property)
 +      (dbus-set-property, dbus-get-all-properties):
 +      Use `dbus-call-method' when noninteractive.  (Bug#5645)
 +
 +2010-02-28  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * textmodes/reftex-toc.el (reftex-toc-promote-prepare):
 +      * emacs-lisp/elint.el (elint-add-required-env):
 +      * calendar/icalendar.el (icalendar--add-diary-entry):
 +      * calc/calcalg2.el (math-tracing-integral):
 +      * files.el (recover-session-finish): Use with-current-buffer
 +      instead of save-excursion.
 +
 +2010-02-27  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      Fix in-buffer completion when after-change-functions modify the buffer.
 +      * minibuffer.el (completion--replace): New function.
 +      (completion--do-completion): Use it and use relative movement.
 +
 +2010-02-27  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * international/fontset.el (setup-default-fontset): Fix :otf spec.
 +
 +2010-02-27  Jeremy Whitlock  <jcscoobyrs@gmail.com>  (tiny change)
 +
 +      * progmodes/python.el (python-pdbtrack-stack-entry-regexp):
 +      Allow the characters _<> in the stack entry (Bug#5653).
 +
 +2010-02-26  Kenichi Handa  <handa@m17n.org>
 +
 +      * language/burmese.el: Fix entries in composition-function-table.
 +      (myanmar-composable-pattern): New variable.
 +
 +      * international/fontset.el (setup-default-fontset): Add an entry
 +      for myanmar.
 +
 +      * international/characters.el (script-list): Add Myanmar
 +      Extended-A.
 +
 +2010-02-26  Glenn Morris  <rgm@gnu.org>
 +
 +      * custom.el (custom-initialize-delay): Doc fix.
 +
 +      * mail/sendmail.el (send-mail-function): Autoload the call
 +      to custom-initialize-delay, not otherwise preserved in loaddefs.el.
 +
 +2010-02-24  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * files.el (hack-local-variables-filter): For eval forms, also
 +      check safe-local-variable-p (Bug#5636).
 +
 +2010-02-22  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/tramp.el (tramp-do-copy-or-rename-file-out-of-band): Protect
 +      setting the modes by `ignore-errors'.  It might fail, for example
 +      if the file is not owned by the user but the group.
 +      (tramp-handle-write-region): Ensure, that `tmpfile' is always readable.
 +
 +2010-02-21  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * files.el (directory-listing-before-filename-regexp):
 +      Use stricter matching for iso-style dates, to avoid false matches with
 +      date-like filenames (Bug#5597).
 +
 +      * htmlfontify.el (htmlfontify): Doc fix.
 +
 +      * eshell/eshell.el (eshell): Doc fix.
 +
 +      * startup.el (fancy-about-screen): In mode-line, apply
 +      mode-line-buffer-id face only to the buffer name (Bug#5613).
 +
 +2010-02-20  Kevin Ryde  <user42@zip.com.au>
 +
 +      * progmodes/compile.el (compilation-error-regexp-alist-alist):
 +      In `watcom' anchor regexp to start of line, to avoid slowness
 +      (Bug#5599).
 +
 +2010-02-20  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * subr.el (remove-yank-excluded-properties): Explain in a comment
 +      why `category' property is removed.
 +
 +2010-02-19  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * isearch.el (isearch-update-post-hook, isearch-update):
 +      Revert 2010-02-17 change.
 +
 +2010-02-19  Ulf Jasper  <ulf.jasper@web.de>
 +
 +      * calendar/icalendar.el (icalendar--convert-ordinary-to-ical)
 +      (icalendar--convert-weekly-to-ical)
 +      (icalendar--convert-yearly-to-ical)
 +      (icalendar--convert-block-to-ical)
 +      (icalendar--convert-cyclic-to-ical)
 +      (icalendar--convert-anniversary-to-ical): Take care of time
 +      specifications where hour has 1-digit only (Bug#5549).
 +
 +2010-02-19  Nick Roberts  <nickrob@snap.net.nz>
 +
 +      * progmodes/gdb-ui.el (gdb-assembler-handler): Accommodate change
 +      of disassemble output in GDB 7.1.
 +
 +2010-02-19  Glenn Morris  <rgm@gnu.org>
 +
 +      * progmodes/f90.el (f90-electric-insert): Give it a delete-selection
 +      property.  (Bug#5593)
 +
 +2010-02-18  Sam Steingold  <sds@gnu.org>
 +
 +      * vc-cvs.el (vc-cvs-merge-news): Yet another fix of message parsing.
 +
 +2010-02-18  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      Use abbreviated file names in bookmarks (bug#5591).
 +      * bookmark.el (bookmark-maybe-load-default-file): Remove redundant
 +      calls to expand-file-name.
 +      (bookmark-relocate): Use abbreviated file names in bookmarks.
 +      (bookmark-load): Use abbreviated file names in messages.
 +
 +2010-02-18  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/tramp.el (tramp-handle-directory-files): When FULL, do not
 +      expand "." and "..".  Reported by Thierry Volpiatto
 +      <thierry.volpiatto@gmail.com>.
 +
 +2010-02-18  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/tramp.el (tramp-handle-insert-file-contents): Set always the
 +      permissions of the temporary file to "0600".  In case the remote
 +      file has no read permissions for the owner, there might be
 +      problems otherwise.  Reported by Ole Laursen <olau@iola.dk>.
 +
 +22010-02-18  Glenn Morris  <rgm@gnu.org>
 +
 +      * emacs-lisp/authors.el (authors-renamed-files-alist):
 +      Add entries for INSTALL.CVS.
 +
 +2010-02-17  Mark A. Hershberger  <mah@everybody.org>
 +
 +      * vc-bzr.el: Fix typo in Known Bugs section.
 +
 +      * isearch.el (isearch-update-post-hook): New hook.
 +      (isearch-update): Use the new hook.
 +
 +2010-02-16  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/tramp.el (tramp-do-copy-or-rename-file-out-of-band):
 +      Fix errors in copying directories.
 +      (tramp-handle-add-name-to-file, tramp-handle-copy-directory)
 +      (tramp-do-copy-or-rename-file, tramp-handle-delete-directory)
 +      (tramp-handle-delete-file)
 +      (tramp-handle-dired-recursive-delete-directory)
 +      (tramp-handle-write-region): Flush also the cache for the upper
 +      directory.
 +
 +2010-02-16  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * simple.el (save-interprogram-paste-before-kill): Doc fix.
 +
 +      * cus-edit.el (hardware): Doc fix.
 +
 +      * man.el (man): Add to external custom group.
 +
 +      * delim-col.el (columns): Move to wp custom group.
 +
 +      * doc-view.el (doc-view): Add to data custom group.
 +
 +      * nxml/nxml-mode.el (nxml-faces): Remove from font-lock-faces group.
 +
 +      * textmodes/flyspell.el (flyspell-word): Obey the offset specified
 +      by ispell-parse-output (Bug#5575).
 +
 +2010-02-16  Kenichi Handa  <handa@m17n.org>
 +
 +      * international/ja-dic-cnv.el (iso-2022-7bit-short): Delete it.
 +      (skkdic-convert-okuri-ari): Ignore lines starting with '>'.
 +      (skkdic-convert): Use `euc-japan' coding system for writing.
 +
 +2010-02-16  Glenn Morris  <rgm@gnu.org>
 +
 +      * textmodes/tex-mode.el (tex-bibtex-file): Expand the result of
 +      tex-main-file before using it.  (Bug#5562)
 +
 +2010-02-15  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * emacs-lisp/advice.el (ad-compile-function): Suppress byte-compiler
 +      warnings, since it is annoying for the user to see them each time he
 +      runs the code.
 +
 +2010-02-15  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/tramp.el (tramp-process-actions, tramp-read-passwd):
 +      * net/tramp-gvfs.el (tramp-gvfs-maybe-open-connection): Use VEC
 +      instead of PROC for caching "first-password-request".  Otherwise,
 +      new processes would not profit from passwords already entered.
 +
 +      * net/tramp-cache.el (tramp-dump-connection-properties):
 +      Don't save "first-password-request" property.
 +
 +2010-02-14  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * outline.el (outline-head-from-level):
 +      * simple.el (with-wrapper-hook):
 +      * emacs-lisp/elint.el (elint-extra-errors, elint-current-buffer)
 +      (elint-defun, elint-buffer-env, elint-top-form-logged)
 +      (elint-unbound-variable):
 +      * textmodes/reftex-toc.el (reftex-toc-newhead-from-alist):
 +      Fix typos in docstrings.
 +
 +2010-02-14  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * files.el (insert-directory): When WILDCARD-REGEXP and
 +      FULL-DIRECTORY-P are nil, insert the file entry instead of the
 +      whole directory.  (Bug#5551)
 +
 +      * net/ange-ftp.el (ange-ftp-insert-directory): Insert "  " for
 +      dired's alignment sanity.  (Bug#5516)
 +
 +2010-02-14  Juri Linkov  <juri@jurta.org>
 +
 +      * man.el (Man-fontify-manpage, Man-cleanup-manpage):
 +      Remove remaining ^H with their preceding chars.  (Bug#5566)
 +
 +2010-02-13  Glenn Morris  <rgm@gnu.org>
 +
 +      * simple.el (transpose-subr): Give it a doc-string.
 +
 +      * textmodes/paragraphs.el (transpose-paragraphs, transpose-sentences):
 +      Doc fixes.
 +
 +2010-02-12  Juri Linkov  <juri@jurta.org>
 +
 +      * arc-mode.el (archive-unique-fname): Make directories for nested
 +      archives.  (Bug#5540)
 +
 +2010-02-12  Juri Linkov  <juri@jurta.org>
 +
 +      * ffap.el (dired-at-point): Fix docstring.  (Bug#5565)
 +
 +2010-02-11  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * subr.el (copy-overlay): Handle deleted overlays.
 +
 +      * man.el (Man-completion-table): Don't signal an error if we can't run
 +      manual-program (bug#4056).
 +
 +2010-02-10  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * textmodes/artist.el (artist-mt): Fix typos in docstring.
 +
 +2010-02-10  Thierry Volpiatto  <thierry.volpiatto@gmail.com>
 +
 +      * info.el (Info-bookmark-jump): Simplify.
 +
 +      * bookmark.el (bookmark-handle-bookmark): Catch the right error.
 +      (bookmark-default-handler): Accept new bookmark field `buffer'.
 +
 +2010-02-10  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * iswitchb.el (iswitchb-completions): Revert last change.
 +
 +2010-02-10  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * ls-lisp.el (ls-lisp-insert-directory): When WILDCARD-REGEXP and
 +      FULL-DIRECTORY-P are nil, and FILE is absolute, expand it.
 +      This prevents file names like "~/" being listed literally.
 +
 +2010-02-10  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * term/xterm.el (xterm-maybe-set-dark-background-mode):
 +      Remove dead code.  (Bug#5546)
 +
 +2010-02-09  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * eshell/em-ls.el (eshell-ls-applicable): Frob file attributes
 +      correctly (Bug#5548).
 +
 +2010-02-08  Jose E. Marchesi  <jemarch@gnu.org>
 +
 +      * progmodes/ada-mode.el (ada-in-numeric-literal-p): New function.
 +      (ada-adjust-case): Don't adjust case in hexadecimal number literals.
 +
 +2010-02-08  Kenichi Handa  <handa@m17n.org>
 +
 +      * international/mule-util.el (with-coding-priority): Add autoload
 +      cookie for putting `lisp-indent-function'.
 +
 +2010-02-07  Glenn Morris  <rgm@gnu.org>
 +
 +      * progmodes/f90.el (f90-font-lock-keywords-1, f90-font-lock-keywords-2):
 +      Move F2003 named interfaces from keywords-2 to keywords-1, and
 +      use function-name-face rather than constant-face.
 +      Simplify "abstract interface" regexp.
 +
 +2010-02-07  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * eshell/esh-util.el (eshell-file-attributes): New optional arg
 +      ID-FORMAT.  Pass it to `file-attributes'.
 +
 +      * eshell/em-ls.el (eshell-do-ls): Use it (Bug#5528).
 +
 +2010-02-07  sj  <prime.wizard+emacs@gmail.com>  (tiny change)
 +
 +      * faces.el (set-face-attribute): Allow calling
 +      internal-set-lisp-face-attribute with 'unspecified family and
 +      foundry argument (Bug#5536).
 +
 +2010-02-07  Glenn Morris  <rgm@gnu.org>
 +
 +      * progmodes/f90.el (f90-font-lock-keywords-2)
 +      (f90-looking-at-type-like, f90-looking-at-program-block-end):
 +      Handle F2003 named interfaces.
 +
 +2010-02-06  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * progmodes/cc-mode.el (c-common-init): Bind temporary variables
 +      beg and end before calling c-get-state-before-change-functions.
 +
 +2010-02-06  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * vc-bzr.el (vc-bzr-dir-extra-headers):
 +      Disable the pending merges header.
 +
 +2010-02-05  Juri Linkov  <juri@jurta.org>
 +
 +      * doc-view.el (doc-view-mode):
 +      * image-mode.el (image-mode): Put property mode-class=special.
 +      (Bug#4896)
 +
 +2010-02-05  Mark A. Hershberger  <mah@everybody.org>
 +
 +      * vc-svn.el (vc-svn-revision-table): New function.
 +
 +2010-02-05  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/ange-ftp.el (ange-ftp-insert-directory):
 +      * net/tramp-imap.el (tramp-imap-handle-insert-directory):
 +      * net/tramp-smb.el (tramp-smb-handle-insert-directory):
 +      Handle also directories.  (Bug#5478)
 +
 +2010-02-05  Glenn Morris  <rgm@gnu.org>
 +
 +      * progmodes/f90.el (f90-font-lock-keywords-2): Fix `enum'.
 +
 +2010-02-05  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * startup.el (command-line-1): Convert options beginning with a
 +      single dash as well (Bug#5519).
 +
 +2010-02-05  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      Make `initials' completion work for /hh -> /home/horn again (bug#5524).
 +      * minibuffer.el (completion-initials-expand): Only check the presence
 +      of delims *within* the boundaries, since otherwise the / delim is
 +      always found for files.
 +
 +      Fix up various corner case problems.
 +      * doc-view.el (doc-view-last-page-number): New function.
 +      (doc-view-mode, doc-view-last-page, doc-view-goto-page): Use it.
 +      (doc-view-goto-page): Avoid inf-loops when the conversion fails.
 +      (doc-view-kill-proc): Avoid inf-loop in freak cases.
 +      (doc-view-reconvert-doc): Use the new recursive delete-directory.
 +      (doc-view-convert-current-doc): Don't create the resolution.el file
 +      here any more.
 +      (doc-view-pdf/ps->png): Do it here instead.
 +      (doc-view-already-converted-p): Check that resolution.el is present.
 +      (doc-view-pdf->png): Don't rely on doc-view-pdf/ps->png for the few
 +      windows that are not yet showing images.
 +
 +2010-02-04  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * dired.el (dired-revert): If DIRED-DIRECTORY is a cons cell, call
 +      `dired-uncache' for every elemnt which is an absolute file name.
 +
 +      * net/tramp.el (tramp-handle-dired-uncache): When DIR is not a
 +      directory, handle its directory component.
 +      (tramp-handle-file-remote-p): Let-bind `tramp-verbose' to 3; this
 +      function is called permanently and creates noise, otherwise.
 +
 +      * net/tramp-imap.el (tramp-imap-handle-insert-directory):
 +      * net/tramp-smb.el (tramp-smb-handle-insert-directory):
 +      Handle the case, FILENAME is not in `default-directory'.  (Bug#5478)
 +
 +2010-02-04  David Burger  <dburger@google.com>  (tiny change)
 +
 +      * macros.el (apply-macro-to-region-lines):
 +      Minor simplification.  (Bug#5485)
 +
 +2010-02-04  Glenn Morris  <rgm@gnu.org>
 +
 +      * mail/rmail.el (rmail-show-message-1): Handle malformed
 +      quoted-printable text.  (Bug#5441)
 +
 +      * mail/mail-utils.el (mail-unquote-printable-region): Doc fix.
 +
 +      * simple.el (visual-line-mode): Capitalize lighter.
 +
 +2010-02-03  John Wiegley  <jwiegley@gmail.com>
 +
 +      * iswitchb.el (iswitchb-completions): Add bookmark files to the
 +      list of files considered for "virtual buffer" completions.
 +
 +2010-02-03  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/ange-ftp.el (ange-ftp-insert-directory): Parse directory
 +      also in case of (and (not full) (not wildcard)).  This is needed
 +      when dired is called with a list of files, which are not in
 +      `default-directory'.  (Bug#5478)
 +
 +2010-02-03  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * vc-hooks.el (vc-path): Make it an obsolete var, rather than function.
 +
 +2010-02-02  Juri Linkov  <juri@jurta.org>
 +
 +      * textmodes/ispell.el (ispell-message-text-end): Remove final newline
 +      from unidiff to allow function-line after @@.
 +
 +2010-02-02  Juri Linkov  <juri@jurta.org>
 +
 +      * ediff-util.el (ediff-file-checked-in-p): Replace '(nil CVS) by
 +      '(RCS SCCS) with inverted condition.
 +
 +2010-02-02  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/ange-ftp.el (ange-ftp-skip-msgs): Ignore all ""^500 .*AUTH"
 +      messages.
 +
 +2010-02-01  Juri Linkov  <juri@jurta.org>
 +
 +      * arc-mode.el (archive-zip-extract): Use `member-ignore-case' to
 +      compare with "pkunzip" and "pkzip" instead of only "pkzip".
 +      In the `archive-extract-by-stdout' branch use `shell-quote-argument'
 +      only when (car archive-zip-extract) is "unzip".  (Bug#5475)
 +
 +2010-02-01  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * doc-view.el (doc-view-new-window-function): Be a bit more defensive.
 +      (doc-view-revert-buffer): New command.
 +      (doc-view-mode-map): Use it.
 +
 +2010-02-01  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * vc-bzr.el (vc-bzr-dir-extra-headers): Add a header when a
 +      pending merge is detected.
 +
 +2010-01-31  Juri Linkov  <juri@jurta.org>
 +
 +      * progmodes/grep.el (zrgrep): Call `grep-compute-defaults' at the
 +      beginning of interactive spec like all other grep commands do.
 +      Put "all" in front of "gz".  (Bug#5260)
 +
 +2010-01-29  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * vc-bzr.el (vc-bzr-after-dir-status): Match another renaming indicator.
 +
 +2010-01-29  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * dirtrack.el (dirtrack): Warn instead of signalling error if the
 +      regexp is incorrect (Bug#5476).
 +
 +2010-01-29  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/tramp.el (tramp-handle-insert-directory): Handle also
 +      symlinks, when FILENAME is not in `default-directory'.
 +
 +2010-01-28  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/ange-ftp.el (ange-ftp-insert-directory): Handle the case,
 +      FILE is not in `default-directory'.  (Bug#5478)
 +
 +      * net/tramp.el (tramp-handle-insert-directory): Simplify handling
 +      of SWITCHES.  Handle the case, FILENAME is not in
 +      `default-directory'.  (Bug#5478)
 +      (tramp-register-file-name-handlers): Add safe-magic property.
 +
 +2010-01-28  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * arc-mode.el (archive-zip-extract): Quote the argument passed to
 +      unzip (Bug#5475).
 +
 +2010-01-28  Nil Geisweiller  <ngeiswei@googlemail.com>  (tiny change)
 +
 +      * progmodes/flymake.el (flymake-allowed-file-name-masks)
 +      (flymake-master-make-header-init): Add other C++ filename masks.
 +      (flymake-find-possible-master-files)
 +      (flymake-check-patch-master-file-buffer): Doc fixes (Bug#5488).
 +
 +2010-01-28  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      Fix some busybox annoyances.
 +
 +      * net/tramp.el (tramp-wrong-passwd-regexp): Add "Timeout, server
 +      not responding." string.
 +      (tramp-open-connection-setup-interactive-shell): Dump stty
 +      settings.  Enable "neveropen" arg for all `tramp-send-command'
 +      calls.  Handle "=" in variable values properly.
 +      (tramp-find-inline-encoding): Raise an error, when no encoding is
 +      found.
 +      (tramp-wait-for-output): Check, whether PROC buffer is available.
 +      Remove spurious " ^H" sequences, sent by busybox.
 +      (tramp-get-ls-command): Suppress coloring, if possible.
 +
 +2010-01-28  Glenn Morris  <rgm@gnu.org>
 +
 +      * vc-svn.el (vc-svn-update): Use "svn --non-interactive".  (Bug#4280)
 +
 +      * log-edit.el (log-edit-strip-single-file-name): Add missing
 +      :safe, :group, and :version tags.
 +
 +2010-01-27  Stephen Berman  <stephen.berman@gmx.net>
 +
 +      * calendar/diary-lib.el (diary-unhide-everything): Handle narrowed
 +      buffers.  (Bug#5477)
 +
 +2010-01-27  David De La Harpe Golden  <david@harpegolden.net>
 +
 +      * files.el (delete-directory): Handle moving to trash without
 +      first doing recursion (Bug#5436).
 +
 +2010-01-26  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * vc-hooks.el (vc-path): Mark as obsolete.
 +
 +2010-01-25  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * vc-annotate.el (vc-annotate-revision-at-line): Compare file
 +      names too.
 +
 +      * vc-bzr.el (vc-bzr-print-log): Use the more compact --line option
 +      for the short log.
 +      (vc-bzr-log-view-mode): Adjust regexp for the above change.
 +
 +2010-01-25  Mark A. Hershberger  <mah@everybody.org>
 +
 +      * progmodes/python.el: Replace reference to obsolete c-subword-mode.
 +
 +      * vc-bzr.el (vc-bzr-revision-table): New function.
 +
 +2010-01-25  Eric Hanchrow  <eric.hanchrow@gmail.com>
 +
 +      * vc-git.el (vc-git-dir-status-goto-stage): Pass --relative to the
 +      diff-index command.  This requires at least git-1.5.5.  (Bug#1589).
 +
 +2010-01-24  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      Remove support for adding --signoff on commit.
 +      Future support will use an incompatible generic mechanism.
 +      * vc-git.el (vc-git-add-signoff): Remove variable.
 +      (vc-git-toggle-signoff): Remove function.
 +      (vc-git-extra-menu-map): Do not bind vc-git-toggle-signoff.
 +
 +      * term/xterm.el (xterm-maybe-set-dark-background-mode):
 +      Rename from xterm-set-background-mode.  Return t if the background mode
 +      was set.
 +      (terminal-init-xterm): Move tty-set-up-initial-frame-faces
 +      earlier, call it again in case the background mode has changed.
 +
 +2010-01-23  Dmitri Paduchikh  <dpaduch@k66.ru>  (tiny change)
 +
 +      * emacs-lisp/advice.el (ad-set-orig-definition): Fix typo
 +      (Bug#3541).
 +
 +2010-01-23  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * emacs-lisp/assoc.el (aelement): Doc fix.
 +      (aput, adelete, amake): Use lexical-let (Bug#5450).
 +
 +2010-01-23  Stephen Leake  <stephen_leake@member.fsf.org>
 +
 +      * progmodes/ada-mode.el (ada-in-paramlist-p): Pragma syntax
 +      is the same as subprogram call, not declaration.  (Bug#5435).
 +
 +2010-01-23  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/tramp-smb.el (tramp-smb-conf): New defcustom.
 +      (tramp-smb-maybe-open-connection): Use it.
 +
 +2010-01-22  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/tramp-imap.el (top): Autoload needed packages.  (Bug#5448)
 +
 +2010-01-22  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * mail/rmailmm.el (rmail-mime-handle): Don't set the buffer to unibyte
 +      just because we see "encoding: 8bit".
 +      * mail/rmail.el (rmail-show-message-1): Decode the body's QP into bytes.
 +
 +2010-01-22  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * isearch.el (isearch-allow-scroll): Doc fix (Bug#5446).
 +
 +2010-01-22  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * jka-compr.el (jka-compr-load): If load-file is not in
 +      load-history, try its file-truename version.  (bug#5447)
 +
 +2010-01-21  Alan Mackenzie  <acm@muc.de>
 +
 +      Fix a situation where deletion of a cpp construct throws an error.
 +      * progmodes/cc-engine.el (c-invalidate-state-cache):
 +      Before invoking c-with-all-but-one-cpps-commented-out, check that the
 +      special cpp construct is still in the buffer.
 +      (c-parse-state): Record the special cpp with markers, not numbers.
 +
 +2010-01-21  Kenichi Handa  <handa@m17n.org>
 +
 +      * textmodes/sgml-mode.el (sgml-maybe-name-self): No need to
 +      process last-command-event, as it is now decoded first (Bug#5380).
 +
 +2010-01-20  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * term.el (term-send-raw-meta): Revert 2009-12-04 change (Bug#5330).
 +
 +2010-01-20  Glenn Morris  <rgm@gnu.org>
 +
 +      * indent.el (tab-always-indent): Fix custom-type.
 +
 +2010-01-19  Alan Mackenzie  <acm@muc.de>
 +
 +      * progmodes/cc-defs.el: Fix bug#5395: typing '#' in an empty
 +      buffer throws "args out of range".
 +      (c-set-cpp-delimiters, c-clear-cpp-delimiters): Check for EOB
 +      playing the role of delimiter.
 +
 +2010-01-18  Stephen Leake  <stephen_leake@member.fsf.org>
 +
 +      * progmodes/ada-mode.el: Fix bug#5400.
 +      (ada-matching-decl-start-re): Move into ada-goto-decl-start.
 +      (ada-goto-decl-start): Rename from ada-goto-matching-decl-start; callers
 +      changed.  Delete RECURSIVE parameter; never used.  Improve doc string.
 +      Improve comments in "is" portion.  Handle null procedure declaration.
 +      (ada-move-to-end): Improve doc string.
 +
 +2010-01-18  Óscar Fuentes  <ofv@wanadoo.es>
 +
 +      * ido.el (ido-cur-list): Initialize to nil.
 +      Remove obsolete information from commentary.
 +      (ido-choice-list): Initialize to nil.
 +      (ido-get-bufname): Reject minibuffers.
 +      (ido-make-buffer-list): If "default" is a nonexistent
 +      buffer, ignore it, as per the function's comment.
 +      (ido-kill-buffer-internal): New function.
 +      (ido-kill-buffer-at-head): Use it.
 +      (ido-visit-buffer): Likewise.
 +
 +2010-01-18  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * calendar/time-date.el (date-to-time): Doc fix (Bug#5408).
 +
 +2010-01-18  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * emacs-lisp/chart.el (chart-file-count, chart-rmail-from):
 +      Fix typos in chart titles.
 +
 +      * whitespace.el (whitespace-style, global-whitespace-newline-mode):
 +      * emacs-lisp/eieio.el (eieio-error-unsupported-class-tags)
 +      (eieio-generic-form, eieio-help-mode-augmentation-maybee, eieio-browse)
 +      (describe-class, eieio-describe-generic, describe-generic):
 +      * emacs-lisp/eieio-speedbar.el (eieio-speedbar-handle-click)
 +      (eieio-speedbar-expand):
 +      * emulation/viper-cmd.el (viper-exec-form-in-vi)
 +      (viper-exec-form-in-emacs, viper-harness-minor-mode, viper-ESC)
 +      (viper-repeat, viper-replace-state-exit-cmd, viper-toggle-search-style)
 +      (viper-del-backward-char-in-replace, viper-backward-indent)
 +      (viper-brac-function, viper-register-to-point, viper-submit-report):
 +      * net/tramp.el (tramp-remote-coding-commands):
 +      * term/x-win.el (emacs-session-save, x-menu-bar-open, icon-map-list):
 +      Fix typos in docstrings.
 +
 +2010-01-17  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * mail/sendmail.el (mail-yank-original): Set the mark if the
 +      specified function for yanking does not do it.
 +
 +2010-01-17  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * vc.el (with-vc-properties): Deal with directory arguments.  (Bug#5298)
 +
 +      * vc-dir.el (vc-dir-resynch-file): Update the vc-dir header when
 +      resyncing a directory.
 +
 +2010-01-17  Stephen Leake  <stephen_leake@member.fsf.org>
 +
 +      * progmodes/ada-mode.el: Fix bug#1920.
 +      (ada-ident-re): Delete ., allow multibyte characters.
 +      (ada-goto-label-re): New; matches goto labels.
 +      (ada-block-label-re): New; matches block labels.
 +      (ada-label-re): New; matches both.
 +      (ada-named-block-re): Deleted; callers changed to use
 +      `ada-block-label-re' instead.
 +      (ada-get-current-indent, ada-get-indent-noindent, ada-get-indent-loop):
 +      Use `ada-block-label-re'.
 +      (ada-indent-on-previous-lines): Improve handling of goto labels.
 +      (ada-get-indent-block-start): Special-case block label.
 +      (ada-get-indent-label): Split into `ada-indent-block-label' and
 +      `ada-indent-goto-label'.
 +      (ada-goto-stmt-start, ada-goto-next-non-ws):
 +      Optionally ignore goto labels.
 +      (ada-goto-next-word): Simplify.
 +      (ada-indent-newline-indent-conditional): Insert newline before
 +      trying to fix indentation; doc fix.
 +
 +2010-01-17  Jay Belanger  <jay.p.belanger@gmail.com>
 +
 +      * calc/calc.el (calc-command-flags): Give it an initial value.
 +
 +2010-01-17  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * files.el (minibuffer-with-setup-hook):
 +      * textmodes/artist.el (artist-mt, artist-key-undraw-continously)
 +      (artist-key-draw-continously, artist-key-do-continously-continously)
 +      (artist-key-set-point-continously, artist-mouse-draw-continously):
 +      Fix typos in docstrings.
 +
 +2010-01-16  Lennart Borgman  <lennart.borgman@gmail.com>
 +
 +      * nxml/nxml-mode.el (nxml-extend-after-change-region):
 +      Never return t (Bug#3898).
 +
 +2010-01-16  Frédéric Perrin  <frederic.perrin@resel.fr>  (tiny change)
 +
 +      * vc-dispatcher.el (vc-do-command): Set LC_MESSAGES, so that we
 +      can parse the output of the external commands (Bug#5279).
 +
 +2010-01-16  Jari Aalto  <jari.aalto@cante.net>
 +
 +      * pcmpl-unix.el (pcmpl-unix-read-passwd-file): Doc fix.
 +
 +2010-01-16  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * emacs-lisp/advice.el (ad-add-advice): Doc fix (Bug#5274)
 +
 +      * emacs-lisp/cl-macs.el (defstruct): Doc fix (Bug#5267).
 +
 +      * startup.el (command-line): Remove unused --icon-type arg.
 +      Handle --display arg, passing it to command-line-1 (Bug#5392).
 +
 +2010-01-16  Mario Lang  <mlang@delysid.org>
 +
 +      * emacs-lisp/chart.el (chart-translate-namezone):
 +      * textmodes/artist.el (artist-compute-popup-menu-table):
 +      Remove duplicated words in doc-strings.
 +
 +2010-01-15   David Abrahams  <dave@boostpro.com>  (tiny change)
 +
 +      * net/mairix.el (mairix-widget-send-query): Send -1 instead of nil
 +      to mairix-search to suppress threading (Bug#5342).
 +
 +2010-01-15  Kenichi Handa  <handa@m17n.org>
 +
 +      * international/mule-cmds.el (canonicalize-coding-system-name):
 +      Convert "msXXX", "ibmXXX", "windows-XXX" to "cpXXX" (Bug#5387).
 +
 +2010-01-15  Glenn Morris  <rgm@gnu.org>
 +
 +      * log-view.el (top-level): Require 'wid-edit.  (Bug#5311)
 +
 +      * wid-edit.el (widget-keymap): Doc fix.
 +
 +      * vc-svn.el (vc-svn-print-log): Use --limit rather than -l since the
 +      former seems to be more widely accepted by various svn versions.
 +
 +2010-01-14  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * find-cmd.el (find-constituents):
 +      * vc-arch.el (vc-arch-root):
 +      * window.el (window-body-height, pop-up-frames):
 +      * emacs-lisp/eieio-base.el (eieio-singleton, slot-missing):
 +      * progmodes/ada-stmt.el (ada-if):
 +      * progmodes/gdb-ui.el (gdb-jsonify-buffer):
 +      * textmodes/ispell.el (ispell-grep-options, ispell-dictionary-alist)
 +      (ispell-encoding8-command, ispell-aspell-supports-utf8)
 +      (ispell-last-program-name, ispell-help): Fix typos in docstrings.
 +
 +      * progmodes/flymake.el (flymake-post-syntax-check):
 +      Fix typo in error message.
 +
 +2010-01-14  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * hexl.el (hexl-printable-character): Fix check of `hexl-iso',
 +      which is always a string.  (Bug#5313)
 +
 +2010-01-14  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * progmodes/ada-xref.el (ada-default-prj-properties):
 +      Simplify previous change.
 +
 +2010-01-14  Stephen Leake  <stephen_leake@member.fsf.org>
 +
 +      * progmodes/ada-xref.el (ada-default-prj-properties):
 +      Default ada_project_path to $ADA_PROJECT_PATH.
 +
 +2010-01-14  Stephen Leake  <stephen_leake@member.fsf.org>
 +
 +      * progmodes/ada-mode.el (ada-create-keymap):
 +      Override `narrow-to-defun' with `ada-narrow-to-defun'.
 +
 +2010-01-14  Stephen Leake  <stephen_leake@member.fsf.org>
 +
 +      * progmodes/ada-mode.el: Deal with Ada 2005 "overriding" keyword.
 +      (ada-subprog-start-re, ada-imenu-subprogram-menu-re): Add keyword.
 +      (ada-get-current-indent, ada-imenu-generic-expression)
 +      (ada-which-function): Check for it.
 +
 +2010-01-14  Stephen Leake  <stephen_leake@member.fsf.org>
 +
 +      * progmodes/ada-mode.el (ada-clean-buffer-before-saving): Make obsolete.
 +      (ada-mode): Don't obey `ada-clean-buffer-before-saving' anymore.
 +
 +2010-01-14  Glenn Morris  <rgm@gnu.org>
 +
 +      * frame.el (show-trailing-whitespace): Safe if boolean.  (Bug#5312)
 +
 +2010-01-14  Kenichi Handa  <handa@m17n.org>
 +
 +      * composite.el (auto-composition-mode): Make it a buffer local
 +      variable (permanent-local).
 +      (auto-composition-function): Set the default value to
 +      auto-compose-chars.
 +      (auto-composition-mode): Make it a simple function, not a minor mode.
 +      (global-auto-composition-mode): Likewise.
 +      (turn-on-auto-composition-if-enabled): Delete it.
 +
 +2010-01-13  Karl Fogel  <kfogel@red-bean.com>
 +
 +      * bookmark.el (bookmark-bmenu-execute-deletions): Doc fix (Bug#5276).
 +
 +2010-01-12  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * files.el (copy-directory): Compute target for recursive
 +      directories with identical names.  (Bug#5343)
 +
 +2010-01-12  Glenn Morris  <rgm@gnu.org>
 +
 +      * mail/emacsbug.el (report-emacs-bug-pretest-address):
 +      Set it to bug-gnu-emacs rather than emacs-pretest-bug.
 +
 +2010-01-11  Sam Steingold  <sds@gnu.org>
 +
 +      * imenu.el (imenu-default-create-index-function): Detect infinite
 +      loops caused by imenu-prev-index-position-function.
 +
 +2010-01-11  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * htmlfontify.el (htmlfontify-load-rgb-file)
 +      (htmlfontify-unload-rgb-file, hfy-fallback-colour-values)
 +      (htmlfontify-manual, htmlfontify, hfy-page-header, hfy-page-footer)
 +      (hfy-src-doc-link-style, hfy-src-doc-link-unstyle, hfy-link-extn)
 +      (hfy-link-style-fun, hfy-index-file, hfy-instance-file)
 +      (hfy-html-quote-regex, hfy-init-kludge-hook, hfy-post-html-hooks)
 +      (hfy-default-face-def, hfy-etag-regex, hfy-html-quote-map)
 +      (hfy-etags-cmd-alist-default, hfy-etags-bin, hfy-ignored-properties)
 +      (hfy-which-etags, hfy-etags-cmd, hfy-istext-command, hfy-display-class)
 +      (hfy-optimisations, hfy-tags-cache, hfy-tags-sortl, hfy-tags-rmap)
 +      (hfy-style-assoc, hfy-sheet-assoc, hfy-facemap-assoc, hfy-interq)
 +      (hfy-colour-vals, hfy-default-header, hfy-link-style-string)
 +      (hfy-triplet, hfy-slant, hfy-weight, hfy-combined-face-spec)
 +      (hfy-face-attr-for-class, hfy-face-to-style-i, hfy-size-to-int)
 +      (hfy-flatten-style, hfy-face-to-style, hfy-face-or-def-to-name)
 +      (hfy-face-to-css, hfy-p-to-face, hfy-p-to-face-lennart, hfy-face-at)
 +      (hfy-fontified-p, hfy-merge-adjacent-spans, hfy-buffer)
 +      (hfy-html-enkludge-buffer, hfy-html-quote, hfy-html-dekludge-buffer)
 +      (hfy-force-fontification, htmlfontify-buffer, hfy-dirname)
 +      (hfy-make-directory, hfy-text-p, hfy-mark-tag-names, hfy-relstub)
 +      (hfy-href-stub, hfy-href, hfy-mark-tag-hrefs, hfy-prepare-index-i)
 +      (hfy-prepare-index, hfy-prepare-tag-map, hfy-subtract-maps)
 +      (htmlfontify-run-etags): Fix typos in docstrings and remove superfluous
 +      backslash-quoting from parentheses, etc.
 +
 +2010-01-11  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * progmodes/js.el: Autoload javascript-mode alias.
 +
 +2010-01-11  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * ffap.el (ffap-shell-prompt-regexp, ffap-all-subdirs, ffap-url-p)
 +      (ffap-alist, ffap-tex-path, ffap-url-at-point, ffap-gopher-regexp)
 +      (ffap-gopher-at-point, ffap-file-at-point, ffap-read-file-or-url)
 +      (ffap-read-url-internal, ffap-menu, ffap-at-mouse):
 +      Fix typos in docstrings.
 +      (ffap-url-regexp): Doc fix.
 +      (ffap-at-mouse): Fix typo in message.
 +
 +2010-01-11  Glenn Morris  <rgm@gnu.org>
 +
 +      * version.el (emacs-copyright): Set copyright year to 2010.
 +
 +2010-01-10  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * format.el (format-annotate-function): Only set
 +      write-region-post-annotation-function after running to-fn so as not to
 +      affect nested write-region calls (bug#5273).
 +
 +2010-01-10  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * Makefile.in (ELCFILES): Add wisent/python-wy.el and
 +      wisent/python.el.
 +
 +2010-01-09  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * man.el (Man-goto-section): Signal error if the section is not
 +      found (Bug#5317).
 +
 +2010-01-09  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * vc-bzr.el (vc-bzr-working-revision): On Windows and MS-DOS, accept
 +      URLs with a leading triple slash in the file: scheme.  (Bug#5345)
 +
 +2010-01-09  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * progmodes/compile.el: Don't treat compile-command as safe if
 +      compilation-read-command might be nil (Bug#4218).
 +
 +2010-01-09  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * startup.el (command-line-1): Use orig-argi to check for ignored X and
 +      NS options.
 +
 +2010-01-08  Kenichi Handa  <handa@m17n.org>
 +
 +      * international/fontset.el (build-default-fontset-data):
 +      Exclude characters in scripts kana, hangul, han, or cjk-misc.
 +
 +2010-01-07  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * vc-dir.el (vc-dir-prepare-status-buffer): Pass a (fake) filename
 +      to `create-file-buffer' as it expects, not just a buffer name.
 +      (vc-dir-mode): Include the buffer name in `list-buffers-directory',
 +      to help uniquify.  (Bug#3224)
 +
 +2010-01-06  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * font-setting.el (font-setting-change-default-font): Use user-spec
 +      instead of name.
 +
 +2010-01-06  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * vc-bzr.el (vc-bzr-after-dir-status): Ignore pending merges.
 +
 +2010-01-05  Tom Tromey  <tromey@redhat.com>
 +
 +      * progmodes/python.el (python-font-lock-keywords):
 +      Handle qualified decorators (Bug#881).
 +
 +2010-01-05  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * vc-bzr.el (vc-bzr-working-revision): Fix looking for a revision
 +      in a lightweight checkout.
 +
 +2010-01-05  Kenichi Handa  <handa@m17n.org>
 +
 +      * language/indian.el (malayalam-composable-pattern): Fix ZWNJ and ZWJ.
 +
 +2010-01-05  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * vc-bzr.el (vc-bzr-diff): Obey vc-disable-async-diff.
 +
 +2010-01-04  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * vc-bzr.el (vc-bzr-state-heuristic): Make it work for lightweight
 +      checkouts.  (Bug#618)
 +      (vc-bzr-log-view-mode): Also highlight the author.
 +      (vc-bzr-shelve-map): Change binding for vc-bzr-shelve-apply-at-point.
 +      (vc-bzr-shelve-menu-map):
 +      (vc-bzr-dir-extra-headers): Improve menu and tooltip text.
 +      (vc-bzr-shelve-apply): Make prompt more explicit.
 +
 +2010-01-02  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * net/browse-url.el (browse-url-encode-url): Don't escape commas.
 +      They are valid characters in URL paths (rfc3986), and at least
 +      Firefox does not understand the encoded version (Bug#3166).
 +
 +2010-01-02  Daniel Elliott  <danelliottster@gmail.com>  (tiny change)
 +
 +      * progmodes/octave-mod.el (octave-end-keywords)
 +      (octave-block-begin-or-end-regexp, octave-block-match-alist):
 +      Add "end" keyword (Bug#3061).
 +      (octave-end-as-array-index-p): New function.
 +      (calculate-octave-indent): Use it.
 +
 +2010-01-02  Karl Fogel  <kfogel@red-bean.com>
 +
 +      * bookmark.el: Consistently put the text property on the bookmark name.
 +      (bookmark-bmenu-marks-width): Bump back to 2, to include
 +      annotation marks.
 +      (bookmark-bmenu-hide-filenames): Adjust for above, and put the text
 +      property on the bookmark name, instead of not putting it at all.
 +      (bookmark-bmenu-list): Fix where we put the text property.
 +
 +2010-01-02  Karl Fogel  <kfogel@red-bean.com>
 +
 +      * bookmark.el (bookmark-bmenu-save): Just depend on the new logic
 +      for showing buffer modified state (as added in the previous change).
 +
 +2010-01-02  Karl Fogel  <kfogel@red-bean.com>
 +
 +      * bookmark.el: Show modified state of bookmark buffer more accurately.
 +      (bookmark-bmenu-list): Initialize buffer-modified-p properly.
 +      (bookmark-send-edited-annotation): Mark bookmark-alist as modified.
 +      (with-buffer-modified-unmodified): New macro.
 +      (bookmark-bmenu-show-filenames, bookmark-bmenu-hide-filenames)
 +      (bookmark-bmenu-mark, bookmark-bmenu-unmark, bookmark-bmenu-delete):
 +      Use new macro to preserve the buffer modified state.
 +
 +2010-01-02  Karl Fogel  <kfogel@red-bean.com>
 +
 +      * bookmark.el (bookmark-bmenu-select, bookmark-bmenu-1-window)
 +      (bookmark-bmenu-2-window, bookmark-bmenu-this-window)
 +      (bookmark-bmenu-other-window, bookmark-bmenu-switch-other-window)
 +      (bookmark-bmenu-show-annotation, bookmark-bmenu-edit-annotation)
 +      (bookmark-bmenu-rename, bookmark-bmenu-locate)
 +      (bookmark-bmenu-relocate, bookmark-bmenu-goto-bookmark):
 +      Remove unnecessary calls to `bookmark-bmenu-ensure-position'.
 +
 +2010-01-02  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * emacs-lisp/easy-mmode.el (define-globalized-minor-mode):
 +      Make the lines in the generated doc string shorter.  (Bug#4668)
 +
 +2010-01-02  Ryan Yeske  <rcyeske@gmail.com>
 +
 +      * net/rcirc.el: Add follow-link binding (Bug#4738).
 +
 +2010-01-02  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * Makefile.in (bzr-update): Rename from cvs-update.
 +      (cvs-update): New target for backward compatibility.
 +
 +      * makefile.w32-in (bzr-update): Rename from cvs-update.
 +      (cvs-update): New target for backward compatibility.
 +
 +2010-01-02  Karl Fogel  <kfogel@red-bean.com>
 +
 +      * bookmark.el: Remove gratuitous gratitude.
 +
 +2010-01-02  Karl Fogel  <kfogel@red-bean.com>
 +
 +      * bookmark.el (bookmark-bmenu-any-marks): New function.
 +      (bookmark-bmenu-save): Clear buffer modification if no marks.
 +
 +2010-01-02  Karl Fogel  <kfogel@red-bean.com>
 +
 +      * bookmark.el (bookmark-bmenu-marks-width): Define to 1, not 2.
 +      (bookmark-bmenu-list, bookmark-bmenu-bookmark): Calculate property
 +      positions by using `bookmark-bmenu-marks-width', instead of hardcoding.
 +      This fixes the `bookmark-bmenu-execute-deletions' bug reported here:
 +
 +      http://lists.gnu.org/archive/html/emacs-devel/2009-12/msg00819.html
 +      From: Sun Yijiang <sunyijiang {_AT_} gmail.com>
 +      To: emacs-devel {_AT_} gnu.org
 +      Subject: bookmark.el bug report
 +      Date: Mon, 28 Dec 2009 14:19:16 +0800
 +      Message-ID: 5065e2900912272219y3734fc9fsdaee41167ef99ad7@mail.gmail.com
 +
 +2010-01-02  Karl Fogel  <kfogel@red-bean.com>
 +
 +      * bookmark.el: Improvements suggested by Drew Adams:
 +      (bookmark-bmenu-ensure-position): New name for
 +      `bookmark-bmenu-check-position'.  Just ensure the position,
 +      don't return any meaningful value.
 +      (bookmark-bmenu-header-height, bookmark-bmenu-marks-width):
 +      New constants.
 +
 +2010-01-02  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * bookmark.el (bookmarks-already-loaded): Doc fix (don't use `iff').
 +      (bookmark-yank-point, bookmark-bmenu-check-position):
 +      Fix typos in docstrings.
 +      (bookmark-save-flag, bookmark-bmenu-toggle-filenames)
 +      (bookmark-name-from-full-record, bookmark-get-position)
 +      (bookmark-set-position, bookmark-set, bookmark-handle-bookmark)
 +      (bookmark-delete, bookmark-save, bookmark-save, bookmark-bmenu-mode):
 +      Remove useless quoting of parenthesis, etc. in docstrings.
 +
 +      * ediff-mult.el (ediff-prepare-meta-buffer): Fix typo in help message.
 +      (ediff-append-custom-diff): Fix typo in error message.
 +      (ediff-meta-mark-equal-files): Fix typos in messages.
 +
 +      * mpc.el (mpc-playlist-delete): Fix typo in error messages.
 +
 +      * net/imap-hash.el (imap-hash-make): Doc fix.
 +      (imap-hash-test): Fix typo in error message; reflow docstring.
 +      (imap-hash-p, imap-hash-get, imap-hash-put, imap-hash-make-message)
 +      (imap-hash-count, imap-hash-server, imap-hash-port, imap-hash-ssl)
 +      (imap-hash-mailbox, imap-hash-user, imap-hash-password):
 +      Fix typos in docstrings.
 +      (imap-hash-open-connection): Fix typo in error message.
 +
 +      * play/gomoku.el (gomoku): Fix typos in docstring.
 +
 +      * progmodes/gdb-ui.el (gdb-location-alist): Reflow docstring.
 +      (gdb-jsonify-buffer): Fix typos in docstring.
 +      (gdb-goto-breakpoint): Fix typo in error message.
 +      ("Display Other Windows"): Fix typo in help message.
 +      (gdb-speedbar-expand-node): Fix typo in question.
 +
 +      * progmodes/idlw-help.el (idlwave-help-browse-url-available)
 +      (idlwave-html-system-help-location, idlwave-html-help-location)
 +      (idlwave-help-browser-function, idlwave-help-browser-generic-program)
 +      (idlwave-help-browser-generic-args, idlwave-help-directory)
 +      (idlwave-html-help-is-available, idlwave-help-mode-line-indicator)
 +      (idlwave-help-mode-map, idlwave-help-mode, idlwave-do-context-help)
 +      (idlwave-online-help, idlwave-help-html-link)
 +      (idlwave-help-show-help-frame, idlwave-help-assistant-command):
 +      Fix typos in docstrings.
 +      (idlwave-help-with-source, idlwave-help-find-routine-definition):
 +      Reflow docstrings.
 +      (idlwave-help-assistant-start): Fix typo in error message.
 +
 +      * progmodes/octave-mod.el (octave-mode, octave-electric-semi)
 +      (octave-electric-space): Fix typos in docstrings.
 +
 +2010-01-01  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * files.el (minibuffer-with-setup-hook): Doc fix (Bug#5149).
 +
 +2010-01-01  Juri Linkov  <juri@jurta.org>
 +
 +      * comint.el (comint-input-ring-size): Make it a defcustom and
 +      increase the default to 500 (Bug#5148).
 +
 +2009-12-31  Nick Roberts  <nickrob@snap.net.nz>
 +
 +      Further changes from EMACS_23_1_RC branch (2009-12-29 contd).
 +      * term/x-win.el (x-gtk-stock-map): Map some GUD buttons.
 +      * progmodes/gud.el (gud-menu-map): Add reverse-execution commands.
 +
 +2009-12-30  Nick Roberts  <nickrob@snap.net.nz>
 +
 +      Show working revision correctly for mercurial.
 +      * vc-hg.el (vc-hg-working-revision): Use hg parent instead of
 +      hg log as suggested by Alex Harsanyi <alexharsanyi@gmail.com>.
 +
 +2009-12-29  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      Declare some functions for the byte-compiler.
 +      * progmodes/gdb-ui.el (speedbar-change-initial-expansion-list)
 +      (speedbar-timer-fn, speedbar-change-expand-button-char)
 +      (speedbar-delete-subblock, speedbar-center-buffer-smartly): Declare.
 +
 +2009-12-29  Nick Roberts  <nickrob@snap.net.nz>
 +
 +      This changeset reverts GDB Graphical Interface to use annotations.
 +      * progmodes/gdb-ui.el, progmodes/gud.el: Import from EMACS_23_1_RC.
 +
 +2009-12-29  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      Make vc-dir work on subdirectories of the bzr root.
 +      * vc-bzr.el (vc-bzr-after-dir-status): Add new argument.
 +      Return file names relative to it.
 +      (vc-bzr-dir-status, vc-bzr-dir-status-files): Pass the bzr root
 +      relative directory to vc-bzr-after-dir-status.
 +
 +2009-12-28  Tassilo Horn  <tassilo@member.fsf.org>
 +
 +      * font-lock.el (font-lock-refresh-defaults): New function, which
 +      can be used to let font-lock react to external changes in
 +      variables like font-lock-defaults and keywords.
 +      See http://thread.gmane.org/gmane.emacs.devel/118777/focus=118802
 +
 +2009-12-28  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * vc-rcs.el (vc-rcs-register): Fix registering a specific version.
 +
 +      * vc-bzr.el (vc-bzr-log-view-mode): Fix short log regexp.
 +
 +2009-12-28  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      Supersede color.diff settings in git log (bug#5211).
 +
 +      * vc-git.el (vc-git-print-log): Pass "--no-color" to log to avoid
 +      escape chars in its output when the user has color.diff set to `always'.
 +      This fix works on git 1.4.2 and newer (released on 2006-08-13).
 +
 +2009-12-26  Kevin Ryde  <user42@zip.com.au>
 +
 +      * info-look.el (sh-mode): Look for coreutils new "Concept Index"
 +      node.  Keep previous "Index" name to work with past coreutils too.
 +
 +      * man.el (man): Revise docstring a bit to show -a and -l as
 +      examples.  Add -k description since support for it has otherwise
 +      been a secret.  (Further to bug#3717.)
 +      (Man-bgproc-sentinel): When "-k foo" produces no output show error
 +      "no matches" rather than "Can't find manpage", as the latter reads
 +      like -k was interpreted as a page name, which is not so.  (Bug#5431)
 +
 +2009-12-26  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/tramp.el (tramp-handle-insert-directory): Quote "'" in the
 +      switches.  Check also for //SUBDIRED// line.
 +
 +2009-12-25  Kenichi Handa  <handa@m17n.org>
 +
 +      * language/indian.el (devanagari-composable-pattern): Fix to
 +      handle ZWNJ and ZWJ.  Use it in composition-function-table for
 +      Devanagari.
 +      (malayalam-composable-pattern): Fix previous change.
 +
 +2009-12-23  Vinicius Jose Latorre  <viniciusjl@ig.com.br>
 +
 +      * ps-print.el (ps-face-attributes): It was not returning the
 +      attribute face for faces specified as string.  Reported by harven
 +      <harven@free.fr>.  (Bug#5254)
 +      (ps-print-version): New version 7.3.5.
 +
 +2009-12-18  Ulf Jasper  <ulf.jasper@web.de>
 +
 +      * calendar/icalendar.el (icalendar--convert-tz-offset):
 +      Fix timezone names.
 +      (icalendar--convert-tz-offset): Fix the "last-day-problem".
 +      (icalendar--add-diary-entry): Remove the trailing blank that
 +      diary-make-entry inserts.
 +
 +2009-12-17  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      Make `file-expand-wildcards' work for remote files.
 +
 +      * files.el (file-expand-wildcards): In case of remote files, check
 +      only local file name part for wildcards.  Provide feature 'files
 +      and subfeature 'remote-wildcards.  (Bug#5198)
 +
 +      * net/tramp.el (tramp-handle-file-remote-p): Expand file name only
 +      if there is already an established connection.
 +      (tramp-advice-file-expand-wildcards): Remove it.
 +
 +      * net/tramp-compat.el (top): Autoload `tramp-handle-file-remote-p'.
 +      (tramp-advice-file-expand-wildcards): Move from tramp.el.
 +      Activate advice for older GNU Emacs versions.  (Bug#5237)
 +
 +2009-12-17  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      Some doc fixes (more needed).
 +
 +      * find-cmd.el (find-constituents): Reflow docstring.
 +      (find-cmd, find-prune, find-command): Fix typos in docstrings.
 +      (find-generic): Doc fix.
 +
 +2009-12-17  Juri Linkov  <juri@jurta.org>
 +
 +      Fix regression from 23.1 to allow multiple modes in Local Variables.
 +
 +      * files.el (hack-local-variables-filter): While ignoring duplicates,
 +      don't take `mode' into account.
 +      (hack-local-variables-filter, hack-dir-local-variables):
 +      Don't remove duplicate `mode' from local-variables-alist (like `eval').
 +
 +2009-12-17  Juri Linkov  <juri@jurta.org>
 +
 +      Make `dired-diff' safer.  (Bug#5225)
 +
 +      * dired-aux.el (dired-diff): Signal an error when `file' equals to
 +      `current' or when `file' is a directory of the `current' file.
 +
 +2009-12-17  Andreas Schwab  <schwab@linux-m68k.org>
 +
 +      * emacs-lisp/autoload.el (batch-update-autoloads): Only exclude
 +      unconditionally preloaded files.
 +
 +2009-12-16  Juri Linkov  <juri@jurta.org>
 +
 +      Revert to old 23.1 logic of using the file at the mark as default.
 +      * dired-aux.el (dired-diff): Use the file at the mark as default
 +      if it's not the same as the current file, and the target dir is
 +      the current dir or the mark is active.  Add the current file
 +      as the arg of `dired-dwim-target-defaults'.  Use the default file
 +      in the prompt.  (Bug#5225)
 +
 +2009-12-15  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/tramp.el (tramp-echo-mark-marker-length): New defconst.
 +      (tramp-echo-mark, tramp-echoed-echo-mark-regexp): Use it.
 +      (tramp-check-for-regexp): Check also, when an echoing shell stops
 +      to echo sent commands.
 +
 +2009-12-14  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * Makefile.in: Revert last change (Bug#5191).
 +
 +2009-12-14  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * vc-hg.el (vc-hg-print-log): Fix argument order.
 +      (vc-hg-working-revision): Make sure the command is executed in a
 +      known environment so that we can parse the output.  (Bug#4417)
 +
 +2009-12-14  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * progmodes/python.el (python-symbol-completions): Remove text
 +      properties from symbol string before calling python-send-receive.
 +
 +2009-12-14  Nick Roberts  <nickrob@snap.net.nz>
 +
 +      * progmodes/gdb-mi.el (gdb-frame-handler): Only set gud-lat-frame
 +      when there are values for both file and line.  (Bug#5060)
 +
 +2009-12-14  Juri Linkov  <juri@jurta.org>
 +
 +      * ediff-ptch.el (ediff-context-diff-label-regexp): Don't match
 +      whitespace after the file name of the first line of unified format,
 +      because git-diff doesn't output whitespace and file modification time
 +      after the file name.
 +
 +2009-12-14  David Kastrup  <dak@gnu.org>
 +
 +      * info.el (Info-hide-cookies-node): Before hiding a cookie,
 +      check if it already has the `display' property added by
 +      `Info-display-images-node', and not put the `invisible' property
 +      in this case.
 +
 +2009-12-13  Glenn Morris  <rgm@gnu.org>
 +
 +      * mail/emacsbug.el (message-sort-headers): Define for compiler.
 +      (report-emacs-bug): In message-mode, sort manually before storing
 +      original report text.  (Bug#5178)
 +      Remove superfluous save-excursion.
 +
 +2009-12-12  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/dbus.el (dbus-property-handler): Filter lambda forms out
 +      when responding to "GetAll" properties.
 +
 +2009-12-12  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * simple.el (compose-mail): Remove mail-setup-with-from from
 +      customization checks.
 +
 +2009-12-12  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * arc-mode.el (archive-rar-summarize): Support Attribute fields in
 +      RAR archives created on Unix systems.
 +
 +2009-12-12  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * minibuffer.el (minibuffer-local-must-match-filename-map): Re-instate
 +      the varalias that was accidentally removed by the 2009-11-19 change
 +      (bug#5186).
 +
 +2009-12-12  Kenichi Handa  <handa@m17n.org>
 +
 +      * language/indian.el (indian-compose-regexp): New function.
 +      (malayalam-composable-pattern): Fix the pattern.
 +      (composition-function-table): Set malayalam-composable-pattern for
 +      Malayalam characters.
 +
 +2009-12-11  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * progmodes/bug-reference.el (bug-reference-map): Bind mouse-2
 +      rather than down-mouse-1, based on follow-link conventions.
 +
 +      * makefile.w32-in: Ensure that Lisp files in CEDET subdirectories
 +      are compiled.
 +
 +2009-12-11  Michael McNamara  <mac@mail.brushroad.com>
 +
 +      * progmodes/verilog-mode.el (verilog-vmm-begin-re, verilog-vmm-end-re)
 +      (verilog-vmm-statement-re, verilog-ovm-statement-re)
 +      (verilog-defun-level-not-generate-re, verilog-calculate-indent)
 +      (verilog-leap-to-head, verilog-backward-token):
 +      Fix indenting VMM macros.  Reported by Jonathan Ashbrook.
 +
 +2009-12-11  Wilson Snyder  <wsnyder@wsnyder.org>
 +
 +      * progmodes/verilog-mode.el (verilog-auto-lineup)
 +      (verilog-nameable-item-re): Cleanup user-visible spelling and
 +      documentation errors.  One reported by Gary Delp.
 +      (verilog-submit-bug-report): Mention bug tracking and CC co-author.
 +      (verilog-read-decls): Fix AUTOWIRE with types declared in a
 +      package, bug195.  Reported by Pierre-David Pfister.
 +
 +2009-12-11  Glenn Morris  <rgm@gnu.org>
 +
 +      * progmodes/cc-engine.el (safe-pos-list): Define for compiler.
 +
 +      * mail/emacsbug.el: No longer require sendmail.
 +      Replace sendmail's `mail-text' by `rfc822-goto-eoh'.  (Bug#5174)
 +      (report-emacs-bug-orig-text): Doc fix.
 +      (report-emacs-bug-send-command, report-emacs-bug-send-hook):
 +      New local variables, to adapt to different mail-user-agents.
 +      (report-emacs-bug): Fix test for a gnu.org address.
 +      Use overlays for emphasis, since font-lock defeats 'face property.
 +      Pretest bugs also end up at the newsgroup these days.
 +      Stop message-mode stripping text properties.
 +      Set and use the new buffer-local variables.
 +      (report-emacs-bug-hook): Add doc-string.
 +      Remove some unnecessary save-excursions and simplify.
 +      Use the appropriate hook and send-command.
 +
 +      * emacs-lisp/lisp-mode.el (emacs-lisp-mode-map): Standardize the
 +      capitalization of some menu entries.
 +
 +2009-12-10  Vinicius Jose Latorre  <viniciusjl@ig.com.br>
 +
 +      * whitespace.el (whitespace-display-char-on):
 +      Ensure `buffer-display-table' is unique when two or more windows are
 +      visible.  Reported by Martin Pohlack <mp26@os.inf.tu-dresden.de>.
 +      New version 12.1.
 +
 +2009-12-10  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * arc-mode.el (archive-rar-summarize): Allow between 6 and 7
 +      characters in the Attribute field.
 +
 +2009-12-10  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * vc-svn.el (vc-svn-after-dir-status): Fix regexp.  (Bug#4741)
 +
 +2009-12-10  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      Let loaddefs.el adjust to changes in autoload-excludes (bug#5162).
 +      * emacs-lisp/autoload.el (autoload-generate-file-autoloads):
 +      Disregard autoload-excludes.
 +      (update-directory-autoloads): Obey autoload-excludes here instead.
 +      But don't store its contents in no-autoloads and remove entries that
 +      refer to excludes files.
 +
 +2009-12-10  Glenn Morris  <rgm@gnu.org>
 +
 +      * mail/feedmail.el (top-level): Move require 'mail-utils to start.
 +      (expand-mail-aliases): Define for compiler.
 +
 +      * vc-annotate.el (log-view-vc-backend, log-view-vc-fileset):
 +      Define for compiler.
 +
 +      * mail/emacsbug.el (report-emacs-bug): Use whichever send command is
 +      appropriate for the mail-user-agent in use.
 +
 +2009-12-09  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/tramp.el (tramp-handle-insert-directory): Suppress error messages.
 +
 +2009-12-09  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      Fix short log parsing and fontification.
 +      * vc-bzr.el (vc-bzr-log-view-mode): Match dot in revision number.
 +      Fix fontification for the [merge] label.
 +
 +2009-12-09  Vivek Dasmohapatra  <vivek@etla.org>
 +
 +      Drop some properties to avoid surprises (bug#5002).
 +      * htmlfontify.el (hfy-ignored-properties): New defcustom.
 +      (hfy-fontify-buffer): Use it.
 +
 +2009-12-09  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      Minor cleanup.
 +      * ffap.el (ffap-symbol-value): Replace ffap-soft-value.
 +      Adjust all callers.
 +      (ffap-locate-file): Remove unused arg `dir-ok' and make other
 +      args compulsory.  Adjust callers.
 +      (ffap-gopher-at-point): Remove unused var `name'.
 +
 +      Get rid of the ELCFILES abomination.
 +      * Makefile.in (update-elclist, ELCFILES, compile-last): Remove.
 +      (compile-elcfiles): New phony target.
 +      (compile-main): Compute ELCFILES dynamically.
 +      (compile-clean): New target to remove left-over elc files.
 +      (compile, all): Use it.
 +
 +2009-12-09  Kenichi Handa  <handa@etlken>
 +
 +      * international/mule-diag.el: Require help-mode instead of help-fns.
 +
 +2009-12-09  Kenichi Handa  <handa@m17n.org>
 +
 +      * international/mule-cmds.el (ucs-names): Supply sufficiently
 +      fine ranges instead of pre-calculating accurate ranges.
 +      Iterate with bigger gc-cons-threshold.
 +
 +2009-12-08  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      Add support for stashing a snapshot of the current tree.
 +      * vc-git.el (vc-git-stash-snapshot): New function.
 +      (vc-git-stash-map, vc-git-extra-menu-map): Add a mapping for it.
 +
 +2009-12-08  Jose E. Marchesi  <jemarch@gnu.org>
 +
 +      * play/gomoku.el (gomoku-mode-map): Remap `move-(beginning|end)-of-line'
 +      instead of `(beginning|end)-of-line'.
 +
 +2009-12-08  Glenn Morris  <rgm@gnu.org>
 +
 +      * vc-mtn.el (vc-mtn-print-log): Fix typo in previous.
 +
 +      * Makefile.in (ELCFILES): Regenerate.
 +
 +2009-12-07  Juri Linkov  <juri@jurta.org>
 +
 +      Don't lazy-highlight the comint output in history Isearch mode.
 +
 +      * comint.el (comint-history-isearch-search): Instead of
 +      `comint-line-beginning-position', use `comint-after-pmark-p'
 +      to check if point if before the process mark, and go to
 +      `process-mark' in this case.
 +
 +2009-12-07  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * textmodes/tex-mode.el (latex-complete)
 +      (latex-indent-or-complete): Remove.
 +      (latex-mode): Set completion-at-point-functions instead.
 +
 +      Provide a standard completion command and hook it into TAB.
 +      * minibuffer.el (completion-at-point-functions): New var.
 +      (completion-at-point): New command.
 +      * indent.el (indent-for-tab-command): Handle the `complete' behavior.
 +      * progmodes/python.el (python-mode-map): Use completion-at-point.
 +      (python-completion-at-point): Rename from python-partial-symbol and
 +      adjust for use in completion-at-point-functions.
 +      (python-mode): Setup completion-at-point for Python completion.
 +      * emacs-lisp/lisp.el (lisp-completion-at-point): New function
 +      extracted from lisp-complete-symbol.
 +      (lisp-complete-symbol): Use it.
 +      * emacs-lisp/lisp-mode.el (emacs-lisp-mode): Use define-derived-mode,
 +      setup completion-at-point for Elisp completion.
 +      (emacs-lisp-mode-map, lisp-interaction-mode-map):
 +      Use completion-at-point.
 +      * ielm.el (ielm-map): Use completion-at-point.
 +      (inferior-emacs-lisp-mode): Setup completion-at-point-functions.
 +      * progmodes/sym-comp.el: Move to...
 +      * obsolete/sym-comp.el: Move from progmodes.
 +
 +2009-12-07  Eli Zaretskii  <eliz@gnu.org>
 +
 +      Prevent save-buffer in Rmail buffers from using the coding-system
 +      of the current message, and from clobbering the encoding mnemonics
 +      in the mode line (Bug#4623).
 +
 +      * mail/rmail.el (rmail-swap-buffers): Swap encoding and modified
 +      flag, too.
 +      (rmail-message-encoding): New variable.
 +      (rmail-write-region-annotate): Record the encoding of the current
 +      message in rmail-message-encoding.
 +      (rmail-after-save-hook): New function, restores the encoding of
 +      the current message after the message collection is saved.
 +
 +2009-12-07  Juri Linkov  <juri@jurta.org>
 +
 +      * progmodes/grep.el (grep-read-files): Use `completing-read'
 +      instead of `read-string'.  Set its `collection' arg to
 +      `read-file-name-internal'.  (Bug#4301)
 +
 +2009-12-07  Juri Linkov  <juri@jurta.org>
 +
 +      Correctly restore original Isearch point.  (Bug#4994)
 +
 +      * isearch.el (isearch-mode): Move `isearch-push-state' after
 +      `(run-hooks 'isearch-mode-hook)'.
 +      (isearch-cancel): When `isearch-push-state-function' is defined,
 +      let-bind `isearch-cmds' to the first state (the last element of
 +      `isearch-cmds') and call `isearch-top-state' (it calls pop-state
 +      function and restores the original point).  Otherwise, move point
 +      to `isearch-opoint'.
 +
 +2009-12-07  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * international/mule-cmds.el (ucs-names): Weed out at compile-time the
 +      chars that don't have names, so the table can be built much faster at
 +      run-time.
 +
 +2009-12-07  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * vc-bzr.el (vc-bzr-annotate-command): More elegant form for last
 +      change.  Suggested by David Kastrup.
 +
 +      * simple.el (compose-mail): Check for incompatibilities and warn.
 +      (compose-mail-user-agent-warnings): New option.
 +
 +2009-12-07  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      Support showing a single log entry from vc-annotate.
 +      * vc.el (print-log): Add a new argument: START-REVISION.
 +      (vc-print-log-internal): Add a new optional argument and
 +      pass it to the backend.
 +      (vc-print-log, vc-print-root-log): Adjust callers.
 +      * vc-annotate.el (vc-annotate-show-log-revision-at-line): If a
 +      buffer already displays the requested log entry, use it.
 +      Otherwise display only the log entry in question.
 +      * vc-svn.el (vc-svn-print-log):
 +      * vc-mtn.el (vc-mtn-print-log):
 +      * vc-hg.el (vc-hg-state):
 +      * vc-git.el (vc-git-print-log): Add support for new argument START-REVISION.
 +      (vc-git-show-log-entry): Return t on success.
 +      * vc-bzr.el (vc-bzr-print-log): Add support new argument START-REVISION.
 +      (vc-bzr-show-log-entry): Return t on success.
 +      * vc-rcs.el (vc-rcs-print-log):
 +      * vc-sccs.el (vc-sccs-print-log):
 +      * vc-cvs.el (vc-cvs-print-log): Add new argument, ignore it.
 +
 +2009-12-07  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * ediff-mult.el (ediff-setup-meta-map, ediff-prepare-meta-buffer):
 +      Add menus to the meta mode.  (Bug#5043)
 +
 +2009-12-07  Michael Kifer  <kifer@cs.stonybrook.edu>
 +
 +      * ediff-init.el (ediff-event-key): Use event-to-character instead of
 +      event-key.
 +
 +      * ediff.el (ediff-buffers-internal): Add unwind-protect.
 +
 +2009-12-07  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      Handle prompt rules of ksh in OpenBSD 4.5.  Reported by Raphaël
 +      Berbain <raphael.berbain@gmail.com>.
 +
 +      * net/tramp.el (tramp-end-of-output): Move up.  Use `#' and `$'
 +      characters.
 +      (tramp-initial-end-of-output): New defconst.
 +      (tramp-methods, tramp-find-shell)
 +      (tramp-open-connection-setup-interactive-shell)
 +      (tramp-maybe-open-connection): Use it.
 +      (tramp-shell-prompt-pattern, tramp-wait-for-output):
 +      Handle existence of `#' and `$'.
 +
 +      * net/tramp-fish.el (tramp-fish-maybe-open-connection):
 +      Use `tramp-initial-end-of-output'.
 +
 +2009-12-07  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      Get the background mode from the terminal for xterm, and set
 +      faces accordingly.
 +      * term/xterm.el (xterm-set-background-mode): New function.
 +      (terminal-init-xterm): Use it in case xterm supports background
 +      color queries.  Recompute faces after getting the background
 +      color.
 +
 +2009-12-07  Ulrich Mueller  <ulm@gentoo.org>
 +
 +      * emacs-lisp/bytecomp.el (byte-compile-insert-header): Put the version
 +      number comment back on its own line, for easier parsing.
 +
 +2009-12-07  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      Make it work for non-file buffers (bug#5102).
 +      * doc-view.el (doc-view-current-cache-dir):
 +      Use doc-view-buffer-file-name rather than buffer-file-name.
 +      (doc-view-mode): Use buffer-name when buffer-file-name is nil.
 +
 +2009-12-06  Óscar Fuentes  <ofv@wanadoo.es>
 +
 +      * vc-bzr.el (vc-bzr-annotate-command): Handle the case where the
 +      author field is too short.
 +
 +2009-12-06  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * vc-git.el (vc-git-print-log): Handle a limit argument.
 +      Display the short log in graph form and with labels.
 +      (vc-git-log-view-mode): Handle labels.
 +
 +      Make vc-revert change VC state from 'added to 'unregistered.
 +      * vc-git.el (vc-git-revert): Call git reset first.
 +
 +2009-12-06  Ulf Jasper  <ulf.jasper@web.de>
 +
 +      * net/newst-backend.el, net/newst-plainview.el:
 +      * net/newst-reader.el, net/newst-ticker.el:
 +      * net/newst-treeview.el, net/newsticker.el:
 +      Require/provide newst-... (instead of newsticker-...).  (Bug#5096)
 +
 +2009-12-06  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * log-view.el (log-view-mode-map): Bind "=" to log-view-diff too.
 +
 +      * vc-bzr.el (vc-bzr-annotate-command): Show author in annotation.
 +      Handle empty author field (Bug#4144).  Suggested by Óscar Fuentes.
 +      (vc-bzr-annotate-time, vc-bzr-annotate-extract-revision-at-line):
 +      Update annotation regexp.
 +
 +      * simple.el (beginning-of-visual-line): Constrain to field
 +      boundaries (Bug#5106).
 +
 +2009-12-06  Ulf Jasper  <ulf.jasper@web.de>
 +
 +      * xml.el (xml-substitute-numeric-entities):
 +      Move newsticker--decode-numeric-entities in newst-backend.el to
 +      xml-substitute-numeric-entities in xml.el.  (Bug#5008)
 +      * net/newst-backend.el (newsticker--parse-generic-feed)
 +      (newsticker--parse-generic-items)
 +      (newsticker--decode-numeric-entities):
 +      Move newsticker--decode-numeric-entities in newst-backend.el to
 +      xml-substitute-numeric-entities in xml.el.  (Bug#5008)
 +
 +2009-12-06  Daniel Colascione  <dan.colascione@gmail.com>
 +
 +      * progmodes/js.el (js--js-not): Add null to the list of values.
 +
 +2009-12-06  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * ansi-color.el (ansi-color-for-comint-mode): Add :version keyword.
 +
 +2009-12-06  Roland Winkler  <Roland.Winkler@physik.uni-erlangen.de>
 +
 +      * textmodes/bibtex.el (bibtex-enclosing-field): Exclude entry
 +      delimiter if it is at the end of the current line.
 +      (bibtex-generate-url-list): Fix docstring.
 +
 +2009-12-06  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * minibuffer.el (minibuffer-complete-and-exit): Don't replace the
 +      minibuffer's content with itself.
 +      Fold the confirm-after-completion case into the `confirm' case.
 +      (completion-pcm-word-delimiters): Add : and / to the delimiters.
 +
 +2009-12-06  Kevin Ryde  <user42@zip.com.au>
 +
 +      * ffap.el (ffap-rfc-path): Make this a defcustom since
 +      `ffap-rfc-directories' is also a defcustom.  (Bug#4514.)
 +
 +      * info-look.el: Add setup for apropos-mode to use emacs-lisp-mode
 +      manuals, similar to existing setup for help-mode.  (Bug#3913.)
 +
 +2009-12-05  Juri Linkov  <juri@jurta.org>
 +
 +      Save and restore dired buffer's point positions too.  (Bug#4880)
 +
 +      * dired.el (dired-save-positions): Return in the first element
 +      buffer's position in format (BUFFER DIRED-FILENAME BUFFER-POINT).
 +      Doc fix.
 +      (dired-restore-positions): First restore buffer's position.
 +      While restoring window's positions, check if window still displays
 +      the original buffer.
 +
 +2009-12-05  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * bindings.el (complete-symbol): Call semantic-ia-complete-symbol
 +      if possible.
 +
 +      * shell.el (shell): Require ansi-color (Bug#5113).
 +
 +      * ansi-color.el (ansi-color-for-comint-mode): Default to t.
 +
 +      * hl-line.el (global-hl-line-highlight): Minor doc fix (Bug#4925).
 +
 +2009-12-05  Alan Mackenzie  <acm@muc.de>
 +
 +      * progmodes/cc-mode.el (c-before-hack-hook)
 +      (c-postprocess-file-styles): Revert change 2009-07-18T21:03:43Z!acm@muc.de to permit
 +      `c-file-style' to work again.  This reversion restores the current
 +      software to its state in Emacs 23.1.  (Bug#4146)
 +
 +2009-12-05  Kevin Ryde  <user42@zip.com.au>
 +
 +      * textmodes/sgml-mode.el (sgml-lexical-context):
 +      Recognise comment-start-skip to comment-end-skip as comment (Bug#4781).
 +
 +2009-12-05  Juri Linkov  <juri@jurta.org>
 +
 +      * info.el (Info-find-node-2): Set `Info-current-subfile' to nil
 +      for virtual nodes.  (Bug#4147)
 +      (Info-find-node-2): Set `Info-current-node-virtual' to nil
 +      when moving from a virtual node.
 +      (Info-mode-menu): Add `Info-virtual-index' to the menu.
 +      (Info-mode): Add `Info-virtual-index' to the docstring.
 +
 +2009-12-05  Roland Winkler  <Roland.Winkler@physik.uni-erlangen.de>
 +
 +      * textmodes/bibtex.el (bibtex-map-entries): Use marker to keep
 +      track of the buffer position of the end of a BibTeX entry as this
 +      position may change during reformatting.
 +      (bibtex-format-entry): Remove whitespace before processing
 +      numerical fields so that we recognize the latter properly.
 +      (bibtex-reformat): Do not use push which changes the global value
 +      of bibtex-entry-format.
 +      (bibtex-field-braces-alist, bibtex-field-strings-alist)
 +      (bibtex-field-re-init): Replace only space characters by regexp
 +      for whitespace.
 +      (bibtex-generate-url-list, bibtex-cite-matcher-alist): Fix docstring.
 +      (bibtex-initialize): Also update bibtex-strings.
 +      (bibtex-kill-field): Preserve white space at end of entry.
 +      (bibtex-kill-entry, bibtex-yank-pop, bibtex-insert-kill):
 +      Update bibtex-reference-keys.
 +
 +2009-12-05  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * minibuffer.el (completion-pcm--merge-try): Also consider placing
 +      point after a star, if that's the only place where modifications can
 +      make progress.
 +
 +2009-12-05  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * vc-dir.el (vc-dir): Use the correct markup for showing keymaps
 +      in docstrings.
 +
 +2009-12-04  Juri Linkov  <juri@jurta.org>
 +
 +      * proced.el (proced): Call `(proced-update t)' to update process
 +      information instead of only running proced-post-display-hook.
 +      (proced-send-signal): Add a leading space to the buffer name
 +      " *Marked Processes*" to make this buffer ephemeral.
 +
 +2009-12-04  Juri Linkov  <juri@jurta.org>
 +
 +      * dired.el (dired-auto-revert-buffer): New defcustom.
 +      (dired-internal-noselect): Use it.
 +
 +2009-12-04  Juri Linkov  <juri@jurta.org>
 +
 +      Change roles of modes and functions in image-mode.el (Bug#5062).
 +
 +      * image-mode.el: Replace `image-mode-maybe' with `image-mode'
 +      in `auto-mode-alist'.
 +      (image-mode-previous-major-mode): New variable.
 +      (image-minor-mode-map): Rename from `image-mode-text-map'.
 +      (image-mode): Move graceful error-handling code from
 +      `image-minor-mode' to here.  On errors call `image-mode-as-text'.
 +      (image-minor-mode): Remove all image-handling code.
 +      Replace `image-mode-text-map' with `image-minor-mode-map'.
 +      Check for `image-type' in mode-line format string.
 +      (image-mode-maybe): Make obsolete with an alias to `image-mode'.
 +      (image-mode-as-text): New function with most code from
 +      `image-mode-maybe'.
 +      (image-toggle-display-text): Move code that removes image
 +      properties from `image-toggle-display' to here.
 +      (image-toggle-display-image): New function with code that adds
 +      image properties copied from `image-toggle-display'.
 +      (image-toggle-display): Remove most code with leaving only code
 +      that toggles between `image-mode-as-text' and `image-mode'.
 +
 +2009-12-04  Ulf Jasper  <ulf.jasper@web.de>
 +
 +      * net/newst-treeview.el
 +      (newsticker--treeview-list-highlight-start): Restored call to
 +      save-excursion: Selected item was stuck.
 +      (newsticker--treeview-list-select): New.
 +      (newsticker--treeview-item-show-text)
 +      (newsticker--treeview-item-show)
 +      (newsticker--treeview-item-update): Use new
 +      newsticker-treeview-item-mode.
 +      (newsticker-treeview-update): Keep current item.
 +      (newsticker-treeview-next-new-or-immortal-item): Doc change.
 +      (newsticker--treeview-first-feed): Doc change.
 +      (newsticker-treeview-list-menu)
 +      (newsticker-treeview-item-menu): Add menu entries.
 +      (newsticker-treeview-item-mode): New.
 +
 +      * net/newst-backend.el (newsticker-customize): Delete other
 +      windows.
 +
 +2009-12-04  Sam Steingold  <sds@gnu.org>
 +
 +      * log-view.el (log-view-mode-map): "q" calls quit-window,
 +      like in all the other non-self-insert buffers.
 +
 +2009-12-04  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      Minor cleanup.
 +      * term.el (term-send-raw, term-send-raw-meta): Use read-key-sequence's
 +      key decoding rather than do it manually via last-input-event +
 +      ascii-character.
 +      (term-exec): Use delete-and-extract-region.
 +      (term-handle-ansi-terminal-messages): Remove unused var `end'.
 +      (term-process-pager): Remove unused var `i'.
 +      (term-dynamic-simple-complete): Make obsolete.
 +      (serial-update-config-menu): Remove unused vars `y' and `str'.
 +      (term-update-mode-line): Remove unused var `temp'.
 +
 +2009-12-03  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      Limit the number of log entries displayed by default.
 +      * vc.el (vc-print-log-internal): Fix check for limit-unsupported.
 +      (vc-print-log, vc-print-root-log): Use vc-log-show-limit when not
 +      using a prefix argument.
 +
 +2009-12-03  Glenn Morris  <rgm@gnu.org>
 +
 +      * progmodes/idlwave.el (class): Restore still useful declaration.
 +
 +2009-12-03  Alan Mackenzie  <acm@muc.de>
 +
 +      Enhance `c-parse-state' to run efficiently in "brace deserts".
 +
 +      * progmodes/cc-mode.el (c-basic-common-init):
 +      Call c-state-cache-init.
 +      (c-neutralize-syntax-in-and-mark-CPP): Rename from
 +      c-extend-and-neutralize-syntax-in-CPP.  Mark each CPP construct by
 +      placing `category' properties value 'c-cpp-delimiter at its boundaries.
 +
 +      * progmodes/cc-langs.el (c-before-font-lock-function):
 +      c-extend-and-neutralize-syntax-in-CPP has been renamed
 +      c-neutralize-syntax-in-and-mark-CPP.
 +
 +      * progmodes/cc-fonts.el (c-cpp-matchers): Mark template brackets
 +      with `category' properties now, not `syntax-table' ones.
 +
 +      * progmodes/cc-engine.el (c-syntactic-end-of-macro): A new
 +      enhanced (but slower) version of c-end-of-macro that won't land
 +      inside a literal or on another awkward character.
 +      (c-state-cache-too-far, c-state-cache-start)
 +      (c-state-nonlit-pos-interval, c-state-nonlit-pos-cache)
 +      (c-state-nonlit-pos-cache-limit, c-state-point-min)
 +      (c-state-point-min-lit-type, c-state-point-min-lit-start)
 +      (c-state-min-scan-pos, c-state-brace-pair-desert)
 +      (c-state-old-cpp-beg, c-state-old-cpp-end): New constants and
 +      buffer local variables.
 +      (c-state-literal-at, c-state-lit-beg)
 +      (c-state-cache-non-literal-place, c-state-get-min-scan-pos)
 +      (c-state-mark-point-min-literal, c-state-cache-top-lparen)
 +      (c-state-cache-top-paren, c-state-cache-after-top-paren)
 +      (c-get-cache-scan-pos, c-get-fallback-scan-pos)
 +      (c-state-balance-parens-backwards, c-parse-state-get-strategy)
 +      (c-renarrow-state-cache)
 +      (c-append-lower-brace-pair-to-state-cache)
 +      (c-state-push-any-brace-pair, c-append-to-state-cache)
 +      (c-remove-stale-state-cache)
 +      (c-remove-stale-state-cache-backwards, c-state-cache-init)
 +      (c-invalidate-state-cache-1, c-parse-state-1)
 +      (c-invalidate-state-cache): New defuns/defmacros/defsubsts.
 +      (c-parse-state): Enhance and refactor.
 +      (c-debug-parse-state): Amend to deal with all the new variables.
 +
 +      * progmodes/cc-defs.el (c-<-as-paren-syntax, c-mark-<-as-paren)
 +      (c->-as-paren-syntax, c-mark->-as-paren, c-unmark-<->-as-paren):
 +      modify to use category text properties rather than syntax-table ones.
 +      (c-suppress-<->-as-parens, c-restore-<->-as-parens): New defsubsts
 +      to switch off/on the syntactic paren property of C++ template
 +      delimiters using the category property.
 +      (c-with-<->-as-parens-suppressed): Macro to invoke code with
 +      template delims suppressed.
 +      (c-cpp-delimiter, c-set-cpp-delimiters, c-clear-cpp-delimiters):
 +      New constant/macros which apply category properties to the start
 +      and end of preprocessor constructs.
 +      (c-comment-out-cpps, c-uncomment-out-cpps): Defsubsts which
 +      "comment out" the syntactic value of characters in preprocessor
 +      constructs.
 +      (c-with-cpps-commented-out)
 +      (c-with-all-but-one-cpps-commented-out): Macros to invoke code
 +      with characters in all or all but one preprocessor constructs
 +      "commented out".
 +
 +2009-12-03  Roland Winkler  <Roland.Winkler@physik.uni-erlangen.de>
 +
 +      * proced.el (proced-filter-alist): Use regexp-quote.
 +
 +2009-12-03  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      Cleanup.
 +      * eshell/em-unix.el (top): Require 'esh-opt and 'pcomplete.
 +      (eshell/su, eshell/sudo): Require 'tramp.  Fix problems reading
 +      arguments.  Expand `default-directory'.
 +
 +      * net/tramp.el (tramp-handle-file-remote-p): Expand FILENAME for
 +      the benefit of returning an expanded localname.
 +      (tramp-tramp-file-p): Handle the case NAME is not a string.
 +
 +2009-12-03  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      Add support for bzr shelve/unshelve.
 +      * vc-bzr.el (vc-bzr-shelve-map, vc-bzr-shelve-menu-map)
 +      (vc-bzr-extra-menu-map): New variables.
 +      (vc-bzr-extra-menu, vc-bzr-extra-status-menu, vc-bzr-shelve)
 +      (vc-bzr-shelve-apply, vc-bzr-shelve-list)
 +      (vc-bzr-shelve-get-at-point, vc-bzr-shelve-delete-at-point)
 +      (vc-bzr-shelve-apply-at-point, vc-bzr-shelve-menu): New functions.
 +      (vc-bzr-dir-extra-headers): Display shelves.
 +
 +      * vc-bzr.el (vc-bzr-print-log): Deal with nil arguments better.
 +
 +2009-12-03  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * textmodes/bibtex.el (bibtex-complete-internal):
 +      Use completion-in-region.
 +      (bibtex-text-in-field-bounds): Remove unused var `opoint'.
 +
 +2009-12-03  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      Support applying stashes.  Improve UI.
 +      * vc-git.el (vc-git-dir-extra-headers): Add tooltips.
 +      (vc-git-stash-apply, vc-git-stash-pop)
 +      (vc-git-stash-apply-at-point, vc-git-stash-pop-at-point)
 +      (vc-git-stash-menu): New functions.
 +      (vc-git-stash-menu-map): New variable.
 +      (vc-git-stash-map): Add bindings to popup a menu and to apply stashes.
 +
 +2009-12-03  Glenn Morris  <rgm@gnu.org>
 +
 +      * vc.el (log-view-vc-backend, log-view-vc-fileset): Declare.
 +      (vc-print-log-internal): Fix previous change.
 +      (vc-revert): Correct pluralization.
 +
 +2009-12-03  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * progmodes/make-mode.el (makefile-special-targets-list): No need for
 +      it to be an alist any more.
 +      (makefile-complete): Use completion-in-region.
 +
 +      * progmodes/octave-mod.el (octave-complete-symbol):
 +      Use completion-in-region.
 +
 +      Misc cleanup.
 +      * progmodes/idlwave.el (idlwave-comment-hook): Simplify with `or'.
 +      (idlwave-code-abbrev, idlwave-display-user-catalog-widget)
 +      (idlwave-complete-class): Don't quote lambda.
 +      (idlwave-find-symbol-syntax-table, idlwave-mode-syntax-table)
 +      (idlwave-mode-map): Move initialization into declaration.
 +      (idlwave-action-and-binding): Use backquotes.
 +      (idlwave-in-quote, idlwave-reset-sintern, idlwave-complete-in-buffer):
 +      Simplify.
 +      (idlwave-is-pointer-dereference): Remove unused var `pos'.
 +      (idlwave-xml-create-rinfo-list): Remove unused var `entry'.
 +      (idlwave-convert-xml-clean-sysvar-aliases): Remove unused vars `new',
 +      `parts', and `all-parts'.
 +      (idlwave-xml-create-sysvar-alist): Remove unused var `fields'.
 +      (idlwave-convert-xml-system-routine-info): Remove unused string
 +      `version-string'.
 +      (idlwave-display-user-catalog-widget): Use dolist.
 +      (idlwave-scanning-lib): Declare dynamically-scoped var.
 +      (idlwave-scan-library-catalogs): Remove unused var `flags'.
 +      (completion-highlight-first-word-only): Declare to silence bytecomp.
 +      (idlwave-popup-select): Tighten scope of `resp'.
 +      (idlwave-find-struct-tag): Remove unused var `beg'.
 +      (idlwave-after-load-rinfo-hook): Declare.
 +      (idlwave-sintern-class-info): Remove unused var `taglist'.
 +      (idlwave-find-class-definition): Remove unused var `list'.
 +      (idlwave-complete-sysvar-tag-help): Remove unused var `main-base'.
 +      (idlwave-what-module-find-class): Remove unused var `classes'.
 +
 +2009-12-03  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * progmodes/pascal.el: Require CL when compiling (for lexical-let).
 +
 +2009-12-03  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * hippie-exp.el (try-expand-dabbrev-visible): Preserve point in the
 +      buffers visited.  Remove redundant current-buffer-saving.
 +
 +2009-12-02  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      Use completion-in-buffer and remove uses of dynamic scoping.
 +      * progmodes/pascal.el (pascal-str, pascal-all, pascal-pred)
 +      (pascal-buffer-to-use, pascal-flag): Don't declare.
 +      (pascal-func-completion, pascal-type-completion, pascal-var-completion)
 +      (pascal-get-completion-decl, pascal-keyword-completion):
 +      Add `pascal-str' argument, save-excursion,
 +      return the found completions, and don't filter with pascal-pred.
 +      (pascal-completion-cache): New var.
 +      (pascal-completion): Don't switch buffer any more (it was never
 +      necessary).  Don't save-excursion any more (it's done by the called
 +      subroutines).  Use a cache to avoid redundant computations.
 +      Use complete-with-action rather than pascal-completion-response and
 +      let it apply the predicate as well.
 +      (pascal-complete-word): Use completion-in-buffer when
 +      pascal-toggle-completions is nil.
 +      (pascal-show-completions): Don't bind pascal-buffer-to-use since it's
 +      not used any more.
 +      (pascal-comp-defun): Don't change buffer any more.
 +      Use complete-with-action rather than pascal-completion-response and
 +      let it apply the predicate as well.
 +      (pascal-goto-defun): Change buffer before calling pascal-comp-defun
 +      when neded.
 +
 +2009-12-02  Kenichi Handa  <handa@m17n.org>
 +
 +      * language/indian.el: Include ZWJ and ZWNJ in the patterns to
 +      shape for all Indic scripts.
 +
 +2009-12-02  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      Use completion-in-buffer.
 +      * wid-edit.el (widget-field-text-end): New function.
 +      (widget-field-value-get): Use it.
 +      (widget-string-complete, widget-file-complete)
 +      (widget-color-complete): Use it and completion-in-region.
 +      (widget-complete): Don't narrow the buffer.
 +
 +2009-12-02  Glenn Morris  <rgm@gnu.org>
 +
 +      * mail/rmail.el (rmail-pop-to-buffer): New function.  (Bug#2282)
 +      (rmail-select-summary): Use rmail-pop-to-buffer.
 +      * mail/rmailsum.el: Replace all pop-to-buffer calls with
 +      rmail-pop-to-buffer, to prevent horizontal splits.
 +
 +      * calendar/diary-lib.el (diary-list-entries): Replace superfluous
 +      save-excursion with save-current-buffer.
 +      Widen before searching.  (Bug#5093)
 +      (diary-list-sexp-entries): Remove superfluous save-excursion.
 +
 +2009-12-02  Michael Welsh Duggan  <mwd@cert.org>
 +
 +      * woman.el (woman-make-bufname): Handle man-pages with "." in the
 +      name.  (Bug#5038)
 +
 +2009-12-02  Andreas Politz  <politza@fh-trier.de>  (tiny change)
 +
 +      * ido.el (ido-file-internal): Handle filenames at point that do
 +      not have a directory part.  (Bug#5049)
 +
 +2009-12-02  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * mpc.el (mpc-intersection, mpc-host, mpc-songs-playlist)
 +      (mpc-songs-jump-to, mpc-resume): Doc fixes.
 +
 +2009-12-01  Rob Riepel  <riepel@networking.Stanford.EDU>
 +
 +      * emulation/tpu-extras.el (tpu-cursor-free-mode): Emit message.
 +      (tpu-set-cursor-free, tpu-set-cursor-bound): Don't emit a message
 +      any more.
 +
 +2009-12-01  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * comint.el (comint-insert-input): Ignore clicks to the right of
 +      the field.  Reported by Bob Nnamtrop <bobnnamtrop@gmail.com>.
 +
 +      * vc.el (vc-print-log-internal): Don't wait for the process to
 +      terminate before setting up the major mode.
 +
 +      * pcmpl-unix.el (pcomplete/cd): Complete more than one argument, just
 +      in case.
 +
 +      * pcomplete.el (pcomplete-std-complete): Don't try to complete past
 +      the last element.
 +
 +      * simple.el (normal-erase-is-backspace-mode): Fix thinko in message.
 +
 +2009-12-01  Glenn Morris  <rgm@gnu.org>
 +
 +      * window.el (window--display-buffer-2): Fix previous changes.
 +
 +2009-12-01  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * mail/sendmail.el (mail-setup-hook, mail-send-hook): Doc fixes.
 +
 +2009-12-01  Glenn Morris  <rgm@gnu.org>
 +
 +      * Makefile.in (ELCFILES): Add mpc.elc.
 +
 +2009-12-01  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * mpc.el: New file.
 +
 +2009-12-01  Glenn Morris  <rgm@gnu.org>
 +
 +      * window.el (window-to-use): Define for compiler.
 +
 +      * emacs-lisp/bytecomp.el (byte-compile-save-excursion): Make message
 +      consistent with others (no final period).
 +
 +      * mail/rmailmm.el (rmail-mime-handle): Doc fix.
 +      (rmail-mime-show): Downcase the encoding.  (Bug#5070)
 +
 +2009-12-01  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      Make vc-print-log buttons work.
 +      * log-view.el (log-view-mode-map): Inherit from widget-keymap.
 +
 +2009-11-30  Ryan C. Thompson  <rct@thompsonclan.org>  (tiny change)
 +
 +      * savehist.el (savehist-autosave-interval): Allow setting to nil
 +      through customize.  (Bug#5056)
 +
 +2009-11-30  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      Fix references to jit-lock properties.
 +      * progmodes/perl-mode.el (perl-font-lock-syntactic-keywords):
 +      Refer to jit-lock-defer-multiline, not jit-lock-multiline.
 +      (perl-font-lock-special-syntactic-constructs):
 +      Quote jit-lock-defer-multiline property.
 +
 +2009-11-30  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * vc-git.el (vc-git-registered): Call vc-git-root only once.
 +
 +2009-11-30  Juri Linkov  <juri@jurta.org>
 +
 +      * misearch.el (multi-isearch-search-fun): Always provide a non-nil
 +      value `buffer' of `multi-isearch-next-buffer-current-function'.
 +      Use `(current-buffer)' when `buffer' is nil.
 +      (multi-isearch-next-buffer-from-list): Don't fallback to
 +      `(current-buffer)' when `buffer' is nil.  (Bug#4947)
 +
 +2009-11-30  Juri Linkov  <juri@jurta.org>
 +
 +      * misearch.el (multi-isearch-read-buffers): Move canonicalization
 +      of buffers with `get-buffer' to `multi-isearch-buffers'.
 +      (multi-isearch-buffers, multi-isearch-buffers-regexp):
 +      Canonicalize BUFFERS with `get-buffer'.  Doc fix.
 +      (multi-isearch-files, multi-isearch-files-regexp): Canonicalize
 +      FILES with `expand-file-name' converting relative file names
 +      to absolute.  Doc fix.  (Bug#4727)
 +
 +2009-11-30  Juri Linkov  <juri@jurta.org>
 +
 +      * misearch.el (multi-isearch-read-buffers)
 +      (multi-isearch-read-matching-buffers): New functions.
 +      (multi-isearch-buffers, multi-isearch-buffers-regexp):
 +      Use them in the `interactive' spec.  Doc fix.
 +      (multi-isearch-read-files, multi-isearch-read-matching-files):
 +      New functions.
 +      (multi-isearch-files, multi-isearch-files-regexp):
 +      Use them in the `interactive' spec.  Doc fix.  (Bug#4725)
 +
 +2009-11-30  Juri Linkov  <juri@jurta.org>
 +
 +      * doc-view.el (doc-view-continuous):
 +      Rename from `doc-view-continuous-mode'.
 +      (doc-view-menu): Move "Toggle display" to the top.
 +      Add submenu "Continuous" with radio buttons "Off"/"On"
 +      and "Save as Default".
 +      (doc-view-scroll-up-or-next-page)
 +      (doc-view-scroll-down-or-previous-page)
 +      (doc-view-next-line-or-next-page)
 +      (doc-view-previous-line-or-previous-page):
 +      Rename `doc-view-continuous-mode' to `doc-view-continuous'.  (Bug#4896)
 +
 +2009-11-30  Juri Linkov  <juri@jurta.org>
 +
 +      * comint.el (comint-mode-map): Rebind `M-r' from
 +      `comint-previous-matching-input' to
 +      `comint-history-isearch-backward-regexp'.
 +      Unbind `M-s' to allow global key binding `M-s'.
 +      Add menu items for `comint-history-isearch-backward' and
 +      `comint-history-isearch-backward-regexp'.  (Bug#3746)
 +
 +2009-11-30  Juri Linkov  <juri@jurta.org>
 +
 +      * replace.el (perform-replace): Let-bind recenter-last-op to nil.
 +      For def=recenter, replace `recenter' with `recenter-top-bottom'
 +      that is called with `this-command' and `last-command' let-bound
 +      to `recenter-top-bottom'.  When the last `def' was not `recenter',
 +      set `recenter-last-op' to nil.  (Bug#4981)
 +
 +2009-11-30  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      Minor cleanup and simplification.
 +      * filecache.el (file-cache-add-directory)
 +      (file-cache-add-directory-recursively)
 +      (file-cache-add-from-file-cache-buffer)
 +      (file-cache-delete-file-regexp, file-cache-delete-directory)
 +      (file-cache-files-matching-internal, file-cache-display): Use dolist.
 +      (file-cache-temp-minibuffer-message): Delete function.
 +      (file-cache-minibuffer-complete): Use minibuffer-message instead.
 +
 +      * progmodes/perl-mode.el (perl-font-lock-special-syntactic-constructs):
 +      Don't signal an error when bumping into EOB in tr, s, or y.
 +
 +2009-11-29  Juri Linkov  <juri@jurta.org>
 +
 +      * startup.el (fancy-about-text): Fix wording of Guided Tour.
 +      (Bug#4960)
 +
 +      * descr-text.el (describe-char-unidata-list): Use lowercase name
 +      for "Unicode name" like in other tags.
 +
 +2009-11-29  Juri Linkov  <juri@jurta.org>
 +
 +      * ediff-util.el (ediff-minibuffer-with-setup-hook):
 +      New compatibility macro.
 +      (ediff-read-file-name): Use it instead of `minibuffer-with-setup-hook'.
 +
 +2009-11-29  Juri Linkov  <juri@jurta.org>
 +
 +      Add defcustom to define the cycling order of `recenter-top-bottom'.
 +      (Bug#4981)
 +
 +      * window.el (recenter-last-op): Doc fix.
 +      (recenter-positions): New defcustom.
 +      (recenter-top-bottom): Rewrite to use `recenter-positions'.
 +      (move-to-window-line-top-bottom): Rewrite to use `recenter-positions'.
 +
 +2009-11-29  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      Improve integration of Tramp and ange-ftp in eshell.
 +
 +      * eshell/em-unix.el (eshell/whoami): Make it a defun but a defalias.
 +      (eshell/su): Flatten args.  Apply better args parsing.  Use "cd".
 +      (eshell/sudo): Flatten args.  Let-bind `default-directory'.
 +
 +      * eshell/esh-util.el (top): Require also Tramp when compiling.
 +      (eshell-directory-files-and-attributes): Check for FTP remote
 +      connection.
 +      (eshell-parse-ange-ls): Let-bind `ange-ftp-name-format',
 +      `ange-ftp-ftp-name-arg', `ange-ftp-ftp-name-res'.
 +      (eshell-file-attributes): Handle ".".  Return `entry'.
 +
 +      * net/ange-ftp.el (ange-ftp-parse-filename): Use `save-match-data'.
 +      (ange-ftp-directory-files-and-attributes)
 +      (ange-ftp-real-directory-files-and-attributes): New defuns.
 +
 +      * net/tramp.el (tramp-maybe-open-connection): Open the remote
 +      shell with "exec" when possible.  This prevents trailing prompts
 +      in `start-file-process'.
 +
 +2009-11-28  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      Try and remove assumptions about point-min==1.
 +      * nxml/rng-valid.el (rng-validate-mode): Don't hardcode point-min==1.
 +      (rng-compute-mode-line-string): Show the validation percentage in
 +      terms of the narrowed text, not the widened text.
 +      (rng-do-some-validation): Don't catch internal errors when debugging.
 +      (rng-first-error): Simplify.
 +      (rng-after-change-function): Remove work around.  AFAIK the bug has
 +      been fixed a while ago.
 +
 +      * image-mode.el (image-minor-mode): Exit more gracefully when the image
 +      cannot be displayed (e.g. when doing C-x C-f some-new-file.svg RET).
 +
 +      * man.el (Man-completion-table): Make it easier to enter "<sec> <name>".
 +
 +      * eshell/em-prompt.el (eshell-prompt-function): Abbreviate pwd, since
 +      `cd' doesn't always do it for us (bug#5067).
 +
 +      * pcomplete.el (pcomplete-entries): Revert change installed mistakenly
 +      on 2009-10-25 as part of some other change (bug#5067).
 +
 +2009-11-27  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * emacs-lisp/bytecomp.el (byte-compile-warning-types): New type
 +      `suspicious'.
 +      (byte-compile-warnings): Use byte-compile-warning-types.
 +      (byte-compile-save-excursion): Warn about use of set-buffer right
 +      after save-excursion.
 +
 +      * progmodes/gud.el (gud-basic-call): Don't only save the buffer but
 +      the excursion as well.
 +
 +2009-11-27  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * eshell/em-unix.el (eshell/su, eshell/sudo): New defuns,
 +      providing a Tramp related implementation of "su" and "sudo".
 +      (eshell-unix-initialize): Add "su" and "sudo".
 +
 +2009-11-27  Daiki Ueno  <ueno@unixuser.org>
 +
 +      * net/socks.el (socks-send-command): Convert binary request to
 +      unibyte before sending.  This fixes mishandling of some port
 +      numbers such as 129.
 +
 +2009-11-27  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * help.el (describe-bindings-internal): Remove `interactive'.
 +
 +      * man.el (Man-completion-table): Trim a terminating "(".
 +      Remove the space between name page a section.
 +      Add the command's description on the `help-echo' property.
 +      Remove `process-connection-type' binding since it's unused by
 +      call-process.
 +      Provide completion for the "<section> <name>" format as well.
 +      (Man-default-man-entry): Remove spurious var shadowing the argument.
 +
 +2009-11-26  Kevin Ryde  <user42@zip.com.au>
 +
 +      * log-view.el: Add "Keywords: tools", since its other keywords
 +      aren't in finder-known-keywords, and following vc.el.
 +
 +      * sha1.el (sha1-string-external): default-directory "/" in case
 +      otherwise non-existent.  process-connection-type pipe for touch of
 +      efficiency recommended by elisp manual.  (An aside in Bug#3911.)
 +
 +2009-11-26  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      Misc coding convention cleanups.
 +      * htmlfontify.el (hfy-init-kludge-hook): Rename from
 +      hfy-init-kludge-hooks.
 +      (hfy-etags-cmd, hfy-flatten-style, hfy-invisible-name, hfy-face-at)
 +      (hfy-fontify-buffer, hfy-prepare-index-i, hfy-subtract-maps)
 +      (hfy-save-kill-buffers, htmlfontify-copy-and-link-dir): Use dolist
 +      and push.
 +      (hfy-slant, hfy-weight): Use tables rather than code.
 +      (hfy-box-to-border-assoc, hfy-box-to-style, hfy-decor)
 +      (hfy-face-to-style-i, hfy-fontify-buffer): Use `case'.
 +      (hfy-face-attr-for-class): Initialize `face-spec' directly.
 +      (hfy-face-to-css): Remove `nconc' with single arg.
 +      (hfy-p-to-face-lennart): Use `or'.
 +      (hfy-face-at): Hoist common code.  Remove spurious quotes in `case'.
 +      (hfy-overlay-props-at, hfy-mark-tag-hrefs): Eta-reduce.
 +      (hfy-compile-stylesheet, hfy-merge-adjacent-spans)
 +      (hfy-compile-face-map, hfy-parse-tags-buffer): Use push.
 +      (hfy-force-fontification): Use run-hooks.
 +
 +2009-11-26  Vivek Dasmohapatra  <vivek@etla.org>
 +
 +      Various minor fixes.
 +      * htmlfontify.el (hfy-default-header): Add toggle_invis since
 +      Javascript belongs in the header, not the body.
 +      (hfy-javascript): Remove.
 +      (hfy-fontify-buffer): Don't insert it any more.
 +      (hfy-face-at): Handle (face0 face1 face2) style face properties.
 +      Fix bug in invis handling when there were no invis props in a chunk.
 +
 +2009-11-26  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * vc-bzr.el (vc-bzr-annotate-command): Make operation asynchronous.
 +
 +2009-11-26  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * finder.el (finder-mode-map): Add a menu.
 +
 +2009-11-26  Michael McNamara  <mac@mail.brushroad.com>
 +
 +      * progmodes/verilog-mode.el (verilog-at-struct-p): Support "signed" and
 +      "unsigned" structs.
 +
 +      (verilog-leap-to-head, verilog-backward-token): Handle "disable
 +      fork" statement better.
 +
 +2009-11-26  Wilson Snyder  <wsnyder@wsnyder.org>
 +
 +      * progmodes/verilog-mode.el (verilog-auto-insert-lisp)
 +      (verilog-delete-auto, verilog-delete-empty-auto-pair)
 +      (verilog-library-filenames): Fix AUTOINSERTLISP to support insert-file.
 +      Reported by Clay Douglass.
 +
 +      (verilog-auto-inst, verilog-auto-star-safe)
 +      (verilog-delete-auto-star-implicit, verilog-read-sub-decls):
 +      Fix removing "// Interfaces" when saving .* expansions.
 +      Reported by Pierre-David Pfister.
 +
 +2009-11-26  Glenn Morris  <rgm@gnu.org>
 +
 +      * eshell/em-dirs.el (eshell/cd): Don't throw to a tag outside
 +      the scope.
 +
 +2009-11-25  Johan Bockgård  <bojohan@gnu.org>
 +
 +      * vc-annotate.el (vc-annotate-revision-previous-to-line):
 +      Really use previous revision.
 +
 +2009-11-25  Kevin Ryde  <user42@zip.com.au>
 +
 +      * man.el (Man-completion-table): default-directory "/" in case
 +      doesn't otherwise exist.  process-environment COLUMNS=999 so as
 +      not to truncate long names.  process-connection-type pipe to avoid
 +      any chance of hitting the pseudo-tty TIOCGWINSZ.
 +      (man): completion-ignore-case t for friendliness and since man
 +      itself is case-insensitive on the command line.
 +      Further to Bug#3717.
 +
 +      * arc-mode.el: Add "Keywords: files", so the details in its
 +      commentary can be reached from finder-by-keyword.
 +      * textmodes/dns-mode.el: Add "Keywords: comm".  It's only an
 +      editing mode, but it's comms related and sgml-mode.el has "comm"
 +      on that basis too.
 +      * textmodes/bibtex-style.el: Add "Keywords: tex".
 +      * international/isearch-x.el, international/ja-dic-cnv.el:
 +      * international/ja-dic-utl.el, international/kkc.el:
 +      Add "Keywords: i18n", so they can be reached from finder-by-keyword.
 +
 +2009-11-25  Juri Linkov  <juri@jurta.org>
 +
 +      * man.el (Man-completion-table): Modify regexp to include
 +      section names to completion strings.  (Bug#3717)
 +
 +2009-11-25  Juri Linkov  <juri@jurta.org>
 +
 +      Search recursively in gzipped files.  (Bug#4982)
 +
 +      * progmodes/grep.el (grep-highlight-matches): Add new options
 +      `always' and `auto'.  Doc fix.
 +      (grep-process-setup): Check `grep-highlight-matches' for
 +      `auto-detect' to determine the need to compute grep defaults.
 +      Move Windows/DOS specific --colors settings handling
 +      to `grep-compute-defaults'.  Check `grep-highlight-matches'
 +      to get the value of "--color=".
 +      (grep-compute-defaults): Compute `grep-highlight-matches' when it
 +      has the value `auto-detect'.  Move Windows/DOS specific settings
 +      from `grep-process-setup'.
 +      (zrgrep): New command with alias `rzgrep'.
 +
 +2009-11-25  Juri Linkov  <juri@jurta.org>
 +
 +      * doc-view.el (doc-view-mode): Set buffer-local `view-read-only'
 +      to nil instead of switching off view-mode.  (Bug#4896)
 +
 +2009-11-25  Juri Linkov  <juri@jurta.org>
 +
 +      Mouse-wheel scrolling for DocView Continuous mode.  (Bug#4896)
 +
 +      * mwheel.el (mwheel-scroll-up-function)
 +      (mwheel-scroll-down-function): New defvars.
 +      (mwheel-scroll): Funcall `mwheel-scroll-up-function' instead of
 +      `scroll-up', and `mwheel-scroll-down-function' instead of
 +      `scroll-down'.
 +
 +      * doc-view.el (doc-view-scroll-up-or-next-page)
 +      (doc-view-scroll-down-or-previous-page): Add optional ARG.
 +      Use this ARG in the call to image-scroll-up/image-scroll-down.
 +      Change `interactive' spec to "P".  Goto next/previous page only
 +      when `doc-view-continuous-mode' is non-nil or ARG is nil (for the
 +      SPC/DEL case).  Doc fix.
 +      (doc-view-next-line-or-next-page)
 +      (doc-view-previous-line-or-previous-page): Rename arg to ARG
 +      for consistency.
 +      (doc-view-mode): Set buffer-local `mwheel-scroll-up-function' to
 +      `doc-view-scroll-up-or-next-page', and buffer-local
 +      `mwheel-scroll-down-function' to
 +      `doc-view-scroll-down-or-previous-page'.
 +
 +2009-11-25  Juri Linkov  <juri@jurta.org>
 +
 +      Provide additional default values (directories at other Dired
 +      windows) via M-n in the minibuffer of some Dired commands.
 +
 +      * dired-aux.el (dired-diff, dired-compare-directories)
 +      (dired-do-create-files): Use `dired-dwim-target-defaults' to set
 +      `minibuffer-default' in `minibuffer-with-setup-hook'.
 +      (dired-dwim-target-directory): Find a window that displays Dired
 +      buffer instead of failing when the next window is not Dired.
 +      Use `get-window-with-predicate' to find for the next Dired window.
 +      (dired-dwim-target-defaults): New function.
 +
 +      * ediff-util.el (ediff-read-file-name):
 +      Use `dired-dwim-target-defaults' to set `minibuffer-default'
 +      in `minibuffer-with-setup-hook'.
 +
 +2009-11-25  Juri Linkov  <juri@jurta.org>
 +
 +      Provide additional default values (file name at point or at the
 +      current Dired line) via M-n for file reading minibuffers.  (Bug#5010)
 +
 +      * minibuffer.el (read-file-name-defaults): New function.
 +      (read-file-name): Reset `minibuffer-default' to nil when
 +      it duplicates initial input `insdef'.
 +      Bind `minibuffer-default-add-function' to lambda that
 +      calls `read-file-name-defaults' in `minibuffer-selected-window'.
 +      (minibuffer-insert-file-name-at-point): New command.
 +
 +      * files.el (file-name-at-point-functions): New defcustom.
 +      (find-file-default): Remove defvar.
 +      (find-file-read-args): Don't use `find-file-default'.
 +      Move `minibuffer-with-setup-hook' that sets `minibuffer-default'
 +      to `read-file-name'.
 +      (find-file-literally): Use `read-file-name' with
 +      `confirm-nonexistent-file-or-buffer'.
 +
 +      * ffap.el (ffap-guess-file-name-at-point): New autoloaded function.
 +
 +      * dired.el (dired-read-dir-and-switches):
 +      Move `minibuffer-with-setup-hook' that sets `minibuffer-default'
 +      to `read-file-name'.
 +      (dired-file-name-at-point): New function.
 +      (dired-mode): Add hook `dired-file-name-at-point' to
 +      `file-name-at-point-functions'.
 +
 +2009-11-25  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      Really make the *Completions* window soft-dedicated (bug#5030).
 +      * window.el (window--display-buffer-2): Add `dedicated' argument.
 +      (display-buffer): Pass it when needed so the dedicated flag is set
 +      after calling set-window-buffer, which would otherwise reset it.
 +
 +2009-11-25  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * progmodes/meta-mode.el (meta-complete-symbol):
 +      * progmodes/etags.el (complete-tag):
 +      * mail/mailabbrev.el (mail-abbrev-complete-alias):
 +      Use completion-in-region.
 +
 +      * dabbrev.el (dabbrev--minibuffer-origin): Use minibuffer-selected-window.
 +      (dabbrev-completion): Use completion-in-region.
 +      (dabbrev--abbrev-at-point): Simplify regexp.
 +
 +      * abbrev.el (abbrev--before-point): Use word-motion functions
 +      if :regexp is not specified (bug#5031).
 +
 +      * subr.el (string-prefix-p): New function.
 +
 +      * man.el (Man-completion-cache): New var.
 +      (Man-completion-table): Use it.
 +
 +      * vc.el (vc-print-log-internal): Make `limit' optional for better
 +      compatibility (e.g. with vc-annotate.el).
 +
 +2009-11-24  Kevin Ryde  <user42@zip.com.au>
 +
 +      * emacs-lisp/checkdoc.el (checkdoc-proper-noun-regexp):
 +      Build value with regexp-opt instead of explicit joining loop.  (Bug#4927)
 +
 +      * emacs-lisp/elint.el (elint-add-required-env): Better error message
 +      when .el source file not found or other error.
 +
 +2009-11-24  Markus Triska  <markus.triska@gmx.at>
 +
 +      * linum.el (linum-update-window): Ignore intangible (bug#4996).
 +
 +2009-11-24  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      Handle the [back] button properly (bug#4979).
 +      * descr-text.el (describe-text-properties): Add a `buffer' argument.
 +      Use help-setup-xref, help-buffer, and with-help-window.
 +      (describe-char): Add `buffer' argument.
 +      Pass proper command to help-setup-xref.  Don't meddle with
 +      help-xref-stack-item directly.
 +      (describe-text-category): Use with-help-window and help-buffer.
 +
 +      * emacs-lisp/shadow.el (list-load-path-shadows): Setup a major mode
 +      for the displayed buffer (bug#4887).
 +
 +      * man.el (Man-completion-table): New function.
 +      (man): Use it.
 +
 +2009-11-24  David Reitter  <david.reitter@gmail.com>
 +
 +      * vc-git.el (vc-git-registered): Use checkout directory (where
 +      .git is) rather than the file's directory and a relative path spec
 +      to work around a bug in git.
 +
 +2009-11-24  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      Improve handling of processes on remote hosts.
 +
 +      * eshell/esh-util.el (eshell-path-env): New defvar.
 +      (eshell-parse-colon-path): New defun.
 +      (eshell-file-attributes): Use `eshell-parse-colon-path'.
 +
 +      * eshell/esh-ext.el (eshell-search-path):
 +      Use `eshell-parse-colon-path'.
 +      (eshell-remote-command): Remove argument HANDLER.
 +      (eshell-external-command): Check for FTP remote connection.
 +
 +      * eshell/esh-proc.el (eshell-gather-process-output):
 +      Use `file-truename', in order to start also symlinked files.
 +      Apply `start-file-process' instead of `start-process'.
 +      Shorten `command' to the local file name part.
 +
 +      * eshell/em-cmpl.el (eshell-complete-commands-list):
 +      Use `eshell-parse-colon-path'.
 +
 +      * eshell/em-unix.el (eshell/du): Check for FTP remote connection.
 +
 +      * net/tramp.el (tramp-eshell-directory-change): New defun.  Add it
 +      to `eshell-directory-change-hook'.
 +
 +2009-11-24  Tassilo Horn  <tassilo@member.fsf.org>
 +
 +      * doc-view.el (doc-view-mode): Switch off view-mode explicitly,
 +      because it could be enabled automatically if view-read-only is non-nil.
 +
 +2009-11-24  Michael Kifer  <kifer@cs.stonybrook.edu>
 +
 +      * ediff-vers.el (ediff-rcs-get-output-buffer): Revert the change
 +      made on 2009-11-22.
 +
 +2009-11-24  Glenn Morris  <rgm@gnu.org>
 +
 +      * bookmark.el (bookmark-bmenu-hide-filenames): Remove assignment to
 +      deleted variable bookmark-bmenu-bookmark-column.
 +
 +2009-11-24  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * bookmark.el (bookmark-bmenu-search): Clear echo area when exiting.
 +
 +2009-11-23  Ken Brown  <kbrown@cornell.edu>  (tiny change)
 +
 +      * net/browse-url.el (browse-url-filename-alist): On Windows, add
 +      two slashes to the "file:" prefix.
 +      (browse-url-file-url): De-munge Cygwin filenames before passing
 +      them to Windows browser.
 +      (browse-url-default-windows-browser): Use call-process.
 +
 +2009-11-23  Juri Linkov  <juri@jurta.org>
 +
 +      Implement DocView Continuous mode.  (Bug#4896)
 +      * doc-view.el (doc-view-continuous-mode): New defcustom.
 +      (doc-view-mode-map): Bind C-n/<down> to
 +      `doc-view-next-line-or-next-page', C-p/<up> to
 +      `doc-view-previous-line-or-previous-page'.
 +      (doc-view-next-line-or-next-page)
 +      (doc-view-previous-line-or-previous-page): New commands.
 +
 +2009-11-23  Juri Linkov  <juri@jurta.org>
 +
 +      Implement Isearch in comint input history.  (Bug#3746)
 +      * comint.el (comint-mode): Add `comint-history-isearch-setup' to
 +      `isearch-mode-hook'.
 +      (comint-history-isearch): New defcustom.
 +      (comint-history-isearch-backward)
 +      (comint-history-isearch-backward-regexp): New commands.
 +      (comint-history-isearch-message-overlay): New buffer-local variable.
 +      (comint-history-isearch-setup, comint-history-isearch-end)
 +      (comint-goto-input, comint-history-isearch-search)
 +      (comint-history-isearch-message, comint-history-isearch-wrap)
 +      (comint-history-isearch-push-state)
 +      (comint-history-isearch-pop-state): New functions.
 +
 +2009-11-23  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/tramp.el (tramp-shell-prompt-pattern): Use \r for carriage
 +      return.
 +      (tramp-handle-make-symbolic-link)
 +      (tramp-handle-dired-compress-file, tramp-handle-expand-file-name):
 +      Quote file names.
 +      (tramp-send-command-and-check): New argument DONT-SUPPRESS-ERR.
 +      (tramp-handle-process-file): Use it.
 +
 +2009-11-23  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * window.el (move-to-window-line-last-op): Remove.
 +      (move-to-window-line-top-bottom): Reuse recenter-last-op instead.
 +
 +2009-11-23  Deniz Dogan  <deniz.a.m.dogan@gmail.com>  (tiny change)
 +
 +      Make M-r mirror the new cycling behavior of C-l.
 +      * window.el (move-to-window-line-last-op): New var.
 +      (move-to-window-line-top-bottom): New command.
 +      (global-map): Bind M-r move-to-window-line-top-bottom.
 +
 +2009-11-23  Sven Joachim  <svenjoac@gmx.de>
 +
 +      * dired-x.el (dired-guess-shell-alist-default):
 +      Support xz format.  (Bug#4953)
 +
 +2009-11-22  Michael Kifer  <kifer@cs.stonybrook.edu>
 +
 +      * emulation/viper-cmd.el: Use viper-last-command-char instead of
 +      last-command-char/last-command-event.
 +      (viper-prefix-arg-value): Do correct conversion of event-char for
 +      XEmacs.
 +
 +      * emulation/viper-util.el, emulation/viper.el:
 +      Use viper-last-command-char instead of
 +      last-command-char/last-command-event.
 +
 +      * ediff-init.el, ediff-mult.el, ediff-util.el:
 +      Replace last-command-char and last-command-event
 +      with (ediff-last-command-char) everywhere.
 +
 +      * ediff-vers.el (ediff-rcs-get-output-buffer): Make sure the buffer is
 +      created in fundamental mode.
 +
 +      * ediff.el (ediff-version): Revert the change of interactive-p to
 +      called-interactively-p.
 +
 +2009-11-22  Tassilo Horn  <tassilo@member.fsf.org>
 +
 +      * progmodes/subword.el (subword-mode-map): Fix subword-mode-map
 +      generation from word-movement command names.
 +
 +2009-11-21  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * cus-start.el (all): Add native condition for font-use-system-font.
 +
 +2009-11-21  Nathaniel Flath  <flat0103@gmail.com>
 +
 +      * progmodes/cc-menus.el (cc-imenu-java-generic-expression):
 +      Correct the patch from 2009-11-18.  (Bug#3910)
 +
 +2009-11-21  Tassilo Horn  <tassilo@member.fsf.org>
 +
 +      * progmodes/subword.el: Rename from lisp/subword.el.
 +
 +      * subword.el: Rename to progmodes/subword.el.
 +
 +      * Makefile.in (ELCFILES): Adapt to subword.el move.
 +
 +2009-11-21  Thierry Volpiatto  <thierry.volpiatto@gmail.com>
 +            Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * bookmark.el (bookmark-bmenu-bookmark-column): Remove var.
 +      (bookmark-bmenu-list): Save name on `bookmark-name-prop' text-prop.
 +      (bookmark-bmenu-show-filenames): Use push.
 +      (bookmark-bmenu-hide-filenames): Use local var instead of
 +      bookmark-bmenu-bookmark-column.  Use pop.  Don't save window-excursion.
 +      (bookmark-bmenu-bookmark): Use the new `bookmark-name-prop' text-prop.
 +      (bookmark-bmenu-execute-deletions): Don't bother adding/removing the
 +      filenames now that the bookmark names are always available.
 +
 +2009-11-21  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * bookmark.el (bookmark-search-prompt, bookmark-search-timer): Remove.
 +      (bookmark-search-pattern): Move and leave unbound.
 +      (bookmark-bmenu-mode-map): Change binding.
 +      (bookmark-read-search-input): Simplify.
 +      Don't use text-char-description.  Don't error on non-char events.
 +      (bookmark-filtered-alist-by-regexp-only): Remove by folding into the
 +      only caller (i.e. bookmark-bmenu-filter-alist-by-regexp).
 +      (bookmark-bmenu-search): Don't check we're in a bookmark-list buffer.
 +      Use a local var for the timer.
 +      (bookmark-bmenu-cancel-search): Remove by folding into the only caller
 +      (i.e. bookmark-bmenu-search).
 +
 +2009-11-21  Glenn Morris  <rgm@gnu.org>
 +
 +      * mail/rmailmm.el (rmail-mime): Decode in fundamental-mode.  (Bug#4993)
 +
 +2009-11-20  Ken Brown  <kbrown@cornell.edu>  (tiny change)
 +
 +      * net/browse-url.el (browse-url-default-windows-browser):
 +      Use cygstart for cygwin.
 +
 +2009-11-20  Karl Fogel  <karl.fogel@red-bean.com>
 +
 +      * bookmark.el: Formatting and doc fixes only:
 +      (bookmark-search-delay): Shorten doc string to fit in 80 columns.
 +      (bookmark-bmenu-search): Wrap to fit within 80 columns.
 +      Minor grammar and punctuation fixes in doc string.
 +      (bookmark-read-search-input): Adjust to fit within 80 columns.
 +
 +2009-11-20  Tassilo Horn  <tassilo@member.fsf.org>
 +
 +      * progmodes/cc-cmds.el (c-forward-into-nomenclature)
 +      (c-backward-into-nomenclature): Adapt to subword renaming.
 +
 +      * subword.el (subword-forward, subword-backward, subword-mark)
 +      (subword-kill, subword-backward-kill, subword-transpose)
 +      (subword-downcase, subword-upcase, subword-capitalize)
 +      (subword-forward-internal, subword-backward-internal):
 +      Rename from forward-subword, backward-subword, mark-subword,
 +      kill-subword, backward-kill-subword, transpose-subwords,
 +      downcase-subword, upcase-subword, capitalize-subword,
 +      forward-subword-internal, backward-subword-internal.
 +
 +2009-11-20  Thierry Volpiatto  <thierry.volpiatto@gmail.com>
 +
 +      * bookmark.el (bookmark-search-delay, bookmark-search-prompt):
 +      New options.
 +      (bookmark-search-pattern, bookmark-search-timer, bookmark-quit-flag):
 +      New vars.
 +      (bookmark-read-search-input, bookmark-filtered-alist-by-regexp-only)
 +      (bookmark-bmenu-filter-alist-by-regexp)
 +      (bookmark-bmenu-goto-bookmark, bookmark-bmenu-cancel-search): New funs.
 +      (bookmark-bmenu-search): New command.
 +      (bookmark-bmenu-mode-map): Bind it.
 +
 +2009-11-20  Tassilo Horn  <tassilo@member.fsf.org>
 +
 +      * progmodes/cc-cmds.el: declare-functioned forward-subword and
 +      backward-subword to quit the byte-compiler.
 +
 +      * makefile.w32-in: Don't refer cc-subword.elc but subword.elc.
 +
 +      * Makefile.in: Don't refer cc-subword.elc but subword.elc.
 +
 +      * progmodes/cc-cmds.el (c-update-modeline)
 +      (c-forward-into-nomenclature, c-backward-into-nomenclature):
 +      Refer to subword.el functions instead of cc-subword.el.
 +
 +      * progmodes/cc-mode.el (subword-mode, c-mode-base-map): Refer to
 +      subword.el functions instead of cc-subword.el.
 +
 +      * progmodes/cc-subword.el: Rename to subword.el.
 +      * subword.el: Rename from progmodes/cc-subword.el.
 +      (subword-mode-map): Rename from c-subword-mode-map.
 +      (subword-mode): Rename from c-subword-mode.
 +      (global-subword-mode): New global minor mode.
 +      (forward-subword): Rename from c-forward-subword.
 +      (backward-subword): Rename from c-backward-subword.
 +      (mark-subword): Rename from c-mark-subword.
 +      (kill-subword): Rename from c-kill-subword.
 +      (backward-kill-subword): Rename from c-backward-kill-subword.
 +      (transpose-subwords): Rename from c-tranpose-subword.
 +      (downcase-subword): Rename from c-downcase-subword.
 +      (capitalize-subword): Rename from c-capitalize-subword.
 +      (forward-subword-internal): Rename from c-forward-subword-internal.
 +      (backward-subword-internal): Rename from c-backward-subword-internal.
 +
 +2009-11-20  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * vc.el (vc-deduce-fileset): Allow non-state changing operations
 +      from a dired buffer.
 +      (vc-dired-deduce-fileset): New function.
 +      (vc-root-diff, vc-print-root-log): Use it.
 +
 +      * vc-annotate.el (vc-annotate-show-log-revision-at-line): Pass a
 +      nil LIMIT argument to vc-print-log-internal.
 +
 +2009-11-20  Glenn Morris  <rgm@gnu.org>
 +
 +      * Makefile.in (ELCFILES): Regenerate.
 +
 +2009-11-20  Jay Belanger  <jay.p.belanger@gmail.com>
 +
 +      * calc/calc.el (calc-set-mode-line):
 +      Rename `calc-complement-signed-mode' to `calc-twos-complement-mode'.
 +      (math-format-number): Rename `math-format-complement-signed' to
 +      `math-format-twos-complement'.
 +
 +      * calc/calc-bin.el (math-format-twos-complement): Rename from
 +      math-format-complement-signed.
 +      (calc-radix): Rename `calc-complement-signed-mode' to
 +      `calc-twos-complement-mode'.
 +      (calc-octal-radix, calc-hex-radix): Add an argument for
 +      two's complement.
 +
 +      * calc/calc-embed.el (calc-embedded-mode-vars):
 +      Rename `calc-complement-signed-mode' to `calc-twos-complement-mode'.
 +
 +      * calc/calc-ext.el (calc-init-extensions):
 +      Rename `calc-complement-signed-mode' to `calc-twos-complement-mode'.
 +      (math-format-number-fancy): Let `calc-twos-complement-mode' be nil.
 +
 +      * calc/calc-units.el (math-build-units-table-buffer):
 +      Let `calc-twos-complement-mode' be nil.
 +
 +      * calc/calc-menu.el (calc-modes-menu): Clean up two's complement
 +      entries.
 +
 +      * calc/calc-vec.el (calcFunc-vunpack):
 +      * calc/calc-aent.el (calc-do-calc-eval):
 +      * calc/calc-forms.el (math-format-date):
 +      * calc/calc-graph.el (calc-graph-plot):
 +      * calc/calc-math.el (math-use-emacs-fn):
 +      * calc/calccomp.el (math-compose-expr):
 +      Let `calc-twos-complement-mode' be nil.
 +
 +2009-11-19  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * abbrev.el (abbrev-with-wrapper-hook): (re)move...
 +      * simple.el (with-wrapper-hook): ...to here.  Add argument `args'.
 +      * minibuffer.el (completion-in-region-functions): New hook.
 +      (completion-in-region): New function.
 +      * emacs-lisp/lisp.el (lisp-complete-symbol):
 +      * pcomplete.el (pcomplete-std-complete): Use it.
 +
 +2009-11-19  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * textmodes/tex-mode.el (latex-complete-bibtex-cache)
 +      (latex-complete-alist): New vars.
 +      (latex-string-prefix-p, latex-complete-bibtex-keys)
 +      (latex-complete-envnames, latex-complete-refkeys)
 +      (latex-complete-data): New functions.
 +      (latex-complete, latex-indent-or-complete): New commands.
 +
 +      * window.el (display-buffer-mark-dedicated): New var.
 +      (display-buffer): Obey it.
 +      * minibuffer.el (minibuffer-completion-help): Use it.
 +
 +      * progmodes/sym-comp.el (symbol-complete): Use completion-in-region.
 +
 +      * filecache.el (file-cache-add-file): Use push and cons.
 +      (file-cache-delete-file-regexp): Use push.
 +      (file-cache-complete): Use completion-in-region.
 +
 +      * simple.el (with-wrapper-hook): Fix thinko.
 +
 +      * hfy-cmap.el (hfy-rgb-file): Use locate-file.
 +      (htmlfontify-load-rgb-file): Remove unnused var `ff'.
 +      Use with-current-buffer and string-to-number.
 +      (hfy-fallback-colour-values): Use assoc-string.
 +      * htmlfontify.el (hfy-face-to-css): Remove unused var `style'.
 +      (hfy-face-at): Remove unused var `found-face'.
 +      (hfy-compile-stylesheet): Remove unused var `css'.
 +      (hfy-fontify-buffer): Remove unused vars `in-style', `invis-button',
 +      and `orig-buffer'.
 +      (hfy-buffer, hfy-copy-and-fontify-file, hfy-parse-tags-buffer):
 +      Use with-current-buffer.
 +      (hfy-text-p): Use expand-file-name and fewer setq.
 +
 +2009-11-19  Vivek Dasmohapatra  <vivek@etla.org>
 +
 +      * htmlfontify.el, hfy-cmap.el: New files.
 +
 +2009-11-19  Juri Linkov  <juri@jurta.org>
 +
 +      * minibuffer.el (completions-format): New defcustom.
 +      (completion--insert-strings): Implement vertical format.
 +
 +      * simple.el (switch-to-completions): Move point to the first
 +      completion when point was at the beginning of the buffer.
 +
 +2009-11-19  Juri Linkov  <juri@jurta.org>
 +
 +      * find-dired.el (find-name-arg): Remove autoload.  (Bug#4387)
 +
 +      * progmodes/grep.el (rgrep): Require `find-dired' for `find-name-arg'.
 +
 +2009-11-19  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * mail/sendmail.el (mail-yank-prefix): Change default to "> ".
 +      (mail-signature): Change default to t.
 +      (mail-from-style): Deprecate `system-default' value.
 +      (mail-insert-from-field): For default value of mail-from-style,
 +      default to `angles' unless `angles' needs quoting and `parens'
 +      does not.
 +      (mail-citation-prefix-regexp): Use citation regexp from
 +      message-mode.
 +
 +2009-11-19  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/tramp.el (tramp-do-copy-or-rename-file-out-of-band):
 +      Set variables for computing the prompt for reading password.
 +
 +2009-11-19  Glenn Morris  <rgm@gnu.org>
 +
 +      * dired-aux.el (dired-compress-file-suffixes): Add ".xz".  (Bug#4953)
 +
 +      * textmodes/flyspell.el (sgml-lexical-context): Declare.
 +
 +      * net/newst-treeview.el (newsticker-treeview-treewindow-width)
 +      (newsticker-treeview-listwindow-height): Fix custom type.
 +
 +2009-11-19  Kenichi Handa  <handa@m17n.org>
 +
 +      * descr-text.el (describe-char-padded-string): Compose with TAB
 +      only if there's a font for CH.
 +      (describe-char): Fix the condition for detecting a trivial composition.
 +
 +2009-11-18  Nathaniel Flath  <flat0103@gmail.com>
 +
 +      * progmodes/cc-menus.el (cc-imenu-java-generic-expression): A new,
 +      more accurate version of the regexp.  (Bug#3910)
 +
 +2009-11-18  Bernhard Herzog  <bernhard.herzog@intevation.de>  (tiny change)
 +
 +      * vc-hg.el (vc-hg-diff): Fix last patch: do not change directory.
 +
 +2009-11-18  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * font-setting.el (font-use-system-font): Declare for byte-compiler.
 +      (font-setting-change-default-font): Fix typo in docstring.
 +
 +2009-11-18  Alan Mackenzie  <acm@muc.de>
 +
 +      * progmodes/cc-defs.el (c-version): Bump to 5.31.8.
 +
 +2009-11-17  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * font-setting.el (font-use-system-font): Move ...
 +
 +      * cus-start.el (all): ... to here.
 +
 +2009-11-17  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/tramp.el (tramp-advice-file-expand-wildcards): Simplify.
 +      Don't set `ad-return-value' if `ad-do-it' doesn't.
 +
 +      * net/tramp-gvfs.el (tramp-gvfs-handle-write-region): Set file
 +      modification time.
 +
 +2009-11-17  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * menu-bar.el: Put "Use system font" in Option-menu.
 +      (menu-bar-options-save): Add font-use-system-font.
 +
 +      * loadup.el: If feature system-font-setting or font-render-setting is
 +      there, load font-setting.
 +
 +      * Makefile.in (ELCFILES): Add font-settings.el.
 +      * font-setting.el: New file.
 +
 +2009-11-17  Glenn Morris  <rgm@gnu.org>
 +
 +      * vc-svn.el (vc-svn-print-log): Fix typo in previous.
 +
 +      * net/newst-treeview.el (newsticker--treeview-list-update-faces):
 +      Preserve point in the list buffer.  (Bug#4939)
 +      Use point-at-eol.
 +      (newsticker--treeview-list-update-highlight)
 +      (newsticker--treeview-tree-update-highlight): Use point-at-bol/eol.
 +
 +2009-11-16  Jay Belanger  <jay.p.belanger@gmail.com>
 +
 +      * calc/calc-bin.el (math-symclip, calcFunc-symclip, calc-symclip):
 +      Remove.
 +
 +      * calc/calc-ext.el (calc-init-extensions): Remove references to
 +      symclip.
 +
 +      * calc/calc-menu.el (calc-arithmetic-menu): Remove `calc-symclip'.
 +
 +      * calc/calc-map.el (calc-get-operator, calc-b-oper-keys):
 +      * calc/calc-help.el (calc-b-prefix-help): Remove references to
 +      `calc-symclip'.
 +
 +2009-11-16  Kevin Ryde  <user42@zip.com.au>
 +
 +      * textmodes/flyspell.el (sgml-mode-flyspell-verify):
 +      Use `sgml-lexical-context' instead of own parse for tag (Bug#4511).
 +
 +      * emacs-lisp/lisp-mnt.el (lm-keywords): Allow multi-line keywords.
 +      (lm-keywords-list): Allow comma-only separator like "foo,bar".
 +      Ignore trailing spaces by omit-nulls to split-string (fixing
 +      regression from Emacs 21 due to the incompatible split-string
 +      change).  (Bug #4928.)
 +
 +2009-11-16  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * vc.el (vc-log-show-limit): Default to 2000.
 +      (vc-print-log-internal): Insert buttons to request more entries
 +      when limiting the output.
 +
 +      * vc-sccs.el (vc-sccs-print-log):
 +      * vc-rcs.el (vc-rcs-print-log):
 +      * vc-cvs.el (vc-cvs-print-log):
 +      * vc-git.el (vc-git-print-log): Return 'limit-unsupported when
 +      LIMIT is non-nil.
 +
 +2009-11-16  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/tramp-gvfs.el (tramp-gvfs-dbus-event-error): Raise only an
 +      error when `tramp-gvfs-dbus-event-vector' is set.
 +      (tramp-gvfs-maybe-open-connection): Loop over `read-event'.
 +
 +2009-11-16  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * vc-rcs.el (vc-rcs-consult-headers): Add missing save-excursion.
 +
 +2009-11-16  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/dbus.el (dbus-unregister-service): New defun.
 +      (dbus-register-property): Register the handlers of
 +      "org.freedesktop.DBus.Properties" for SERVICE.
 +      (dbus-property-handler): Fix docstring.
 +
 +2009-11-16  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
 +
 +      * emacs-lisp/bytecomp.el (byte-compile-output-file-form):
 +      Quote doc string reference in defvaralias as it is not in special form.
 +      (byte-compile-output-docform): Doc fix.
 +
 +2009-11-16  Jay Belanger  <jay.p.belanger@gmail.com>
 +
 +      * calc/calc.el (math-2-word-size, math-half-2-word-size)
 +      (calc-complement-signed-mode): New variables.
 +      (calc-set-mode-line): Add indicator for twos-complements.
 +      (math-format-number): Format twos-complement notation.
 +
 +      * calc/calc-bin.el (calc-word-size): Reset the variables
 +      `math-2-word-size' and `math-half-2-word-size'.
 +      (math-format-complement-signed, math-symclip, calcFunc-symclip)
 +      (calc-symclip): New functions.
 +
 +      * calc/calc-aent.el (math-read-token): Read complement signed numbers.
 +
 +      * calc/calc-embed.el (calc-embedded-mode-vars):
 +      Add `calc-complement-signed-mode' to the list of modes.
 +
 +      * calc/calc-map.el (calc-get-operator): Add `calc-symclip'.
 +      (calc-b-oper-keys): Add `calc-symclip' to list.
 +
 +      * calc/calc-ext.el (math-read-number-fancy): Read complement
 +      signed numbers.
 +      (calc-init-extensions): Add binding for `calc-symclip'.
 +      Add autoload for `calcFunc-symclip' and `calc-symclip'.
 +
 +      * calc/calc-menu.el (calc-arithmetic-menu): Add item for
 +      `calc-symclip'.
 +      (calc-modes-menu): Add item for twos complement mode.
 +
 +      * calc/calc-help.el (calc-b-prefix-help): Add help for `calc-symclip'.
 +
 +2009-11-15  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * register.el (jump-to-register, insert-register): Handle Semantic
 +      tags.  From commented-out advice in semantic/senator.el.
 +
 +2009-11-15  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * vc.el (vc-log-show-limit): New variable.
 +      (vc-print-log, vc-print-root-log): Add new argument LIMIT.  Set it
 +      when using a prefix argument.
 +      (vc-print-log-internal): Add new argument LIMIT.
 +
 +      * vc-svn.el (vc-svn-print-log):
 +      * vc-mtn.el (vc-mtn-print-log):
 +      * vc-hg.el (vc-hg-print-log):
 +      * vc-bzr.el (vc-bzr-print-log): Add new optional argument LIMIT,
 +      pass it to the log command when set.  Make the BUFFER argument
 +      non-optional.
 +
 +      * vc-sccs.el (vc-sccs-print-log):
 +      * vc-rcs.el (vc-rcs-print-log):
 +      * vc-git.el (vc-git-print-log):
 +      * vc-cvs.el (vc-cvs-print-log): Add new optional argument LIMIT,
 +      ignore it.  Make the BUFFER argument non-optional
 +
 +      * bindings.el (mode-line-buffer-identification): Do not purecopy.
 +
 +2009-11-15  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * dired.el (dired-mode-map): Move encryption items to "Operate"
 +      menu (Bug#4703).
 +
 +      * strokes.el (strokes-update-window-configuration): Make strokes
 +      buffer current before erasing (Bug#4906).
 +
 +2009-11-15  Juri Linkov  <juri@jurta.org>
 +
 +      * simple.el (set-mark-default-inactive): Add :type, :group
 +      and :version.  (Bug#4876)
 +
 +2009-11-15  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * arc-mode.el (archive-maybe-copy): Move creation of directory ...
 +      (archive-unique-fname): ... here.  (Bug#4929)
 +
 +2009-11-15  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * help-mode.el (help-make-xrefs): Undo the last revert, and replace it
 +      with a real fix.
 +
 +      * novice.el (disabled-command-function): Add useful args.
 +      Setup the help buffer so that [back] works.
 +      Remove redundant call to help-mode.
 +      (disabled-command-function): Use `case'.
 +      (en/disable-command): New function extracted from enable-command.
 +      (enable-command, disable-command): Use it.
 +
 +2009-11-14  Glenn Morris  <rgm@gnu.org>
 +
 +      * menu-bar.el (menu-bar-tools-menu): Read and send mail entries are not
 +      constants.  (Bug#4913)
 +
 +      * emacs-lisp/elint.el (elint-standard-variables): Doc fix.
 +
 +2009-11-14  Shigeru Fukaya  <shigeru.fukaya@gmail.com>
 +
 +      * emacs-lisp/elint.el (elint-standard-variables): Add some variables
 +      defined in C that have no doc-strings.  (Bug#1063)
 +
 +2009-11-14  Francis Wright  <F.J.Wright@qmul.ac.uk>
 +
 +      * cus-edit.el (data, files):
 +      * ps-print.el (postscript): Doc fixes for custom groups.  (Bug#3327)
 +
 +2009-11-14  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * simple.el (shell-command): Doc fix (Bug#4891).
 +
 +      * help-mode.el (help-make-xrefs): Revert 2009-11-13 change.
 +
 +2009-11-14  Glenn Morris  <rgm@gnu.org>
 +
 +      * emulation/viper.el (viper-set-hooks): Remove duplicate advice
 +      statements for vc-diff, emerge-quit, and rmail-cease-edit.
 +      If they are already loaded, eval-after-load will do the right thing.
 +
 +      * speedbar.el (top-level): Remove unnecessary load of ange-ftp when
 +      compiling.
 +
 +      * emacs-lisp/bytecomp.el (byte-compile-single-version): Remove, unused.
 +
 +      * simple.el (x-selection-owner-p): Declare.
 +      (read-mail-command): Use custom radio type rather than choice.
 +      (completion-no-auto-exit): Doc fix.
 +
 +      * custom.el (defgroup):
 +      * epg-config.el (epg): Doc fixes.
 +
 +2009-11-14  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * bindings.el (mode-line-buffer-identification): Purecopy only the string.
 +      * international/ccl.el (define-ccl-program): Do not purecopy the
 +      docstring, defconst does it anyway.
 +
 +2009-11-13  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * add-log.el (add-change-log-entry): Avoid displaying the changelog
 +      a second time.
 +
 +      * x-dnd.el (x-dnd-maybe-call-test-function):
 +      * window.el (split-window-vertically):
 +      * whitespace.el (whitespace-help-on):
 +      * vc-rcs.el (vc-rcs-consult-headers):
 +      * userlock.el (ask-user-about-lock-help)
 +      (ask-user-about-supersession-help):
 +      * type-break.el (type-break-force-mode-line-update):
 +      * time-stamp.el (time-stamp-conv-warn):
 +      * terminal.el (te-set-output-log, te-more-break, te-filter)
 +      (te-sentinel, terminal-emulator):
 +      * term.el (make-term, term-exec, term-sentinel, term-read-input-ring)
 +      (term-write-input-ring, term-check-source, term-start-output-log):
 +      (term-display-buffer-line, term-dynamic-list-completions):
 +      (term-ansi-make-term, serial-term):
 +      * subr.el (selective-display):
 +      * strokes.el (strokes-xpm-to-compressed-string, strokes-decode-buffer)
 +      (strokes-encode-buffer, strokes-xpm-for-compressed-string):
 +      * speedbar.el (speedbar-buffers-tail-notes, speedbar-buffers-item-info)
 +      (speedbar-reconfigure-keymaps, speedbar-add-localized-speedbar-support)
 +      (speedbar-remove-localized-speedbar-support)
 +      (speedbar-set-mode-line-format, speedbar-create-tag-hierarchy)
 +      (speedbar-update-special-contents, speedbar-buffer-buttons-engine)
 +      (speedbar-buffers-line-directory):
 +      * simple.el (shell-command-on-region, append-to-buffer)
 +      (prepend-to-buffer):
 +      * shadowfile.el (shadow-save-todo-file):
 +      * scroll-bar.el (scroll-bar-set-window-start, scroll-bar-drag-1)
 +      (scroll-bar-maybe-set-window-start):
 +      * sb-image.el (speedbar-image-dump):
 +      * saveplace.el (save-place-alist-to-file, save-places-to-alist)
 +      (load-save-place-alist-from-file):
 +      * ps-samp.el (ps-print-message-from-summary):
 +      * ps-print.el (ps-flush-output, ps-insert-file, ps-get-boundingbox)
 +      (ps-background-image, ps-begin-job, ps-do-despool):
 +      * ps-bdf.el (bdf-find-file, bdf-read-font-info):
 +      * printing.el (pr-interface, pr-ps-file-print, pr-find-buffer-visiting)
 +      (pr-ps-message-from-summary, pr-lpr-message-from-summary):
 +      (pr-call-process, pr-file-list, pr-interface-save):
 +      * novice.el (disabled-command-function)
 +      (enable-command, disable-command):
 +      * mouse.el (mouse-buffer-menu-alist):
 +      * mouse-copy.el (mouse-kill-preserving-secondary):
 +      * macros.el (kbd-macro-query):
 +      * ledit.el (ledit-go-to-lisp, ledit-go-to-liszt):
 +      * informat.el (batch-info-validate):
 +      * ido.el (ido-copy-current-word, ido-initiate-auto-merge):
 +      * hippie-exp.el (try-expand-dabbrev-visible):
 +      * help-mode.el (help-make-xrefs):
 +      * help-fns.el (describe-variable):
 +      * generic-x.el (bat-generic-mode-run-as-comint):
 +      * finder.el (finder-mouse-select):
 +      * find-dired.el (find-dired-sentinel):
 +      * filesets.el (filesets-file-close):
 +      * files.el (list-directory):
 +      * faces.el (list-faces-display, describe-face):
 +      * facemenu.el (list-colors-display):
 +      * ezimage.el (ezimage-image-association-dump, ezimage-image-dump):
 +      * epg.el (epg--process-filter, epg-cancel):
 +      * epa.el (epa--marked-keys, epa--select-keys, epa-display-info)
 +      (epa--read-signature-type):
 +      * emerge.el (emerge-copy-as-kill-A, emerge-copy-as-kill-B)
 +      (emerge-file-names):
 +      * ehelp.el (electric-helpify):
 +      * ediff.el (ediff-regions-wordwise, ediff-regions-linewise):
 +      * ediff-vers.el (rcs-ediff-view-revision):
 +      * ediff-util.el (ediff-setup):
 +      * ediff-mult.el (ediff-append-custom-diff):
 +      * ediff-diff.el (ediff-exec-process, ediff-process-sentinel)
 +      (ediff-wordify):
 +      * echistory.el (Electric-command-history-redo-expression):
 +      * dos-w32.el (find-file-not-found-set-buffer-file-coding-system):
 +      * disp-table.el (describe-display-table):
 +      * dired.el (dired-find-buffer-nocreate):
 +      * dired-aux.el (dired-rename-subdir, dired-dwim-target-directory):
 +      * dabbrev.el (dabbrev--same-major-mode-p):
 +      * chistory.el (list-command-history):
 +      * apropos.el (apropos-documentation):
 +      * allout.el (allout-obtain-passphrase):
 +      (allout-copy-exposed-to-buffer):
 +      (allout-verify-passphrase): Use with-current-buffer.
 +
 +2009-11-13  Glenn Morris  <rgm@gnu.org>
 +
 +      * Makefile.in (ELCFILES): Regenerate.
 +
 +2009-11-13  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/dbus.el (dbus-registered-objects-table): Rename from
 +      `dbus-registered-functions-table', because it contains also properties.
 +      (dbus-unregister-object): Unregister also properties.
 +      (dbus-get-property, dbus-set-property, dbus-get-all-properties):
 +      Use a timeout of 500 msec, in order to not block.
 +      (dbus-register-property, dbus-property-handler): New defuns.
 +
 +2009-11-13  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * simple.el (minibuffer-default-add-completions): Drop deprecated
 +      4th arg.
 +
 +2009-11-13  Tomas Abrahamsson  <tab@lysator.liu.se>
 +
 +      * textmodes/artist.el (artist-mouse-choose-operation):
 +      Call `tmm-prompt' instead of `x-popup-menu' if we cannot popup
 +      menus.  Bug noticed by Eli Zaretskii <eliz@gnu.org>.
 +      (artist-compute-up-event-key): New function.
 +      (artist-mouse-choose-operation, artist-down-mouse-1): Call it.
 +
 +2009-11-13  Kenichi Handa  <handa@m17n.org>
 +
 +      * language/japan-util.el: Make sure that the value of jisx0208
 +      property is jisx0208 character.
 +
 +2009-11-13  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * international/mule.el (auto-coding-regexp-alist): Only purecopy
 +      car or each item, not the whole list.
 +
 +2009-11-12  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * minibuffer.el (minibuffer-completion-help):
 +      Use minibuffer-hide-completions.
 +
 +2009-11-12  Per Starbäck  <per@starback.se>  (tiny change)
 +
 +      * dired.el (dired-save-positions, dired-restore-positions): New funs.
 +      (dired-revert): Use them (bug#4880).
 +
 +2009-11-12  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * tooltip.el (tooltip-frame-parameters): Undo previous change.
 +
 +2009-11-12  Juri Linkov  <juri@jurta.org>
 +
 +      * ffap.el (ffap-alternate-file-other-window, ffap-literally):
 +      New functions.
 +      (find-file-literally-at-point): Alias of `ffap-literally'.
 +
 +2009-11-12  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * textmodes/ispell.el (ispell-skip-region-alist):
 +      * textmodes/css-mode.el (auto-mode-alist):
 +      * progmodes/compile.el (auto-mode-alist):
 +      * international/mule.el (ctext-non-standard-encodings-alist)
 +      (ctext-non-standard-encodings-regexp):
 +      * simple.el (shell-command-switch, text-read-only):
 +      * replace.el (occur-mode-map):
 +      * paths.el (rmail-file-name):
 +      * jka-cmpr-hook.el (jka-compr-build-file-regexp):
 +      * find-file.el (ff-special-constructs):
 +      * files.el (file-name-handler-alist):
 +      * composite.el: Purecopy strings.
 +
 +      * emacs-lisp/cl-macs.el (define-compiler-macro): Purecopy the file name.
 +
 +2009-11-11  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * widget.el (define-widget): Purecopy the docstring.
 +      * international/mule-cmds.el (charset): Do not purecopy the
 +      docstring here, define-widget does it.
 +
 +      * textmodes/texinfo.el (texinfo-open-quote, texinfo-close-quote):
 +      * textmodes/bibtex-style.el (auto-mode-alist):
 +      * progmodes/inf-lisp.el (inferior-lisp-prompt):
 +      * progmodes/compile.el (compile-command):
 +      * language/korea-util.el (default-korean-keyboard):
 +      * international/mule-conf.el (file-coding-system-alist):
 +      * emacs-lisp/eldoc.el (eldoc-minor-mode-string):
 +      * tooltip.el (tooltip-frame-parameters):
 +      * newcomment.el (comment-end, comment-padding):
 +      * dired.el (dired-trivial-filenames):
 +      * comint.el (comint-file-name-prefix): Purecopy initial values.
 +
 +2009-11-11  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/tramp.el (tramp-advice-minibuffer-electric-separator)
 +      (tramp-advice-minibuffer-electric-tilde): Unload advices via
 +      `tramp-unload'.
 +      (tramp-advice-make-auto-save-file-name)
 +      (tramp-advice-file-expand-wildcards): Apply also `ad-activate'
 +      after removing the advice.
 +
 +2009-11-11  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * progmodes/grep.el (grep-regexp-alist):
 +      * international/mule-cmds.el (iso-2022-control-alist):
 +      * emacs-lisp/timer.el (timer-duration-words):
 +      * subr.el (version-separator, version-regexp-alist):
 +      * minibuffer.el (completion-styles-alist):
 +      * faces.el (face-attribute-name-alist, list-faces-sample-text):
 +      Change defvars to defconsts.
 +
 +      * Makefile.in (ELCFILES): Add international/mule-conf.elc.
 +      * loadup.el ("international/mule-conf"): Load the byte compiled version.
 +      * international/mule-conf.el: Allow to be byte compiled.
 +
 +      * international/mule.el (define-charset): Purecopy props.
 +      (load-with-code-conversion): Purecopy doc string and file name.
 +      (put-charset-property): Purecopy strings.
 +      (auto-coding-alist, auto-coding-regexp-alist): Purecopy initial value.
 +
 +      * international/mule-cmds.el (register-input-method): Purecopy arguments.
 +      (define-char-code-property): Correctly purecopy the table.
 +
 +      * international/ccl.el (define-ccl-program): Purecopy the docstring.
 +
 +      * emacs-lisp/easy-mmode.el (define-minor-mode): Purecopy :lighter.
 +
 +      * subr.el (add-hook): Purecopy strings.
 +      (eval-after-load): Purecopy load-history-regexp and the form.
 +
 +      * custom.el (custom-declare-group): Purecopy load-file-name.
 +
 +      * subr.el (menu-bar-separator): New defconst.
 +      * net/eudc.el (eudc-tools-menu):
 +      * international/mule-cmds.el (set-coding-system-map)
 +      (mule-menu-keymap):
 +      * emacs-lisp/lisp-mode.el (emacs-lisp-mode-map):
 +      * vc-hooks.el (vc-menu-map):
 +      * replace.el (occur-mode-map):
 +      * menu-bar.el (menu-bar-file-menu, menu-bar-search-menu)
 +      (menu-bar-edit-menu, menu-bar-goto-menu)
 +      (menu-bar-custom-menu, menu-bar-showhide-menu)
 +      (menu-bar-options-menu, menu-bar-tools-menu)
 +      (menu-bar-encryption-decryption-menu, menu-bar-describe-menu)
 +      (menu-bar-search-documentation-menu, menu-bar-manuals-menu)
 +      (menu-bar-help-menu):
 +      * ediff-hook.el (menu-bar-ediff-menu, menu-bar-ediff-merge-menu):
 +      * buff-menu.el (Buffer-menu-mode-map): Use menu-bar-separator.
 +
 +      * term/x-win.el (x-gtk-stock-map):
 +      * progmodes/vera-mode.el (auto-mode-alist):
 +      * progmodes/inf-lisp.el (inferior-lisp-filter-regexp)
 +      (inferior-lisp-program, inferior-lisp-load-command):
 +      * progmodes/hideshow.el (hs-special-modes-alist):
 +      * progmodes/gud.el (same-window-regexps):
 +      * progmodes/grep.el (grep-program, find-program, xargs-program):
 +      * net/telnet.el (same-window-regexps):
 +      * net/rlogin.el (same-window-regexps):
 +      * language/ethiopic.el (font-ccl-encoder-alist):
 +      * vc-sccs.el (vc-sccs-master-templates):
 +      * vc-rcs.el (vc-rcs-master-templates):
 +      * subr.el (cl-assertion-failed):
 +      * simple.el (next-error-overlay-arrow-position):
 +      * lpr.el (lpr-command):
 +      * locate.el (locate-ls-subdir-switches):
 +      * info.el (same-window-regexps, info)
 +      (Info-goto-emacs-command-node, Info-goto-emacs-key-command-node):
 +      * image-mode.el (image-mode, auto-mode-alist):
 +      * hippie-exp.el (hippie-expand-ignore-buffers):
 +      * format.el (format-alist):
 +      * find-dired.el (find-ls-subdir-switches, find-grep-options)
 +      (find-name-arg):
 +      * facemenu.el (facemenu-keybindings):
 +      * dired.el (dired-listing-switches, dired-chown-program):
 +      * diff.el (diff-switches, diff-command):
 +      * cus-edit.el (same-window-regexps):
 +      * bindings.el (mode-line-mule-info)
 +      (mode-line-buffer-identification): Purecopy strings.
 +
 +2009-11-11  Juri Linkov  <juri@jurta.org>
 +
 +      * simple.el (dired-get-filename) <declare-function>:
 +      Tell the byte-compiler about dired-get-filename.
 +      (shell-command): In Dired mode, get filename from the current line
 +      as the default value.
 +
 +2009-11-10  Glenn Morris  <rgm@gnu.org>
 +
 +      * dired.el, hi-lock.el, calendar/cal-menu.el, calendar/calendar.el:
 +      * calendar/holidays.el, progmodes/cperl-mode.el:
 +      Update x-popup-menu declarations.
 +
 +      * emacs-lisp/shadow.el (find-emacs-lisp-shadows)
 +      (list-load-path-shadows): Use dolist.
 +      (list-load-path-shadows): Use with-current-buffer.
 +
 +2009-11-10  Juri Linkov  <juri@jurta.org>
 +
 +      * minibuffer.el (read-file-name): Support a list of default values
 +      in `default-filename'.  Use the first file name where only one
 +      element is required.  Doc fix.
 +
 +2009-11-09  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/dbus.el (dbus-unregister-object): Release service, if no
 +      other method is registered for it.
 +
 +2009-11-08  Markus Rost  <rost@math.uni-bielefeld.de>
 +
 +      * bookmark.el (bookmark-completing-read): Sort bookmark names if
 +      bookmark-sort-flag is non-nil (Bug#4653).
 +
 +2009-11-08  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * emulation/cua-base.el: Add CUA property to some CC mode commands
 +      (Bug#4100).
 +
 +2009-11-08  Kevin Ryde  <user42@zip.com.au>
 +
 +      * emacs-lisp/checkdoc.el (checkdoc-proper-noun-regexp): Match noun
 +      at end of sentence (Bug#4818).
 +
 +2009-11-08  Jared Finder  <jfinder@crypticstudios.com>
 +
 +      * progmodes/compile.el (compilation-error-regexp-alist-alist):
 +      Handle "see declaration of" MSFT statements (Bug#4100).
 +
 +2009-11-08  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/tramp.el (tramp-advice-make-auto-save-file-name)
 +      (tramp-advice-file-expand-wildcards): Unload via
 +      `ad-remove-advice'.
 +
 +      * net/trampver.el: Update release number.
 +
 +2009-11-08  Kevin Ryde  <user42@zip.com.au>
 +
 +      * net/tramp.el (tramp-advice-file-expand-wildcards): Don't rely on
 +      `ad-do-it'.
 +
 +2009-11-08  Andr  <m00naticus@gmail.com>  (tiny change)
 +
 +      * net/tramp.el (tramp-handle-write-region): Copy but rename temp file,
 +      in order to keep context in SELinux.
 +
 +2009-11-08  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * dired-aux.el (dired-query): Place cursor in echo area and allow
 +      C-g.
 +
 +      * dired.el (dired-mode-map): Disable dired-maybe-insert-subdir
 +      menu item if not on a directory (Bug#4701).
 +
 +2009-11-07  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      Sync with Tramp 2.1.17.
 +
 +      * net/tramp.el (tramp-handle-copy-directory): Don't use
 +      `file-remote-p' (due to compatibility).
 +
 +      * net/tramp-compat.el (tramp-compat-copy-directory)
 +      (tramp-compat-delete-directory): New defuns.
 +
 +      * net/tramp-fish.el (tramp-fish-handle-delete-directory):
 +      * net/tramp-gvfs.el (tramp-gvfs-handle-delete-directory):
 +      Use `tramp-compat-delete-directory'.
 +
 +      * net/tramp-smb.el (tramp-smb-handle-copy-directory)
 +      (tramp-smb-handle-delete-directory):
 +      Use `tramp-compat-copy-directory' and `tramp-compat-delete-directory'.
 +
 +      * net/trampver.el: Update release number.
 +
 +2009-11-07  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * tar-mode.el (tar-copy): Call write-region on the right buffer
 +      (Bug#4857).
 +
 +      * mail/rmailsum.el (rmail-summary-rmail-update): Call linum-update
 +      by hand, if necessary (Bug#4878).
 +
 +2009-11-06  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * buff-menu.el (Buffer-menu-buffer+size): Use display property to
 +      align size column (Bug#4839).
 +
 +      * emacs-lisp/autoload.el (autoload-rubric): Always issue a provide
 +      statement.
 +
 +2009-11-05  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * progmodes/ld-script.el (auto-mode-alist):
 +      * vc-hooks.el (vc-directory-exclusion-list): Purecopy strings.
 +
 +      * cus-face.el (custom-declare-face): Purecopy face spec.
 +
 +2009-11-06  Kenichi Handa  <handa@m17n.org>
 +
 +      * international/uni-bidi.el: Re-generated.
 +      * international/uni-category.el: Re-generated.
 +      * international/uni-combining.el: Re-generated.
 +      * international/uni-mirrored.el: Re-generated.
 +
 +2009-11-05  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * textmodes/tex-mode.el (tex-alt-dvi-print-command)
 +      (tex-dvi-print-command, tex-bibtex-command, tex-start-commands)
 +      (tex-start-options, slitex-run-command, latex-run-command)
 +      (tex-run-command, tex-directory):
 +      * textmodes/ispell.el (ispell-html-skip-alists)
 +      (ispell-tex-skip-alists, ispell-tex-skip-alists):
 +      * textmodes/fill.el (adaptive-fill-first-line-regexp):
 +      (adaptive-fill-regexp):
 +      * textmodes/dns-mode.el (auto-mode-alist):
 +      * progmodes/python.el (interpreter-mode-alist):
 +      * progmodes/etags.el (tags-compression-info-list):
 +      * progmodes/etags.el (tags-file-name):
 +      * net/browse-url.el (browse-url-galeon-program)
 +      (browse-url-firefox-program):
 +      * mail/sendmail.el (mail-signature-file)
 +      (mail-citation-prefix-regexp):
 +      * international/mule-conf.el (eight-bit):
 +      * international/latexenc.el (latex-inputenc-coding-alist):
 +      * international/fontset.el (x-pixel-size-width-font-regexp):
 +      * emacs-lisp/warnings.el (warning-type-format):
 +      * emacs-lisp/trace.el (trace-buffer):
 +      * emacs-lisp/lisp-mode.el (lisp-interaction-mode-map)
 +      (emacs-lisp-mode-map):
 +      * calendar/holidays.el (holiday-solar-holidays)
 +      (holiday-bahai-holidays, holiday-islamic-holidays)
 +      (holiday-christian-holidays, holiday-hebrew-holidays)
 +      (hebrew-holidays-4, hebrew-holidays-3, hebrew-holidays-2)
 +      (hebrew-holidays-1, holiday-oriental-holidays)
 +      (holiday-general-holidays):
 +      * x-dnd.el (x-dnd-known-types):
 +      * tool-bar.el (tool-bar):
 +      * startup.el (site-run-file):
 +      * shell.el (shell-dumb-shell-regexp):
 +      * rfn-eshadow.el (file-name-shadow-tty-properties)
 +      (file-name-shadow-properties):
 +      * paths.el (remote-shell-program, news-directory):
 +      * mouse.el ([C-down-mouse-3]):
 +      * menu-bar.el (menu-bar-tools-menu):
 +      * jka-cmpr-hook.el (jka-compr-load-suffixes)
 +      (jka-compr-mode-alist-additions, jka-compr-compression-info-list)
 +      (jka-compr-compression-info-list):
 +      * isearch.el (search-whitespace-regexp):
 +      * image-file.el (image-file-name-extensions):
 +      * find-dired.el (find-ls-option):
 +      * files.el (directory-listing-before-filename-regexp)
 +      (directory-free-space-args, insert-directory-program)
 +      (list-directory-brief-switches, magic-fallback-mode-alist)
 +      (magic-fallback-mode-alist, auto-mode-interpreter-regexp)
 +      (automount-dir-prefix):
 +      * faces.el (face-x-resources, x-font-regexp, x-font-regexp-head)
 +      (x-font-regexp-slant, x-font-regexp-weight, face-x-resources)
 +      (face-font-registry-alternatives, face-font-registry-alternatives)
 +      (face-font-family-alternatives):
 +      * facemenu.el (facemenu-add-new-face, facemenu-background-menu)
 +      (facemenu-foreground-menu, facemenu-face-menu):
 +      * epa-hook.el (epa-file-name-regexp):
 +      * dnd.el (dnd-protocol-alist):
 +      * textmodes/rst.el (auto-mode-alist):
 +      * button.el (default-button): Purecopy strings.
 +
 +2009-11-06  Glenn Morris  <rgm@gnu.org>
 +
 +      * Makefile.in (ELCFILES): Update.
 +
 +2009-11-05  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * emacs-lisp/lucid.el: Move to obsolete/lucid.el.
 +      * emacs-lisp/levents.el: Move to obsolete/levents.el.
 +
 +      * nxml/xsd-regexp.el (xsdre-gen-categories):
 +      * nxml/xmltok.el (xmltok-parse-entity):
 +      * nxml/rng-parse.el (rng-parse-validate-file):
 +      * nxml/rng-maint.el (rng-format-manual)
 +      (rng-manual-output-force-new-line):
 +      * nxml/rng-loc.el (rng-save-schema-location-1):
 +      * nxml/rng-cmpct.el (rng-c-parse-file):
 +      * nxml/nxml-maint.el (nxml-insert-target-repertoire-glyph-set):
 +      * nxml/nxml-parse.el (nxml-parse-file): Use with-current-buffer.
 +
 +2009-11-05  Wilson Snyder  <wsnyder@wsnyder.org>
 +
 +      * progmodes/verilog-mode.el (verilog-getopt-file, verilog-set-define):
 +      Remove extra save-excursions and make-variable-buffer-local's.
 +      Suggested by Stefan Monnier.
 +
 +      (verilog-getopt-file, verilog-module-inside-filename-p)
 +      (verilog-set-define): Merge GNU 1.35 and repair changes from
 +      switching to using with-current-buffer.
 +
 +      (verilog-read-always-signals-recurse): Fix "a == 2'b00 ? b : c"
 +      being treated as a number and confusing AUTORESET.
 +      Reported by Dan Dever.
 +
 +      (verilog-auto-ignore-concat, verilog-read-sub-decls-expr):
 +      Add verilog-auto-ignore-concat to fix backward compatibility with
 +      older verilog-modes.  Reported by Dan Katz.
 +
 +      (verilog-read-auto-template): Fix AUTO_TEMPLATEs with regexps
 +      containing closing anchors "...$".
 +
 +      (verilog-read-decls): Fix AUTOREG not detecting "assign {a,b}".
 +      Reported by Wade Smith.
 +
 +      (verilog-batch-execute-func): Comment on function usage.
 +
 +2009-11-05  Michael McNamara  <mac@mail.brushroad.com>
 +
 +      * progmodes/verilog-mode.el (verilog-label-re): Fix regular expression
 +      for labels.
 +
 +      (verilog-label-re, verilog-calc-1): Support proper indent of named
 +      asserts.
 +
 +      (verilog-backward-token, verilog-basic-complete-re)
 +      (verilog-beg-of-statement, verilog-indent-re): Support proper
 +      indent of the assert statement at the beginning of a block of text.
 +
 +      (verilog-beg-block-re, verilog-ovm-begin-re): Support the
 +      `ovm_object_param_utils_begin and `ovm_component_param_utils_begin
 +      tokens as begins.
 +
 +2009-11-05  Glenn Morris  <rgm@gnu.org>
 +
 +      * emacs-lisp/bytecomp.el (byte-compile-insert-header): Drop test for
 +      Emacs 19.  (Bug#1531)
 +      (byte-compile-fix-header): Update for the above change.
 +      Drop test for epoch::version.
 +
 +      * emacs-lisp/autoload.el (autoload-rubric): Add optional feature arg.
 +      * cus-dep.el (custom-make-dependencies):
 +      * finder.el (finder-compile-keywords):
 +      Use autoload-rubric's feature argument.
 +
 +      * calendar/diary-lib.el (top-level): Make load behave more like require.
 +
 +      * vc-git.el (vc-git-stash-map): Move definition before use.
 +
 +2009-11-04  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * custom.el (custom-declare-group): Purecopy standard-value.
 +      (custom-declare-group): Purecopy custom-prefix.
 +
 +      * international/mule.el (load-with-code-conversion):
 +      Call do-after-load-evaluation unconditionally.
 +
 +      * emacs-lisp/bytecomp.el (byte-compile-output-file-form): Handle defvaralias.
 +
 +2009-11-04  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * descr-text.el: Require help-mode rather than help-fns (bug#4861).
 +
 +2009-11-04  Glenn Morris  <rgm@gnu.org>
 +
 +      * emacs-lisp/bytecomp.el (byte-compile-version-cond): Remove macro.
 +      (byte-compile-compatibility): Remove option.
 +      (byte-compile-close-variables, byte-compile-fix-header)
 +      (byte-compile-insert-header, byte-compile-output-docform)
 +      (byte-compile-file-form-defmumble, byte-compile-byte-code-maker)
 +      (byte-compile-lambda, byte-compile-form, byte-defop-compiler19)
 +      (byte-compile-list, byte-compile-concat, byte-compile-function-form)
 +      (byte-compile-insert, byte-compile-defun):
 +      Remove support for byte-compile-compatibility and Emacs 18.  (Bug#4571)
 +      (byte-defop-compiler19): Remove.
 +      Without byte-compile-compatibility, the 'emacs19-opcode property is not
 +      used by anything.  Replace all calls with byte-defop-compiler.
 +
 +2009-11-04  Juri Linkov  <juri@jurta.org>
 +
 +      * menu-bar.el (menu-bar-make-mm-toggle): Quote each element of `props'.
 +      (menu-bar-options-menu): Don't quote the `prop' arg of
 +      `menu-bar-make-mm-toggle'.
 +
 +2009-11-04  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * calendar/calendar.el (cal-loaddefs):
 +      * calendar/diary-lib.el (diary-loaddefs):
 +      * calendar/holidays.el (hol-loaddefs):
 +      * eshell/esh-module.el (esh-groups): Load rather than require.
 +
 +2009-11-03  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * calendar/todo-mode.el (todo-add-category): Don't hardcode
 +      point-min==1.
 +      (todo-top-priorities): Only display-buffer when called interactively.
 +      (todo-item-start): Don't save excursion point.
 +      (todo-item-end): Be slightly more careful.  Add `include-sep' arg.
 +      (todo-insert-item-here, todo-file-item, todo-remove-item):
 +      Adjust uses of todo-item-start and todo-item-end.
 +
 +      * emacs-lisp/autoload.el (generated-autoload-feature): Remove.
 +      (autoload-rubric): Don't use any more.
 +
 +      * emacs-lisp/byte-run.el (define-obsolete-variable-alias): Use dolist,
 +      and only put a prop if it is non-nil.
 +
 +2009-11-03  Juri Linkov  <juri@jurta.org>
 +
 +      * menu-bar.el (menu-bar-make-mm-toggle, menu-bar-make-toggle)
 +      (menu-bar-options-menu): Fix list quoting (Bug#4429).
 +
 +      * buff-menu.el (Buffer-menu-mode-map): Add hyphen between "Buffer"
 +      and "Menu" to make top-level menu item visually one unit (like
 +      it's done for "Lisp-Interaction", "Emacs-Lisp" and other
 +      multi-word menu items).  Fix :help string for quit-window.
 +
 +2009-11-03  Glenn Morris  <rgm@gnu.org>
 +
 +      * emacs-lisp/bytecomp.el (byte-compile-file-form-defvar)
 +      (byte-compile-file-form-define-abbrev-table)
 +      (byte-compile-file-form-custom-declare-variable)
 +      (byte-compile-variable-ref, byte-compile-defvar):
 +      Whether or not a warning is enabled should only affect whether we issue
 +      the warning, not whether or not we collect the relevant data.
 +      Eg warnings can be turned on and off throughout the course of a file.
 +
 +      * eshell/esh-mode.el (ansi-color-apply-on-region): Autoload it...
 +      (eshell-handle-ansi-color): ... Rather than requiring ansi-color.
 +
 +2009-11-03  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * term/ns-win.el (ns-scroll-bar-move, ns-face-at-pos):
 +      * play/mpuz.el (mpuz-create-buffer):
 +      * play/landmark.el (lm-prompt-for-move, lm-print-wts, lm-print-smell)
 +      (lm-print-y,s,noise, lm-print-w0, lm-init):
 +      * play/gomoku.el (gomoku-prompt-for-move):
 +      * play/fortune.el (fortune-in-buffer):
 +      * play/dissociate.el (dissociated-press):
 +      * play/decipher.el (decipher-adjacency-list, decipher-display-regexp)
 +      (decipher-analyze-buffer, decipher-stats-buffer, decipher-stats-buffer):
 +      * mail/supercite.el (sc-eref-show):
 +      * mail/smtpmail.el (smtpmail-send-it):
 +      * mail/rmailsum.el (rmail-summary-next-labeled-message)
 +      (rmail-summary-previous-labeled-message, rmail-summary-wipe)
 +      (rmail-summary-undelete-many, rmail-summary-rmail-update)
 +      (rmail-summary-goto-msg, rmail-summary-expunge)
 +      (rmail-summary-get-new-mail, rmail-summary-search-backward)
 +      (rmail-summary-add-label, rmail-summary-output-menu)
 +      (rmail-summary-output-body):
 +      * mail/rfc822.el (rfc822-addresses):
 +      * mail/reporter.el (reporter-dump-variable, reporter-dump-state):
 +      * mail/mailpost.el (post-mail-send-it):
 +      * mail/hashcash.el (hashcash-generate-payment):
 +      * mail/feedmail.el (feedmail-run-the-queue)
 +      (feedmail-queue-send-edit-prompt-help-first)
 +      (feedmail-send-it-immediately, feedmail-give-it-to-buffer-eater)
 +      (feedmail-deduce-address-list):
 +      * eshell/esh-ext.el (eshell-remote-command):
 +      * eshell/em-unix.el (eshell-occur-mode-mouse-goto):
 +      * emulation/viper-util.el (viper-glob-unix-files, viper-save-setting)
 +      (viper-wildcard-to-regexp, viper-glob-mswindows-files)
 +      (viper-save-string-in-file, viper-valid-marker):
 +      * emulation/viper-keym.el (viper-toggle-key):
 +      * emulation/viper-ex.el (ex-expand-filsyms, viper-get-ex-file)
 +      (ex-edit, ex-global, ex-mark, ex-next-related-buffer, ex-quit)
 +      (ex-get-inline-cmd-args, ex-tag, ex-command, ex-compile):
 +      * emulation/viper-cmd.el (viper-exec-form-in-vi)
 +      (viper-exec-form-in-emacs, viper-brac-function):
 +      * emulation/viper.el (viper-delocalize-var):
 +      * emulation/vip.el (vip-mode, vip-get-ex-token, vip-ex, vip-get-ex-pat)
 +      (vip-get-ex-command, vip-get-ex-opt-gc, vip-get-ex-buffer)
 +      (vip-get-ex-count, vip-get-ex-file, ex-edit, ex-global, ex-mark)
 +      (ex-map, ex-unmap, ex-quit, ex-read, ex-tag, ex-command):
 +      * emulation/vi.el (vi-switch-mode, vi-ex-cmd):
 +      * emulation/edt.el (edt-electric-helpify):
 +      * emulation/cua-rect.el (cua--rectangle-aux-replace):
 +      * emulation/cua-gmrk.el (cua--insert-at-global-mark)
 +      (cua--delete-at-global-mark, cua--copy-rectangle-to-global-mark)
 +      (cua-indent-to-global-mark-column):
 +      * calendar/diary-lib.el (calendar-mark-1):
 +      * calendar/cal-hebrew.el (calendar-hebrew-mark-date-pattern):
 +      Use with-current-buffer.
 +      * emulation/viper.el (viper-delocalize-var): Use dolist.
 +
 +2009-11-03  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * comint.el (comint-replace-by-expanded-history-before-point):
 +      Replace !! with the previous input string literally (Bug#1795).
 +
 +2009-11-02  Jay Belanger  <jay.p.belanger@gmail.com>
 +
 +      * calc/calc-forms.el (calc-date-notation): Allow a "blank string"
 +      to be made up of whitespace.
 +
 +2009-11-02  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * minibuffer.el (read-file-name): Don't use file dialogs for
 +      remote directories (Bug#99).
 +
 +2009-11-01  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * progmodes/sh-script.el (sh-font-lock-paren): Fix last change.
 +
 +2009-11-01  Andreas Schwab  <schwab@linux-m68k.org>
 +
 +      * view.el (view-mode-exit): If OLD-BUF is dead bury the buffer
 +      instead of deleting the window or frame.
 +
 +2009-10-31  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * textmodes/sgml-mode.el (sgml-mode-facemenu-add-face-function):
 +      Support face colors.
 +
 +      * textmodes/tex-mode.el (tex-facemenu-add-face-function):
 +      New function.  Support face colors (Bug#1168).
 +      (tex-common-initialization): Use it.
 +
 +      * facemenu.el (facemenu-enable-faces-p): Enable facemenu if the
 +      mode allows it (Bug#1168).
 +
 +2009-10-31  Juri Linkov  <juri@jurta.org>
 +
 +      * facemenu.el (list-colors-display): Don't mark buffer as
 +      modified (Bug#3948).
 +
 +2009-10-31  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * international/mule-diag.el (list-character-sets-1):
 +      Minor message fix (Bug#3526).
 +
 +      * progmodes/etags.el (etags-list-tags, etags-tags-apropos):
 +      Fix face property (Bug#4834).
 +      (etags-list-tags, etags-tags-apropos-additional)
 +      (etags-tags-apropos, tags-select-tags-table): Add follow-link
 +      property.
 +
 +      * menu-bar.el (menu-bar-tools-menu): Add Semantic and EDE menu
 +      items.
 +
 +2009-10-31  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * textmodes/two-column.el (2C-split):
 +      * textmodes/texnfo-upd.el (texinfo-multi-file-included-list):
 +      * textmodes/tex-mode.el (tex-set-buffer-directory):
 +      * textmodes/spell.el (spell-region, spell-string):
 +      * textmodes/reftex.el (reftex-erase-buffer):
 +      (reftex-get-file-buffer-force, reftex-kill-temporary-buffers):
 +      * textmodes/reftex-toc.el (reftex-toc-promote-action):
 +      * textmodes/reftex-sel.el (reftex-get-offset, reftex-insert-docstruct)
 +      (reftex-select-item):
 +      * textmodes/reftex-ref.el (reftex-label-info-update)
 +      (reftex-offer-label-menu):
 +      * textmodes/reftex-index.el (reftex-index-change-entry)
 +      (reftex-index-phrases-info):
 +      * textmodes/reftex-global.el (reftex-create-tags-file)
 +      (reftex-save-all-document-buffers, reftex-ensure-write-access):
 +      * textmodes/reftex-dcr.el (reftex-echo-ref, reftex-echo-cite)
 +      (reftex-view-crossref-from-bibtex):
 +      * textmodes/reftex-cite.el (reftex-bibtex-selection-callback)
 +      (reftex-extract-bib-entries-from-thebibliography)
 +      (reftex-all-used-citation-keys, reftex-create-bibtex-file):
 +      * textmodes/refbib.el (r2b-capitalize-title):
 +      (r2b-convert-buffer, r2b-help):
 +      * textmodes/page-ext.el (pages-directory)
 +      (pages-directory-goto-with-mouse):
 +      * textmodes/bibtex.el (bibtex-validate-globally):
 +      * textmodes/bib-mode.el (bib-capitalize-title):
 +      * textmodes/artist.el (artist-clear-buffer, artist-system):
 +      * progmodes/xscheme.el (global-set-scheme-interaction-buffer):
 +      (local-set-scheme-interaction-buffer, xscheme-process-filter)
 +      (verify-xscheme-buffer, xscheme-enter-interaction-mode)
 +      (xscheme-enter-debugger-mode, xscheme-debugger-mode-p)
 +      (xscheme-send-control-g-interrupt, xscheme-start-process)
 +      (xscheme-process-sentinel, xscheme-cd):
 +      * progmodes/verilog-mode.el (verilog-read-always-signals)
 +      (verilog-set-define, verilog-getopt-file)
 +      (verilog-module-inside-filename-p):
 +      * progmodes/sh-script.el:
 +      * progmodes/python.el (python-pdbtrack-get-source-buffer)
 +      (python-pdbtrack-grub-for-buffer, python-execute-file):
 +      * progmodes/octave-inf.el (inferior-octave):
 +      * progmodes/idlwave.el (idlwave-scan-user-lib-files)
 +      (idlwave-shell-compile-helper-routines, idlwave-set-local)
 +      (idlwave-display-completion-list-xemacs, idlwave-list-abbrevs)
 +      (idlwave-display-completion-list-emacs, idlwave-list-load-path-shadows)
 +      (idlwave-completion-fontify-classes, idlwave-display-calling-sequence):
 +      * progmodes/idlw-shell.el (idlwave-shell-examine-display-clear)
 +      (idlwave-shell-filter, idlwave-shell-examine-highlight)
 +      (idlwave-shell-sentinel, idlwave-shell-filter-directory)
 +      (idlwave-shell-display-line, idlwave-shell-set-bp-in-module)
 +      (idlwave-shell-examine-display, idlwave-shell-run-region)
 +      (idlwave-shell-filter-bp, idlwave-shell-save-and-action)
 +      (idlwave-shell-sources-filter, idlwave-shell-goto-next-error):
 +      * progmodes/idlw-help.el (idlwave-help-get-special-help)
 +      (idlwave-help-get-help-buffer):
 +      * progmodes/gud.el (gud-basic-call, gud-find-class)
 +      (gud-tooltip-activate-mouse-motions-if-enabled):
 +      * progmodes/gdb-mi.el (gdb-mouse-toggle-breakpoint-fringe):
 +      * progmodes/ebrowse.el (ebrowse-member-table, ebrowse-save-tree-as)
 +      (ebrowse-view-exit-fn, ebrowse-tags-list-members-in-file)
 +      (ebrowse-tags-next-file):
 +      * progmodes/ebnf2ps.el (ebnf-generate-eps, ebnf-generate-eps)
 +      (ebnf-eps-production-list, ebnf-begin-file, ebnf-log)
 +      (ebnf-eps-finish-and-write):
 +      * progmodes/cpp.el (cpp-edit-save):
 +      * progmodes/cperl-mode.el (cperl-pod-to-manpage):
 +      * progmodes/cc-defs.el (c-emacs-features):
 +      * progmodes/antlr-mode.el (antlr-invalidate-context-cache)
 +      (antlr-directory-dependencies):
 +      * progmodes/ada-xref.el (ada-gnat-parse-gpr, ada-get-ali-file-name)
 +      (ada-run-application, ada-find-in-src-path, ada-goto-parent)
 +      (ada-find-any-references, ada-make-filename-from-adaname)
 +      (ada-make-body-gnatstub):
 +      * obsolete/rnews.el (news-list-news-groups):
 +      * obsolete/resume.el (resume-suspend-hook, resume-write-buffer-to-file):
 +      * obsolete/iso-acc.el (iso-acc-minibuf-setup):
 +      * net/rcirc.el (rcirc-debug):
 +      * net/newst-treeview.el (newsticker--treeview-list-add-item)
 +      (newsticker--treeview-list-clear, newsticker-treeview-browse-url)
 +      (newsticker--treeview-list-update-faces, newsticker-treeview-save)
 +      (newsticker--treeview-item-show-text, newsticker--treeview-item-show)
 +      (newsticker--treeview-tree-update-tag, newsticker--treeview-buffer-init)
 +      (newsticker-treeview-show-item, newsticker--treeview-unfold-node)
 +      (newsticker--treeview-list-clear-highlight)
 +      (newsticker--treeview-list-update-highlight)
 +      (newsticker--treeview-list-highlight-start)
 +      (newsticker--treeview-tree-update-highlight)
 +      (newsticker--treeview-get-selected-item)
 +      (newsticker-treeview-mark-list-items-old)
 +      (newsticker--treeview-set-current-node):
 +      * net/newst-plainview.el (newsticker--buffer-set-uptodate):
 +      * net/newst-backend.el (newsticker--get-news-by-funcall)
 +      (newsticker--get-news-by-wget, newsticker--image-get)
 +      (newsticker--image-sentinel):
 +      * net/mairix.el (mairix-rmail-fetch-field, mairix-gnus-fetch-field):
 +      * net/eudcb-ph.el (eudc-ph-do-request, eudc-ph-open-session):
 +      (eudc-ph-close-session):
 +      * net/eudc.el (eudc-save-options):
 +      * language/thai-word.el (thai-update-word-table):
 +      * language/japan-util.el (japanese-string-conversion):
 +      * international/titdic-cnv.el (tsang-quick-converter)
 +      (ziranma-converter, ctlau-converter):
 +      * international/mule-cmds.el (describe-language-environment):
 +      * international/ja-dic-cnv.el (skkdic-convert-okuri-ari)
 +      (skkdic-convert-postfix, skkdic-convert-prefix):
 +      (skkdic-convert-okuri-nasi, skkdic-convert):
 +      * emacs-lisp/re-builder.el (reb-update-overlays):
 +      * emacs-lisp/pp.el (pp-to-string, pp-display-expression):
 +      * emacs-lisp/gulp.el (gulp-send-requests):
 +      * emacs-lisp/find-gc.el (trace-call-tree):
 +      * emacs-lisp/eieio-opt.el (eieio-browse, eieio-describe-class)
 +      (eieio-describe-generic):
 +      * emacs-lisp/eieio-base.el (eieio-persistent-read):
 +      * emacs-lisp/edebug.el (edebug-outside-excursion):
 +      * emacs-lisp/debug.el (debugger-make-xrefs):
 +      * emacs-lisp/cust-print.el (custom-prin1-to-string):
 +      * emacs-lisp/chart.el (chart-new-buffer):
 +      * emacs-lisp/authors.el (authors-scan-el, authors-scan-change-log):
 +      Use with-current-buffer.
 +      * textmodes/artist.el (artist-system): Don't call
 +      copy-sequence on a fresh string.
 +      * progmodes/idlw-shell.el (easymenu setup): Use dolist.
 +
 +2009-10-31  Stephen Berman  <stephen.berman@gmx.net>
 +
 +      * calendar/todo-mode.el (todo-edit-item): Signal an error if there
 +      is no item to edit.  (Bug#4820)
 +      (todo-top-priorities): Restore point and restore narrowing in Todo
 +      buffer.  (Bug#4820)
 +
 +2009-10-31  Glenn Morris  <rgm@gnu.org>
 +
 +      * net/ange-ftp.el (top-level): Don't require dired when compiling.
 +      (comint-last-output-start, comint-last-input-start)
 +      (comint-last-input-end): Don't defvar when compiling.
 +      (ange-ftp-process-file): Use bound-and-true-p.
 +
 +      * pcmpl-rpm.el (top-level): Move provide statement to end.
 +      (pcmpl-rpm): Remove unused custom group.
 +
 +      * pcmpl-gnu.el (tar-parse-info, tar-header-name): Declare for compiler.
 +
 +      * mail/emacsbug.el (report-emacs-bug): Request `emacs -Q' recipes.
 +
 +      * emacs-lisp/bytecomp.el (byte-compile-warning-types)
 +      (byte-compile-warnings): Add `constants' as an option.
 +      (byte-compile-callargs-warn, byte-compile-arglist-warn)
 +      (display-call-tree): Update for byte-compile-fdefinition possibly
 +      returning `(macro lambda ...)'.  (Bug#4778)
 +      (byte-compile-variable-ref, byte-compile-setq-default):
 +      Respect `constants' member of byte-compile-warnings.
 +
 +2009-10-30  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * vc-bzr.el (vc-bzr-revision-keywords): New var.
 +      (vc-bzr-revision-completion-table): Use it to fix completion of "s:"
 +      to "submit:".
 +
 +2009-10-30  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * textmodes/ispell.el (ispell-skip-region-alist):
 +      * international/mule-conf.el (eight-bit):
 +      * international/fontset.el (font-encoding-alist):
 +      * startup.el (pure-space-overflow-message):
 +      * simple.el (overwrite-mode-textual, overwrite-mode-binary):
 +      * paths.el (gnus-nntp-service, rmail-spool-directory)
 +      (term-file-prefix):
 +      * files.el (save-some-buffers-action-alist):
 +      * cmuscheme.el (same-window-buffer-names):
 +      * ielm.el (same-window-buffer-names):
 +      * shell.el (same-window-buffer-names):
 +      * mail/sendmail.el (same-window-buffer-names):
 +      * progmodes/inf-lisp.el (same-window-buffer-names):
 +      * bindings.el (mode-line-client)
 +      (mode-line-column-line-number-mode-map):
 +      * language/tibetan.el (tibetan-precomposition-rule-regexp)
 +      (tibetan-precomposed-regexp): Purecopy string arguments.
 +
 +2009-10-28  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * calc/calc.el (calc, calc-refresh, calc-trail-buffer, calc-record)
 +      (calcDigit-nondigit):
 +      * calc/calc-yank.el (calc-copy-to-buffer):
 +      * calc/calc-units.el (calc-invalidate-units-table):
 +      * calc/calc-trail.el (calc-trail-yank):
 +      * calc/calc-store.el (calc-insert-variables):
 +      * calc/calc-rewr.el (math-rewrite, math-rewrite-phase):
 +      * calc/calc-prog.el (calc-read-parse-table):
 +      * calc/calc-keypd.el (calc-do-keypad, calc-keypad-right-click):
 +      * calc/calc-help.el (calc-describe-bindings, calc-describe-key):
 +      * calc/calc-graph.el (calc-graph-delete, calc-graph-add-curve)
 +      (calc-graph-juggle, calc-graph-count-curves, calc-graph-plot)
 +      (calc-graph-plot, calc-graph-format-data, calc-graph-set-styles)
 +      (calc-graph-name, calc-graph-find-command, calc-graph-view)
 +      (calc-graph-view, calc-gnuplot-command, calc-graph-init):
 +      * calc/calc-ext.el (calc-realign):
 +      * calc/calc-embed.el (calc-do-embedded, calc-do-embedded)
 +      (calc-embedded-finish-edit, calc-embedded-make-info)
 +      (calc-embedded-finish-command, calc-embedded-stack-change):
 +      * calc/calc-aent.el (calcAlg-enter): Use with-current-buffer.
 +
 +      * pcomplete.el (pcomplete-comint-setup): If there's a choice, replace
 +      shell-dynamic-complete-filename in preference to
 +      comint-dynamic-complete-filename.
 +
 +      * bookmark.el (bookmark-insert-location, bookmark-bmenu-list)
 +      (bookmark-bmenu-show-filenames, bookmark-bmenu-hide-filenames):
 +      Don't consider whether the display supports colors.
 +      (bookmark-import-new-list): Use dolist.
 +      (bookmark-bmenu-mode-map): Move initialization into declaration.
 +      (bookmark-bmenu-list): Use dolist, simplify.
 +      (bookmark-show-all-annotations): Use save-selected-window and dolist.
 +      (menu-bar-final-items): Use push.
 +
 +2009-10-28  Bernhard Herzog  <bernhard.herzog@intevation.de>  (tiny change)
 +
 +      * vc-hg.el (vc-hg-state, vc-hg-working-revision): Use process-file so
 +      it works on remote files.
 +      (vc-hg-diff): Don't pass any `--cwd' argument.
 +
 +2009-10-27  Kevin Ryde  <user42@zip.com.au>
 +
 +      * emacs-lisp/checkdoc.el (checkdoc-proper-noun-region-engine):
 +      Use help-xref-info-regexp and help-xref-url-regexp to identify links.
 +      (Further to Bug#3921).
 +
 +2009-10-27  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/tramp-imap.el (top): Add `X-Size' to `imap-hash-headers'.
 +      (tramp-imap-do-copy-or-rename-file): Don't use the inode, when
 +      calling `tramp-imap-put-file'.  Add file size to the call.
 +      (tramp-imap-get-file-entries): Compute also user name, file size,
 +      and date.
 +      (tramp-imap-handle-insert-directory): Insert uid and gid.
 +      (tramp-imap-handle-file-attributes): Transform uid and gid
 +      according to `id-format'.
 +      (tramp-imap-put-file): New optional parameter SIZE.  Encode file
 +      size in header X-Size.
 +
 +2009-10-26  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * simple.el (transpose-subr): Give clearer error when the mark
 +      is not set.  (Bug#4807)
 +
 +2009-10-26  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/tramp.el (tramp-perl-file-truename): New defconst.
 +      Perl code contributed by yary <not.com@gmail.com> (tiny change).
 +      (tramp-handle-file-truename, tramp-get-remote-perl): Use it.
 +      Check also for "perl-file-spec" and "perl-cwd-realpath" properties.
 +      (tramp-handle-write-region): In case of APPEND, reuse the tmpfile name.
 +
 +      * net/tramp-imap.el (tramp-imap-file-name-handler-alist):
 +      Ignore `dired-call-process'.
 +      (tramp-imap-make-iht): Use `user' and `ssl' with `imap-hash-make'.
 +
 +2009-10-26  Julian Scheid  <julians37@gmail.com>
 +
 +      * net/tramp.el (tramp-perl-file-name-all-completions): New defconst.
 +      (tramp-get-remote-readlink): New defun.
 +      (tramp-handle-file-truename): Use it.
 +      (tramp-handle-file-exists-p): Check file-attributes cache, assume
 +      file exists if cache value present.
 +      (tramp-check-cached-permissions): New defun.
 +      (tramp-handle-file-readable-p): Use it.
 +      (tramp-handle-file-writable-p): Likewise.
 +      (tramp-handle-file-executable-p): Likewise.
 +      (tramp-handle-file-name-all-completions): Try using Perl to get
 +      partial completions.  When perl not available, combine `cd' and
 +      `ls' into single remote operation and use shell expansion to get
 +      partial remote directory contents.  Set `file-exists-p' cache for
 +      directory and any files returned by ls.  Change cache handling to
 +      support partial directory contents.  Use error message emitted by
 +      remote `cd' or Perl code for local tramp-error.
 +      (tramp-do-copy-or-rename-file-directly): Avoid separate
 +      tramp-send-command-and-check call.
 +      (tramp-handle-process-file): Merge three remote ops into one.
 +      Do not flush all caches when `process-file-side-effects' is set.
 +      (tramp-handle-write-region): Avoid tramp-set-file-uid-gid if
 +      file-attributes shows uid/gid to be set already.
 +
 +2009-10-26  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * textmodes/tex-mode.el (tex-dvi-view-command)
 +      (tex-show-queue-command, tex-open-quote):
 +      * progmodes/ruby-mode.el (auto-mode-alist)
 +      (interpreter-mode-alist): Purecopy strings.
 +
 +      * emacs-lisp/lisp-mode.el (emacs-lisp-mode-map): Purecopy item names.
 +
 +      * emacs-lisp/derived.el (define-derived-mode): Purecopy the doc
 +      string for the hook, keymap and abbrev table.
 +
 +      * emacs-lisp/byte-run.el (make-obsolete): Purecopy the current name.
 +
 +      * x-dnd.el (x-dnd-xdnd-to-action):
 +      * startup.el (fancy-startup-text, fancy-about-text): Change to
 +      defconst from defvar.
 +
 +      * ps-print.el (ps-page-dimensions-database): Purecopy initial value.
 +
 +      * mouse.el (mouse-buffer-menu-mode-groups, x-fixed-font-alist):
 +      Purecopy initialization strings.
 +
 +      * mail/sendmail.el (mail-header-separator)
 +      (mail-personal-alias-file):
 +      * mail/rmail.el (rmail-default-dont-reply-to-names)
 +      (rmail-ignored-headers, rmail-retry-ignored-headers)
 +      (rmail-highlighted-headers, rmail-secondary-file-directory)
 +      (rmail-secondary-file-regexp):
 +      * files.el (null-device, file-name-invalid-regexp)
 +      (locate-dominating-stop-dir-regexp)
 +      (inhibit-first-line-modes-regexps): Purecopy initialization strings.
 +      (interpreter-mode-alist): Use mapcar instead of mapc.
 +
 +      * buff-menu.el (Buffer-menu-mode-map): Purecopy name.
 +
 +      * bindings.el (mode-line-major-mode-keymap): Purecopy name.
 +      (completion-ignored-extensions):
 +      (debug-ignored-errors): Purecopy strings.
 +
 +2009-10-26  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * pcomplete.el (pcomplete-std-complete): Obey pcomplete-use-paring.
 +      (pcomplete, pcomplete-parse-buffer-arguments, pcomplete-opt)
 +      (pcomplete--here): Use push.
 +
 +      * subr.el (all-completions): Declare the 4th arg obsolete.
 +
 +2009-10-25  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * pcomplete.el (pcomplete-unquote-argument-function): New var.
 +      (pcomplete-unquote-argument): New function.
 +      (pcomplete--common-suffix): Always pay attention to case.
 +      (pcomplete--table-subvert): Quote and unquote the text.
 +      (pcomplete--common-quoted-suffix): New function.
 +      (pcomplete-std-complete): Use it and pcomplete-begin.
 +
 +      * bookmark.el (bookmark-bmenu-list): Don't use switch-to-buffer if
 +      we're inside a dedicated or minibuffer window.
 +
 +2009-10-24  Karl Fogel  <kfogel@red-bean.com>
 +
 +      * bookmark.el: Update documentation, especially documentation
 +      of `bookmark-alist' and of the bookmark file format.
 +      Patch by Drew Adams, with minor tweaks from me.  (Bug#4195)
 +
 +2009-10-24  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * mail/emacsbug.el (report-emacs-bug): Clarify that the
 +      keybindings apply to the mail buffer (Bug#4003).  Shrink help
 +      window to buffer.
 +
 +      * whitespace.el (whitespace-mode, whitespace-newline-mode)
 +      (global-whitespace-mode, global-whitespace-newline-mode)
 +      (whitespace-toggle-options, global-whitespace-toggle-options):
 +      Doc fix (Bug#3660).
 +
 +      * nxml/nxml-mode.el (nxml-balanced-close-start-tag): Use the value
 +      of xmltok-start before the end tag was inserted (Bug#2840).
 +
 +      * progmodes/sh-script.el (sh-font-lock-paren): Handle case
 +      patterns that are preceded by an open-paren (Bug#1320).
 +
 +2009-10-24  Sven Joachim  <svenjoac@gmx.de>
 +
 +      * files.el (delete-directory): Delete symlinks to directories with
 +      delete-file (Bug#4739).
 +
 +2009-10-24  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * vc.el (vc-backend-for-registration): Rename from
 +      vc-get-backend-for-registration.  Update callers.
 +
 +      * international/mule-cmds.el (set-language-info-alist):
 +      Purecopy lang-env.
 +      (leim-list-header, leim-list-entry-regexp): Change defvars to defconst.
 +      (charset): Purecopy the name.
 +      (define-char-code-property): Purecopy string arguments.
 +
 +      * emacs-lisp/byte-run.el (make-obsolete, make-obsolete-variable):
 +      Purecopy string arguments.
 +
 +      * emacs-lisp/lisp-mode.el (emacs-lisp-mode-map):
 +      * ediff-hook.el (menu-bar-ediff-menu):
 +      * buff-menu.el (Buffer-menu-mode-map): Purecopy names and tooltips.
 +      * bookmark.el (menu-bar-bookmark-map): Add :help and purecopy the name.
 +
 +2009-10-24  Glenn Morris  <rgm@gnu.org>
 +
 +      * comint.el (comint-dynamic-list-completions):
 +      * term.el (term-dynamic-list-completions): Use choose-completion rather
 +      than obsolete alias mouse-choose-completion.
 +
 +      * filecache.el (file-cache-completions-keymap): Bind mouse-2 to
 +      file-cache-choose-completion.
 +      (file-cache-choose-completion): Handle an optional event argument.
 +      (file-cache-mouse-choose-completion): Make it an obsolete alias.
 +
 +      * progmodes/octave-mod.el (octave-complete-symbol):
 +      Use choose-completion if mouse-choose-completion is ever removed.
 +
 +      * textmodes/sgml-mode.el (sgml-looking-back-at): Move definition before
 +      use.
 +
 +      * emacs-lisp/checkdoc.el (generate-autoload-cookie): Define for
 +      compiler.
 +
 +      * vc-hooks.el (vc-responsible-backend): Fix declaration.
 +
 +2009-10-24  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * minibuffer.el (completion--embedded-envvar-table): Fix last change.
 +      Ignore `pred' now that we receive one.
 +      Handle test-completion specially.
 +
 +2009-10-23  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * vc.el (vc-responsible-backend): Throw an error if not backend is
 +      found.  Remove the REGISTER argument.  Move the code dealing with
 +      REGISTER ...
 +      (vc-get-backend-for-registration): ... here.  New function.
 +      (vc-deduce-fileset): Call vc-get-backend-for-registration instead
 +      of vc-responsible-backend, pass the file name instead of the
 +      directory name.
 +
 +2009-10-23  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * pcomplete.el (pcomplete-common-suffix, pcomplete-table-subvert):
 +      New funs.
 +      (pcomplete-std-complete): Use them.  Obey pcomplete-termination-string.
 +      (pcomplete-comint-setup): Don't modify a global var via
 +      accidental side-effects.
 +      (pcomplete-shell-setup): Adjust call accordingly.
 +      (pcomplete-parse-comint-arguments): Use push.
 +
 +2009-10-23  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * emacs-lisp/checkdoc.el (checkdoc-proper-noun-region-engine):
 +      Allow uncapitalized info node names (Bug#3921).
 +
 +      * mail/emacsbug.el (report-emacs-bug): Tweak the sentence pointing
 +      to the DEBUG file (Bug#3781).
 +
 +2009-10-23  Jari Aalto  <jari.aalto@cante.net>
 +
 +      * textmodes/ispell.el (ispell-dictionary-base-alist): Add finnish
 +      dictionary entry (Bug#4579).
 +
 +2009-10-23  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/tramp.el (top): Remove `tramp-rfn-eshadow-update-overlay'
 +      from `rfn-eshadow-update-overlay-hook' when unloading.
 +      (tramp-methods): Add `tramp-copy-keep-tmpfile' for "rsync" and
 +      "rsyncc".  Adjust doc string.
 +      (tramp-temp-buffer-file-name): New buffer-local defvar.
 +      (tramp-handle-insert-file-contents, tramp-handle-write-region):
 +      Keep temporary file when indicated by method ("rsync" and
 +      "rsyncc").
 +      (tramp-handle-write-region): Handle APPEND.
 +      (tramp-delete-temp-file-function): New defun.  Added to
 +      `kill-buffer-hook'.
 +
 +2009-10-23  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * menu-bar.el (cua-enable-cua-keys): Declare for the byte-compiler.
 +
 +2009-10-23  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * term/tty-colors.el (msdos-color-values): Remove declaration, unused.
 +      (color-name-rgb-alist, tty-standard-colors)
 +      (tty-color-mode-alist): Change to defconst.
 +
 +      * simple.el (mark-inactive): Purecopy message.
 +
 +      * menu-bar.el (menu-bar-make-mm-toggle, menu-bar-make-toggle): Fix macro.
 +      (global-map, yank-menu):
 +      * textmodes/ispell.el (ispell-menu-map):
 +      * net/eudc.el (eudc-tools-menu):
 +      * international/mule-cmds.el (describe-language-environment-map)
 +      (setup-language-environment-map, set-coding-system-map)
 +      (mule-menu-keymap):
 +      * vc-hooks.el (vc-menu-entry, vc-menu-map):
 +      * replace.el (occur-mode-map):
 +      * pcvs-defs.el (cvs-global-menu): Purecopy names and tooltips.
 +
 +2009-10-23  Jay Belanger  <jay.p.belanger@gmail.com>
 +
 +      * calc/calc.el (math-read-number, math-read-number-simple):
 +      Use `save-match-data'.
 +
 +2009-10-22  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * simple.el (normal-erase-is-backspace-mode): Use input-decode-map
 +      rather than fiddling with global-map bindings, since it should only
 +      affect per-terminal settings.
 +      See http://bugs.gentoo.org/show_bug.cgi?id=289709.
 +
 +      * minibuffer.el (completion-table-with-terminator): Allow to specify
 +      the terminator-regexp.
 +
 +      * simple.el (switch-to-completions): Look for *Completions* in other
 +      frames as well.
 +
 +      * pcomplete.el: Allow the use of completion-tables.
 +      (pcomplete-std-complete): New command.
 +      (pcomplete-dirs-or-entries): Use a single call to pcomplete-entries.
 +      (pcomplete--here): Use a function for `form' rather than an expression,
 +      so it can be byte-compiled.
 +      (pcomplete-here, pcomplete-here*): Adjust accordingly.
 +      Add edebug declaration.
 +      (pcomplete-show-completions): Remove unused var `curbuf'.
 +      (pcomplete-do-complete, pcomplete-stub):
 +      Don't assume `completions' is a list of strings any more.
 +
 +2009-10-22  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * find-dired.el (find-name-arg): Fix typo in docstring.
 +
 +2009-10-22  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * pcmpl-linux.el (pcomplete/kill): Don't abuse pcomplete-entries.
 +      (pcmpl-linux-fs-types): Same, and update to new modules layout.
 +
 +      * pcmpl-gnu.el (pcmpl-gnu-makefile-names): Use a single call to
 +      pcomplete-entries.
 +
 +      * comint.el (comint-read-input-ring, comint-write-input-ring)
 +      (comint-substitute-in-file-name)
 +      (comint-dynamic-complete-as-filename)
 +      (comint-dynamic-simple-complete)
 +      (comint-dynamic-list-filename-completions)
 +      (comint-dynamic-list-completions)
 +      (comint-redirect-results-list-from-process): Minor simplifications.
 +
 +2009-10-21  Kevin Ryde  <user42@zip.com.au>
 +
 +      * emacs-lisp/checkdoc.el (checkdoc-file-comments-engine):
 +      When inserting ";;; Code" put it before any ";;;###autoload" cookie on
 +      the first form.  And insert a blank line after ";;; Code" since
 +      that's usual style.  (Bug#4612)
 +
 +      * net/dns.el: Add "Keywords: comm", as per net/net-utils.el.
 +
 +2009-10-21  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * minibuffer.el (completion-table-with-terminator): Properly implement
 +      boundaries, in case `terminator' appears in the suffix.
 +      (completion--embedded-envvar-table): Don't return boundaries if
 +      there's no valid completion.  Simplify.
 +      (completion-file-name-table): New completion table extracted from
 +      completion--file-name-table.
 +      (completion--file-name-table): Use it.
 +      (read-file-name-predicate): Declare obsolete.
 +      (read-file-name): Use the pred arg i.s.o read-file-name-predicate.
 +      * vc-bzr.el (vc-bzr-revision-completion-table): Use the new
 +      completion-file-name-table, and use the `pred' argument.
 +      * files.el (locate-file-completion-table): Use the `pred' arg rather
 +      than read-file-name-predicate.
 +      (abbreviate-file-name): Use \` rather than ^ for BOS.
 +
 +2009-10-21  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * vc.el (vc-deduce-fileset): Undo previous change, do not tell
 +      vc-responsible-backend to register, it causes problems.
 +
 +2009-10-21  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * help-fns.el: Don't require help-mode (to avoid bootstrap issues).
 +
 +2009-10-21  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/tramp-smb.el (tramp-smb-get-stat-capability): New defun.
 +      (tramp-smb-handle-file-attributes): Use it.
 +      (tramp-smb-do-file-attributes-with-stat): Don't raise an error.
 +      (tramp-smb-handle-insert-directory): Use `mapc' rather than
 +      `mapcar'.  Use `tramp-smb-get-stat-capability'.
 +      Add `dired-filename' text properties.
 +      (tramp-smb-get-cifs-capabilities): Apply `save-match-data'.
 +      (tramp-smb-maybe-open-connection): Simplify check for smbclient
 +      version.
 +
 +2009-10-20  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * subr.el (read-key-delay): Reduce to 0.01.
 +      (read-key): Use read-key-sequence-vector to avoid turning M-t into 244
 +      (bug#4751).
 +
 +2009-10-19  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * bindings.el (function-key-map): Map C-@ to C-SPC if C-@ is unbound.
 +
 +      * info.el (Info-complete-menu-item): Handle `boundaries' explicitly.
 +      (Info-menu): Remove unused vars `last' and `completions'.
 +      (Info-index-nodes): Remove unused var `node'.
 +
 +      * info.el (Info-complete-menu-item): Use complete-with-action.
 +
 +2009-10-19  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      Make vc-annotate work through copies and renames.
 +      * vc-annotate.el (vc-annotate-extract-revision-at-line):
 +      Return the file name too.
 +      (vc-annotate-revision-at-line)
 +      (vc-annotate-find-revision-at-line)
 +      (vc-annotate-revision-previous-to-line)
 +      (vc-annotate-show-log-revision-at-line): Update to get the file
 +      name from vc-annotate-extract-revision-at-line.
 +      (vc-annotate-show-diff-revision-at-line-internal): Change the
 +      argument to mean whether to show a file diff or not.  Get the file
 +      name from vc-annotate-extract-revision-at-line.
 +      (vc-annotate-show-diff-revision-at-line):
 +      Update vc-annotate-show-diff-revision-at-line call.
 +      (vc-annotate-warp-revision): Add an optional file argument.
 +
 +      * vc-git.el (vc-git-annotate-command): Pass -C -C to the blame command.
 +      (vc-git-annotate-extract-revision-at-line): Also return the file
 +      name if found.
 +
 +      * vc-hg.el (vc-hg-annotate-command): Pass --follow to the annotate
 +      command.  Remove unused code.
 +      (vc-hg-annotate-re): Update to match --follow output.
 +      (vc-hg-annotate-extract-revision-at-line): Also return the file
 +      name if found.
 +
 +      * vc.el: Update annotate-extract-revision-at-line documentation.
 +
 +2009-10-18  Kevin Ryde  <user42@zip.com.au>
 +
 +      * ibuffer.el (ibuffer-confirm-operation-on): Correction to error
 +      re-throw, `err' is a pair not a list so can't use apply (Bug#4740).
 +
 +      * net/browse-url.el (browse-url): Identify alist with "consp and
 +      not functionp" and let all other things go down the `apply' leg,
 +      as suggested by Stefan.  (Further to bug#4531.)
 +
 +2009-10-18  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * minibuffer.el (read-file-name): Check for repeat before putting
 +      a default argument in file-name-history (Bug#4657).
 +
 +      * emacs-lisp/lisp-mode.el (preceding-sexp): Recognize hash table
 +      read syntax (Bug#4737).
 +
 +      * textmodes/sgml-mode.el (sgml-delete-tag): Use sgml-looking-back-at.
 +
 +2009-10-18  Aaron S. Hawley  <aaron.s.hawley@gmail.com>
 +
 +      * textmodes/sgml-mode.el (sgml-tag-help): Prompt user for tag.
 +      (html-tag-alist, html-tag-help): Add descriptions for undocumented
 +      entries and make note of obsolete tags.
 +
 +2009-10-18  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * net/ange-ftp.el (ange-ftp-file-size): Use unwind-protect.
 +
 +2009-10-18  Glenn Morris  <rgm@gnu.org>
 +
 +      * Makefile.in (compile-last): Ensure GREP_OPTIONS is null before calling
 +      grep, so that binary files (eg international/uni-bidi.el) can match.
 +      Remove test for "UnicodeData" files, since it is hopefully unnecessary
 +      now, and in any case the file header format has changed.
 +
 +2009-10-17  Glenn Morris  <rgm@gnu.org>
 +
 +      * textmodes/flyspell.el (flyspell-large-region, flyspell-word)
 +      (flyspell-get-word, flyspell-large-region)
 +      (flyspell-auto-correct-previous-word): Doc/error message fixes.
 +
 +2009-10-17  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * Makefile.in (ELCFILES): Add ede/shell.
 +
 +2009-10-17  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * term/common-win.el (x-colors): Purecopy it.
 +
 +2009-10-17  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * tar-mode.el (tar-data-swapped-p): Make the assertion a bit more
 +      permissive for when the buffer is empty.
 +      (tar-header-block-tokenize): Decode the username and groupname.
 +      (tar-chown-entry, tar-chgrp-entry): Encode the names (bug#4730).
 +
 +2009-10-17  Eric Ludlam  <zappo@gnu.org>
 +
 +      * emacs-lisp/eieio-base.el (eieio-persistent-save): If buffer
 +      contains multibyte characters, choose first applicable coding
 +      system automatically.
 +
 +2009-10-17  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * international/mule-cmds.el (select-safe-coding-system): If the file
 +      has a coding cookie, use it regardless of any other setting (bug#4712).
 +
 +2009-10-17  Glenn Morris  <rgm@gnu.org>
 +
 +      * foldout.el (foldout-mouse-swallow-events):
 +      * gs.el (gs-load-image): Replace obsolete forms of sit-for, sleep-for.
 +
 +      * dired.el (dired-ls-F-marks-symlinks, dired-keep-marker-rename)
 +      (dired-keep-marker-copy, dired-keep-marker-hardlink)
 +      (dired-keep-marker-symlink, dired-dwim-target)
 +      (dired-copy-preserve-time): Do not autoload these defcustoms.
 +
 +      * mail/rmail.el (rmail-write-region-annotate): Prevent viewing different
 +      messages from messing up the file coding.  (Bug#4623)
 +
 +2009-10-17  Jari Aalto  <jari.aalto@cante.net>
 +
 +      * textmodes/ispell.el (ispell-get-decoded-string): Give an error
 +      if no match is found for the current dictionary.  (Bug#4578)
 +
 +      * textmodes/flyspell.el (flyspell-get-word): Make `following' argument
 +      optional, since that is how it is documented, and this is often called
 +      with a nil argument.  (Bug#4577)
 +      (flyspell-external-point-words, flyspell-auto-correct-word)
 +      (flyspell-correct-word-before-point, flyspell-word-search-forward)
 +      (flyspell-word-search-backward): Remove nil argument in calls to
 +      flyspell-get-word, since it is not needed now.
 +
 +2009-10-17  Ulrich Mueller  <ulm@gentoo.org>
 +
 +      * play/doctor.el (doctor-adverbp): Exclude some nouns.  (Bug#4565)
 +
 +2009-10-16  Glenn Morris  <rgm@gnu.org>
 +
 +      * net/rcirc.el (rcirc-authenticate): Simplify previous change.
 +
 +2009-10-16  Toru TSUNEYOSHI  <t_tuneyosi@hotmail.com>
 +
 +      * net/ange-ftp.el (ange-ftp-send-cmd): Handle `size' like `mdtm'.
 +      (ange-ftp-file-size): New function.
 +      (ange-ftp-file-attributes): Use it.
 +
 +2009-10-16  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/tramp-smb.el (tramp-smb-version): New defvar.
 +      (tramp-smb-maybe-open-connection): Use it, in order to avoid
 +      repeated checks.
 +
 +2009-10-16  Glenn Morris  <rgm@gnu.org>
 +
 +      * emacs-lisp/byte-run.el (define-obsolete-variable-alias): Doc fix.
 +      Maybe copy some custom properties from old to new name.  (Bug#4706)
 +
 +2009-10-16  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * subr.el (error, sit-for, start-process-shell-command)
 +      (start-file-process-shell-command): Set the calling convention
 +      after the function definition.
 +
 +2009-10-16  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * subr.el (error, sit-for, start-process-shell-command)
 +      (start-file-process-shell-command): Use the new
 +      set-advertised-calling-convention feature.
 +
 +2009-10-16  Taichi Kawabata  <kawabata.taichi@gmail.com>
 +
 +      * international/ucs-normalize.el (ucs-normalize-version):
 +      Change to 1.2.
 +      (check-range): Adjust for Unicode 5.2.
 +
 +2009-10-15  Juri Linkov  <juri@jurta.org>
 +
 +      * menu-bar.el (menu-bar-file-menu): Convert `separator-exit'
 +      to the `menu-item' format.
 +
 +2009-10-15  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/tramp.el (tramp-replace-environment-variables): Do not fail
 +      if the environment variable does not exist.
 +
 +      * net/tramp-smb.el (tramp-smb-errors): Add error messages.
 +      (tramp-smb-get-share, tramp-smb-get-localname): Use only VEC as
 +      parameter.
 +      (tramp-smb-handle-add-name-to-file)
 +      (tramp-smb-handle-copy-directory, tramp-smb-handle-copy-file)
 +      (tramp-smb-handle-delete-directory, tramp-smb-handle-delete-file)
 +      (tramp-smb-handle-file-attributes)
 +      (tramp-smb-do-file-attributes-with-stat)
 +      (tramp-smb-handle-file-local-copy)
 +      (tramp-smb-handle-insert-directory)
 +      (tramp-smb-handle-make-directory)
 +      (tramp-smb-handle-make-directory-internal)
 +      (tramp-smb-handle-make-symbolic-link)
 +      (tramp-smb-handle-rename-file, tramp-smb-handle-set-file-modes)
 +      (tramp-smb-handle-write-region, tramp-smb-get-file-entries)
 +      (tramp-smb-maybe-open-connection): Apply the changed parameters.
 +      (tramp-smb-read-file-entry): Read Disk names in compressed format.
 +      Handle long file names.
 +      (tramp-smb-get-cifs-capabilities): Check, whether the connection
 +      process is running.
 +      (tramp-smb-maybe-open-connection): Trace "smbclient -V" command.
 +      Read share names with "-g" option.
 +
 +2009-10-15  Ryan Yeske  <rcyeske@gmail.com>
 +
 +      * net/rcirc.el (rcirc-view-log-file): New command.
 +      (rcirc-track-minor-mode-map): Remove C-c ` binding.
 +      (rcirc-authenticate, rcirc-authinfo): Allow nickserv-nick to be
 +      specified.
 +
 +2009-10-15  Glenn Morris  <rgm@gnu.org>
 +
 +      * w32-fns.el (w32-batch-update-autoloads): Take autoload-make-program
 +      from the second command-line argument.
 +      * makefile.w32-in (autoloads, $(lisp)/calendar/cal-loaddefs.el)
 +      ($(lisp)/calendar/diary-loaddefs.el, $(lisp)/calendar/hol-loaddefs.el)
 +      ($(lisp)/mh-e/mh-loaddefs.el): Pass $(MAKE) as second argument to
 +      w32-batch-update-autoloads.
 +      * emacs-lisp/autoload.el (autoload-make-program): New variable.
 +      (batch-update-autoloads): Handle autoload-excludes on windows-nt.
 +
 +      * mail/rmailedit.el (rmail-cease-edit): Give an error if the end of
 +      the headers cannot be located.  Simplify, subtracting superflous
 +      save-excursions.
 +
 +2009-10-15  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      Replace completion-base-size by completion-base-position to fix bugs
 +      such as (bug#4699).
 +      * simple.el (completion-base-position): New var.
 +      (completion-base-size): Mark as obsolete.
 +      (choose-completion): Make it work for mouse events as well.
 +      Pass the new base-position to choose-completion-string.
 +      (choose-completion-guess-base-position): New function, extracted from
 +      choose-completion-delete-max-match.
 +      (choose-completion-delete-max-match): Use it.  Make obsolete.
 +      (choose-completion-string): Use the new base-position info.
 +      (completion-root-regexp): Delete.
 +      (completion-setup-function): Preserve completion-base-position.
 +      Eliminate obsolete base-size manipulation.
 +      * minibuffer.el (display-completion-list): Don't mess with base-size.
 +      (minibuffer-completion-help): Set completion-base-position instead.
 +      * mouse.el (mouse-choose-completion): Redefine as a mere alias to
 +      choose-completion.
 +      * textmodes/bibtex.el (bibtex-complete):
 +      * emacs-lisp/crm.el (crm--choose-completion-string):
 +      Adjust to new calling convention.
 +      * complete.el (partial-completion-mode): Use minibufferp to avoid
 +      bumping into incompatible change to choose-completion-string-functions.
 +      * ido.el (ido-choose-completion-string): Make its calling convention
 +      more permissive.
 +      * comint.el (comint-dynamic-list-input-ring-select): Remove obsolete
 +      base-size manipulation.
 +      (comint-dynamic-list-input-ring): Use dotimes and push.
 +      * iswitchb.el (iswitchb-completion-help): Remove dead-code call to
 +      fundamental-mode.  Use `or'.
 +
 +2009-10-14  Juri Linkov  <juri@jurta.org>
 +
 +      * misearch.el (multi-isearch-next-buffer-from-list)
 +      (multi-isearch-next-file-buffer-from-list): Doc fix.  (Bug#4723)
 +
 +2009-10-14  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * Makefile.in (compile-onefile): Load `bytecomp' rather than
 +      `bytecomp.el'.
 +
 +      * minibuffer.el (completion-pcm--merge-completions): Make sure the
 +      string we return is all made up of text from the completions rather
 +      than part from the completions and part from the input (bug#4219).
 +
 +      * ido.el (ido-everywhere): Use define-minor-mode.
 +
 +      * buff-menu.el (list-buffers, ctl-x-map):
 +      Mark the entry points with ;;;###autoload cookies.
 +
 +2009-10-14  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * vc-git.el (vc-git-dir-extra-headers): Set the branch name
 +      correctly in the detached head case.
 +      (vc-git-print-log): Remove unused binding.
 +
 +      * vc.el (vc-responsible-backend): When a directory is passed for
 +      for registration create a VC repository if no backend is
 +      responsible for the directory argument.
 +      (vc-deduce-fileset): Tell vc-responsible-backend to register.
 +
 +      * vc.el: Move comments about RCS and SCCS ...
 +      * vc-rcs.el:
 +      * vc-sccs.el: ... here, respectively.
 +
 +2009-10-14  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * minibuffer.el (completion--file-name-table): Return nil if there's
 +      no file completion, even if substitute-in-file-name changed
 +      the string (bug#4708).
 +
 +2009-10-13  Juri Linkov  <juri@jurta.org>
 +
 +      * files-x.el (read-file-local-variable-value): Don't filter out
 +      minor modes from mode name completion (bug#4664).
 +
 +2009-10-13  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * international/mule-cmds.el (ucs-names): Remove exclusion of
 +      "Enclosed Ideographic Supplement" range (U+1F200..U+1F2FF).
 +
 +2009-10-13  Kenichi Handa  <handa@m17n.org>
 +
 +      * international/uni-name.el: Regenerated.
 +
 +2009-10-13  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * bs.el (bs-mode): Fix last change.  (`revert-buffer-function'
 +      should be automatically buffer-local, but isn't.)
 +
 +2009-10-12  Sam Steingold  <sds@gnu.org>
 +
 +      * progmodes/compile.el (compilation-next-error-function): Fix the
 +      timestamps if the buffer has been visited before.
 +      (compilation-mode-font-lock-keywords): Do not prepend "^ *" to
 +      non-anchored patterns, like the perl one (bug#3928).
 +
 +2009-10-12  Glenn Morris  <rgm@gnu.org>
 +
 +      * net/tramp-smb.el (tramp-smb-do-file-attributes-with-stat):
 +      Let-bind `size'.
 +
 +2009-10-12  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * proced.el (proced-unload-function): New function.
 +
 +      * bs.el (bs-mode): Set `revert-buffer-function' to `bs-refresh'.
 +      (bs-refresh): Add IGNORED arg for `revert-buffer' compatibility.
 +      Doc fix.
 +
 +      * menu-bar.el (menu-bar-file-menu): Fix format of `separator-exit' item.
 +
 +2009-10-11  Juri Linkov  <juri@jurta.org>
 +
 +      * files-x.el (read-file-local-variable-value):
 +      Provide default value only for bound variables (bug#4664).
 +
 +2009-10-11  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/tramp.el (tramp-local-host-p): Function shall return nil for
 +      connection methods like smb.
 +
 +      * net/tramp-cache.el (tramp-flush-connection-property): The hash
 +      can be empty.
 +
 +      * net/tramp-smb.el (tramp-smb-errors): Add error messages.
 +      (tramp-smb-file-name-handler-alist): Add handlers for
 +      `add-name-to-file', `make-symbolic-link'.
 +      (tramp-smb-handle-add-name-to-file)
 +      (tramp-smb-do-file-attributes-with-stat)
 +      (tramp-smb-handle-make-symbolic-link)
 +      (tramp-smb-get-cifs-capabilities): New defuns.
 +      (tramp-smb-handle-copy-directory, tramp-smb-handle-copy-file)
 +      (tramp-smb-handle-delete-directory, tramp-smb-handle-delete-file)
 +      (tramp-smb-handle-file-local-copy)
 +      (tramp-smb-handle-make-directory-internal)
 +      (tramp-smb-handle-rename-file, tramp-smb-handle-write-region):
 +      The file name syntax depends on cifs capabilities.
 +      (tramp-smb-handle-file-attributes):
 +      Call `tramp-smb-do-file-attributes-with-stat' if possible.
 +      (tramp-smb-handle-insert-directory): Use posix attributes if possible.
 +      (tramp-smb-handle-set-file-modes): It is applicable for posix only.
 +
 +2009-10-11  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * emacs-lisp/eieio.el: Avoid requiring cl at runtime.
 +      (eieio-defclass): Apply deftype handler and setf-method properties
 +      directly.
 +      (eieio-add-new-slot): Avoid union function from cl library.
 +      (eieio--typep): New function.
 +      (eieio-perform-slot-validation): Use it.
 +
 +2009-10-10  Karl Fogel  <kfogel@red-bean.com>
 +
 +      * bookmark.el (bookmark-yank-word, bookmark-insert-current-bookmark):
 +      Update documentation to refer to the variables documented in r1.135.
 +      (Bug#4188)
 +
 +2009-10-10  Karl Fogel  <kfogel@red-bean.com>
 +
 +      * bookmark.el (Info-suffix-list): Remove this unused variable.
 +      (bookmark-current-point): Remove this obsolete variable.
 +      (bookmark-set, bookmark-rename, bookmark-send-edited-annotation):
 +      Adjust for removal of bookmark-current-point.
 +
 +      (bookmarks-already-loaded, bookmark-current-buffer)
 +      (bookmark-yank-point): Document.  (Bug#4188)
 +
 +2009-10-10  Glenn Morris  <rgm@gnu.org>
 +
 +      * frame.el (frame-height): Doc fix.
 +
 +      * calendar/calendar.el (calendar-split-width-threshold): New option.
 +      (calendar-basic-setup): Use calendar-split-width-threshold.
 +
 +2009-10-09  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * international/mule-cmds.el (ucs-names): Exclude new "Enclosed
 +      Ideographic Supplement" range (U+1F200..U+1F2FF).
 +
 +2009-10-09  Karl Fogel  <kfogel@red-bean.com>
 +
 +      * bookmark.el (bookmark-bmenu-rename): Don't call bookmark-bmenu-list,
 +      since the list will have been rebuilt anyway.  (Bug#4349)
 +
 +2009-10-09  Karl Fogel  <kfogel@red-bean.com>
 +
 +      * bookmark.el (bookmark-delete): Don't let batch arg prevent saving.
 +      (bookmark-bmenu-execute-deletions): Don't save here, as
 +      bookmark-delete will now do so if necessary.
 +      Suggested by Thierry Volpiatto <thierry.volpiatto {_AT_} gmail.com>.
 +      (Bug#4348)
 +
 +2009-10-09  Glenn Morris  <rgm@gnu.org>
 +
 +      * mail/emacsbug.el (report-emacs-bug): Also print `features'.
 +
 +2009-10-09  Karl Fogel  <kfogel@red-bean.com>
 +
 +      * bookmark.el (bookmark-jump): Add new `display-func' parameter.
 +      (bookmark-jump-other-window): Just invoke bookmark-jump with new
 +      argument now, so the two function's behaviors will match.  (Bug#3645)
 +
 +2009-10-08  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/tramp.el (tramp-file-name-real-user, tramp-file-name-domain)
 +      (tramp-file-name-real-host, tramp-file-name-port):
 +      Apply `save-match-data'.
 +
 +      * net/tramp-smb.el (tramp-smb-handle-copy-directory): Handle the
 +      case both directories are remote.
 +      (tramp-smb-handle-expand-file-name): Implement "~" expansion.
 +      (tramp-smb-maybe-open-connection): Flush the cache only if necessary.
 +
 +2009-10-07  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * makefile.w32-in (WINS_UPDATES): Fix typo in previous change.
 +
 +2009-10-07  Glenn Morris  <rgm@gnu.org>
 +
 +      * emacs-lisp/autoload.el (batch-update-autoloads): Remove useless use
 +      of concat.
 +
 +2009-10-07  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * files-x.el (read-file-local-variable): Include some
 +      non-user-variables in the completion table (bug#4664).
 +
 +2009-10-07  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/tramp-cache.el (tramp-flush-connection-property): Add trace
 +      message.
 +
 +      * net/tramp-smb.el (tramp-smb-errors): Add error messages.
 +      (tramp-smb-file-name-handler-alist): Add handler for
 +      `copy-directory', `expand-file-name', `set-file-modes'.
 +      (tramp-smb-handle-copy-directory)
 +      (tramp-smb-handle-expand-file-name)
 +      (tramp-smb-handle-set-file-modes): New defuns.
 +      (tramp-smb-handle-copy-file): Handle KEEP-DATE.
 +      (tramp-smb-handle-file-attributes): Simplify check for retrieving
 +      entry.
 +      (tramp-smb-handle-insert-directory): Don't flush the cache.
 +      (tramp-smb-maybe-open-connection): Check for samba client and
 +      server versions.
 +
 +2009-10-07  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * emacs-lisp/autoload.el (batch-update-autoloads): Fix last change
 +      to not error out of search for "^lisp=" fails.
 +
 +2009-10-07  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * makefile.w32-in (WINS_UPDATES): New macro.
 +      (custom-deps, finder-data, autoloads): Use it.
 +
 +2009-10-07  Glenn Morris  <rgm@gnu.org>
 +
 +      * Makefile.in (autoloads): Revert previous change.
 +      * emacs-lisp/autoload.el (batch-update-autoloads): Rather than having
 +      the list of preloaded files passed on the command-line, get
 +      it from src/Makefile.
 +
 +      * calendar/calendar.el (calendar-basic-setup): In the wide frame case,
 +      show the original buffer rather than a random one.
 +
 +2009-10-07  Markus Rost  <rost@math.uni-bielefeld.de>
 +
 +      * help.el (describe-no-warranty): Place point in a slightly better
 +      position in the GPLv3 text.
 +
 +2009-10-06  Sam Steingold  <sds@gnu.org>
 +
 +      * net/tramp-compat.el (tramp-compat-process-running-p): Check that
 +      the comm attribute is present before calling regexp-quote.
 +
 +2009-10-06  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * play/animate.el (animate-string): For good effect, make sure
 +      `indent-tabs-mode' and `show-trailing-whitespace' are nil.
 +
 +      * play/animate.el (animate-sequence, animate-birthday-present):
 +      * misc.el (butterfly): Don't set `indent-tabs-mode'.
 +
 +2009-10-06  Glenn Morris  <rgm@gnu.org>
 +
 +      * emacs-lisp/byte-run.el (define-obsolete-face-alias): Doc fix.
 +
 +      * emacs-lisp/autoload.el (autoload-excludes): New variable.
 +      (autoload-generate-file-autoloads): Skip files in autoload-excludes.
 +      (batch-update-autoloads): Process a string value of autoload-excludes,
 +      set during the build process.
 +      * Makefile.in (autoloads): Skip preloaded files.  (Bug#4446)
 +
 +      * net/tramp.el (tramp-handle-start-file-process): Move tramp-error call
 +      inside with-parsed...  macro so that `v' is defined.
 +
 +      * progmodes/f90.el (f90-end-of-block, f90-beginning-of-block):
 +      * progmodes/fortran.el (fortran-end-of-block)
 +      (fortran-beginning-of-block):
 +      Also push mark in the macro case.
 +
 +      * emerge.el (emerge-show-file-name):
 +      * calc/calc.el (calc-quit):
 +      * calc/calc-misc.el (calc-big-or-small):
 +      * calc/calc-graph.el (calc-graph-view):
 +      * calc/calc-ext.el (calc-reset):
 +      * calendar/calendar.el (calendar-basic-setup):
 +      Use window-full-height-p.
 +
 +      * mail/rmailedit.el (rmail-cease-edit): If there is a Content-Type
 +      header we don't understand, don't insert another.  (Bug#4624)
 +      If changing mime charset, insert the new one in the right place.
 +
 +2009-10-06  Matthew Junker  <matthew.junker@sbcglobal.net>  (tiny change)
 +
 +      * calendar/cal-tex.el (cal-tex-cursor-month-landscape)
 +      (cal-tex-cursor-month): Correctly increment the end date for diary and
 +      holiday listing.  (Bug#4626)
 +
 +2009-10-05  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * help-fns.el (describe-function-1): Don't burp if the function is not
 +      a symbol.
 +
 +2009-10-05  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * emacs-lisp/chart.el (chart-face-pixmap-list, chart-new-buffer, chart)
 +      (chart-axis-range, chart-axis-names, chart-sequece, chart-bar)
 +      (chart-draw, chart-axis-draw, chart-sort, chart-sort-matchlist)
 +      (chart-draw-line, chart-bar-quickie): Fix typos in docstrings.
 +
 +      * emacs-lisp/eieio.el (generic-p, eieiomt-next, eieio-generic-form)
 +      (eieio-default-superclass): Reflow docstrings.
 +      (this, class-option-assoc, defclass, eieio-class-un-autoload)
 +      (eieio-unbind-method-implementations, defmethod)
 +      (eieio-validate-slot-value, eieio-validate-class-slot-value)
 +      (oref-default, eieio-oref-default, eieio-oset, eieio-oset-default)
 +      (with-slots, eieio-add-new-slot, object-assoc, object-remove-from-list)
 +      (eieio-slot-originating-class-p, eieio-slot-name-index)
 +      (eieio-pre-method-execution-hooks, eieio-initarg-to-attribute)
 +      (constructor, initialize-instance, no-next-method, object-print)
 +      (object-write, eieio-override-prin1, eieio-edebug-prin1-to-string):
 +      Fix typos in docstrings.
 +      (eieio-defclass, eieio-perform-slot-validation-for-default, defgeneric)
 +      (child-of-class-p, object-slots, slot-boundp, slot-exists-p)
 +      (next-method-p): Doc fixes.
 +      (eieio-add-new-slot, call-next-method, eieiomt-add, change-class):
 +      Fix typos in error messages.
 +      (eieio-defmethod): Fix typo in description of generic method.
 +
 +      * emacs-lisp/eieio-base.el (eieio-instance-inheritor, slot-unbound)
 +      (eieio-persistent-save-interactive, slot-missing):
 +      Fix typos in docstrings.
 +      (eieio-instance-inheritor-slot-boundp): Doc fix.
 +
 +      * emacs-lisp/eieio-comp.el (byte-compile-file-form-defmethod)
 +      (byte-compile-defmethod-param-convert): Fix typos in docstrings.
 +
 +      * emacs-lisp/eieio-custom.el (eieio-done-customizing)
 +      (eieio-custom-object-apply-reset):
 +      Fix typos in docstrings and error messages.
 +
 +      * emacs-lisp/eieio-datadebug.el (data-debug-show):
 +      Fix typo in docstring.
 +
 +      * emacs-lisp/eieio-opt.el (top): Fix typo in error message.
 +      (eieio-browse-tree): Doc fix.
 +      (eieio-all-generic-functions, eieio-class-speedbar): Reflow docstrings.
 +      (eieio-help-mode-augmentation-maybee, eieio-class-speedbar-make-map):
 +      Fix typos in docstrings.
 +
 +      * emacs-lisp/eieio-speedbar.el (eieio-speedbar-file-button): Doc fix.
 +      (eieio-speedbar-key-map, eieio-speedbar-create-engine)
 +      (eieio-speedbar-buttons, eieio-speedbar, eieio-speedbar-object-children)
 +      (eieio-speedbar-make-tag-line, eieio-speedbar-object-expand):
 +      Reflow docstrings.
 +
 +2009-10-05  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * vc-hg.el (log-view-vc-backend): Declare for compiler.
 +      (vc-hg-outgoing-mode, vc-hg-incoming-mode):
 +      Set log-view-vc-backend so that diff can work.
 +
 +      * log-view.el (log-view-diff): Use vc-diff-internal instead of
 +      vc-version-diff.
 +      (vc-diff-internal): Autoload this instead of vc-version-diff.
 +
 +2009-10-05  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * simple.el (eval-expression): Doc fix.
 +
 +      * progmodes/cwarn.el (cwarn-mode): Doc fix.
 +
 +2009-10-05  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * files.el (directory-files-no-dot-files-regexp): New defconst.
 +      (delete-directory): Use it.
 +      (copy-directory): Use it.  Remove parameter PRESERVE-UID-GID.
 +
 +      * net/tramp.el (tramp-verbose): Fix docstring.
 +      (tramp-methods): Add recursive option to `tramp-copy-args'.
 +      Add `tramp-copy-recursive'.  Valid for "rcp", "scp", "scp1", "scp2",
 +      "scp1_old", "scp2_old", "rsync", "rsyncc".
 +      (tramp-default-method): Check also for `auth-source-user-or-password'.
 +      (tramp-file-name-handler-alist, tramp-file-name-for-operation):
 +      Add handler for `copy-directory'.
 +      (tramp-handle-copy-directory): New defun.
 +      (tramp-do-copy-or-rename-file-out-of-band): Handle directory case.
 +      (tramp-handle-start-file-process): Raise an error when PROGRAM is nil.
 +      Optimize sent command.
 +
 +2009-10-05  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * calendar/diary-lib.el (diary-show-all-entries): Re-fit the calendar
 +      window if necessary.
 +
 +      * calendar/calendar.el (calendar-basic-setup): Don't call
 +      switch-to-buffer in a dedicated window.
 +
 +2009-10-05  Karl Fogel  <kfogel@red-bean.com>
 +
 +      * bookmark.el (bookmark-handle-bookmark): If bookmark has no file,
 +      don't do anything related to relocating, just return nil.
 +      (bookmark-error-no-filename): New error.
 +      (bookmark-default-handler): Signal `bookmark-error-no-filename' if
 +      bookmark has no file.  Don't even attempt to handle things that
 +      are not files; the whole point of custom handlers is to keep that
 +      knowledge elsewhere anyway.  Tighten some comments.
 +      (bookmark-file-or-variation-thereof): Remove now-unused function.
 +      (bookmark-location): Doc string fix.
 +      (Bug#4250)
 +
 +2009-10-04  Karl Fogel  <kfogel@red-bean.com>
 +
 +      * bookmark.el (bookmark-handle-bookmark): When relocating a bookmark,
 +      don't use a file dialog, because they usually don't know how to read
 +      a directory target from the user.  (Bug#4230)
 +      Also, make sure the prompt can display directories as well as files.
 +
 +2009-10-04  Karl Fogel  <kfogel@red-bean.com>
 +
 +      * bookmark.el (bookmark-set, bookmark-buffer-name):
 +      Improve doc strings.  (Bug#1193)
 +
 +2009-10-04  Karl Fogel  <kfogel@red-bean.com>
 +
 +      * bookmark.el (bookmark-get-bookmark, bookmark-get-bookmark-record)
 +      (bookmark-set-name, bookmark-prop-get, bookmark-prop-set)
 +      (bookmark-get-annotation, bookmark-set-annotation)
 +      (bookmark-get-filename, bookmark-set-filename, bookmark-get-position)
 +      (bookmark-set-position, bookmark-get-front-context-string)
 +      (bookmark-set-front-context-string, bookmark-get-rear-context-string)
 +      (bookmark-set-rear-context-string, bookmark-location, bookmark-jump)
 +      (bookmark-jump-other-window, bookmark-handle-bookmark)
 +      (bookmark-relocate, bookmark-insert-location, bookmark-rename)
 +      (bookmark-insert, bookmark-delete, bookmark-time-to-save-p)
 +      (bookmark-edit-annotation-mode, bookmark-edit-annotation):
 +      Improve doc strings to say whether bookmark can be a string or
 +      a record or both, and make other consistency and clarity fixes.
 +      (bookmark-get-handler, bookmark--jump-via, bookmark-write-file)
 +      (bookmark-default-annotation-text, bookmark-yank-word)
 +      (bookmark-maybe-load-default-file, bookmark-maybe-sort-alist)
 +      (bookmark-import-new-list, bookmark-maybe-rename)
 +      (bookmark-bmenu-show-filenames, bookmark-bmenu-hide-filenames)
 +      (bookmark-bmenu-bookmark): Give these doc strings.
 +      (bookmark-bmenu-check-position): Give this a doc string, but also
 +      add a FIXME comment about how the function may be pointless.
 +      (bookmark-default-handler): Rework doc string and change a
 +      parameter name, to clarify that this takes a bookmark record
 +      not a bookmark name.
 +      (bookmark-set): Change a parameter name to indicate its meaning,
 +      and improve the doc string a bit.
 +      (Bug#4188)
 +
 +2009-10-04  Karl Fogel  <kfogel@red-bean.com>
 +
 +      * bookmark.el (bookmark-alist): Document the new `handler' element
 +      in the param alist.
 +      (bookmark-make-record-function): Adjust documentation for above.
 +      (Bug#4193)
 +
 +2009-10-04  Karl Fogel  <kfogel@red-bean.com>
 +
 +      * info.el (Info-bookmark-make-record): Document this function.
 +      (Info-bookmark-jump): Document with a doc string, not just a comment.
 +      (Bug#4203)
 +
 +2009-10-04  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * files.el (copy-directory): New defun.
 +
 +      * dired-aux.el (dired-copy-file-recursive): Use it.
 +
 +2009-10-04  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * files-x.el (modify-dir-local-variable)
 +      (copy-dir-locals-to-file-locals-prop-line): Fix typos in
 +      docstrings.
 +
 +      * recentf.el (recentf-unload-function): New function.
 +
 +2009-10-04  Glenn Morris  <rgm@gnu.org>
 +
 +      * window.el (window-full-height-p): Add doc string.
 +
 +2009-10-04  Martin Rudalics  <rudalics@gmx.at>
 +
 +      * window.el (window-full-height-p): New function.  (Bug#4543)
 +
 +2009-10-03  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * vc.el: Remove commented out code.
 +      (vc-derived-from-dir-mode): Remove, unused.
 +      (vc-version-diff, vc-diff): Consistently pass t to vc-deduce-fileset.
 +
 +2009-10-03  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/tramp-ftp.el (tramp-ftp-file-name-handler):
 +      Disable `file-name-handler-alist' when loading 'ange-ftp.  Otherwise,
 +      there could be recursive loading when `default-directory' is a
 +      remote file name.  (Bug#4614)
 +
 +2009-10-03  Glenn Morris  <rgm@gnu.org>
 +
 +      * calendar/calendar.el (calendar-basic-setup): Handle the case where
 +      the frame is wide.
 +      (calendar-generate-window): Test for shrinkability rather than width.
 +
 +      * mail/rmail.el (rmail-generate-viewer-buffer): Be more careful about
 +      reusing existing buffers, in case we happen to visit two files with the
 +      same basename.  (Bug#4593)
 +
 +2009-10-02  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * makefile.w32-in (update-subdirs-CMD): Add cedet to $(WINS_SUBDIR).
 +      (WINS_CEDET_SUBDIRS): List of subdirectories of cedet.
 +      (bootstrap-clean-CMD, bootstrap-clean-SH): Remove *.elc files in
 +      subdirs of cedet as well.
 +      (AUTOGENEL): Add loaddefs.el files in cedet subdirectories.
 +
 +2009-10-02  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * emacs-lisp/eldoc.el (eldoc-get-fnsym-args-string):
 +      Obey advertised-signature-table.
 +
 +      * help-fns.el (help-function-arglist): Don't check
 +      advertised-signature-table.
 +      (describe-function-1): Do it here instead so it also applies to subrs.
 +
 +2009-10-02  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * simple.el (start-file-process): Say in the doc-string, that file
 +      handlers might not support pty association, if PROGRAM is nil.
 +
 +      * net/ange-ftp.el (ange-ftp-generate-passwd-key): Check, whether
 +      HOST and USER are strings.  They are nil, when there are
 +      incomplete entries in ~/.netrc, for example.
 +      (ange-ftp-delete-directory): Implement RECURSIVE case.  Change to
 +      root directory ("device busy" error otherwise).
 +
 +      * net/tramp-smb.el (tramp-smb-handle-make-directory-internal):
 +      Flush file properties of created directory.
 +
 +2009-10-02  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * makefile.w32-in (WINS_BASIC): Remove cedet.
 +      (WINS_CEDET): Add cedet.
 +      (update-subdirs-SH): Use $(WINS_SUBDIR), not $(WINS).
 +
 +2009-10-02  Kevin Ryde  <user42@zip.com.au>
 +
 +      * net/browse-url.el (browse-url): Pass any symbol in
 +      browse-url-browser-function to `apply', since if you've mistakenly put
 +      an unbound symbol then the error is clearer.  (Bug#4531)
 +
 +2009-10-02  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * allout.el (allout-init, allout-back-to-current-heading)
 +      (allout-beginning-of-current-entry, allout-ascend-to-depth)
 +      (allout-ascend, allout-up-current-level, allout-end-of-level)
 +      (allout-previous-visible-heading, allout-forward-current-level)
 +      (allout-backward-current-level, allout-show-children):
 +      * apropos.el (apropos-describe-plist):
 +      * bookmark.el (bookmark-maybe-historicize-string, bookmark-bmenu-list):
 +      * comint.el (comint-strip-ctrl-m, comint-goto-process-mark):
 +      * completion.el (add-completion, add-permanent-completion):
 +      * descr-text.el (describe-text-category, describe-char):
 +      * desktop.el (desktop-lazy-abort):
 +      * dired-x.el (dired-omit-expunge, dired-x-bind-find-file):
 +      * dired.el (dired-build-subdir-alist):
 +      * ediff.el (ediff-version):
 +      * elide-head.el (elide-head, elide-head-show):
 +      * emerge.el (emerge-version):
 +      * env.el (getenv):
 +      * face-remap.el (variable-pitch-mode):
 +      * faces.el (describe-face):
 +      * ffap.el (ffap-next-url, find-file-at-point, ffap-at-mouse)
 +      (dired-at-point):
 +      * files.el (find-file-existing, auto-save-mode):
 +      * font-lock.el (font-lock-fontify-buffer):
 +      * help-fns.el (describe-function, describe-variable)
 +      (describe-syntax, describe-categories):
 +      * help.el (view-lossage, describe-bindings, describe-key)
 +      (describe-mode):
 +      * hexl.el (hexl-current-address):
 +      * hi-lock.el (hi-lock-mode, hi-lock-find-patterns):
 +      * info.el (Info-goto-emacs-key-command-node):
 +      * log-edit.el (log-edit-insert-cvs-template)
 +      (log-edit-insert-cvs-rcstemplate):
 +      * menu-bar.el (menu-bar-mode):
 +      * mouse.el (mouse-appearance-menu):
 +      * newcomment.el (comment-indent-new-line):
 +      * pgg.el (pgg-save-coding-system, pgg-encrypt-region)
 +      (pgg-encrypt-symmetric-region, pgg-encrypt-symmetric)
 +      (pgg-encrypt, pgg-decrypt-region, pgg-decrypt)
 +      (pgg-sign-region, pgg-sign, pgg-verify-region, pgg-verify):
 +      * recentf.el (recentf-mode):
 +      * savehist.el (savehist-mode, savehist-save):
 +      * shadowfile.el (shadow-copy-files):
 +      * simple.el (kill-ring-save, next-line, previous-line)
 +      (normal-erase-is-backspace-mode):
 +      * strokes.el (strokes-update-window-configuration)
 +      (strokes-load-user-strokes, strokes-prompt-user-save-strokes)
 +      (strokes-xpm-for-stroke):
 +      * time.el (emacs-uptime, emacs-init-time):
 +      * tutorial.el (tutorial--describe-nonstandard-key)
 +      (tutorial--detailed-help):
 +      * type-break.el (type-break-mode)
 +      (type-break-mode-line-message-mode, type-break-query-mode)
 +      (type-break-guesstimate-keystroke-threshold):
 +      * vc.el (vc-version-diff, vc-diff, vc-root-diff):
 +      * version.el (emacs-version):
 +      * vt-control.el (vt-keypad-on, vt-keypad-off, vt-numlock):
 +      * winner.el (winner-mode):
 +      * calendar/timeclock.el (timeclock-in, timeclock-out)
 +      (timeclock-status-string, timeclock-change)
 +      (timeclock-workday-remaining-string)
 +      (timeclock-workday-elapsed-string)
 +      (timeclock-when-to-leave-string):
 +      * calendar/todo-mode.el (todo-add-category):
 +      * emacs-lisp/advice.el (ad-enable-regexp, ad-disable-regexp):
 +      * emacs-lisp/autoload.el (update-file-autoloads):
 +      * emacs-lisp/checkdoc.el (checkdoc-current-buffer)
 +      (checkdoc-start, checkdoc-continue, checkdoc-rogue-spaces)
 +      (checkdoc-message-text, checkdoc-defun):
 +      * emacs-lisp/debug.el (debugger-list-functions):
 +      * emacs-lisp/easy-mmode.el (easy-mmode-define-navigation):
 +      * emacs-lisp/eieio-opt.el (eieio-describe-class)
 +      (eieio-describe-generic):
 +      * emacs-lisp/lisp-mnt.el (lm-synopsis):
 +      * emacs-lisp/shadow.el (list-load-path-shadows):
 +      * emulation/cua-base.el (cua-mode):
 +      * emulation/edt.el (edt-set-scroll-margins):
 +      * emulation/tpu-edt.el (tpu-toggle-newline-and-indent)
 +      (tpu-toggle-regexp, tpu-toggle-search-direction)
 +      (tpu-toggle-rectangle, tpu-toggle-control-keys):
 +      * emulation/tpu-extras.el (tpu-set-scroll-margins):
 +      * emulation/viper-cmd.el (viper-set-searchstyle-toggling-macros)
 +      (viper-set-parsing-style-toggling-macro)
 +      (viper-set-emacs-state-searchstyle-macros):
 +      * emulation/viper.el (viper-set-hooks):
 +      * eshell/esh-mode.el (eshell-truncate-buffer):
 +      * international/mule-cmds.el (prefer-coding-system)
 +      (describe-input-method, describe-language-environment):
 +      * international/mule-diag.el (list-character-sets)
 +      (describe-character-set, describe-coding-system)
 +      (describe-fontset, list-fontsets, list-input-methods):
 +      * mail/sendmail.el (mail-signature):
 +      * net/ange-ftp.el (ange-ftp-copy-file):
 +      * net/browse-url.el (browse-url):
 +      * net/eudc.el (eudc-set-server, eudc-get-attribute-list):
 +      * net/quickurl.el (quickurl-add-url):
 +      * net/rcirc.el (names, topic):
 +      * net/xesam.el (xesam-mode):
 +      * play/5x5.el (5x5-new-game):
 +      * play/yow.el (apropos-zippy):
 +      * progmodes/ada-mode.el (ada-mode-version):
 +      * progmodes/f90.el (f90-beginning-of-subprogram, f90-end-of-subprogram)
 +      (f90-end-of-block)
 +      (f90-beginning-of-block):
 +      * progmodes/fortran.el (fortran-end-of-block)
 +      (fortran-beginning-of-block):
 +      * progmodes/js.el (js-syntactic-context, js-gc, js-eval):
 +      * progmodes/python.el (python-describe-symbol, python-shell):
 +      * term/ns-win.el (ns-print-buffer):
 +      * textmodes/bibtex.el (bibtex-end-of-entry, bibtex-url):
 +      * textmodes/flyspell.el (flyspell-mode-on):
 +      * textmodes/page-ext.el (set-page-delimiter, pages-directory)
 +      (pages-directory-for-addresses):
 +      * textmodes/table.el (table-recognize-cell)
 +      (table-query-dimension, table-generate-source)
 +      (table-insert-sequence, table--warn-incompatibility):
 +      * textmodes/tex-mode.el (tex-validate-buffer):
 +      * textmodes/texinfmt.el (texinfmt-version)
 +      (texinfo-format-buffer):
 +      Use `called-interactively-p' instead of `interactive-p'.
 +
 +2009-10-02  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * image-mode.el (image-toggle-display):
 +      * emacs-lisp/elp.el (elp-instrument-function):
 +      * emacs-lisp/advice.el (ad-make-advised-definition):
 +      * emacs-lisp/easy-mmode.el (define-minor-mode):
 +      * net/browse-url.el (browse-url-maybe-new-window):
 +      * progmodes/sh-script.el (sh-learn-buffer-indent):
 +      Pass new argument 'any to `called-interactively-p'.
 +
 +2009-10-01  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * international/uni-bidi.el:
 +      * international/uni-category.el:
 +      * international/uni-combining.el:
 +      * international/uni-comment.el:
 +      * international/uni-decimal.el:
 +      * international/uni-decomposition.el:
 +      * international/uni-digit.el:
 +      * international/uni-lowercase.el:
 +      * international/uni-mirrored.el:
 +      * international/uni-name.el:
 +      * international/uni-numeric.el:
 +      * international/uni-old-name.el:
 +      * international/uni-titlecase.el:
 +      * international/uni-uppercase.el:
 +      Regenerate from Unicode 5.2.0 data.
 +
 +2009-10-01  Glenn Morris  <rgm@gnu.org>
 +
 +      * Makefile.in (ELCFILES): Regenerate.
 +
 +2009-10-01  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * subr.el (interactive-p): Mark obsolete.
 +      (called-interactively-p): Make the optional-ness of `kind' obsolete.
 +      * emacs-lisp/bytecomp.el (byte-compile-fdefinition): Make it obey
 +      advertised-signature-table for subroutines as well.
 +
 +      * emacs-lisp/byte-run.el (advertised-signature-table): New var.
 +      (set-advertised-calling-convention): New function.
 +      (make-obsolete, define-obsolete-function-alias)
 +      (make-obsolete-variable, define-obsolete-variable-alias):
 +      Make the optional-ness of `when' obsolete.
 +      (define-obsolete-face-alias): Make `when' non-optional.
 +      * help-fns.el (help-function-arglist):
 +      * emacs-lisp/bytecomp.el (byte-compile-fdefinition):
 +      Use advertised-signature-table.
 +
 +2009-10-01  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * files.el (delete-directory): New defun.  The original function
 +      in fileio.c has been renamed to `delete-directory-internal'.
 +
 +      * dired.el (dired-delete-file): Call `delete-directory' with
 +      RECURSIVE parameter.
 +
 +      * net/ange-ftp.el (ange-ftp-delete-directory): Add optional
 +      parameter RECURSIVE.  Implementation is missing.
 +
 +      * net/tramp.el (tramp-handle-make-directory): Flush upper
 +      directory's file properties.
 +      (tramp-handle-delete-directory): Handle optional parameter RECURSIVE.
 +      (tramp-handle-dired-recursive-delete-directory): Flush directory
 +      properties after the remove command only.
 +
 +      * net/tramp-fish.el (tramp-fish-handle-delete-directory):
 +      Handle optional parameter RECURSIVE.
 +
 +      * net/tramp-gvfs.el (tramp-gvfs-handle-delete-directory):
 +      Handle optional parameter RECURSIVE.
 +
 +      * net/tramp-smb.el (tramp-smb-errors): Add error message for
 +      connection timeout.
 +      (tramp-smb-handle-delete-directory): Handle optional parameter
 +      RECURSIVE.
 +
 +2009-10-01  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * emacs-lisp/bytecomp.el (byte-compile-defmacro-declaration): New fun.
 +      (byte-compile-file-form-defmumble, byte-compile-defmacro): Use it.
 +      (byte-compile-defmacro): Use backquotes.
 +
 +      * files.el (cd-absolute): Don't abbreviate-file-name (bug#4599).
 +
 +      * vc-dispatcher.el (vc-resynch-window): Don't revert a buffer which
 +      has no associated file.
 +      (vc-resynch-buffer): Use vc-dir-buffers.
 +
 +2009-10-01  Glenn Morris  <rgm@gnu.org>
 +
 +      * emacs-lisp/chart.el (chart-zap-chars, chart-bar-quickie)
 +      (chart-file-count):
 +      * emacs-lisp/eieio-comp.el (byte-compile-defmethod-param-convert):
 +      * emacs-lisp/eieio-datadebug.el (data-debug-insert-object-button):
 +      * emacs-lisp/eieio-opt.el (eieio-describe-class):
 +      * emacs-lisp/eieio-speedbar.el (eieio-speedbar-create):
 +      * emacs-lisp/eieio.el (defclass, eieio-defclass-autoload)
 +      (eieio-copy-parents-into-subclass, make-instance, class-children)
 +      (eieio-generic-form):
 +
 +      * vc-cvs.el (vc-cvs-parse-entry): Be more careful with the
 +      match-data.  (Bug#4555).
 +
 +      * emacs-lisp/check-declare.el (check-declare-scan): Read the declaration
 +      rather than parsing it as a regexp.  This relaxes the layout
 +      requirements and makes errors easier to detect.
 +      (check-declare-verify): Check file is regular.
 +      (check-declare-directory): Doc fix.
 +      * subr.el (declare-function): Doc fix.
 +
 +      * ibuffer.el (ibuffer-format-qualifier):
 +      * isearch.el (hi-lock-regexp-okay):
 +      * calc/calc.el (math-zerop):
 +      * mail/uce.el (rmail-msgbeg, rmail-msgend):
 +      * term/w32-win.el (setup-default-fontset, set-fontset-font):
 +      Remove unused declarations.
 +
 +2009-09-30  Eric Ludlam  <zappo@gnu.org>
 +
 +      * emacs-lisp/eieio.el (boolean-p): Delete.
 +
 +2009-09-30  Glenn Morris  <rgm@gnu.org>
 +
 +      * emacs-lisp/authors.el (authors-ignored-files): Add "js2-mode.el".
 +
 +      * emacs-lisp/elint.el (elint-init-form): Report declarations where the
 +      filename is not a string.
 +
 +2009-09-29  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * files.el (safe-local-eval-forms): Fix typo.
 +
 +2009-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * vc-hooks.el (vc-dir-buffers): New var.
 +      (vc-state-refresh): New function.
 +      (vc-state): Use it.
 +      (vc-after-save): Always ask the backend to recompute the new state.
 +      Always call vc-dir if necessary, using vc-dir-buffers.
 +      * vc-dir.el (vc-dir-prepare-status-buffer, vc-dir-resynch-file):
 +      Use vc-dir-buffers.
 +      (vc-dir-mode): Use vc-dir-buffers rather than after-save-hook.
 +      (vc-dir-prepare-status-buffer, vc-dir-update)
 +      (vc-dir-resync-directory-files, vc-dir-resynch-file, vc-dir-mode):
 +      Don't call expand-file-name on default-directory.
 +
 +2009-09-29  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * speedbar.el (speedbar-item-delete):
 +      * calc/calc-prog.el (calc-kbd-if):
 +      * language/hanja-util.el (hanja-init-load): Fix typos in messages.
 +
 +      * epa.el (epa-key-list-mode-map):
 +      * hi-lock.el (hi-lock-menu): Fix typos in menus.
 +
 +      * progmodes/hideshow.el (hs-allow-nesting): Reflow docstring.
 +      (hs-show-hook): Fix typo in docstring.
 +
 +2009-09-29  Glenn Morris  <rgm@gnu.org>
 +
 +      * emacs-lisp/check-declare.el (check-declare-locate): Remove pointless
 +      file-name-nondirectory call preventing location of cedet files.
 +      (check-declare-verify): Use literal search rather than re-search.
 +      Add basic defmethod and defclass, and define-overloadable-function.
 +
 +      * net/tramp-smb.el (tramp-smb-handle-directory-files-and-attributes):
 +      Use tramp-compat-file-attributes rather than nonexistent
 +      tramp-compat-handle-file-attributes.
 +
 +      * Makefile.in (lisptagsfiles4): New.
 +      (AUTOGENEL): Add cedet loaddefs files.
 +      (TAGS, TAGS-LISP): Use $lisptagsfiles4.
 +      (update-elclist, compile-always, backup-compiled-files)
 +      (bootstrap-clean): Add yet another directory level.
 +      (update-elclist): Use LC_COLLATE rather than COLLATE.
 +      (ELCFILES): Update, via `make update-elclist'.
 +
 +2009-09-29  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * makefile.w32-in (WINS_CEDET, WINS_BASIC, WINS_SUBDIR): New macros.
 +      (WINS_ALMOST): Set from WINS_BASIC and WINS_CEDET.
 +      (update-subdirs-CMD): Use WINS_SUBDIR, not WINS_ALMOST.
 +
 +2009-09-28  Andreas Schwab  <schwab@linux-m68k.org>
 +
 +      * Makefile.in (lisptagsfiles3): Define.
 +      (TAGS, TAGS-LISP): Use it.
 +      (update-elclist): Add third directory level to look for elc files.
 +      (compile-always): Likewise.
 +      (backup-compiled-files): Likewise.
 +      (bootstrap-clean): Likewise.
 +      (ELCFILES): Update.
 +
 +2009-09-28  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * Makefile.in (ELCFILES): Add CEDET files.
 +
 +2009-09-28  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * Makefile.in (ELCFILES): Add net/tramp-imap.elc.
 +
 +      * net/tramp.el (top): Require tramp-imap.
 +
 +      * net/tramp-smb.el (tramp-smb-handle-directory-files-and-attributes):
 +      Use `tramp-compat-handle-file-attributes'.
 +
 +2009-09-28  Teodor Zlatanov  <tzz@lifelogs.com>
 +
 +      * net/tramp-imap.el: New package.
 +
 +2009-09-28  Eric Ludlam  <zappo@gnu.org>
 +
 +      * emacs-lisp/chart.el:
 +      * emacs-lisp/eieio-base.el:
 +      * emacs-lisp/eieio-comp.el:
 +      * emacs-lisp/eieio-custom.el:
 +      * emacs-lisp/eieio-datadebug.el:
 +      * emacs-lisp/eieio-opt.el:
 +      * emacs-lisp/eieio-speedbar.el:
 +      * emacs-lisp/eieio.el: New files.
 +
 +2009-09-27  Vinicius Jose Latorre  <viniciusjl@ig.com.br>
 +
 +      * whitespace.el (whitespace-trailing-regexp)
 +      (whitespace-empty-at-bob-regexp, whitespace-empty-at-eob-regexp):
 +      Fix doc string.
 +
 +2009-09-27  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * menu-bar.el: Remove menu-bar-ediff-misc-menu from the Tools
 +      menu.
 +
 +      * ediff-hook.el: Move menu-bar-ediff-misc-menu into
 +      menu-bar-ediff-menu.
 +
 +      * emacs-lisp/lisp-mode.el: Add doc-string-elt property to
 +      define-overloadable-function.
 +
 +      * progmodes/autoconf.el: Provide autoconf as well, so that this
 +      file can be `require'd.
 +
 +      * emacs-lisp/cl-macs.el (deftype): Add to cl-loaddefs.
 +
 +      * emacs-lisp/autoload.el (generated-autoload-feature)
 +      (generated-autoload-load-name): New vars.
 +      (autoload-rubric, autoload-generate-file-autoloads): Use them.
 +      (make-autoload): Recognize define-overloadable-function and
 +      defclass forms (for EIEIO).
 +
 +      * Makefile.in (update-subdirs): Exclude cedet directory.
 +
 +2009-09-27  Adrian Robert  <Adrian.B.Robert@gmail.com>
 +
 +      * term/ns-win.el: Don't set the region face background.  (Bug#4381)
 +
 +      * faces.el: Default light-background background for region face to
 +      ns_selection_color under NS.
 +
 +2009-09-27  Teodor Zlatanov  <tzz@lifelogs.com>
 +
 +      * net/imap-hash.el: New library, see NEWS.
 +
 +      * Makefile.in (ELCFILES): Add imap-hash.el.
 +
 +2009-09-27  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * help.el (help-for-help-internal): Don't purecopy the text (bug#4560).
 +      * isearch.el (isearch-help-for-help-internal): Purecopy the second arg.
 +      * help-macro.el (make-help-screen): Avoid using an ambiguous function
 +      definition where the docstring could be taken for the return value.
 +
 +2009-09-26  Glenn Morris  <rgm@gnu.org>
 +
 +      * mail/rmailmm.el (rmail-mime-show-images, rmail-mime-bulk-handler):
 +      Add option to only show images below a certain size.
 +      (rmail-mime-multipart-handler): Remove unnecessary save-match-data and
 +      save-excursion calls.
 +
 +2009-09-26  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * makefile.w32-in (WINS_ALMOST): Add cedet (with its
 +      subdirectories) and eieio.
 +
 +2009-09-26  Alan Mackenzie  <acm@muc.de>
 +
 +      * progmodes/cc-engine.el (c-beginning-of-statement-1):
 +      Correct buggy bracketing.  (Bug#4289)
 +
 +      * progmodes/cc-langs.el (c-nonlabel-token-key): Allow quoted
 +      character constants (as case labels).  (Bug#4289)
 +
 +2009-09-25  Juri Linkov  <juri@jurta.org>
 +
 +      * files.el (safe-local-eval-forms): Allow time-stamp in
 +      before-save-hook (Bug#4554).
 +
 +2009-09-25  Drew Adams  <drew.adams@oracle.com>
 +
 +      * menu-bar.el (list-buffers-directory): Doc fix.
 +
 +2009-09-25  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * log-edit.el (log-edit-changelog-entries): Avoid inf-loops.
 +      Try and avoid copying twice the same paragraph.
 +      (log-edit-changelog-paragraph, log-edit-changelog-subparagraph):
 +      Remove save-excursion.
 +      (log-edit-changelog-entry): Do it here instead.
 +
 +2009-09-25  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * bs.el (bs--get-file-name): Use `list-buffers-directory'
 +      when available, instead of hardcoding mode names.  Doc fix.
 +
 +      * menu-bar.el (list-buffers-directory): Add docstring.
 +      Make automatically buffer-local.
 +
 +      * dired.el (dired-mode):
 +      * files.el (cd-absolute):
 +      * pcvs.el (cvs-temp-buffer):
 +      * pcvs-util.el (cvs-get-buffer-create):
 +      * shell.el (shell-mode):
 +      * vc-dir.el (vc-dir-mode):
 +      Don't make `list-buffers-directory' buffer local.
 +
 +2009-09-25  Devon Sean McCullough  <emacs-hacker@Jovi.Net>
 +
 +      * comint.el (comint-exec, comint-run, make-comint):
 +      Doc fixes (Bug#4542).
 +
 +2009-09-25  Glenn Morris  <rgm@gnu.org>
 +
 +      * mail/rmailmm.el (rmail-mime): New custom group.
 +      Move all defcustoms in this file into this group.
 +      (rmail-mime-media-type-handlers-alist): Revert previous change.
 +      (rmail-mime-show-images): New option.
 +      (rmail-mime-total-number-of-bulk-attachments): Remove variable and all
 +      references to it, since it wasn't actually used for anything.
 +      (rmail-mime-insert-image): New function.
 +      (rmail-mime-image): Use rmail-mime-insert-image.
 +      (rmail-mime-bulk-handler): Remove optional `image' argument, instead
 +      obey the value of `rmail-mime-show-images' option.  Print the size of
 +      attachments.
 +
 +2009-09-25  David Engster  <deng@randomsample.de>
 +
 +      * progmodes/hideshow.el (hs-show-block): Run `hs-show-hook'.  (Bug#4548)
 +
 +2009-09-24  Vinicius Jose Latorre  <viniciusjl@ig.com.br>
 +
 +      * whitespace.el: Does not highlight trailing spaces While point is
 +      at end of line.  Does not highligt spaces at beginning of buffer
 +      while point is at beginning of buffer.  Does not highlight spaces
 +      at end of buffer while point is at end of buffer.  (Bug#4177)
 +      New version 12.0.
 +      (whitespace-display-mappings): Adjust initialization.
 +      (whitespace-point, whitespace-font-lock-refontify): New vars.
 +      (whitespace-color-on, whitespace-color-off): Adjust code.
 +      (whitespace-trailing-regexp, whitespace-empty-at-bob-regexp)
 +      (whitespace-empty-at-eob-regexp, whitespace-space-regexp)
 +      (whitespace-tab-regexp, whitespace-post-command-hook): New funs.
 +
 +2009-09-24  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * nxml/nxml-mode.el: Alias xml-mode to nxml-mode.
 +
 +      * textmodes/sgml-mode.el: Remove xml-mode alias.
 +
 +      * files.el (auto-mode-alist, conf-mode-maybe)
 +      (magic-fallback-mode-alist): Revert 2009-09-18 and 2009-09-21 changes.
 +
 +2009-09-24  Alan Mackenzie  <acm@muc.de>
 +
 +      * progmodes/cc-cmds.el (c-scan-conditionals): A new function like
 +      c-forward-conditionals, but it doesn't move point and doesn't set
 +      the mark.
 +      (c-up-conditional, c-up-conditional-with-else, c-down-conditional)
 +      (c-down-conditional-with-else, c-backward-conditional)
 +      (c-forward-conditional): Refactor to use c-scan-conditionals.
 +
 +2009-09-24  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * help-fns.el (help-downcase-arguments): New option, defaulting to nil.
 +      (help-default-arg-highlight): Remove.
 +      (help-highlight-arg): New function.
 +      (help-do-arg-highlight): Use it.
 +      Suggested by Drew Adams <drew.adams@oracle.com>.  (Bug#4510, bug#4520)
 +
 +2009-09-24  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * term.el (term-set-scroll-region, term-handle-ansi-escape):
 +      Undo last change, which didn't fix the problem and introduced others.
 +
 +2009-09-24  Nick Roberts  <nickrob@snap.net.nz>
 +
 +      * progmodes/gdb-mi.el: Don't require speedbar.
 +      (gdb-jsonify-buffer): Handle case where "=" is part of value string.
 +
 +2009-09-24  Glenn Morris  <rgm@gnu.org>
 +
 +      * calendar/diary-lib.el (diary-fancy-display): Always run the hook.
 +
 +      * term/ns-win.el (ns-reg-to-script): Define for compiler.
 +
 +      * mail/rmailmm.el (rmail-mime-multipart-handler): Accept the case where
 +      there is no newline after the final mime boundary.  (Bug#4539)
 +      Move markers on insertion so that any buttons inserted don't end up in
 +      the next part of a multipart message.
 +      (rmail-mime-media-type-handlers-alist): Doc fix.  Add image handler.
 +      (rmail-mime-bulk-handler): Optionally handle images.
 +      (rmail-mime-image): New button action.
 +      (rmail-mime-image-handler): New function.
 +      (rmail-mime-mode): New mode.
 +      (rmail-mime): Doc fix.  Use rmail-mime-mode (for font-lock).
 +
 +2009-09-24  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * minibuffer.el (minibuffer-force-complete): Cycle the list, rather
 +      than just dropping elements from it (bug#4504).
 +
 +      * term.el (term-set-scroll-region): Don't move cursor any more.
 +      (term-handle-ansi-escape): Call term-goto here instead.
 +      Suggested by Ivan Kanis <apple@kanis.eu>.
 +
 +      * term.el: Require CL.
 +      (term-ansi-reset): New function.
 +      (term-mode, term-emulate-terminal, term-handle-colors-array): Use it.
 +      (term-handle-colors-array): Simplify.
 +
 +2009-09-24  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * allout.el (allout-overlay-interior-modification-handler)
 +      (allout-obtain-passphrase):
 +      * epa-file.el (epa-file-write-region):
 +      * ps-print.el (ps-begin-job):
 +      * vc-hooks.el (vc-toggle-read-only):
 +      * vc-rcs.el (vc-rcs-rollback):
 +      * vc-sccs.el (vc-sccs-rollback):
 +      * vc.el (vc-deduce-fileset, vc-next-action, vc-register-with)
 +      (vc-version-diff, vc-revert, vc-rollback):
 +      * wdired.el (wdired-check-kill-buffer):
 +      * emacs-lisp/authors.el (authors):
 +      * net/socks.el (socks-open-connection):
 +      * net/zeroconf.el (zeroconf-service-add-hook):
 +      * obsolete/vc-mcvs.el (vc-mcvs-register):
 +      * progmodes/gdb-mi.el (def-gdb-thread-buffer-gud-command)
 +      (gdb-select-frame):
 +      * progmodes/grep.el (lgrep, rgrep):
 +      * progmodes/idlw-help.el (idlwave-help-check-locations)
 +      (idlwave-help-html-link, idlwave-help-assistant-open-link):
 +      * textmodes/ispell.el (ispell-find-aspell-dictionaries):
 +      * textmodes/reftex-toc.el (reftex-toc-promote-prepare)
 +      (reftex-toc-rename-label): Fix typos in error messages.
 +
 +      * dired-aux.el (dired-do-shell-command): Reflow docstring.
 +      (dired-copy-how-to-fn): Doc fix.
 +      (dired-files-attributes, dired-read-shell-command):
 +      Fix typos in docstrings.
 +
 +      * dired-x.el (dired-enable-local-variables, dired-filename-at-point)
 +      (dired-x-find-file-other-window): Reflow docstrings.
 +      (dired-omit-marker-char, dired-read-shell-command)
 +      (dired-x-submit-report): Fix typos in docstrings.
 +
 +      * shell.el (shell-mode-hook):
 +      * view.el (View-scroll-line-forward):
 +      * progmodes/inf-lisp.el (inferior-lisp-mode-hook):
 +      Fix typos in docstrings.
 +
 +      * net/dig.el (dig-invoke): Fix typo in docstring.
 +      (query-dig): Reflow docstring.
 +
 +      * progmodes/idlwave.el (idlwave-create-user-catalog-file)
 +      (idlwave-quoted, idlwave-rinfo-max-source-lines): Doc fixes.
 +      (idlwave-abbrev-move, idlwave-auto-routine-info-updates)
 +      (idlwave-begin-block-reg, idlwave-begin-unit-reg)
 +      (idlwave-beginning-of-subprogram, idlwave-block-jump-out)
 +      (idlwave-block-match-regexp, idlwave-calculate-paren-indent)
 +      (idlwave-check-abbrev, idlwave-class-file-or-buffer)
 +      (idlwave-class-found-in, idlwave-complete, idlwave-complete-in-buffer)
 +      (idlwave-completion-map, idlwave-current-indent)
 +      (idlwave-custom-ampersand-surround, idlwave-customize)
 +      (idlwave-default-font-lock-items, idlwave-default-insert-timestamp)
 +      (idlwave-define-abbrev, idlwave-determine-class-special)
 +      (idlwave-do-action, idlwave-doc-header, idlwave-doc-modification)
 +      (idlwave-end-block-reg, idlwave-end-of-statement)
 +      (idlwave-end-of-statement0, idlwave-end-of-subprogram)
 +      (idlwave-end-unit-reg, idlwave-entry-find-keyword)
 +      (idlwave-explicit-class-listed, idlwave-file-header)
 +      (idlwave-fill-paragraph, idlwave-find-class-definition)
 +      (idlwave-fix-keywords, idlwave-hang-indent-regexp, idlwave-hard-tab)
 +      (idlwave-idlwave_routine_info-compiled, idlwave-in-comment)
 +      (idlwave-in-quote, idlwave-indent-action-table)
 +      (idlwave-indent-expand-table, idlwave-indent-line)
 +      (idlwave-indent-subprogram, idlwave-indent-to-open-paren)
 +      (idlwave-is-comment-line, idlwave-is-comment-or-empty-line)
 +      (idlwave-is-continuation-line, idlwave-is-pointer-dereference)
 +      (idlwave-kill-autoloaded-buffers, idlwave-lib-p, idlwave-look-at)
 +      (idlwave-make-tags, idlwave-mode, idlwave-mode-abbrev-table)
 +      (idlwave-mouse-active-rinfo, idlwave-newline, idlwave-no-change-comment)
 +      (idlwave-outlawed-buffers, idlwave-popup-select)
 +      (idlwave-previous-statement, idlwave-rescan-catalog-directories)
 +      (idlwave-routine-entry-compare, idlwave-routine-info.pro)
 +      (idlwave-scan-all-buffers-for-routine-info, idlwave-scan-class-info)
 +      (idlwave-shell-automatic-start, idlwave-shell-explicit-file-name)
 +      (idlwave-show-begin, idlwave-split-line, idlwave-split-link-target)
 +      (idlwave-statement-type, idlwave-struct-skip)
 +      (idlwave-substitute-link-target, idlwave-toggle-comment-region)
 +      (idlwave-update-current-buffer-info, idlwave-use-library-catalogs)
 +      (idlwave-what-module-find-class): Fix typos in docstrings.
 +      (idlwave-all-method-classes, idlwave-calc-hanging-indent)
 +      (idlwave-calculate-cont-indent, idlwave-expand-equal)
 +      (idlwave-find-module, idlwave-find-structure-definition)
 +      (idlwave-init-rinfo-when-idle-after, idlwave-insert-source-location)
 +      (idlwave-list-load-path-shadows, idlwave-next-statement)
 +      (idlwave-routine-entry-compare-twins, idlwave-routine-info)
 +      (idlwave-routines, idlwave-sintern-rinfo-list, idlwave-statement-match)
 +      (idlwave-template): Reflow docstrings.
 +
 +      * progmodes/idlw-shell.el (idlwave-shell-syntax-error): Doc fix.
 +      (idlwave-shell-batch-command, idlwave-shell-bp-alist)
 +      (idlwave-shell-bp-get, idlwave-shell-bp-overlays)
 +      (idlwave-shell-bp-query, idlwave-shell-break-here, idlwave-shell-buffer)
 +      (idlwave-shell-display-line, idlwave-shell-display-wframe)
 +      (idlwave-shell-electric-debug-mode, idlwave-shell-examine-select)
 +      (idlwave-shell-file-name-chars, idlwave-shell-filter-bp)
 +      (idlwave-shell-goto-frame, idlwave-shell-halt-messages-re)
 +      (idlwave-shell-highlighting-and-faces, idlwave-shell-idl-wframe)
 +      (idlwave-shell-mode-hook, idlwave-shell-mode-line-info)
 +      (idlwave-shell-mode-map, idlwave-shell-module-source-filter)
 +      (idlwave-shell-mouse-help, idlwave-shell-mouse-print)
 +      (idlwave-shell-pc-frame, idlwave-shell-pending-commands)
 +      (idlwave-shell-print, idlwave-shell-quit, idlwave-shell-redisplay)
 +      (idlwave-shell-scan-for-state, idlwave-shell-send-command)
 +      (idlwave-shell-sentinel-hook, idlwave-shell-separate-examine-output)
 +      (idlwave-shell-shell-command, idlwave-shell-sources-alist)
 +      (idlwave-shell-sources-bp, idlwave-shell-sources-filter)
 +      (idlwave-shell-step, idlwave-shell-use-breakpoint-glyph)
 +      (idlwave-toolbar-add-everywhere, idlwave-toolbar-toggle):
 +      Fix typos in docstrings.
 +      (idlwave-shell-bp, idlwave-shell-clear-current-bp)
 +      (idlwave-shell-hide-output, idlwave-shell-mode)
 +      (idlwave-shell-run-region, idlwave-shell-set-bp-in-module):
 +      Reflow docstrings.
 +
 +      * textmodes/bibtex.el (bibtex-sort-entry-class): Fix group name.
 +
 +2009-09-24  Ivan Kanis  <apple@kanis.eu>
 +
 +      * term.el (term-bold-attribute): New var.
 +      (term-handle-colors-array): Use it.
 +
 +2009-09-23  Nick Roberts  <nickrob@snap.net.nz>
 +
 +      * progmodes/gdb-mi.el (gdb-version): New variable.
 +      (gdb-non-stop-handler): Set gdb-version.
 +      (gdb-gud-context-command, gdb-current-context-command, gdb-stopped):
 +      Condition "--thread" option on gdb-version.
 +      (gdb-invalidate-threads): Remove unused argument.
 +
 +2009-09-23  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * textmodes/flyspell.el (sgml-mode-flyspell-verify): Pass limit args
 +      to looking-back to avoid ridiculous slow down in large files (bug#4511).
 +
 +2009-09-23  Glenn Morris  <rgm@gnu.org>
 +
 +      * mail/rmail.el (rmail-reply): Don't try to add a References header when
 +      replying to mail without References or Message-Id.  (Bug#4525)
 +
 +2009-09-23  Adrian Robert  <Adrian.B.Robert@gmail.com>
 +
 +      * term/ns-win.el (ns-reg-to-script): New variable.
 +
 +2009-09-23  Daiki Ueno  <ueno@unixuser.org>
 +
 +      * epg.el (epg-wait-for-status): Preserve existing 'error results.
 +
 +2009-09-22  Sam Steingold  <sds@gnu.org>
 +
 +      * vc-hg.el (vc-hg-print-log): Fix shortlog arg passing.
 +      (vc-hg-outgoing, vc-hg-incoming): Bump okstatus in `vc-hg-command'
 +      to 1 because hg returns status 1 when nothing is found.
 +      Bind `vc-short-log' for the sake of `vc-hg-log-view-mode'.
 +
 +2009-09-22  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * textmodes/fill.el: Convert to utf-8 encoding.
 +      (fill-french-nobreak-p): Remove redundant » and « inherited from our
 +      pre-Unicode days.
 +
 +      * add-log.el (change-log-fill-forward-paragraph): New function.
 +      (change-log-mode): Use it so fill-region DTRT.
 +      Set fill-indent-according-to-mode here rather than in
 +      change-log-fill-paragraph.
 +      (change-log-fill-paragraph): Remove.
 +
 +2009-09-22  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * info.el (Info-try-follow-nearest-node): Use the URL extracted by
 +      `Info-get-token', instead of `browse-url-url-at-point'.  (Bug#4508)
 +
 +2009-09-22  Glenn Morris  <rgm@gnu.org>
 +
 +      * calendar/calendar.el (calendar-mode-map): Make mouse-1 and 3 clicks on
 +      the scroll-bar scroll the calendar window rather than the buffer.
 +
 +      * calendar/cal-menu.el (cal-menu-scroll-menu): Add a sub-section with
 +      commands that move point (as opposed to scrolling).
 +
 +      * emulation/tpu-edt.el (tpu-copy-keyfile): Fix condition-case handler.
 +
 +      * emacs-lisp/elint.el (elint): New custom group.
 +      (elint-log-buffer): Make it a defcustom.
 +      (elint-scan-preloaded, elint-ignored-warnings)
 +      (elint-directory-skip-re): New options.
 +      (elint-builtin-variables): Doc fix.
 +      (elint-preloaded-env): New variable.
 +      (elint-unknown-builtin-args): Add an entry for encode-time.
 +      (elint-extra-errors): Make it a variable rather than a constant.
 +      (elint-preloaded-skip-re): New constant.
 +      (elint-directory): Skip files matching elint-directory-skip-re.
 +      (elint-features): New variable, local to linted buffers.
 +      (elint-update-env): Initialize elint-features.  Possibly add
 +      elint-preloaded-env to the buffer's environment.
 +      (elint-get-top-forms): Bind elint-current-pos, for log messages.
 +      Skip quoted forms.
 +      (elint-init-form): New function, extracted from elint-init-env.
 +      Make non-list forms a warning rather than an error.
 +      Add the mode-map for define-derived-mode.  Handle define-minor-mode,
 +      easy-menu-define, put that adds an error-condition, and provide.
 +      When requiring cl, also require cl-macs.  Really require cl, to handle
 +      some cl macros.  Store required libraries in the list elint-features,
 +      so as not to re-load them.  Treat cc-require like require.
 +      (elint-init-env): Call elint-init-form to do the work.
 +      Handle eval-and-compile and such like.
 +      (elint-add-required-env): Do not clear messages.
 +      (elint-special-forms): Add handlers for function, defalias, if, when,
 +      unless, and, or.
 +      (elint-form): Add optional argument to ignore elint-special-forms,
 +      useful to prevent recursive calls from handlers.  Doc fix.
 +      Respect elint-ignored-warnings.
 +      (elint-form): Respect elint-ignored-warnings.
 +      (elint-bound-variable, elint-bound-function): New variables.
 +      (elint-unbound-variable): Respect elint-bound-variable.
 +      (elint-get-args): Respect elint-bound-function.
 +      (elint-check-cond-form): Add some simple handling for (f)boundp and
 +      featurep tests.
 +      (elint-check-defalias-form): New handler.
 +      (elint-check-let-form): Make an empty let a warning rather than an
 +      error.
 +      (elint-check-setq-form): Make an empty setq a warning rather than an
 +      error.  Respect elint-ignored-warnings.
 +      (elint-check-defvar-form): Accept null doc-strings.
 +      (elint-check-conditional-form): New handler.  Does some simple-minded
 +      checking of featurep and (f)boundp tests.
 +      (elint-put-function-args): New function.
 +      (elint-initialize): Use elint-scan-doc-file rather than
 +      elint-find-builtin-variables.  Use elint-put-function-args.
 +      Possibly scan preloaded-file-list.
 +      (elint-scan-doc-file): Rename from elint-find-builtin-variables and
 +      extend to handle functions as well.
 +
 +2009-09-22  Lennart Borgman  <lennart.borgman@gmail.com>
 +
 +      * linum.el (linum-delete-overlays, linum-update-window):
 +      Do not modify the right margin.  (Bug#3971)
 +
 +2009-09-21  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * files.el (conf-mode-maybe, magic-fallback-mode-alist):
 +      Use nxml-mode instead of xml-mode.
 +
 +2009-09-21  Kevin Ryde  <user42@zip.com.au>
 +
 +      * net/dig.el: Add "Keywords: comm", as per net-utils.el.  (Bug#4501)
 +
 +2009-09-21  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * net/dig.el (dig-mode): Use define-derived-mode.
 +
 +2009-09-20  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * vc-dispatcher.el (vc-do-command): Return the process object in
 +      the asynchronous case.  Use when instead of if.  Do not run
 +      vc-exec-after to display a message if not enabled.  (Bug#4463)
 +
 +      * vc-git.el (vc-git-dir-extra-headers): Add keymap and mouse-face
 +      properties to the stash strings.
 +      (vc-git-stash-list): Return a list of strings.
 +      (vc-git-stash-get-at-point, vc-git-stash-delete-at-point)
 +      (vc-git-stash-show-at-point): New functions.
 +      (vc-git-stash-map): New keymap.
 +
 +      * register.el (ctl-x-r-map): Define the keys here instead of
 +      using autoload.
 +
 +2009-09-20  Thierry Volpiatto  <thierry.volpiatto@gmail.com>  (tiny change)
 +
 +      * bookmark.el (bookmark-write-file): Avoid calling `pp' with large
 +      list, to workaround performance problem (bug#4485).
 +
 +2009-09-20  Nick Roberts  <nickrob@snap.net.nz>
 +
 +      * progmodes/gud.el (gud-sentinel): Revert indavertant change.
 +
 +2009-09-20  Daiki Ueno  <ueno@unixuser.org>
 +
 +      * epa-file.el (epa-file-cache-passphrase-for-symmetric-encryption):
 +      Document that this option is not recommended to use.
 +
 +2009-09-19  Glenn Morris  <rgm@gnu.org>
 +
 +      * calc/calc-graph.el (calc-graph-lookup): Avoid assignment to free
 +      variable `var'.
 +
 +      * calc/calc-alg.el (var):
 +      * calc/calcalg2.el (var): Define for compiler.
 +
 +2009-09-19  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * emacs-lisp/advice.el (ad-get-argument, ad-set-argument):
 +      Doc fix (Bug#3932).
 +
 +      * subr.el (baud-rate): Remove long-obsolete function (Bug#4372).
 +
 +      * time-stamp.el (time-stamp-month-dd-yyyy)
 +      (time-stamp-dd/mm/yyyy, time-stamp-mon-dd-yyyy)
 +      (time-stamp-dd-mon-yy, time-stamp-yy/mm/dd)
 +      (time-stamp-yyyy/mm/dd, time-stamp-yyyy-mm-dd)
 +      (time-stamp-yymmdd, time-stamp-hh:mm:ss, time-stamp-hhmm):
 +      Remove functions that have been obsolete since 1995 (Bug#4436).
 +
 +      * progmodes/sh-script.el (sh-learn-buffer-indent): Pop to the
 +      indent buffer only if called interactively (Bug#4452).
 +
 +2009-09-19  Juanma Barranquero  <lekktu@gmail.com>
 +            Eli Zaretskii  <eliz@gnu.org>
 +
 +      This fixes bug#4197 (merged to bug#865, though not identical).
 +      * server.el (server-auth-dir): Add docstring note about FAT32.
 +      (server-ensure-safe-dir): Accept FAT32 directories as "safe",
 +      but warn against using them.
 +
 +2009-09-19  Nick Roberts  <nickrob@snap.net.nz>
 +
 +      * progmodes/gdb-mi.el (gdb-var-update-handler-1): Include case of
 +      older GDB where there is no has_more field.
 +
 +2009-09-19  Glenn Morris  <rgm@gnu.org>
 +
 +      * pgg-pgp.el (pgg-pgp-encrypt-region): Add missing mapconcat separator.
 +
 +2009-09-18  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * files.el (auto-mode-alist): Change default for XML files to nXML
 +      mode (Bug#4169).
 +
 +2009-09-18  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * server.el (server-ensure-safe-dir): Pass 'integer
 +      to `file-attributes', as suggested.
 +
 +2009-09-18  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * dired-aux.el (dired-query-alist): Remove spurious backslash.
 +      (dired-query): Use read-key.
 +
 +2009-09-18  Adrian Robert  <Adrian.B.Robert@gmail.com>
 +
 +      * cus-start.el (ns-use-qd-smoothing): Remove.
 +
 +2009-09-18  Glenn Morris  <rgm@gnu.org>
 +
 +      * allout.el (top-level): Remove unnecessary progn.
 +
 +      * progmodes/js.el (js-end-of-defun): Remove malformed and unneeded let.
 +
 +      * emacs-lisp/derived.el (define-derived-mode): Fix paren typo in
 +      definition of abbrev table.
 +
 +      * speedbar.el (speedbar-track-mouse):
 +      * net/eudc-bob.el (eudc-bob-pipe-object-to-external-program):
 +      * net/eudc.el (eudc-expand-inline):
 +      * net/newst-backend.el (newsticker--cache-read-feed):
 +      * nxml/nxml-outln.el (nxml-end-of-heading): Fix typos in
 +      condition-case handlers.
 +
 +2009-09-18  Nick Roberts  <nickrob@snap.net.nz>
 +
 +      * progmodes/gdb-mi.el (gdb-frame-address): New variable.
 +      (gdb-var-list): Add an element for has_more field.
 +      (gdb-non-stop-handler): Enable pretty printing for STL containers.
 +      (gdb-var-create-handler, gdb-var-list-children-handler-1)
 +      (gdb-var-update-handler-1): Parse output of dynamic variable
 +      objects (STL containers).
 +      (gdb-var-delete-1): Pass var1 as an explicit second argument.
 +      (gdb-get-field): Delete alias.  Use bindat-get-field directly.
 +
 +      * progmodes/gud.el (gud-speedbar-item-info): Adjust for change to
 +      gdb-var-list.
 +      (gud-speedbar-buttons): Make node expandable if expression "has more"
 +      children.
 +
 +2009-09-17  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * startup.el (emacs-quick-startup): Remove variable and all uses.
 +      (command-line): Set `inhibit-x-resources' instead.
 +      (command-line-1): Use `inhibit-x-resources' instead.
 +
 +2009-09-17  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * subr.el: Fix last change to avoid using the `unless' macro,
 +      which breaks bootstrapping.
 +
 +2009-09-17  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * subr.el (push, pop, dolist, dotimes, declare): Don't overwrite CL's
 +      extended definitions, in case we reload subr.el after having
 +      loaded CL.
 +      (eval-next-after-load): Mark as obsolete.
 +
 +2009-09-17  Juri Linkov  <juri@jurta.org>
 +
 +      * menu-bar.el (menu-bar-search-menu, menu-bar-edit-menu)
 +      (menu-bar-options-menu, menu-bar-showhide-fringe-menu)
 +      (menu-bar-showhide-menu, menu-bar-tools-menu)
 +      (menu-bar-describe-menu, menu-bar-help-menu)
 +      (minibuffer-local-completion-map, minibuffer-local-map):
 +      Fix list quoting.
 +
 +2009-09-17  Glenn Morris  <rgm@gnu.org>
 +
 +      * emacs-lisp/bytecomp.el (byte-compile-form): Always check the function
 +      arguments, whether or not it has a handler.
 +
 +      * ansi-color.el (ansi-color-get-face-1): Fix typo in handler.
 +
 +      * simple.el (hard-newline): Give it a doc-string.
 +
 +      * emacs-lisp/lisp-mode.el (emacs-lisp-mode-syntax-table):
 +      (lisp-mode-syntax-table): Give them doc-strings.
 +
 +2009-09-17  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * menu-bar.el (menu-bar-file-menu, menu-bar-file-menu)
 +      (menu-bar-i-search-menu, menu-bar-edit-menu, menu-bar-custom-menu)
 +      (menu-bar-options-menu, menu-bar-showhide-menu)
 +      (menu-bar-showhide-fringe-ind-menu, menu-bar-showhide-fringe-menu)
 +      (menu-bar-showhide-scroll-bar-menu, menu-bar-showhide-menu)
 +      (menu-bar-options-menu, menu-bar-line-wrapping-menu)
 +      (menu-bar-options-menu, menu-bar-tools-menu)
 +      (menu-bar-describe-menu, menu-bar-search-documentation-menu)
 +      (menu-bar-help-menu):
 +      (menu-bar-make-mm-toggle, menu-bar-make-toggle): Purecopy the
 +      string arguments.
 +
 +      * ediff-hook.el (menu-bar-ediff-menu, menu-bar-ediff-merge-menu)
 +      (menu-bar-epatch-menu, menu-bar-ediff-misc-menu): Add purecopy
 +      calls for the menu names and :help.
 +
 +2009-09-17  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * mouse.el (minor-mode-menu-from-indicator): Pay attention
 +      to :minor-mode-function (bug#4455).
 +
 +2009-09-16  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * startup.el (command-line): Initialize the window-system after
 +      processing the command-line.
 +
 +      * textmodes/page.el (what-page): Make sure we don't inf-loop if
 +      page-delimiter matches the empty string.
 +
 +2009-09-16  Glenn Morris  <rgm@gnu.org>
 +
 +      * emacs-lisp/bytecomp.el (byte-compile-not-obsolete-vars): Rename from
 +      byte-compile-not-obsolete-var.  It's a list now.
 +      (byte-compile-not-obsolete-funcs): New variable.
 +      (byte-compile-warn-obsolete): Don't warn about functions if they are in
 +      byte-compile-not-obsolete-funcs.
 +      (byte-compile-variable-ref, byte-compile-defvar): Update for
 +      byte-compile-not-obsolete-vars name-change and list nature.
 +      (byte-compile-maybe-guarded): Suppress warnings about obsolete functions
 +      and variables behind (f)boundp tests.
 +      * net/tramp-compat.el (byte-compile-not-obsolete-vars): Set if bound.
 +
 +2009-09-15  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * vc-git.el (vc-git-log-view-mode): Undo inadvertent change.
 +
 +2009-09-15  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * Makefile.in (compile-onefile): Use byte-compile-refresh-preloaded.
 +      * emacs-lisp/bytecomp.el (byte-compile-refresh-preloaded):
 +      Don't autoload.
 +
 +2009-09-15  Stephen Eglen  <stephen@gnu.org>
 +
 +      * iswitchb.el (iswitchb-read-buffer): When selecting a match from
 +      the virtual-buffers, use the name of the buffer specified by
 +      find-file-noselect, as the match may be a symlink.  (This was a
 +      problem if the target and the symlink had different names.)
 +
 +2009-09-15  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * custom.el (custom-initialize-default, custom-initialize-set): CSE.
 +
 +      * desktop.el (desktop-path): Check user-emacs-directory.
 +
 +      * emacs-lisp/bytecomp.el (byte-compile-refresh-preloaded): New function.
 +
 +      * loadup.el: Use after-load-functions to GC after loading each file.
 +      Remove the explicit GC calls that used to be sprinkled around.
 +
 +      * subr.el (after-load-functions): New hook.
 +      (do-after-load-evaluation): Run it.  Use string-match-p to detect
 +      `obsolete' packages, rather than painfully extracting the relevant
 +      directory name.
 +
 +2009-09-15  Glenn Morris  <rgm@gnu.org>
 +
 +      * apropos.el (apropos-documentation-check-doc-file): Avoid assignment to
 +      free variable `doc'.
 +
 +      * dired.el (dired-mode-map): Add menu entry for async shell command.
 +
 +      * help-fns.el (find-lisp-object-file-name): When looking for autoloaded
 +      variables, also consider the .elc files, since the .el files are
 +      normally gzipped (subsequent code locates the .el.gz from the .elc).
 +
 +      * calc/calc-prog.el (arglist): Define for compiler.
 +
 +      * calendar/diary-lib.el (diary-display-function): Change the default to
 +      fancy display.
 +      (body): Define for compiler.
 +
 +      * emacs-lisp/bytecomp.el (byte-compile-keep-pending)
 +      (byte-compile-file-form, byte-compile-lambda)
 +      (byte-compile-top-level-body, byte-compile-form)
 +      (byte-compile-variable-ref, byte-compile-setq)
 +      (byte-compile-setq-default, byte-compile-body)
 +      (byte-compile-body-do-effect, byte-compile-and, byte-compile-or)
 +      (batch-byte-compile): Give some more local variables with common names
 +      a "bytecomp-" prefix to avoid masking warnings about free variables.
 +
 +      * startup.el (command-line-1): Give local variables with common names a
 +      distinguishing prefix, so as not to hide free variable warnings during
 +      bootstrap.
 +
 +      * mail/rmailmm.el (rmail-mime-save): If file exists, don't try to be
 +      clever and add a suffix to make a unique name, just let the user decide
 +      whether or not to overwrite it.  If the input is a directory, write the
 +      default filename to that directory.  (Bug#4388)
 +      (rmail-mime-bulk-handler): Ensure the save button's 'directory property
 +      is a filename-as-a-directory.
 +
 +2009-09-15  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * textmodes/page.el (what-page): Don't move to beginning of line.
 +      See <87tyz5ajte.fsf@x2.delysid.org> in emacs-devel.
 +
 +2009-09-15  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * vc-git.el (vc-git-dir-extra-headers): Show the remote location.
 +
 +2009-09-14  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * bindings.el (mode-line-mode-menu): Add purecopy calls for :help.
 +      * help.el (help-for-help-internal): Add purecopy calls for text.
 +
 +      * vc.el (top): print-log method now takes an optional SHORTLOG
 +      argument.  Add a new method: root.
 +      (vc-root-diff, vc-print-root-log): New functions.
 +      (vc-log-short-style): New variable.
 +      (vc-print-log-internal): Add support for showing short logs.
 +
 +      * vc-hooks.el (vc-prefix-map, vc-menu-map): Add bindings for
 +      vc-print-root-log and vc-print-root-diff.
 +
 +      * vc-bzr.el (vc-bzr-log-view-mode, vc-bzr-print-log):
 +      * vc-git.el (vc-git-print-log, vc-git-log-view-mode):
 +      * vc-hg.el (vc-hg-print-log, vc-hg-log-view-mode): Add support for
 +      short logs.
 +
 +      * vc-cvs.el (vc-cvs-print-log):
 +      * vc-mtn.el (vc-mtn-print-log):
 +      * vc-rcs.el (vc-rcs-print-log):
 +      * vc-sccs.el (vc-sccs-print-log):
 +      * vc-svn.el (vc-svn-print-log): Add an optional argument shortlog
 +      that is ignored for now.
 +
 +      * vc-mtn.el (vc-mtn-annotate-command):
 +      * vc-svn.el (vc-svn-annotate-command): Run asynchronously.
 +
 +2009-09-14  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * simple.el: Add mapping for backspace/delete/clear/tab/escape/return
 +      to function-key-map, and give them ascii-character property.
 +      * term/x-win.el (x-alternatives-map):
 +      * term/ns-win.el (ns-alternatives-map):
 +      * term/internal.el (msdos-key-remapping-map):
 +      * w32-fns.el (x-alternatives-map): Remove redundant mappings.
 +
 +2009-09-14  Glenn Morris  <rgm@gnu.org>
 +
 +      * emacs-lisp/elint.el (elint-add-required-env): Revert to not using
 +      temp-buffers (2009-09-12).
 +
 +2009-09-13  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * textmodes/ispell.el (ispell-command-loop): Improve last fix, using
 +      the new read-key function.
 +
 +2009-09-13  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * term/x-win.el (x-menu-bar-open): Only call accelerate-menu if it
 +      is defined (Bug#4405).
 +
 +2009-09-13  Vincent Belaïche  <vincent.belaiche@gmail.com>
 +
 +      * recentf.el (recentf-cleanup): Use a hash table to find
 +      duplicates (Bug#4407).
 +
 +2009-09-13  Per Starbäck  <per@starback.se>  (tiny change)
 +
 +      * textmodes/ispell.el (ispell-command-loop): Convert keys such as
 +      kp-0 to ascii equivalents (Bug#4325).
 +
 +2009-09-13  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * progmodes/cperl-mode.el (cperl-init-faces): Revert last change.
 +
 +      * eshell/em-hist.el:
 +      * eshell/em-dirs.el (eshell-complete-user-reference):
 +      Declare pcomplete functions and variables to avoid compiler warnings.
 +
 +2009-09-13  Leo  <sdl.web@gmail.com>  (tiny change)
 +
 +      * eshell/em-script.el (eshell-login-script, eshell-rc-script):
 +      * eshell/em-dirs.el (eshell-last-dir-ring-file-name):
 +      * eshell/em-alias.el (eshell-aliases-file):
 +      * eshell/em-hist.el (eshell-history-file-name):
 +      Use expand-file-name instead of concat to make file names (Bug#4308).
 +
 +2009-09-13  Glenn Morris  <rgm@gnu.org>
 +
 +      * ediff-merg.el (ediff-do-merge):
 +      * filesets.el (filesets-run-cmd):
 +      * emulation/ws-mode.el (ws-show-markers, ws-move-block, ws-delete-block)
 +      (ws-find-marker-0, ws-find-marker-1, ws-find-marker-2, ws-find-marker-3)
 +      (ws-find-marker-4, ws-find-marker-5, ws-find-marker-6, ws-find-marker-7)
 +      (ws-find-marker-8, ws-find-marker-9, ws-goto-block-begin)
 +      (ws-goto-block-end, ws-goto-last-cursorposition, ws-copy-block):
 +      Replace empty `let's with `progn'.
 +
 +2009-09-13  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * mail/sendmail.el (send-mail-function):
 +      * tooltip.el (tooltip-mode):
 +      * simple.el (transient-mark-mode):
 +      * rfn-eshadow.el (file-name-shadow-mode):
 +      * frame.el (blink-cursor-mode):
 +      * font-core.el (global-font-lock-mode):
 +      * files.el (temporary-file-directory)
 +      (small-temporary-file-directory, auto-save-file-name-transforms):
 +      * epa-hook.el (auto-encryption-mode):
 +      * composite.el (global-auto-composition-mode):
 +      Use custom-initialize-delay.
 +      * startup.el (command-line): Don't explicitly call
 +      custom-reevaluate-setting for all the above vars.
 +      * custom.el (custom-initialize-safe-set)
 +      (custom-initialize-safe-default): Delete.
 +
 +2009-09-12  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * term/x-win.el (x-initialize-window-system):
 +      * term/w32-win.el (w32-initialize-window-system):
 +      * term/ns-win.el (ns-initialize-window-system): Don't call
 +      mouse-wheel-mode since it's enabled globally by default already.
 +
 +      * mwheel.el (mouse-wheel-mode): Make sure the new defvar doesn't
 +      actually define the variable, but only silences the byte-compiler.
 +      (mouse-wheel-change-button): Check whether mouse-wheel-mode is bound
 +      before looking it up.
 +      (mouse-wheel-scroll-amount): Also reset the bindings if this value
 +      is changed.
 +
 +2009-09-12  Glenn Morris  <rgm@gnu.org>
 +
 +      * emacs-lisp/elint.el (elint-file): Make max-lisp-eval-depth at least
 +      1000.
 +      (elint-add-required-env): Don't beep on error.
 +      (elint-forms): In case of error, return ENV unchanged.
 +      (elint-init-env): Skip non-list forms.
 +      (elint-log): Handle unknown file positions.
 +
 +2009-09-12  Daiki Ueno  <ueno@unixuser.org>
 +
 +      * epg.el (epg-make-context): Add autoload cookie.
 +      (epg-list-keys, epg-cancel, epg-start-decrypt, epg-decrypt-file)
 +      (epg-decrypt-string, epg-start-verify, epg-verify-file)
 +      (epg-verify-string, epg-start-sign, epg-sign-file)
 +      (epg-sign-string, epg-start-encrypt, epg-encrypt-file)
 +      (epg-encrypt-string, epg-start-export-keys)
 +      (epg-export-keys-to-file, epg-export-keys-to-string)
 +      (epg-start-import-keys, epg-import-keys-from-file)
 +      (epg-import-keys-from-string, epg-start-receive-keys)
 +      (epg-receive-keys, epg-import-keys-from-server)
 +      (epg-start-delete-keys, epg-delete-keys, epg-start-sign-keys)
 +      (epg-sign-keys, epg-start-generate-key)
 +      (epg-generate-key-from-file, epg-generate-key-from-string):
 +      Remove autoload cookie.
 +
 +2009-09-12  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * dos-fns.el (dos-reevaluate-defcustoms): Comment out the
 +      reevaluation of trash-directory.
 +
 +      * mwheel.el: Fix last change.
 +      (mouse-wheel-mode): New defvar.
 +      (mouse-wheel-mode): Remove autoload cookie.
 +
 +2009-09-12  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * mwheel.el (mwheel-installed-bindings): New var.
 +      (mouse-wheel-mode): Use it, so as to make sure we really remove all
 +      the bindings we set last time.  Use custom-initialize-delay.
 +      * loadup.el: Load mwheel after term/*-win.el.
 +      * startup.el (command-line): Don't reevaluate mouse-wheel-down-event
 +      and mouse-wheel-up-event now that their first evaluation is done
 +      sufficiently late to be correct.
 +
 +      * startup.el (tutorial-directory): Make it a defcustom.
 +      Use custom-initialize-delay rather than eval-at-startup to set it.
 +      * image.el (image-load-path): Make it a defcustom.
 +      Use custom-initialize-delay rather than eval-at-startup to set it.
 +      * subr.el (eval-at-startup): Remove.
 +      * font-lock.el (lisp-font-lock-keywords-2): Remove eval-at-startup.
 +
 +      * subr.el (do-after-load-evaluation): Warn the user after loading an
 +      obsolete package.
 +
 +2009-09-12  Glenn Morris  <rgm@gnu.org>
 +
 +      * proced.el (proced-mark-alt): Remove alias.
 +      (proced-mode-map): Remove proced-mark-alt.
 +
 +      * emacs-lisp/lisp-mode.el (emacs-lisp-mode-map): Add menu entries to
 +      Elint file and directory.  Remove initialization entry.
 +
 +      * emacs-lisp/elint.el (elint-file, elint-directory): New autoloaded
 +      commands.
 +      (elint-current-buffer): Set mode-line-process.
 +      (elint-init-env): Handle define-derived-mode.
 +      Fix declare-function with unspecified arglist.  Guard against odd
 +      defalias statements (eg iso-insert's 8859-1-map).
 +      (elint-add-required-env): Use a temp buffer.
 +      (elint-form): Just print the function/macro name, not the whole form.
 +      Return env unchanged if we fail to parse a macro.
 +      (elint-forms): Guard against parse errors.
 +      (elint-output): New function, to handle batch mode.
 +      (elint-log-message): Add optional argument.  Use elint-output.
 +      (elint-set-mode-line): New function.
 +
 +2009-09-12  Andreas Politz  <politza@fh-trier.de>  (tiny change)
 +
 +      * emacs-lisp/elp.el (elp-not-profilable): Add more
 +      functions (Bug#4233).
 +
 +2009-09-12  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * emulation/pc-select.el (scroll-down-mark, scroll-down-nomark)
 +      (scroll-up-mark, scroll-up-nomark): Doc fix (Bug#4190).
 +
 +2009-09-11  Nick Roberts  <nickrob@snap.net.nz>
 +
 +      * progmodes/gdb-mi.el (gdb-var-list-children-regexp): Delete.
 +      (gdb-var-list-children): Use json parsing.
 +
 +2009-09-11  Daniel Colascione  <dan.colascione@gmail.com>
 +
 +      * progmodes/js.el (js--proper-indentation): Handle the case where
 +      char-before is null.  Reported by Deniz Dogan.
 +
 +2009-09-11  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * emacs-lisp/cl-macs.el (help-add-fundoc-usage): Declare.
 +
 +2009-09-11  Daiki Ueno  <ueno@unixuser.org>
 +
 +      * epg.el (epg-cipher-algorithm-alist): Add CAMELLIA.
 +      (epg-digest-algorithm-alist): Add SHA224.
 +      (epg-context-set-passphrase-callback)
 +      (epg-context-set-progress-callback): Add description about
 +      callback function.
 +
 +2009-09-11  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * custom.el (custom-delayed-init-variables): New var.
 +      (custom-initialize-delay): New function.
 +      * startup.el (command-line): "Re"evaluate all vars in
 +      custom-delayed-init-variables.  Don't reevaluate abbrev-file-name
 +      explicitly any more.
 +      * abbrev.el (abbrev-file-name): Use custom-initialize-delay
 +      to avoid creating a ~/.emacs.d at build-time (bug#4347).
 +
 +      * proced.el (proced-mode-map): Prefer "m" for proced-mark (bug#4362).
 +
 +2009-09-11  Nick Roberts  <nickrob@snap.net.nz>
 +
 +      * progmodes/gdb-mi.el (gdb-var-update-regexp): Delete.
 +      (gdb-var-update-handler): Use json parsing.
 +
 +2009-09-11  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * vc-annotate.el (vc-annotate): Use the main file's coding-system to
 +      decode annotated text, regardless of language environment.  (Bug#2741)
 +
 +2009-09-11  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * Makefile.in (autoloads): Make rmail.el writable as well.
 +
 +2009-09-11  Glenn Morris  <rgm@gnu.org>
 +
 +      * dired-aux.el, dired-x.el: Put autoloads in dired.el rather than
 +      loaddefs.el.
 +      * dired.el: Regenerate with extracted autoloads.
 +      * Makefile.in (autoloads): Make dired.el writable.
 +
 +      * ibuf-ext.el: Put autoloads in ibuffer.el rather than loaddefs.el.
 +      * ibuffer.el: Regenerate with extracted autoloads.
 +      * Makefile.in (autoloads): Make ibuffer.el writable.
 +
 +      * paths.el (prune-directory-list, gnus-nntp-service, rmail-file-name):
 +      * version.el (emacs-copyright, emacs-major-version)
 +      (emacs-minor-version): Reformat doc-strings for make-docfile.
 +
 +      * apropos.el (apropos-documentation-check-doc-file): Exclude unbound
 +      functions and variables, since they must be stuff specific to some other
 +      platform.
 +      (apropos-print): Make mouse-click message less specific about button.
 +
 +      * emacs-lisp/cl-macs.el (define-compiler-macro): Add a property
 +      that records where a macro was defined.
 +      * help-fns.el (describe-function-1): Mention if a function has a
 +      compiler-macro.
 +      * help-mode.el (help-function-cmacro): New button.
 +
 +      * locate.el (top-level): Always require dired.
 +      (locate-mode-map): Initialize inside the defvar.
 +
 +      * net/ange-ftp.el (dired-compress-file): Declare.
 +      (ange-ftp-dired-compress-file): Add doc string.
 +
 +      * term/ns-win.el (x-display-name, x-setup-function-keys):
 +      Unify doc-strings with X versions.
 +
 +2009-09-11  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * emulation/crisp.el (crisp-mode-map): Move initialization
 +      into declaration.
 +      (crisp-mode): Use define-minor-mode.
 +
 +      * progmodes/xscheme.el (xscheme-evaluation-commands):
 +      Put a :advertised-binding property rather than using
 +      advertised-xscheme-send-previous-expression.
 +      (advertised-xscheme-send-previous-expression): Declare obsolete.
 +      * emulation/crisp.el (crisp-mode-map): Use `undo' rather than
 +      `advertised-undo'.
 +      (crisp-mode): Add corresponding bindings to
 +      undo's :advertised-binding instead.
 +      * dired.el (dired-mode-map): Put a :advertised-binding property rather
 +      than using dired-advertised-find-file.
 +      (dired-advertised-find-file):
 +      * simple.el (advertised-undo):
 +      * wid-edit.el (advertised-widget-backward): Declare obsolete.
 +      (widget-keymap): Put a :advertised-binding property rather
 +      than using advertised-widget-backward.
 +      * bindings.el (ctl-x-map): Put a :advertised-binding property rather
 +      than using advertised-undo.
 +      * tutorial.el (tutorial--default-keys): Adjust accordingly.
 +
 +2009-09-10  Simon South  <ssouth@slowcomputing.org>
 +
 +      * progmodes/delphi.el (delphi-tab): Indent region when Transient
 +      Mark mode is enabled and region is active; otherwise indent or
 +      insert TAB as usual.
 +      (delphi-mode): Update description of TAB-key binding.
 +
 +2009-09-10  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * subr.el (define-key-rebound-commands): Mark obsolete.
 +      * startup.el (precompute-menubar-bindings): Remove.
 +      (normal-top-level): Remove obsolete code that tried to precompute
 +      menubar bindings.
 +      * loadup.el (define-key-rebound-commands): Don't bother fiddling with
 +      define-key-rebound-commands and precompute-menubar-bindings.
 +
 +2009-09-10  Teodor Zlatanov  <tzz@lifelogs.com>
 +
 +      * net/imap.el (imap-interactive-login): Better messages.
 +      (imap-open): Fix bug with renamed buffer on reconnect.
 +      (imap-authenticate): Add buffer-local imap-last-authenticator variable
 +      for easier debugging and cleaner code.  On successful (guessed based on
 +      server capabilities) secondary authentication, set imap-state
 +      correctly.
 +      (imap-last-authenticator): Define imap-last-authenticator as a variable
 +      to avoid warnings.
 +
 +2009-09-10  Glenn Morris  <rgm@gnu.org>
 +
 +      * pcvs.el (cvs-mode-find-file): Use forward-line rather than goto-line.
 +
 +      * emacs-lisp/bytecomp.el (byte-compile-function-environment): Doc fix.
 +      (byte-compile-file-form-autoload): Don't warn about unknown functions
 +      where the autoload statement comes after the use.
 +      (with-no-warnings): Give it a byte-hunk-handler like than of progn, so
 +      that any handlers inside the body (eg require) are in turn respected.
 +
 +      * emacs-lisp/byte-opt.el (degrees-to-radians): Mark as free from side
 +      effects.
 +
 +      * emacs-lisp/derived.el (define-derived-mode): Give the mode's map,
 +      and syntax and abbrev tables basic docs, if they don't have any.
 +
 +      * emacs-lisp/easy-mmode.el (easy-mmode-defmap): Add doc-string.
 +
 +      * international/mule-cmds.el (top-level): Require cl when compiling.
 +      (view-hello-file): Use default-value rather than
 +      default-enable-multibyte-characters.
 +
 +      * progmodes/fortran.el: Move all safe and risky properties into the
 +      defcustoms.
 +
 +      * mail/rmailedit.el, mail/rmailkwd.el, mail/rmailmm.el:
 +      * mail/rmailmsc.el, mail/rmailsort.el, mail/rmailsum.el:
 +      * mail/undigest.el:
 +      Put autoloads in rmail.el rather than loaddefs.el.
 +      * mail/rmail.el: Regenerate with extracted autoloads.
 +
 +      * mail/rmailsum.el (rmail-user-mail-address-regexp): Move to rmail.el.
 +      * mail/rmail.el (rmail-user-mail-address-regexp): Move from rmailsum.el.
 +
 +2009-09-10  Nick Roberts  <nickrob@snap.net.nz>
 +
 +      Reported in thread for Bug#4375.
 +      * progmodes/gud.el (gud-tooltip-print-command): Use MI command
 +      "-data-evaluate-expression" instead of print.
 +      * progmodes/gdb-mi.el (gdb-tooltip-print-1): Ditto.
 +      (gdb-tooltip-print): Parse output from above MI command.
 +      (gdb): Revert 2009-08-11 change.  User should detach inferior
 +      manually.
 +
 +      Remove the word "separate" from IO functions as inferior
 +      output is now never displayed in the GUD buffer.
 +
 +2009-09-10  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * startup.el (command-line-normalize-file-name): On Windows and
 +      MS-DOS, also convert C:\/ and C:\\ (two backslashes) into C:/.
 +
 +2009-09-10  Juri Linkov  <juri@jurta.org>
 +
 +      * isearch.el (isearch-text-char-description): Propertize escape
 +      character sequences with the `escape-glyph' face.  (Bug#4344)
 +
 +      * simple.el (shell-command): Set asynchronous process filter to
 +      `comint-output-filter'.  (Bug#4343)
 +
 +      * progmodes/grep.el (grep-template): Add "<X>" to docstring.
 +      (grep-files-aliases): Add "all".  Move "el" and "ch" to the top of
 +      the list.  Move "asm" to the bottom.
 +      (grep-find-ignored-directories): Add `choice' with nil value
 +      to empty the list easily.
 +      (grep-find-ignored-files): New option.
 +      (grep-files-history): Set to nil by default instead of '("ch" "el").
 +      (grep-compute-defaults): Add "<X>" to `grep-template'.
 +      (grep-read-files): Bind new local variables `default-alias' and
 +      `default-extension'.  Use a list of default values for the file prompt.
 +      (lgrep): Add `--exclude=' command line options composed from
 +      `grep-find-ignored-files'.
 +      (rgrep): Add `-name' command line options composed from
 +      `grep-find-ignored-files'.  (Bug#4301)
 +
 +2009-09-09  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * diff-mode.el (diff-hunk-kill): Fix the search of the next hunk
 +      (bug#4368).
 +
 +2009-09-09  Katsumi Yamaoka  <yamaoka@jpl.org>
 +
 +      * calendar/time-date.el (autoload):
 +      Expand define-obsolete-function-alias into defalias and make-obsolete
 +      for old Emacsen that Gnus supports.
 +      (with-no-warnings): Define it for old Emacsen.
 +      (time-to-seconds): Don't use (featurep 'xemacs) to check if float-time
 +      is available.
 +      (time-to-number-of-days): Don't use (featurep 'xemacs) to check if
 +      float-time is available; suppress compile warning for time-to-seconds.
 +
 +2009-09-09  Teodor Zlatanov  <tzz@lifelogs.com>
 +
 +      * net/imap.el (imap-message-map): Docstring fix.
 +
 +2009-09-09  Glenn Morris  <rgm@gnu.org>
 +
 +      * ffap.el (ffap-file-at-point): Handle absolute (non-remote) files with
 +      line numbers too.  (Bug#4374)
 +
 +2009-09-08  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * smerge-mode.el (smerge-remove-props, smerge-refine):
 +      Use with-silent-modifications (bug#4342).
 +
 +      * subr.el (with-silent-modifications): New macro.
 +
 +2009-09-07  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * files.el (top-level): Require `cl' when compiling.
 +
 +2009-09-07  Glenn Morris  <rgm@gnu.org>
 +
 +      * files.el (auto-mode-alist): Use delphi-mode for .dpr files.
 +
 +      * proced.el (proced-mode-map): Bind "d" to proced-mark-alt.
 +      (proced-mark-alt): New alias, to control the advertised key.  (Bug#4362)
 +
 +2009-09-06  Nick Roberts  <nickrob@snap.net.nz>
 +
 +      * vc-git.el (vc-git-annotate-command): Use separator to parse
 +      arguments correctly.
 +
 +2009-09-06  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * proced.el (proced-mode): Doc fix.
 +
 +2009-09-06  Julian Scheid  <julians37@gmail.com>  (tiny change)
 +
 +      * net/tramp.el (tramp-perl-file-attributes): Print "nil" when
 +      lstat fails.
 +      (tramp-do-file-attributes-with-ls): Check for file existence at
 +      remote end.
 +      (tramp-do-file-attributes-with-stat): Likewise.
 +      (tramp-convert-file-attributes): Return nil when attr is nil.
 +
 +2009-09-05  Glenn Morris  <rgm@gnu.org>
 +
 +      * calendar/diary-lib.el (diary-entry): Add help-echo and follow-link
 +      properties to this button.
 +      (diary-fancy-display): Don't extend the button to the final newline.
 +      (diary-fancy-display-mode): Continue to define "q" as a local key.
 +
 +      * calendar/cal-china.el (holiday-chinese): Make it slightly more
 +      efficient.
 +
 +      * font-lock.el (lisp-font-lock-keywords-2): Add letf.
 +
 +      * emacs-lisp/bytecomp.el (emacs-lisp-file-regexp): Doc fix.
 +      (byte-compile-dest-file-function): New option.
 +      (byte-compile-dest-file): Doc fix.
 +      Obey byte-compile-dest-file-function.
 +      (byte-compile-cl-file-p): New function.
 +      (byte-compile-eval): Only suppress noruntime warnings about cl functions
 +      if the cl-functions warning is enabled.  Use byte-compile-cl-file-p.
 +      (byte-compile-eval): Check for non-nil byte-compile-cl-functions rather
 +      than for file being previously loaded.
 +      (byte-compile-find-cl-functions): Use byte-compile-cl-file-p.
 +      (byte-compile-file-form-require): Handle the case where requiring a file
 +      indirectly causes CL to be loaded.
 +
 +2009-09-05  Karl Fogel  <kfogel@red-bean.com>
 +
 +      * files.el (find-alternate-file): Run `kill-buffer-hook' manually
 +      before killing the old buffer, since by the time `kill-buffer' is
 +      run so many buffer variables have been set to nil that it may not
 +      behave as expected.  (Bug#4061)
 +
 +2009-09-05  Karl Fogel  <kfogel@red-bean.com>
 +
 +      * files.el (find-alternate-file): If the old buffer is modified
 +      and visiting a file, behave similarly to `kill-buffer' when
 +      killing it, thus reverting to the pre-1.878 behavior; see
 +      http://lists.gnu.org/archive/html/emacs-devel/2009-09/msg00101.html
 +      for discussion.  Also, consult `buffer-file-name' as a variable
 +      not as a function, for consistency with the rest of the code.
 +
 +2009-09-04  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/tramp.el (tramp-handle-insert-directory): Handle "--dired"
 +      also when adding a new directory.
 +
 +      * net/tramp-compat.el (tramp-compat-line-beginning-position):
 +      New defun.
 +
 +2009-09-04  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * files.el (locate-file-completion-table): Make it provide boundary
 +      information, so partial-completion works better.
 +
 +2009-09-04  Leo  <sdl.web@gmail.com>  (tiny change)
 +
 +      * mail/footnote.el (Footnote-text-under-cursor):
 +      Check footnote-text-marker-alist before using it (bug#4324).
 +
 +2009-09-04  Glenn Morris  <rgm@gnu.org>
 +
 +      * play/5x5.el, play/decipher.el, play/gametree.el, play/handwrite.el:
 +      * play/hanoi.el, play/landmark.el, play/mpuz.el, play/pong.el:
 +      * play/solitaire.el, play/tetris.el:
 +      Remove leading * from defcustom and defface docs.
 +
 +      * calendar/diary-lib.el (diary-fancy-display): Only switch modes if
 +      necessary.
 +      (diary-fancy-overriding-map): New variable.
 +      (diary-fancy-display-mode): Set minor-mode-overriding-map-alist.
 +      Use view-mode.
 +
 +      * vc-rcs.el (vc-rcs-annotate-command): Use forward-line rather than
 +      goto-line.
 +
 +2009-09-03  Glenn Morris  <rgm@gnu.org>
 +
 +      * arc-mode.el (archive-mode):
 +      * dos-fns.el (set-default-process-coding-system):
 +      * man.el (Man-getpage-in-background):
 +      * menu-bar.el (menu-bar-describe-menu):
 +      * server.el (server-process-filter):
 +      * startup.el (command-line):
 +      * tar-mode.el (tar-header-block-tokenize, tar-extract):
 +      * w32-fns.el (set-default-process-coding-system):
 +      * x-dnd.el (x-dnd-handle-file-name):
 +      * international/mule-cmds.el (mule-menu-keymap)
 +      (set-default-coding-systems, language-info-alist, set-language-info)
 +      (set-language-environment, standard-display-european-internal)
 +      (set-locale-environment):
 +      * international/mule-diag.el (mule-diag):
 +      * mail/emacsbug.el (report-emacs-bug):
 +      * mail/rmail.el (rmail-mode):
 +      * mail/sendmail.el (mail-setup):
 +      Use default-value rather than default-enable-multibyte-characters.
 +
 +      * progmodes/f90.el: Move all safe properties into the defcustoms.
 +      (f90-get-correct-indent, f90-indent-region, f90-abbrev-start): Use memq.
 +
 +      * calendar/appt.el (appt-check):
 +      * calendar/diary-lib.el (diary-set-header, diary-live-p)
 +      (diary-check-diary-file, diary-list-entries)
 +      (diary-include-other-diary-files, diary-simple-display)
 +      (diary-fancy-display, diary-print-entries)
 +      (diary-mark-included-diary-files, diary-make-entry):
 +      Don't call substitute-in-file-name on diary-file.
 +
 +2009-09-03  Eduard Wiebe  <usenet@pusto.de>
 +            Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * mail/footnote.el (footnote-prefix): Make it a defcustom.
 +      (footnote-mode-map): Move initialization into the declaration.
 +      (footnote-minor-mode-map): Define it rather than changing global-map.
 +      (footnote-mode): Use define-minor-mode.
 +
 +2009-09-02  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/tramp.el (tramp-handle-file-attributes-with-ls)
 +      (tramp-do-file-attributes-with-perl)
 +      (tramp-do-file-attributes-with-stat): Rename from
 +      `tramp-handle-file-attributes-with-*'.
 +      (tramp-handle-file-attributes): Use them.
 +      (tramp-do-directory-files-and-attributes-with-perl)
 +      (tramp-do-directory-files-and-attributes-with-stat): Rename from
 +      `tramp-handle-directory-files-and-attributes-with-*'.
 +      (tramp-handle-directory-files-and-attributes): Use them.
 +      (tramp-method-out-of-band-p): Additional parameter SIZE.
 +      (tramp-do-copy-or-rename-file, tramp-handle-file-local-copy)
 +      (tramp-handle-write-region): Use it.
 +      (tramp-handle-insert-directory): Use "?\ " for compatibility reasons.
 +      (tramp-handle-vc-registered): Check, whether the first run did
 +      return files to be tested.
 +      (tramp-advice-make-auto-save-file-name): Do not call directly
 +      `tramp-handle-make-auto-save-file-name', because this would bypass
 +      the locking mechanism.
 +
 +      * net/tramp-compat.el (top): Autoload used functions from tramp.el.
 +      (file-remote-p, process-file, start-file-process, set-file-times)
 +      (tramp-compat-file-attributes): Compatibility functions shall not
 +      call directly `tramp-handle-*', because this would bypass the
 +      locking mechanism.
 +      (tramp-compat-number-sequence): New defun.
 +
 +2009-09-02  Glenn Morris  <rgm@gnu.org>
 +
 +      * calendar/time-date.el (time-to-seconds): In Emacs, make it an obsolete
 +      alias for float-time.
 +      (time-to-number-of-days): In Emacs, use float-time.
 +      * net/newst-backend.el (time-add): Suppress warnings from compat
 +      function.
 +      * time.el (emacs-uptime, emacs-init-time):
 +      * net/rcirc.el (rcirc-keepalive, rcirc-handler-ctcp-KEEPALIVE):
 +      Use float-time rather than time-to-seconds.
 +
 +      * minibuffer.el (completion-initials-expand): Fix typo.
 +
 +      * faces.el (modeline, modeline-inactive, modeline-highlight)
 +      (modeline-buffer-id):
 +      * info.el (info-menu-5): Mark these face aliases as obsolete.
 +
 +2009-09-01  Nick Roberts  <nickrob@snap.net.nz>
 +
 +      * progmodes/gdb-mi.el (gdb-current-context-command): Move the
 +      space ...
 +      (gdb-gud-context-call): ... to here for pre GDB 7.0 when there is
 +      no "--thread" option.
 +      (gdb-stopped): Don't print "Switched to thread" message when it is
 +      unchanged.
 +
 +2009-09-01  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * minibuffer.el (completion-try-completion)
 +      (completion-all-completions): Remove ill-defined (and
 +      mistakenly installed and luckily never used nor documented)
 +      `completion-styles' property.
 +      (completion-initials-expand, completion-initials-all-completions)
 +      (completion-initials-try-completion): New functions.
 +      (completion-styles-alist): Add doc to each entry.
 +      Add new `initials' entry.
 +
 +2009-09-01  Nick Roberts  <nickrob@snap.net.nz>
 +
 +      * progmodes/gdb-mi.el (gdb-var-create-handler): Remove redundant
 +      MI command -var-evaluate-expression.
 +      (gdb-var-list-children-regexp): Update from regexp-1 in gdb-ui.el
 +      and tweak for case of string child.
 +      (gdb-var-list-children-handler): Update from handler-1 in gdb-ui.el.
 +
 +2009-09-01  Glenn Morris  <rgm@gnu.org>
 +
 +      * add-log.el (change-log-date-face, change-log-name-face)
 +      (change-log-email-face, change-log-file-face, change-log-list-face)
 +      (change-log-conditionals-face, change-log-function-face)
 +      (change-log-acknowledgement-face):
 +      * cus-edit.el (custom-invalid-face, custom-rogue-face)
 +      (custom-modified-face, custom-set-face, custom-changed-face)
 +      (custom-saved-face, custom-button-face, custom-button-pressed-face)
 +      (custom-documentation-face, custom-state-face, custom-comment-face)
 +      (custom-comment-tag-face, custom-variable-tag-face)
 +      (custom-variable-button-face, custom-face-tag-face)
 +      (custom-group-tag-face-1, custom-group-tag-face):
 +      * diff-mode.el (diff-header-face, diff-file-header-face)
 +      (diff-index-face, diff-hunk-header-face, diff-removed-face)
 +      (diff-added-face, diff-changed-face, diff-function-face)
 +      (diff-context-face, diff-nonexistent-face):
 +      * generic-x.el (show-tabs-tab-face, show-tabs-space-face):
 +      * hilit-chg.el (highlight-changes-face, highlight-changes-delete-face):
 +      * info.el (Info-title-1-face, Info-title-2-face, Info-title-3-face)
 +      (Info-title-4-face):
 +      * isearch.el (isearch-lazy-highlight-face):
 +      * log-view.el (log-view-file-face, log-view-message-face):
 +      * paren.el (show-paren-match-face, show-paren-mismatch-face):
 +      * pcvs-info.el (cvs-header-face, cvs-filename-face, cvs-unknown-face)
 +      (cvs-handled-face, cvs-need-action-face, cvs-marked-face)
 +      (cvs-msg-face):
 +      * smerge-mode.el (smerge-mine-face, smerge-other-face)
 +      (smerge-base-face, smerge-markers-face):
 +      * wid-edit.el (widget-documentation-face, widget-button-face)
 +      (widget-field-face, widget-single-line-field-face)
 +      (widget-inactive-face, widget-button-pressed-face):
 +      * woman.el (woman-italic-face, woman-bold-face, woman-unknown-face)
 +      (woman-addition-face):
 +      * eshell/em-ls.el (eshell-ls-directory-face, eshell-ls-symlink-face)
 +      (eshell-ls-executable-face, eshell-ls-readonly-face)
 +      (eshell-ls-unreadable-face, eshell-ls-special-face)
 +      (eshell-ls-missing-face, eshell-ls-archive-face)
 +      (eshell-ls-backup-face, eshell-ls-product-face)
 +      (eshell-ls-clutter-face):
 +      * eshell/em-prompt.el (eshell-prompt-face):
 +      * eshell/esh-test.el (eshell-test-ok-face, eshell-test-failed-face):
 +      * obsolete/old-whitespace.el (whitespace-highlight-face):
 +      * progmodes/antlr-mode.el (antlr-font-lock-default-face)
 +      (antlr-font-lock-keyword-face, antlr-font-lock-syntax-face)
 +      (antlr-font-lock-ruledef-face, antlr-font-lock-tokendef-face)
 +      (antlr-font-lock-ruleref-face, antlr-font-lock-tokenref-face)
 +      (antlr-font-lock-literal-face):
 +      * progmodes/ebrowse.el (ebrowse-tree-mark-face)
 +      (ebrowse-root-class-face, ebrowse-file-name-face)
 +      (ebrowse-default-face, ebrowse-member-attribute-face)
 +      (ebrowse-member-class-face, ebrowse-progress-face):
 +      * progmodes/make-mode.el (makefile-space-face):
 +      * progmodes/sh-script.el (sh-heredoc-face):
 +      * textmodes/flyspell.el (flyspell-incorrect-face)
 +      (flyspell-duplicate-face):
 +      * textmodes/tex-mode.el (tex-math-face, tex-verbatim-face):
 +      * textmodes/texinfo.el (texinfo-heading-face):
 +      Mark face aliases with "-face" suffix as obsolete.
 +
 +      * mail/feedmail.el (file-name-buffer-file-type-alist): Define for
 +      compiler.
 +
 +      * net/eudc-bob.el (eudc-bob-generic-menu, eudc-bob-image-menu)
 +      (eudc-bob-sound-menu): Use defvar rather than defconst, since
 +      easy-menu-define wants to modify these.
 +
 +      * net/net-utils.el (nslookup): Use make-comint rather than comint-run.
 +
 +      * net/browse-url.el (browse-url-file-url):
 +      * term/internal.el (dos-codepage-setup):
 +      Use default-value rather than default-enable-multibyte-characters.
 +
 +      * progmodes/etags.el (etags-goto-tag-location):
 +      * progmodes/flymake.el (flymake-highlight-line)
 +      (flymake-goto-file-and-line, flymake-goto-line):
 +      * progmodes/gdb-mi.el (gdb-mouse-until, gdb-mouse-jump)
 +      (gdb-goto-breakpoint):
 +      * progmodes/idlw-shell.el (idlwave-shell-move-to-bp):
 +      * progmodes/python.el (python-find-function)
 +      (python-pdbtrack-track-stack-file):
 +      * progmodes/verilog-mode.el (verilog-surelint-off):
 +      * term/ns-win.el (ns-open-file-select-line):
 +      * textmodes/bibtex.el (bibtex-validate, bibtex-validate-globally):
 +      Use forward-line rather than goto-line.
 +
 +      * textmodes/reftex-cite.el (reftex-offer-bib-menu):
 +      * textmodes/reftex-index.el (reftex-display-index):
 +      * textmodes/reftex-ref.el (reftex-offer-label-menu):
 +      * textmodes/reftex-toc.el (reftex-toc):
 +      Remove unnecessary bindings of default-major-mode (all are followed by
 +      major-mode check and possible mode switch).
 +
 +2009-08-31  Nick Roberts  <nickrob@snap.net.nz>
 +
 +      * progmodes/gdb-mi.el (gdb-breakpoints-list-handler-custom):
 +      Handle watchpoints (bug#4282).
 +      (def-gdb-thread-buffer-command): Enable thread to be selected by
 +      clicking without selecting threads buffer first.
 +      (gdb-current-context-command): Use selected frame so that "up",
 +      "down" etc work in the GUD buffer.
 +      (gdb-update): Find selected frame before rendering stack buffer.
 +      (gdb-frame-handler): Set gdb-frame-number for stack buffer.
 +
 +2009-08-31  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * progmodes/sym-comp.el (displayed-completions): Remove.
 +      (symbol-complete): Use minibuffer-complete.
 +
 +2009-08-31  Glenn Morris  <rgm@gnu.org>
 +
 +      * emacs-lisp/byte-run.el (define-obsolete-face-alias): New macro.
 +
 +      * apropos.el (apropos-symbols-internal):
 +      Handle (obsolete) face aliases.
 +
 +      * faces.el (describe-face): Adjust the output format to be more like
 +      describe-variable, and to mention (obsolete) face aliases.
 +      Adjust the whitespace so that help-setup-xref works.
 +
 +      * calendar/calendar.el (calendar-today-face, diary-face, holiday-face):
 +      * calendar/diary-lib.el (diary-button-face):
 +      Mark these face aliases as obsolete.
 +
 +      * calendar/calendar.el (calendar-today): Doc fix.
 +
 +2009-08-31  Nick Roberts  <nickrob@snap.net.nz>
 +
 +      * progmodes/gdb-mi.el (gdb-control-all-threads)
 +      (gdb-control-current-thread): Force tool bar update.
 +      (gdb-non-stop-handler): New function.
 +      (gdb-init-1): Use it to test if non-stop mode is supported.
 +      Remove unused gdbmi buffer type.
 +
 +2009-08-30  Kevin Rodgers  <kevin.d.rodgers@gmail.com>
 +
 +      * progmodes/grep.el (grep-read-files): Strip trailing <N> from
 +      buffer names not visiting a file (e.g. cloned buffers).  (Bug#4210)
 +
 +2009-08-30  Nick Roberts  <nickrob@snap.net.nz>
 +
 +      * comint.el (comint-exec-1): Check command is non-null first.
 +      Part of gdb-mi.el change (2009-08-28).
 +
 +2009-08-30  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * emacs-lisp/lisp.el (lisp-complete-symbol): Use minibuffer-complete.
 +
 +2009-08-30  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * subr.el (do-after-load-evaluation): Fix last change: use `mapc'
 +      instead of `dolist' to avoid a recursive require when bootstrapping.
 +
 +2009-08-30  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * emacs-lisp/lisp.el (field-complete): Use minibuffer-complete.
 +
 +      * net/ldap.el (ldap-search-internal): Use with-current-buffer and push.
 +
 +      * net/imap.el (imap-send-command): Simplify.
 +      (imap-wait-for-tag): point-max -> buffer-size.
 +
 +      * net/ange-ftp.el (internal-ange-ftp-mode): Use define-derived-mode.
 +
 +      * emacs-lisp/easy-mmode.el (define-minor-mode): Don't use symbol-value
 +      with constant argument.
 +
 +      * emacs-lisp/debug.el (debugger-setup-buffer): Make it multibyte.
 +
 +      * emacs-lisp/cl.el (cl-macro-environment): Don't define it here.
 +
 +      * emacs-lisp/checkdoc.el (checkdoc-force-history-flag):
 +      Change default, since most of our files don't have a history.
 +      (checkdoc-display-status-buffer): Don't use a hidden buffer to show to
 +      the user.
 +
 +      * emacs-lisp/bytecomp.el (byte-compile-interactive-only-functions):
 +      Add comint-run.
 +
 +      * calc/calc.el: Improve commenting convention.
 +      (calc-digit-map, toplevel): Simplify.
 +
 +      * comint.el (comint-insert-input): Be careful to only set point if we
 +      don't delegate to some other command.
 +
 +      * proced.el (proced-signal-list): Make it an alist.
 +      (proced-grammar-alist): Capitalize names.
 +      (proced-send-signal): Use a non-hidden buffer (since it's displayed).
 +      Disable undo manually and make it read-only.
 +      Use completion-annotate-function.
 +
 +      * minibuffer.el (minibuffer-message): If the current buffer is not
 +      a minibuffer, insert the message in the echo area rather than at the
 +      end of the buffer.
 +      (completion-annotate-function): New variable.
 +      (minibuffer-completion-help): Use it.
 +      (completion--embedded-envvar-table): Environment vars are
 +      always case-sensitive.
 +
 +2009-08-30  Glenn Morris  <rgm@gnu.org>
 +
 +      * progmodes/fortran.el (fortran-start-prog-re): New constant, extracted
 +      from fortran-current-defun.
 +      (fortran-beginning-of-subprogram): Be more precise about finding the
 +      start, to avoid an infinite loop in end-of-defun.  (Bug#4259)
 +      (fortran-end-of-subprogram): Simplify.
 +      (fortran-current-defun): Use fortran-start-prog-re.
 +
 +2009-08-29  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * subr.el (do-after-load-evaluation): Simplify.
 +
 +2009-08-29  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * vc.el (vc-print-log-internal): Move RCS/CVS specific code ...
 +
 +      * vc-rcs.el (vc-rcs-print-log-cleanup): ... here.  New function.
 +      (vc-rcs-print-log): Use it.
 +
 +      * vc-cvs.el (vc-cvs-print-log): Use vc-rcs-print-log-cleanup.
 +
 +2009-08-29  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * paths.el (abbrev-file-name): Move to abbrev.el.
 +      * abbrev.el (abbrev-file-name): Move from paths.el.
 +      Obey user-emacs-directory.
 +      * calc/calc.el (calc-settings-file): Don't autoload and instead obey
 +      user-emacs-directory.
 +      * dos-fns.el (dos-reevaluate-defcustoms): Don't reevaluate
 +      abbrev-file-name and calc-settings-file any more.
 +      * startup.el (command-line): Recompute abbrev-file-name and
 +      abbreviated-home-dir.
 +      (normal-no-mouse-startup-screen): Improve the generic code and get rid
 +      of the special code for when C-h bindings haven't been changed.
 +      (display-startup-echo-area-message): Use with-current-buffer.
 +      (command-line-1): Use a list of strings, rather than a list of lists
 +      of strings for longopts.
 +
 +      * files.el (get-free-disk-space): Use / for default-directory.
 +
 +      * textmodes/ispell.el (ispell-accept-output, ispell-command-loop):
 +      Use with-current-buffer.
 +
 +      * emacs-lisp/bytecomp.el (byte-compile-const-symbol-p):
 +      Recognize immutable variables like most-positive-fixnum.
 +      (byte-compile-setq-default): Check and warn if trying to assign
 +      to an immutable variable, or a non-variable.
 +
 +      * progmodes/cc-vars.el (c-comment-continuation-stars):
 +      * progmodes/cc-engine.el (c-looking-at-bos):
 +      * progmodes/cc-cmds.el (c-toggle-auto-state)
 +      (c-forward-into-nomenclature, c-backward-into-nomenclature)
 +      (c-comment-line-break-function): Add version of obsolescence.
 +
 +2009-08-28  Juri Linkov  <juri@jurta.org>
 +
 +      * files.el (magic-fallback-mode-alist): Add ZIP magic number
 +      associated with `archive-mode'.
 +
 +      * image.el (image-type-header-regexps): Use only JPEG magic number
 +      to determine JPEG images, and don't use `image-jpeg-p' because
 +      Emacs can display non-JFIF non-Exif JPEG images.
 +
 +2009-08-28  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * arc-mode.el (archive-mode):
 +      * emacs-lisp/re-builder.el (re-builder-unload-function):
 +      Protect against the default value of `major-mode' being nil.
 +
 +2009-08-28  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * international/ucs-normalize.el (ucs-normalize-sort, quick-check-list):
 +      Fix typos in docstrings.
 +
 +      * progmodes/js.el (js--macro-decl-re): Doc fix.
 +      (js--plain-method-re, js--split-name): Refloc docstring.
 +      (js--class-styles, js--make-merged-item, js--splice-into-items):
 +      Fix typos in docstrings; reflow docstrings.
 +      (js--maybe-join, js--function-prologue-beginning, js--flush-caches)
 +      (js--variable-decl-matcher, js--inside-pitem-p)
 +      (js--parse-state-at-point, js--get-all-known-symbols)
 +      (js--symbol-history, js-find-symbol, js--js-references)
 +      (js--moz-interactor, js--js-encode-value, js--read-tab):
 +      Fix typos in docstrings.
 +
 +2009-08-28  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * textmodes/reftex.el (reftex-get-file-buffer-force):
 +      * progmodes/verilog-mode.el (verilog-batch-execute-func):
 +      * emulation/viper.el (viper-go-away, viper-set-hooks):
 +      * emacs-lisp/re-builder.el (re-builder-unload-function):
 +      * emacs-lisp/bytecomp.el (byte-compile-file):
 +      * ses.el (ses-unload-function):
 +      * hexl.el (hexl-find-file):
 +      * files.el (normal-mode):
 +      * ehelp.el (with-electric-help):
 +      * autoinsert.el (auto-insert-alist):
 +      * arc-mode.el (archive-mode):
 +      Use (default-value 'major-mode) instead of default-major-mode.
 +
 +      * textmodes/ispell.el (ispell-check-version, ispell-send-string):
 +      * international/mule.el (load-with-code-conversion):
 +      * emacs-lisp/debug.el (debug):
 +      * ediff-vers.el (ediff-rcs-get-output-buffer):
 +      * dired.el (dired-internal-noselect): Don't let-bind
 +      default-major-mode around code that doesn't use it.
 +      E.g. buffer creation via get-buffer-create doesn't use it.
 +
 +2009-08-28  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/tramp.el (all): Replace "'(lambda" by "(lambda".
 +      (tramp-handle-file-local-copy): Unset `file-name-handler-alist'
 +      when writing the temp file.  Otherwise, epa-file gets confused.
 +      (tramp-register-file-name-handlers): Make it a defun.  Move also
 +      `epa-file-handler' to the front of `file-name-handler-alist'.
 +
 +2009-08-28  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * net/tramp.el (tramp-shell-prompt-pattern): Allow a prompt to
 +      start right after a ^M.
 +      (tramp-root-regexp, tramp-completion-file-name-regexp-unified)
 +      (tramp-completion-file-name-regexp-separate)
 +      (tramp-completion-file-name-regexp-url): Use \\` and \\'.
 +      (tramp-handle-file-attributes, tramp-set-file-uid-gid):
 +      Don't modify last-coding-system-used by accident.
 +      (tramp-completion-file-name-handler): Apply the checks here,
 +      instead during registration.
 +      (tramp-register-file-name-handlers): Rename from
 +      `tramp-register-file-name-handler'.  Register both
 +      `tramp-file-name-handler' and `tramp-completion-file-name-handler'.
 +      (tramp-register-completion-file-name-handler): Remove.  (Bug#4260)
 +
 +2009-08-28  Nick Roberts  <nickrob@snap.net.nz>
 +
 +      * progmodes/gdb-mi.el (gdb-use-separate-io-buffer):
 +      Remove variable ...
 +      (gdb-init-1, gdb-display-separate-io-buffer)
 +      (gdb-frame-separate-io-buffer, gdb-setup-windows): ... and
 +      references to it.
 +      (gdb-inferior-io-mode): Use make-comint-in-buffer.
 +      (gdb-inferior-filter): Use comint-output-filter to stop
 +      echoing and remove ^M characters.
 +
 +2009-08-28  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * emulation/viper-init.el (viper-restore-cursor-type):
 +      * emulation/cua-base.el (cua--update-indications):
 +      Replace default-cursor-type with (default-value 'cursor-type).
 +
 +      * mail/sendmail.el (mail-recover-1):
 +      * international/mule-diag.el (describe-current-coding-system-briefly)
 +      (describe-current-coding-system):
 +      * international/mule-cmds.el (select-safe-coding-system)
 +      (select-message-coding-system)
 +      (set-language-environment-coding-systems, set-locale-environment):
 +      * hexl.el (hexl-insert-multibyte-char):
 +      * dos-w32.el (find-buffer-file-type-coding-system):
 +      * simple.el (what-cursor-position):
 +      Replace uses of default-buffer-file-coding-system
 +      with (default-value 'buffer-file-coding-system).
 +
 +      * emacs-lisp/edebug.el (edebug-display, edebug-outside-excursion):
 +      Replace uses of default-cursor-in-non-selected-windows
 +      with (default-value 'cursor-in-non-selected-windows).
 +      Use with-current-buffer.
 +
 +      * mail/feedmail.el: Use CL macros.
 +      (feedmail-run-the-queue, feedmail-send-it-immediately):
 +      * dos-w32.el (find-buffer-file-type): Replace uses of
 +      default-buffer-file-type with (default-value 'buffer-file-type).
 +
 +2009-08-28  Glenn Morris  <rgm@gnu.org>
 +
 +      * calendar/diary-lib.el (diary-list-entries, diary-goto-entry)
 +      (diary-show-all-entries, diary-mark-entries, diary-make-entry):
 +      Use default-value of major-mode rather than default-major-mode.
 +
 +2009-08-27  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * Makefile.in (update-elcfiles): Report left over elc files.
 +
 +      * mail/mailalias.el (build-mail-aliases): Use with-temp-buffer,
 +      expand-file-name and with-current-buffer.
 +      (mail-get-names, mail-directory): Use with-current-buffer.
 +
 +      * vc.el (vc-read-revision): New function.
 +      (vc-version-diff, vc-merge): Use it.
 +
 +2009-08-27  Sam Steingold  <sds@gnu.org>
 +
 +      * simple.el (kill-do-not-save-duplicates): New user option.
 +      (kill-new): When it is non-nil, and the new string is the same as
 +      the latest kill, set replace to t to avoid duplicates in kill-ring.
 +
 +2009-08-27  Julian Scheid  <julians37@gmail.com>  (tiny change)
 +
 +      * net/tramp.el (tramp-handle-process-file): Do not flush all
 +      caches when `process-file-side-effects' is set.
 +      (tramp-handle-vc-registered): Use `tramp-get-file-exists-command'
 +      instead of `tramp-find-file-exists-command'.
 +      Unset `process-file-side-effects'.
 +
 +2009-08-27  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/tramp.el (tramp-methods): New method "rsyncc".
 +      (top): Add completion function for "rsyncc".
 +      (tramp-message-show-message): New defvar.
 +      (tramp-message, tramp-error): Use it.
 +      (tramp-do-copy-or-rename-file-directly): Extend check for direct
 +      remote copying.
 +      (tramp-do-copy-or-rename-file-out-of-band): Handle new
 +      `tramp-methods' entry `copy-env' of "rsyncc".
 +      (tramp-vc-registered-read-file-names): New defconst.
 +      (tramp-vc-registered-file-names): New defvar.
 +      (tramp-handle-vc-registered): Implement optimization strategy.
 +      (tramp-run-real-handler): Add `tramp-vc-file-name-handler'.
 +      (tramp-vc-file-name-handler): New defun.
 +      (tramp-get-ls-command, tramp-get-test-command)
 +      (tramp-get-file-exists-command, tramp-get-remote-ln)
 +      (tramp-get-remote-perl, tramp-get-remote-stat)
 +      (tramp-get-remote-id): Remove superfluous `with-current-buffer'.
 +
 +      * net/tramp-cache.el (top): Autoload `tramp-time-less-p'.
 +      (tramp-cache-inhibit-cache): Extend doc string.  It allows also
 +      timestamps.
 +      (tramp-get-file-property): Check for timestamps in
 +      `tramp-cache-inhibit-cache'.
 +      (tramp-set-file-property): Write timestamp.
 +
 +2009-08-27  ARISAWA Akihiro  <ari@mbf.ocn.ne.jp>  (tiny change)
 +
 +      * language/japan-util.el (japanese-symbol-table): Add entries for
 +      cp932-2-byte.
 +
 +      * international/characters.el: Add category `j' to cp932-2-byte.
 +
 +2009-08-27  Kenichi Handa  <handa@m17n.org>
 +
 +      * international/fontset.el (build-default-fontset-data): New macro.
 +      (setup-default-fontset): Use build-default-fontset-data for CJK,
 +      tibetan, ethiopic, and ipa.
 +
 +2009-08-27  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * cus-start.el (default-major-mode): Customize `major-mode' instead.
 +      (enable-multibyte-characters): Not customizable any more.
 +
 +      * subr.el (default-mode-line-format, default-header-line-format)
 +      (default-line-spacing, default-abbrev-mode, default-ctl-arrow)
 +      (default-direction-reversed, default-truncate-lines)
 +      (default-left-margin, default-tab-width, default-case-fold-search)
 +      (default-left-margin-width, default-right-margin-width)
 +      (default-left-fringe-width, default-right-fringe-width)
 +      (default-fringes-outside-margins, default-scroll-bar-width)
 +      (default-vertical-scroll-bar, default-indicate-empty-lines)
 +      (default-indicate-buffer-boundaries, default-fringe-indicator-alist)
 +      (default-fringe-cursor-alist, default-scroll-up-aggressively)
 +      (default-scroll-down-aggressively, default-fill-column)
 +      (default-cursor-type, default-buffer-file-type)
 +      (default-cursor-in-non-selected-windows)
 +      (default-buffer-file-coding-system, default-major-mode)
 +      (default-enable-multibyte-characters): Mark as obsolete.
 +
 +2009-08-27  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * vc-dir.el (vc-dir-update): Remove debug helper.
 +
 +      * vc-cvs.el (vc-cvs-update-changelog): Fix typo.
 +
 +2009-08-26  Sam Steingold  <sds@gnu.org>
 +
 +      * simple.el (save-interprogram-paste-before-kill): New user option.
 +      (kill-new): When `save-interprogram-paste-before-kill' is non-nil,
 +      save the interprogram-paste into kill-ring before overriding it
 +      with the Emacs kill.
 +
 +2009-08-26  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * vc.el (vc-trunk-p): Rename to vc-rcs-trunk-p and move to vc-rcs.el.
 +      (vc-minor-part): Rename to vc-rcs-minor-part and move to vc-rcs.el.
 +      (vc-default-previous-revision): Rename to vc-rcs-previous-revision
 +      and move to vc-rcs.el.
 +      (vc-default-next-revision): Rename to vc-rcs-next-revision and
 +      move to vc-rcs.el.
 +      (vc-cvs-update-changelog): Move to vc-cvs.el, use vc-call-backend.
 +      (vc-rcs-update-changelog): Remove.
 +      (vc-update-changelog-rcs2log): Rename to vc-rcs-update-changelog
 +      and move to vc-rcs.el.
 +
 +      * vc-rcs.el (vc-rcs-latest-on-branch-p, vc-rcs-checkin)
 +      (vc-rcs-checkout, vc-rcs-rollback): Adjust for the vc-rcs-trunk-p
 +      renaming.
 +      (vc-rcs-trunk-p, vc-rcs-minor-part, vc-rcs-previous-revision)
 +      (vc-rcs-next-revision, vc-rcs-update-changelog): Move here from
 +      vc.el, renamed to be RCS specific.
 +
 +      * vc-cvs.el (vc-cvs-previous-revision, vc-cvs-next-revision):
 +      New functions.
 +      (vc-cvs-update-changelog): Move here from vc.el.
 +
 +      * vc-sccs.el (vc-sccs-previous-revision, vc-sccs-next-revision):
 +      New functions.
 +
 +2009-08-26  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * emacs-lisp/bytecomp.el (byte-compile-lapcode): Fix up last change.
 +
 +2009-08-26  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * vc-git.el (vc-git-register): Use "git add" for directories.
 +      (vc-git-stash, vc-git-stash-show): New functions.
 +      (vc-git-extra-menu-map): Bind them.
 +
 +      * vc-dir.el (vc-dir-node-directory, vc-dir-update): Get the parent
 +      directory correctly in case the item is a directory itself.
 +
 +      * vc.el: Document the desired behavior for reverted files in the
 +      `added' state.
 +      (vc-default-prettify-state-info): Remove function, unused.
 +
 +      * vc-bzr.el (vc-bzr-prettify-state-info): Remove function, unused.
 +
 +2009-08-26  Glenn Morris  <rgm@gnu.org>
 +
 +      * bindings.el (standard-mode-line-format): Reposition dashes in
 +      which-func entry.  (Bug#4217)
 +
 +      * files.el (enable-local-variables, enable-local-eval)
 +      (safe-local-variable-values, safe-local-eval-forms): Mark as risky in
 +      the defcustoms.
 +      (auto-mode-alist, ignored-local-variables)
 +      (save-some-buffers-action-alist): Move risky declarations to the
 +      definitions.
 +      (dabbrev-case-fold-search, dabbrev-case-replace, display-time-string)
 +      (font-lock-defaults, format-alist, imenu--index-alist)
 +      (imenu-generic-expression, input-method-alist, minor-mode-alist)
 +      (mode-line-buffer-identification, mode-line-client, mode-line-modes)
 +      (mode-line-modified, mode-line-mule-info, mode-line-position)
 +      (mode-line-process, mode-line-remote, outline-level)
 +      (parse-time-rules, rmail-output-file-alist)
 +      (special-display-buffer-names, vc-mode):
 +      Move risky declarations to the relevant files.
 +      * bindings.el (mode-line-client, mode-line-mule-info, mode-line-remote)
 +      (mode-line-modified, mode-line-process, mode-line-position)
 +      (mode-line-modes, mode-line-buffer-identification, minor-mode-alist)
 +      * font-core.el (font-lock-defaults):
 +      * format.el (format-alist):
 +      * vc-hooks.el (vc-mode):
 +      * window.el (special-display-buffer-names):
 +      * international/mule-cmds.el (input-method-alist):
 +      Define riskiness here (dumped file) rather than in files.el.
 +      * dabbrev.el (dabbrev-case-fold-search, dabbrev-case-replace):
 +      * imenu.el (imenu-generic-expression, imenu--index-alist):
 +      * outline.el (outline-level):
 +      * time.el (display-time-string):
 +      * calendar/parse-time.el (parse-time-rules):
 +      * mail/rmailout.el (rmail-output-file-alist):
 +      Autoload riskiness here, rather than placing in files.el.
 +
 +2009-08-26  Andreas Schwab  <schwab@linux-m68k.org>
 +
 +      * emacs-lisp/bytecomp.el (byte-compile-lapcode): Signal overflow.
 +
 +2009-08-25  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * simple.el (process-file-side-effects): New defvar.
 +
 +      * dired-aux.el (dired-show-file-type):
 +      * vc.el (vc-diff-internal):
 +      * vc-arch.el (vc-arch-diff):
 +      * vc-bzr.el (vc-bzr-sha1, vc-bzr-revision-completion-table):
 +      * vc-cvs.el (vc-cvs-state, vc-cvs-diff, vc-cvs-revision-table):
 +      * vc-git.el (vc-git-registered, vc-git-working-revision)
 +      (vc-git-find-revision, vc-git-diff, vc-git-revision-table)
 +      (vc-git--empty-db-p):
 +      * vc-hooks.el (vc-user-login-name):
 +      * vc-svn.el (vc-svn-registered, vc-svn-state)
 +      (vc-svn-dir-extra-headers, vc-svn-find-revision):
 +      * progmodes/grep.el (grep-probe): Let-bind
 +      `process-file-side-effects' with nil.
 +
 +      * net/dbus.el (dbus-ping): Add optional parameter TIMEOUT.
 +
 +      * net/tramp-gvfs.el (top): Use timeout of 100 msec pinging GVFS
 +      daemon.  Replace ping by checking for running service for bluez
 +      and zeroconf.  (Bug#4239)
 +
 +2009-08-25  Kevin Ryde  <user42@zip.com.au>
 +
 +      * net/dig.el (dig): Add autoload cookie.
 +
 +2009-08-25  Glenn Morris  <rgm@gnu.org>
 +
 +      * emacs-lisp/bytecomp.el (byte-compile-eval): Fix test for cl in
 +      load-history for absolute file-names.
 +      (byte-compile-file-form-require): Warn about use of the cl package.
 +
 +      * format.el (format-alist): Doc fix.
 +
 +      * play/bubbles.el (top-level): Don't require cl at run-time.
 +
 +      * progmodes/verilog-mode.el (top-level): Don't require lucid (and hence
 +      run-time cl).
 +
 +2009-08-24  Dmitry Dzhus  <dima@sphinx.net.ru>
 +
 +      * progmodes/gdb-mi.el (gdb-mapcar*): Replacement for `mapcar*'
 +      from cl package.
 +      (gdb-table-add-row, gdb-table-string): Use `gdb-mapcar*'.
 +
 +2009-08-24  Jay Belanger  <jay.p.belanger@gmail.com>
 +
 +      * calc/calc-alg.el (math-trig-rewrite)
 +      (math-hyperbolic-trig-rewrite): New functions.
 +      (calc-simplify): Simplify trig functions when asked.
 +
 +2009-08-24  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * diff-mode.el (diff-find-source-location): Avoid goto-line.
 +
 +2009-08-24  Kenichi Handa  <handa@m17n.org>
 +
 +      * language/ind-util.el (mapthread): Delete it.
 +      (combinatorial): New function.
 +      (indian--puthash-cv): Use combinatorial instead of mapthread.
 +
 +2009-08-22  Kevin Ryde  <user42@zip.com.au>
 +
 +      * emacs-lisp/checkdoc.el (checkdoc-force-history-flag)
 +      (checkdoc-arguments-in-order-flag): Add safe-local-variable booleanp.
 +      (checkdoc-symbol-words): Add safe-local-variable for list of strings.
 +      Clarify docstring that the value is strings not symbols.
 +      (checkdoc-list-of-strings-p): New function.
 +
 +2009-08-22  Glenn Morris  <rgm@gnu.org>
 +
 +      * files.el (auto-mode-alist):
 +      * hippie-exp.el (he-concat-directory-file-name):
 +      * lpr.el (lpr-windows-system, printer-name):
 +      * ls-lisp.el (ls-lisp-emulation, ls-lisp-use-insert-directory-program):
 +      * ps-print.el (ps-windows-system):
 +      * startup.el (command-line):
 +      * emulation/viper-ex.el (viper-glob-function):
 +      * international/mule-cmds.el (set-language-environment-coding-systems):
 +      * net/ange-ftp.el (ange-ftp-write-region):
 +      * obsolete/fast-lock.el (fast-lock-cache-name):
 +      Remove code for defunct system-types emx, macos, mswindows, next-mach,
 +      unisoft-unix, vax-vms, win32, w32.
 +
 +      * calendar/diary-lib.el (diary-mark-entries-1): Only mark all days of a
 +      given name if the pattern is not more specific.
 +
 +      * calendar/lunar.el (lunar-phase-names): New option.
 +      (lunar-phase): Doc fix.
 +      (lunar-cycles-per-year): New constant.
 +      (lunar-index): New function.
 +      (lunar-phase-list, diary-lunar-phases): Use lunar-index.
 +      (lunar-phase-name): Use lunar-phase-names.
 +      (calendar-lunar-phases): Use format.
 +      (lunar-new-moon-on-or-after): Use lunar-cycles-per-year.
 +
 +      * progmodes/cperl-mode.el (cperl-imenu-name-and-position):
 +      Copy imenu-example--name-and-position function here for own use.
 +      (cperl-xsub-scan): Use cperl-imenu-name-and-position.
 +
 +      * bs.el (bs--redisplay):
 +      * cus-edit.el (custom-redraw):
 +      * ibuffer.el (ibuffer-bury-buffer):
 +      * server.el (server-goto-line-column):
 +      * startup.el (command-line-1):
 +      * strokes.el (strokes-xpm-for-stroke):
 +      * term.el (term-display-buffer-line):
 +      * view.el (View-goto-line):
 +      * calc/calc.el (calc-do, calc-trail-buffer):
 +      * play/gamegrid.el (gamegrid-add-score-insecure):
 +      * progmodes/ada-mode.el (ada-compile-goto-error):
 +      * progmodes/ada-xref.el (ada-xref-find-in-modified-ali):
 +      (ebrowse-select-1st-to-9nth):
 +      * progmodes/cperl-mode.el (cperl-time-fontification):
 +      * progmodes/ebrowse.el (ebrowse-toggle-file-name-display)
 +      * progmodes/gud.el (gud-display-line):
 +      (idlwave-shell-display-line):
 +      * progmodes/idlw-shell.el (idlwave-shell-goto-frame)
 +      * progmodes/make-mode.el (makefile-browser-toggle):
 +      (vhdl-speedbar-port-copy, vhdl-compose-components-package):
 +      * progmodes/vhdl-mode.el (vhdl-speedbar-find-file)
 +      * textmodes/picture.el (picture-draw-rectangle):
 +      * textmodes/reftex-index.el (reftex-index-goto-letter):
 +      (reftex-select-jump-to-previous):
 +      * textmodes/reftex-sel.el (reftex-find-start-point)
 +      * textmodes/reftex-toc.el (reftex-toc, reftex-toc-restore-region):
 +      (rst-straighten-deco-spacing, rst-section-tree, rst-toc):
 +      * textmodes/rst.el (rst-promote-region, rst-straighten-decorations)
 +      * textmodes/tex-mode.el (tex-compilation-parse-errors):
 +      * textmodes/two-column.el (2C-associated-buffer):
 +      Use forward-line rather than goto-line.
 +
 +      * emulation/vi.el (vi-goto-line): Don't warn about non-interactive
 +      goto-line.
 +
 +      * international/ucs-normalize.el (nfd, decomposition-translation-alist)
 +      (decomposition-char-recursively, alist-list-to-vector, quick-check-list)
 +      (quick-check-list-to-regexp): Declare.
 +
 +      * progmodes/make-mode.el (makefile-browser-insert-selection):
 +      Use goto-char rather than goto-line.
 +
 +      * progmodes/prolog.el (compilation-error-regexp-alist)
 +      (compilation-forget-errors): Declare.
 +
 +2009-08-22  Juri Linkov  <juri@jurta.org>
 +
 +      * progmodes/grep.el (lgrep, rgrep): At the beginning
 +      set `dir' to `default-directory' unless `dir' is a non-nil
 +      readable directory.  (Bug#4052)
 +      (lgrep, rgrep): Change a weird way to report an error
 +      from using `read-string' to using `error'.
 +      Instead of using interactive arguments in the function body,
 +      add new argument `confirm'.
 +
 +2009-08-21  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * textmodes/remember.el (remember-buffer):
 +      * progmodes/cperl-mode.el (cperl-vc-header-alist):
 +      * calendar/icalendar.el (icalendar-convert-diary-to-ical)
 +      (icalendar-extract-ical-from-buffer):
 +      * net/newst-treeview.el (newsticker-groups-filename):
 +      * net/newst-backend.el (newsticker-cache-filename):
 +      * speedbar.el (speedbar-update-speed, speedbar-navigating-speed)
 +      (speedbar-ignored-path-expressions, speedbar-ignored-path-regexp)
 +      (speedbar-add-ignored-path-regexp, speedbar-line-path)
 +      (speedbar-buffers-line-path, speedbar-path-line)
 +      (speedbar-buffers-line-path):
 +      * epg.el (epg-passphrase-callback-function, epg-start-sign-keys)
 +      (epg-sign-keys):
 +      * epa.el (epa-display-verify-result):
 +      * progmodes/pascal.el (pascal-outline): Add version of obsolescence.
 +
 +2009-08-21  Glenn Morris  <rgm@gnu.org>
 +
 +      * progmodes/js.el (inferior-moz-process): Fix declaration.
 +
 +      * imenu.el (imenu-example--name-and-position): Fix obsolescence message.
 +
 +      * obsolete/rnewspost.el (news-mail-reply):
 +      Use goto-char rather than goto-line.
 +
 +      * term/ns-win.el (ns-open-file-select-line):
 +      Use line-beginning-position rather than goto-line.
 +
 +      * apropos.el (apropos-command):
 +      * ehelp.el (electric-helpify):
 +      * printing.el (pr-show-setup):
 +      * strokes.el (strokes-help):
 +      * tutorial.el (tutorial--describe-nonstandard-key)
 +      (tutorial--detailed-help):
 +      * woman.el (woman-mini-help, woman-display-extended-fonts):
 +      * calc/calc-help.el (calc-describe-key):
 +      * emulation/edt.el (edt-electric-helpify):
 +      * international/mule-diag.el (mule-diag):
 +      * play/yow.el (apropos-zippy):
 +      * progmodes/python.el (python-describe-symbol):
 +      * progmodes/vhdl-mode.el (vhdl-doc-variable, vhdl-doc-mode):
 +      * textmodes/table.el (*table--cell-describe-mode)
 +      (*table--cell-describe-bindings):
 +      Use help-print-return-message rather than the now obsolete alias.
 +
 +      * calendar/cal-move.el (calendar-cursor-to-nearest-date)
 +      (calendar-cursor-to-visible-date):
 +      * play/5x5.el (5x5-position-cursor):
 +      * play/decipher.el (decipher):
 +      * play/gomoku.el (gomoku-goto-xy):
 +      * play/landmark.el (lm-goto-xy):
 +      * play/mpuz.el (mpuz-paint-errors, mpuz-paint-statistics)
 +      (mpuz-paint-digit):
 +      Use forward-line, not goto-line.
 +
 +      * mail/rmail.el (rmail-obsolete): Delete custom group.
 +      (rmail-pop-password, rmail-pop-password-required): Make into aliases.
 +      (rmail-remote-password, rmail-remote-password-required):
 +      Remove unneeded :set-after and :set properties.
 +
 +2009-08-21  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/dbus.el (top): Initialize only when `dbusbind' is loaded.
 +
 +2009-08-21  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * loadup.el: Remove leftover macos code.
 +
 +      * vc-git.el (vc-git-annotate-command): Run asynchronously.
 +      Explicitly pass the date format to git blame so that user local
 +      so that the output format can be parsed.
 +
 +2009-08-20  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/dbus.el (top): Don't check for (getenv
 +      "DBUS_SESSION_BUS_ADDRESS").  It's done in dbusbind.c now.
 +
 +2009-08-19  Magnus Henoch  <magnus.henoch@gmail.com>
 +
 +      * log-edit.el (log-edit-strip-single-file-name): New var.
 +      (log-edit-insert-changelog): Use it.  Bug#3571
 +
 +2009-08-19  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * subr.el (read-passwd): Use read-key so keypad keys work as well.
 +      Bug#3287
 +
 +      * help.el (help-print-return-message): Rename from
 +      print-help-return-message.
 +
 +      * log-view.el (log-view-mode-map): Remove `q' binding, and unreliable
 +      cvs-mode-map parent hack.
 +      (log-view-mode): Derive from special-mode.
 +
 +      * linum.el (linum-mode): window-size-change-functions is redundant.
 +      Adapt to new window-configuration-change-hook behavior.
 +      (linum-after-size, linum-after-config): Remove.
 +
 +      * imenu.el (imenu-example--name-and-position)
 +      (imenu-example--lisp-extract-index-name)
 +      (imenu-example--create-lisp-index, imenu-example--create-c-index):
 +      Mark as obsolete.
 +
 +      * progmodes/prolog.el (inferior-prolog-error-regexp-alist): New var.
 +      (inferior-prolog-mode): Use it.
 +      (inferior-prolog-load-file): Reset list of errors.
 +
 +2009-08-19  ARISAWA Akihiro  <ari@mbf.ocn.ne.jp>  (tiny change)
 +
 +      * language/tibetan.el ("Tibetan"): Fix sample-text entry.
 +
 +      * language/tai-viet.el ("TaiViet"): Fix sample-text entry.
 +
 +2009-08-19  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/dbus.el (top): Apply `dbus-init-bus' only if the session bus
 +      is running already.
 +
 +2009-08-19  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * subr.el (listify-key-sequence-1): Use normal syntax since those
 +      integers are nowadays always represented by the same (positive) number
 +      on all platforms.
 +      (read-key-empty-map): New const.
 +      (read-key-delay): New var.
 +      (read-key): New function.
 +      (force-mode-line-update): Use with-current-buffer.
 +      (locate-user-emacs-file): Don't forget to abbreviate the file name.
 +      (start-process-shell-command, start-file-process-shell-command):
 +      Discourage the use of command-args.
 +
 +2009-08-19  Glenn Morris  <rgm@gnu.org>
 +
 +      * emacs-lisp/authors.el (authors-fixed-entries): Remove cvtmail.
 +
 +2009-08-19  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * simple.el (choose-completion-string): Don't rely on
 +      minibuffer-completing-file-name and ad-hoc checks to decide whether
 +      to continue completion or not.
 +
 +      * minibuffer.el (minibuffer-hide-completions): New function.
 +      (completion--do-completion): Use it.
 +      (completions-annotations): New face.
 +      (completion--insert-strings): Use it.
 +      (completion-pcm--delim-wild-regex): Add docstring.
 +      (completion-pcm--string->pattern): Add support for 0-width delimiters
 +      in completion-pcm--delim-wild-regex.
 +
 +2009-08-18  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * international/ucs-normalize.el (ucs-normalize-hfs-nfd-post-read-conversion):
 +      Remove unused var `buffer-modified-p'.
 +
 +      * minibuffer.el (completion--do-completion): Move point for the #b001
 +      case as well (bug#4176).
 +      (minibuffer-complete, minibuffer-complete-word): Don't move point.
 +
 +2009-08-18  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/dbus.el (dbus-init-bus): Declare.  Apply it for the :system
 +      and :session buses.
 +
 +2009-08-18  Kenichi Handa  <handa@m17n.org>
 +
 +      * international/ucs-normalize.el (ucs-normalize-version):
 +      Change to 1.1.
 +      (ucs-normalize-hfs-nfd-pre-write-conversion): New function.
 +      (utf-8-hfs): Make it perform normalization on encoding too.
 +
 +      * textmodes/paragraphs.el: Change to utf-8.  Adjust coding cookie.
 +      (sentence-end-without-space): Delete duplicated chars.
 +      (sentence-end-base): Likewise.
 +
 +      * textmodes/sgml-mode.el: Change to utf-8.  Adjust coding cookie.
 +      (html-mode): Delete duplicated chars from sentence-end-base.
 +
 +      * textmodes/texinfo.el: Change to utf-8.  Adjust coding cookie.
 +      (texinfo-mode): Delete duplicated chars from sentence-end-base.
 +
 +2009-08-17  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * files.el (hack-one-local-variable): If the mode function is for
 +      a minor mode, pass it an argument (Bug#4148).
 +
 +2009-08-17  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/tramp.el (tramp-register-completion-file-name-handler):
 +      Check also for (member 'partial-completion completion-styles).
 +
 +2009-08-16  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * progmodes/cperl-mode.el (cperl-electric-paren): Don't expand
 +      abbrev (Bug#3943).
 +
 +2009-08-16  Ilya Zakharevich  <ilyaz@cpan.org>
 +
 +      * progmodes/cperl-mode.el: Merge upstream 6.2.
 +      (cperl-mode-syntax-table): Modify syntax entry for ["'`].
 +      (cperl-forward-re): Check cperl-brace-recursing.
 +      (cperl-highlight-charclass): New function.
 +      (cperl-find-pods-heres): Use it.
 +      (cperl-fill-paragraph): Synch to save-excursion placement used upstream.
 +      (cperl-beautify-regexp-piece): Fix column calculation.
 +      (cperl-make-regexp-x): Handle case where point is between "q" and "rs".
 +      (cperl-beautify-level): Don't process entire regexp.
 +      (cperl-build-manpage, cperl-perldoc): Bind Man-switches before
 +      calling man.
 +      (cperl-tips-faces, cperl-mode, cperl-electric-backspace): Doc fix.
 +      (cperl-init-faces): Build a list in the normal way.
 +
 +2009-08-16  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * calendar/parse-time.el (parse-time-string-chars): Save match
 +      data.
 +
 +2009-08-16  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * progmodes/sql.el (sql-product-alist): Add :name tag to entries.
 +      (sql-product): Use it.
 +      (sql-mode-menu): Auto-generate the menu based on sql-product-alist.
 +      (sql-set-product): Add completion.
 +      (sql-highlight-oracle-keywords, sql-highlight-postgres-keywords)
 +      (sql-highlight-linter-keywords, sql-highlight-ms-keywords)
 +      (sql-highlight-ansi-keywords, sql-highlight-sybase-keywords)
 +      (sql-highlight-informix-keywords, sql-highlight-interbase-keywords)
 +      (sql-highlight-ingres-keywords, sql-highlight-solid-keywords)
 +      (sql-highlight-mysql-keywords, sql-highlight-sqlite-keywords)
 +      (sql-highlight-db2-keywords): Remove.
 +      (sql-find-sqli-buffer, sql-set-sqli-buffer-generally)
 +      (sql-highlight-product): Use derived-mode-p.
 +      (sql-set-sqli-buffer): Use with-current-buffer.
 +      (sql-connect-informix, sql-connect-ingres, sql-connect-oracle):
 +      Simplify.
 +
 +      * emacs-lisp/lisp-mode.el (lisp-indent-region): Remove unused function.
 +
 +      * term.el: Fix commenting convention, turn comments into docstrings.
 +
 +2009-08-16  E. Jay Berkenbilt  <ejb@ql.org>  (tiny change)
 +
 +      * whitespace.el (whitespace-style): Doc fix (Bug#3661).
 +
 +2009-08-16  Jan Seeger  <jan.seeger@thenybble.de>  (tiny change)
 +
 +      * calendar/parse-time.el (parse-time-string-chars): Compute using
 +      character classes, to handle non-ascii characters (Bug#3190).
 +
 +2009-08-16  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * progmodes/sh-script.el (sh-maybe-here-document): Avoid inserting
 +      another heredoc if the user adds another < (Bug#3226).
 +
 +      * mwheel.el (mouse-wheel-down-event, mouse-wheel-up-event):
 +      Don't initialize based on window-system (Bug#4124).
 +
 +      * facemenu.el (facemenu-read-color): Use a completion function
 +      that accepts any defined color, such as RGB triplets (Bug#3677).
 +
 +      * files.el (get-free-disk-space): Change fallback default
 +      directory to /.  Expand DIR argument before switching to fallback.
 +      Suggested by Kevin Ryde (Bug#2631, Bug#3911).
 +
 +2009-08-15  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * files.el (load-library): Doc fix.
 +
 +2009-08-15  Michael Kifer  <kifer@cs.stonybrook.edu>
 +
 +      * emulation/viper-cmd.el (viper-insert-isearch-string): New function.
 +      (viper-if-string): Redefine C-s in the minibuffer to insert the last
 +      incremental search string.
 +
 +      * ediff-init.el (ediff-coding-system): Use escape-quoted in case of
 +      XEmacs.
 +
 +      * ediff-merg.el (ediff-merge-region-is-non-clash-to-skip)
 +      (ediff-merge-region-is-non-clash)
 +      (ediff-skip-merge-region-if-changed-from-default-p): Use defun.
 +      Also check if the job is really a merge job.
 +
 +      * ediff.el (ediff-current-file): New function.
 +
 +2009-08-15  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * progmodes/js.el: Edit docstrings throughout to follow Emacs
 +      conventions.
 +      (js-insert-and-indent): Delete function.
 +      (js-mode-map): Don't bind keys to js-insert-and-indent.
 +      (js-beginning-of-defun): Rename from js--beginning-of-defun.
 +      (js-end-of-defun): Rename from js--end-of-defun.
 +      (js-auto-indent-flag): Delete variable.
 +
 +2009-08-14  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * progmodes/js.el: Remove proclaim statement.
 +      Defvar which-func-imenu-joiner-function to silence compiler.
 +
 +      * files.el (auto-mode-alist): Use js-mode for .js files.
 +
 +      * progmodes/js2-mode.el: Remove file.
 +
 +      * Makefile.in (ELCFILES): Add js.el, and remove js2-mode.el.
 +
 +      * speedbar.el (speedbar-supported-extension-expressions): Add .js.
 +
 +      * progmodes/hideshow.el (hs-special-modes-alist): Add js-mode entry.
 +
 +2009-08-14  Daniel Colascione  <dan.colascione@gmail.com>
 +            Karl Landstrom  <karl.landstrom@brgeight.se>
 +
 +      * progmodes/js.el: New file.
 +
 +2009-08-14  Mark A. Hershberger  <mah@everybody.org>
 +
 +      * timezone.el (timezone-parse-date): Add ability to understand ISO
 +      basic format (minimal separators) dates in addition to the
 +      already-supported extended format dates.
 +
 +2009-08-14  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * international/ucs-normalize.el: Add a `coding' file variable.
 +
 +      * Makefile.in (ELCFILES): Add international/ucs-normalize.elc.
 +
 +2009-08-14  Sam Steingold  <sds@gnu.org>
 +
 +      * vc-cvs.el (vc-cvs-merge-news): Yet another fix of message parsing.
 +
 +2009-08-13  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * faces.el (help-argument-name): Define it here instead of
 +      help-fns.el, because in daemon mode help-fns.el may be loaded when
 +      faces are still uninitialized (Bug#1078).
 +
 +      * help-fns.el (help-argument-name): Move defface to faces.el.
 +
 +2009-08-13  Nick Roberts  <nickrob@snap.net.nz>
 +
 +      * progmodes/gdb-mi.el (gdb-inferior-io-mode): Use start-process to
 +      create buffer with a pty but no process so that GDB can make the
 +      inferior the controlling process.
 +
 +2009-08-13  Taichi Kawabata  <kawabata.taichi@gmail.com>
 +
 +      * international/ucs-normalize.el: New file.
 +
 +2009-08-13  Richard Stallman  <rms@gnu.org>
 +
 +      * mail/rmail.el (rmail-get-attr-names):
 +      Accept an attribute header that is too short.
 +
 +      * mail/rmail.el (rmail-forget-messages):
 +      Ignore nil elt in rmail-message-vector.  Use dotimes.
 +
 +      * progmodes/compile.el (compilation-goto-locus):
 +      Use next-error-move-function.
 +
 +      * simple.el (next-error-move-function): New variable.
 +
 +2009-08-12  Juri Linkov  <juri@jurta.org>
 +
 +      * progmodes/grep.el (lgrep): Ensure that `default-directory' is
 +      always non-nil.  (Bug#4052)
 +
 +      * replace.el (read-regexp): Return empty string when
 +      `default-value' is nil.
 +      (keep-lines-read-args): Don't use empty string as the
 +      default value for `read-regexp'.  (Bug#2495)
 +
 +2009-08-12  Juri Linkov  <juri@jurta.org>
 +
 +      * international/mule-cmds.el (ucs-insert): Change arguments
 +      from `arg' to `character', `count', `inherit' to be the same
 +      as in `insert-char'.  Doc fix.  (Bug#4039)
 +
 +      * international/mule-conf.el (utf-16be-with-signature): Doc fix.
 +
 +2009-08-12  Juri Linkov  <juri@jurta.org>
 +
 +      * files-x.el: New file.
 +
 +      * files.el: Move code that deals with adding/deleting
 +      file/directory-local variables to files-x.el.
 +
 +      * Makefile.in (ELCFILES): Add files-x.elc.
 +
 +2009-08-11  Dmitry Dzhus  <dima@sphinx.net.ru>
 +
 +      * progmodes/gdb-mi.el (gdb-line-posns): New helper which helps not
 +      to use `goto-line'.
 +      (gdb-place-breakpoints, gdb-get-location): Rewritten without
 +      `goto-line'.
 +      (gdb-invalidate-disassembly): Do not refresh upon receiving
 +      'update signal.  Instead, update all disassembly buffers only after
 +      threads list.
 +      (gdb): Send -target-detach when buffer is killed (Bug#3794).
 +      (gdb-starting): Move -data-list-register-names...
 +      (gdb-stopped): ...here so it's sent when first thread stops.
 +      (gdb-registers-handler-custom): Do nothing if register names are
 +      unknown yet.
 +
 +      * progmodes/gud.el (gud-stop-subjob): Rewritten without macros
 +      from `gdb-mi.el' to avoid extra tangling.
 +
 +      * progmodes/gdb-mi.el (gdb-gud-context-call): Reverting previous
 +      change which breaks `gud-def' definitions used in `gdb'.
 +      (gdb-update-gud-running): No extra fuss for updating frame number.
 +
 +2009-08-10  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * international/mule-cmds.el (mule-keymap, mule-menu-keymap)
 +      (describe-language-environment-map, setup-language-environment-map)
 +      (set-coding-system-map): Move initialization into declaration.
 +      (set-language-info-alist): Last arg to define-key-after can be skipped.
 +
 +      * international/quail.el (quail-completion-1): Simplify.
 +      (quail-define-rules): Use slightly more compact code.
 +      (quail-insert-decode-map): Propertize keys, compact columns.
 +
 +      * emacs-lisp/bytecomp.el (byte-compile-interactive-only-functions):
 +      Add goto-line.
 +
 +2009-08-10  Miles Bader  <miles@gnu.org>
 +
 +      * progmodes/js2-mode.el (js2-warning, js2-error, js2-jsdoc-tag)
 +      (js2-jsdoc-type, js2-jsdoc-value, js2-function-param)
 +      (js2-instance-member, js2-private-member, js2-private-function-call)
 +      (js2-jsdoc-html-tag-name, js2-jsdoc-html-tag-delimiter)
 +      (js2-magic-paren, js2-external-variable):
 +      Remove "-face" suffix from face names.
 +      (js2-jsdoc-highlight-helper, js2-highlight-jsdoc)
 +      (js2-highlight-undeclared-vars, js2-peek-token)
 +      (js2-parse-function-params, js2-mode-show-errors)
 +      (js2-mode-show-warnings, js2-make-magic-delimiter)
 +      (js2-mode-highlight-magic-parens): Update to use new face names.
 +
 +2009-08-09  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/tramp.el (tramp-get-ls-command-with-dired): New defun.
 +      (tramp-handle-insert-directory): Handle "--dired".  (Bug#4075)
 +
 +2009-08-09  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * subr.el: Provide hashtable-print-readable.
 +
 +      * progmodes/hideshow.el (hs-special-modes-alist): Don't use
 +      hs-c-like-adjust-block-beginning.
 +      (hs-hide-block-at-point): Stop hiding at the beginning of
 +      hs-block-end-regexp (Bug#700).
 +
 +2009-08-09  Dmitry Dzhus  <dima@sphinx.net.ru>
 +
 +      * progmodes/gdb-mi.el (gdb-gud-context-call): Does not need to be
 +      a macro.
 +      (gdb-registers-handler-custom): Do not fail when register names
 +      are unavailable.
 +
 +2009-08-08  Dmitry Dzhus  <dima@sphinx.net.ru>
 +
 +      * progmodes/gdb-mi.el (gdb-control-all-threads)
 +      (gdb-control-current-thread): Interactive setters for
 +      `gdb-gud-control-all-threads' to use in menu.
 +      (gdb-show-run-p): Show «Go» when process is not active.
 +      (gud-tool-bar-map): Add non-stop/A,T indicator.
 +      Uses gud/thread.xpm and gud/all.xpm.
 +
 +2009-08-08  Yoni Rabkin  <yoni@rabkins.net>
 +
 +      * net/net-utils.el (net-utils-font-lock-keywords): New var.
 +      (nslookup-font-lock-keywords): Make it a variable.
 +      (net-utils-mode): New mode for viewing diagnostic network output.
 +      (net-utils-remove-ctrl-m-filter): Set inhibit-read-only.
 +      (net-utils-run-simple): New function.
 +      (ifconfig, iwconfig, netstat, arp, route): Use it.
 +
 +2009-08-08  Dmitry Dzhus  <dima@sphinx.net.ru>
 +
 +      * progmodes/gdb-mi.el (gdb-read-memory-custom)
 +      (gdb-memory-set-address, def-gdb-set-positive-number)
 +      (def-gdb-memory-format, def-gdb-memory-unit): Update memory buffer
 +      after changing settings.
 +      (gdb-invalidate-disassembly): Update when first shown.
 +      (gdb-edit-locals-value): Fixed.
 +      (gdb-registers-handler-custom): Print registers in right order and
 +      allow changing register values (only for current thread yet).
 +      (gdb-breakpoints-mode-map): Don't assume threads buffer is present.
 +      (gdb-threads-mode-map): Don't assume breakpoints buffer is present.
 +      (gdb-disassembly-handler-custom, gdb-stack-list-frames-custom)
 +      (gdb-locals-handler-custom, gdb-registers-handler-custom):
 +      Thread info in mode name.
 +      (gdb-registers-mode-map): TAB to switch to locals.
 +
 +2009-08-08  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * mail/rmail.el (rmail-add-mbox-headers)
 +      (rmail-set-message-counters-counter): Search for
 +      rmail-unix-mail-delimiter instead of just "From ".  (Bug#4076)
 +
 +2009-08-08  Glenn Morris  <rgm@gnu.org>
 +
 +      * Makefile.in (ELCFILES): Update.
 +
 +2009-08-07  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * mail/sendmail.el (mail-yank-original):
 +      Set buffer-file-coding-system from the one used by the message whose
 +      text is yanked.
 +
 +      * calc/calc-graph.el (calc-graph-plot): Set calc-graph-last-device
 +      to "windows" when "pgnuplot" is used.
 +      (calc-graph-command, calc-gnuplot-command, calc-graph-init):
 +      Don't call accept-process-output if "pgnuplot" is used.
 +      (calc-graph-init): Don't send -display and -geometry to
 +      "pgnuplot".  If "pgnuplot" is used, glean gnuplot version by
 +      running "pgnuplot -V" with shell-command-to-string.
 +
 +      * calc/calc.el (calc-gnuplot-name) [windows-nt]: Use "pgnuplot" as
 +      the default.
 +
 +2009-08-07  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * Makefile.in (ELCFILES): org/org-export-latex.elc renamed to
 +      org/org-latex.elc.
 +
 +2009-08-07  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * vc-dispatcher.el (vc-resynch-window): Update comment.
 +
 +      * term.el (term-handle-ansi-escape): Add comments with the
 +      terminfo capabilities implemented.
 +
 +2009-08-06  Dmitry Dzhus  <dima@sphinx.net.ru>
 +
 +      * progmodes/gdb-mi.el (gdb-var-create-regexp): Removed.
 +      (gdb-var-create-handler): Rewritten using JSON parser.
 +      (gdb-propertize-header): Move earlier.
 +      (gdb-set-header): Remove to avoid duplication.
 +      (gdb-thread-list-handler-custom, gdb-invalidate-disassembly):
 +      Refresh disassembly buffers only after threads list have been
 +      update.
 +      (gdb-threads-header, gdb-registers-header): Per-buffer header line
 +      variables.
 +
 +2009-08-04  Juri Linkov  <juri@jurta.org>
 +
 +      * files.el: Commands to add/delete file/directory-local variables.
 +      (read-file-local-variable, read-file-local-variable-value)
 +      (read-file-local-variable-mode, modify-file-local-variable)
 +      (modify-file-local-variable-prop-line)
 +      (modify-dir-local-variable): New functions.
 +      (add-file-local-variable, delete-file-local-variable)
 +      (add-file-local-variable-prop-line, delete-file-local-variable-prop-line)
 +      (add-dir-local-variable, delete-dir-local-variable)
 +      (copy-file-locals-to-dir-locals, copy-dir-locals-to-file-locals)
 +      (copy-dir-locals-to-file-locals-prop-line): New commands.
 +
 +2009-08-04  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * abbrev.el (insert-abbrev-table-description): Prettify output.
 +      Suggested by Karl Chen.
 +
 +2009-08-04  Dmitry Dzhus  <dima@sphinx.net.ru>
 +
 +      * progmodes/gdb-mi.el (gdb-frame-number): Initialize with nil.
 +      (gdb-overlay-arrow-position): Rename to `gdb-disassembly-position'.
 +      (gdb-overlay-arrow-position, gdb-thread-position)
 +      (gdb-disassembly-position): Declare variables.
 +      (gdb-wait-for-pending): Function now.
 +      (gdb-add-subscriber, gdb-delete-subscriber, gdb-get-subscribers)
 +      (gdb-emit-signal, gdb-buf-publisher): Declare before first use so
 +      compilation goes smoothly.
 +      (gdb, gdb-non-stop, gdb-buffers): New customization groups.
 +      (gdb-non-stop-setting): New customization setting which replaces
 +      `gdb-non-stop' so changing it doesn't break active GDB session.
 +      (gdb-stack-buffer-locations, gdb-stack-buffer-addresses)
 +      (gdb-thread-buffer-verbose-names, gdb-thread-buffer-arguments)
 +      (gdb-thread-buffer-locations, gdb-thread-buffer-addresses)
 +      (gdb-show-threads-by-default): New customization options.
 +      (gdb-buffer-type, gdb-buffer-shows-main-thread-p): New helper
 +      routines.
 +      (gdb-get-buffer-create): Send buffers update signal when they are
 +      created.
 +      (gdb-invalidate-locals, gdb-invalidate-registers)
 +      (gdb-invalidate-breakpoints)
 +      (gdb-invalidate-threads, gdb-invalidate-disassembly)
 +      (gdb-invalidate-memory): Accept update signal.
 +      (gdb-current-context-command): Use --frame option.
 +      (gdb-update-gud-running, gdb-running, gdb-setq-thread-number):
 +      Implement `gdb-frame-number' selection logic.
 +      (gdb-show-run-p, gdb-show-stop-p): Helper functions which decide
 +      whether to show GUD toolbar buttons.
 +      (gdb-thread-exited): Unselect current thread when it exits.
 +      (gdb-stopped): Typo fixed (now really runs `gdb-stopped-hooks').
 +      (gdb-mark-line): Routine which sets overlay arrow or inverses
 +      video on fringeless displays.
 +      (gdb-table, gdb-table-add-row, gdb-table-string): Structure used
 +      to build aligned columns of data in GDB buffers and set text
 +      properties line-by-line.
 +      (gdb-invalidate-breakpoints)
 +      (gdb-breakpoints-list-handler-custom)
 +      (gdb-thread-list-handler-custom, gdb-disassembly-handler-custom)
 +      (gdb-stack-list-frames-custom, gdb-locals-handler-custom)
 +      (gdb-registers-handler-custom): Align data columns.
 +      (gdb-locals-handler-custom): Now prints data like in variable
 +      declarations.
 +      (gdb-jump-to, gdb-file-button, gdb-insert-file-location-button):
 +      Remove confusing buttons.
 +      (gdb-invalidate-threads): Append --frame.
 +      (gdb-threads-mode-map, gdb-breakpoints-mode-map): TAB to switch
 +      between breakpoints/threads buffers.
 +      (gdb-set-window-buffer): Now can ignore dedicated windows.
 +      (gdb-propertize-header): Use `gdb-set-window-buffer'.
 +      (def-gdb-thread-buffer-simple-command): Numerous typos fixed.
 +      (def-gdb-thread-buffer-gud-command): Replaces
 +      `def-gdb-thread-buffer-gdb-command' and uses standard GUD commands
 +      for fine thread control.
 +      (gdb-preempt-existing-or-display-buffer): New function used to
 +      display bound buffers without breaking window layout.
 +      (gdb-frame-location): Replaces `gdb-insert-frame-location'.
 +      (gdb-select-frame): New version of `gdb-frames-select' which now
 +      sets `gdb-frame-number' so commands may use --frame option instead
 +      of inner debugger state.
 +      (gdb-frame-handler): Do not set `gdb-frame-number'.
 +      (gdb-threads-mode-map): Select threads with mouse.
 +
 +      * progmodes/gud.el (gdb-gud-context-call): Declare function to
 +      avoid compilation warning.
 +      (gud-menu-map, gud-minor-mode-map): Use `gdb-show-run-p` and
 +      `gdb-show-stop-p`.
 +
 +      * progmodes/gdb-mi.el (gdb-get-buffer, gdb-get-buffer-create):
 +      Argument `key' renamed to `buffer-type'.
 +      (gdb-current-context-buffer-name): Do not add thread info to
 +      buffer name when no thread is selected.
 +      (gdbmi-record-list, gdb-shell): Try to handle GDB `shell'
 +      command (bug 3794).
 +      (gdb-thread-selected): Handle `=thread-selected' notification.
 +      (gdb-wait-for-pending): New macro to deal with congestion problems.
 +      (gdb-breakpoints-list-handler-custom): Don't fail on pending
 +      breakpoints.
 +      (gdb-invalidate-disassembly): Use 'fullname instead of 'file.
 +      This fixes problem similar to one described in bug 3947.
 +      (gud-menu-map): More menu items.
 +      (gdb-init-1): Reset `gdb-thread-number' to nil.
 +
 +      * progmodes/gud.el (gud-stop-subjob, gud-menu-map): Respect GDB
 +      non-stop settings.
 +
 +      * progmodes/gdb-mi.el (gdb-thread-number): Initialize with nil.
 +      (gdb-current-context-command): Do not append --thread if
 +      `gdb-thread-number' is nil.
 +      (gdb-running-threads-count, gdb-stopped-threads-count):
 +      New variables.
 +      (gdb-non-stop, gdb-gud-control-all-threads, gdb-switch-reasons)
 +      (gdb-stopped-hooks, gdb-switch-when-another-stopped):
 +      New customization options.
 +      (gdb-gud-context-command, gdb-gud-context-call): New wrappers for
 +      GUD commands.
 +      (gdb): `gud-def' definitions changed to use `gdb-gud-context-call'.
 +      (gdb-init-1): Activate non-stop mode if `gdb-non-stop' is enabled.
 +      (gdb-setq-thread-number, gdb-update-gud-running): New functions to
 +      set `gdb-thread-number' and update `gud-running' properly.
 +      (gdb-running): Update threads list when new threads appear.
 +      (gdb-stopped): Support non-stop operation and new thread switching
 +      logic.
 +      (gdb-jsonify-buffer, gdb-json-read-buffer, gdb-json-string)
 +      (gdb-json-partial-output): New set of JSON routines.
 +      (def-gdb-auto-update-trigger): New `signal-list' optional
 +      argument.
 +      (gdb-thread-list-handler-custom): Update `gud-running',
 +      `gdb-stopped-threads-count' and `gdb-running-threads-count'.
 +      (def-gdb-thread-buffer-gdb-command, gdb-interrupt-thread)
 +      (gdb-continue-thread, gdb-step-thread): New commands for fine
 +      thread execution control.
 +      (gud-menu-map): New menu items to switch non-stop options.
 +      (gdb-reset): Cleanup `gdb-thread-position' overlay arrow marker.
 +      (gdb-send): Mimic RET properly (bug 3794).
 +
 +      * progmodes/gdb-mi.el (gdb-rules-name-maker)
 +      (gdb-rules-buffer-mode, gdb-rules-update-trigger): Accessors for
 +      gdb-buffer-rules.
 +      (def-gdb-auto-update-handler): New nopreserve optional argument.
 +      (gdb-stack-list-frames-custom): Print stack from top to bottom.
 +
 +      * progmodes/gdb-mi.el (gdb-pc-address): Remove unused variable.
 +      (gdb-threads-list, gdb-breakpoints-list): New assoc lists.
 +      (gdb-parent-mode): New mode to derive other GDB modes from.
 +      (gdb-display-disassembly-for-thread)
 +      (gdb-frame-disassembly-for-thread): New commands for threads
 +      buffer.
 +
 +      * progmodes/gdb-mi.el (gdb-get-buffer, gdb-get-buffer-create)
 +      (gdb-init-1, gdb-bind-function-to-buffer, gdb-add-subscriber)
 +      (gdb-get-subscribers, gdb-emit-signal, gdb-buf-publisher)
 +      (gdb-update): We now store all GDB buffers in a list so that they
 +      can be updated by traversing a list instead of calling invalidate
 +      triggers explicitly.
 +      (def-gdb-trigger-and-handler): New macro to define trigger-handler
 +      pair for GDB buffer.
 +      (gdb-stack-buffer-name): Add thread information.
 +      (gdb-add-pending, gdb-pending-p, gdb-delete-pending): Macros to
 +      handle pending triggers.
 +      (gdb-threads-mode-map, def-gdb-thread-buffer-command)
 +      (def-gdb-thread-buffer-simple-command)
 +      (gdb-display-stack-for-thread, gdb-display-locals-for-thread)
 +      (gdb-display-registers-for-thread, gdb-frame-stack-for-thread)
 +      (gdb-frame-locals-for-thread, gdb-frame-registers-for-thread):
 +      New commands which show buffers bound to thread.
 +      (gdb-stack-list-locals-regexp): Remove unused regexp.
 +
 +      * progmodes/gdb-mi.el (gdb-breakpoints-buffer-name)
 +      (gdb-locals-buffer-name, gdb-registers-buffer-name)
 +      (gdb-memory-buffer-name, gdb-stack-buffer-name): Do not switch
 +      to (gud-comint-buffer) in *-buffer-name functions
 +      because (gdb-get-target-string) already does that.
 +      (gdb-locals-handler-custom, gdb-registers-handler-custom)
 +      (gdb-changed-registers-handler): Rewritten without regexps.
 +
 +      * progmodes/gdb-mi.el: Basic thread selection support.
 +      (gdb-thread-number): New variable.
 +      (gdb-current-context-command): New macro which adds --thread
 +      option to command.
 +      (gdb-threads-mode-map): Select thread with SPC.
 +      (gdb-thread-list-handler-custom): Mark current thread with overlay
 +      arrow.  Synchronize GDB thread and Emacs thread.
 +      (gdb-select-thread): New command which selects current thread.
 +      (gdb-invalidate-frames, gdb-invalidate-locals)
 +      (gdb-invalidate-registers): Use --thread option.
 +
 +2009-08-04  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/tramp.el (top): Make check for tramp-gvfs loading more
 +      robust.  (Bug#3977)
 +      (tramp-handle-insert-file-contents): `unwind-protect' must be
 +      inside `with-parsed-tramp-file-name'.
 +
 +      * net/tramp-gvfs.el (top): Remove superfluous message when loading
 +      fails.
 +
 +2009-08-03  Nick Roberts  <nickrob@snap.net.nz>
 +
 +      * progmodes/gud.el (jdb): Set gud-jdb-classpath-string to current
 +      directory if CLASSPATH is not set.
 +
 +2009-08-03  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/tramp.el (tramp-rfn-eshadow-update-overlay-regexp):
 +      New defconst.
 +      (tramp-rfn-eshadow-update-overlay): Use it.  (Bug#4004)
 +
 +2009-08-02  Kevin Ryde  <user42@zip.com.au>
 +
 +      * net/newst-backend.el (newsticker--raw-url-list-defaults):
 +      Update freshmeat link.  Delete newsforge.com as it seems gone.
 +
 +2009-08-02  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * select.el (x-set-selection): Doc fix (Bug#4021).
 +
 +      * w32-fns.el (x-set-selection): Doc fix (Bug#4021).
 +
 +      * help-fns.el (describe-variable): Treat list return values from
 +      dir-locals-find-file properly (Bug#4005).
 +
 +2009-08-02  Julian Scheid  <julians37@googlemail.com>  (tiny change)
 +
 +      * net/tramp.el (tramp-debug-message): Print also microseconds.
 +
 +2009-08-02  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/tramp.el (tramp-handle-insert-file-contents): Optimize, when BEG
 +      or END is non-nil.
 +      (tramp-handle-vc-registered): Use `tramp-cache-inhibit-cache'.
 +      (tramp-get-debug-buffer): Change `outline-regexp' according to new
 +      format.
 +
 +      * net/tramp-cache.el (tramp-cache-inhibit-cache): New defvar.
 +      (tramp-get-file-property): Use it.
 +
 +      * autorevert.el (auto-revert-handler):
 +      Allow `auto-revert-tail-mode' for remote files.
 +
 +2009-08-02  Jason Rumney  <jasonr@gnu.org>
 +
 +      * minibuffer.el (read-file-name): Treat confirm options to
 +      MUSTMATCH as nil when invoking x-file-dialog.  (Bug#3969)
 +
 +2009-08-02  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * font-lock.el (font-lock-string-face, font-lock-builtin-face)
 +      (font-lock-variable-name-face, font-lock-constant-face):
 +      Darken the colors for light backgrounds.
 +
 +2009-08-01  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * mail/rmailsum.el (rmail-header-summary): Ignore letter-case of
 +      month names.  (Bug#3987)
 +
 +2009-07-31  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * simple.el (line-move-finish): Pass whole number to
 +      line-move-to-column.
 +      (line-move-visual): Perform hscroll to the recorded position.
 +
 +2009-07-30  Jay Belanger  <jay.p.belanger@gmail.com>
 +
 +      * calc/calc-mode.el (calc-matrix-brackets): Remove "P" from prompt.
 +
 +2009-07-29  Alan Mackenzie  <acm@muc.de>
 +
 +      * progmodes/cc-defs.el (c-version): Bump to 5.31.7.
 +
 +2009-07-29  Dmitry Dzhus  <dima@sphinx.net.ru>
 +
 +      * progmodes/gdb-mi.el (gdb-goto-breakpoint)
 +      (gdb-place-breakpoints): Use full path when setting breakpoints.
 +
 +2009-07-29  Jay Belanger  <jay.p.belanger@gmail.com>
 +
 +      * calc/calc.el (calc-mode-map): Add keybinding for
 +      `calc-transpose-lines'.
 +
 +2009-07-29  Vincent Belaïche  <vincent.belaiche@gmail.com>
 +
 +      * calc/calc-misc.el (calc-transpose-lines): New function.
 +
 +2009-07-28  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/tramp.el (tramp-do-copy-or-rename-file): Add messages.
 +      Simplify check for out-of-band methods.
 +      (tramp-do-copy-or-rename-file-out-of-band): Allow both files to be
 +      remote.  Remove messages which are in `tramp-do-copy-or-rename-file'.
 +
 +2009-07-28  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * vc-git.el (vc-git-checkin): Fix typo.
 +
 +2009-07-28  Steve Yegge  <steve.yegge@gmail.com>
 +
 +      * progmodes/js2-mode.el: New file.
 +
 +2009-07-28  Nick Roberts  <nickrob@snap.net.nz>
 +
 +      * progmodes/gud.el (jdb): Add gud-pstar to dump object information.
 +      (gud-menu-map): Adjust tooltip accordingly.
 +
 +2009-07-27  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * vc-bzr.el (vc-bzr-print-log): Pass multiple arguments to bzr log.
 +      (vc-bzr-log-view-mode): Adjust log-view-file-re.
 +
 +      * add-log.el (change-log-mode-map): Add a menu.
 +
 +2009-07-27  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/dbus.el (dbus-call-method-non-blocking): Handle the case the
 +      function returns nil.
 +      (dbus-handle-event): Handle special return value :ignore.
 +      Reported by Jan Moringen <jan.moringen@uni-bielefeld.de>.
 +
 +2009-07-26  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * view.el (view-mode-enable): Don't define Helper-return-blurb if
 +      it's not needed.
 +
 +2009-07-25  Eli Zaretskii  <eliz@gnu.org>
 +
 +      Fix Bug#3888:
 +
 +      * w32-vars.el (x-select-enable-clipboard): Doc fix.
 +
 +      * term/pc-win.el (x-display-name, x-colors)
 +      (x-select-enable-clipboard, x-select-text): Doc fix.
 +
 +      * term/common-win.el (x-display-name, x-colors): Doc fix.
 +
 +      * term/ns-win.el (x-select-text, x-setup-function-keys, x-colors)
 +      (xw-defined-colors): Doc fix.
 +
 +      * w32-fns.el (x-select-text, x-setup-function-keys)
 +      (x-get-selection, x-set-selection): Doc fix.
 +
 +      * term/x-win.el (x-select-text, x-setup-function-keys)
 +      (x-select-enable-clipboard, xw-defined-colors): Doc fix.
 +
 +      * select.el (x-set-selection): Doc fix.
 +
 +2009-07-25  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/zeroconf.el (zeroconf-init): Check for "GetVersionString"
 +      instead of "IsNSSSupportAvailable".  Avahi ought to work also when
 +      "IsNSSSupportAvailable" method is not available.
 +      Reported by Steve Youngs <steve@sxemacs.org>.
 +
 +2009-07-24  Kenichi Handa  <handa@m17n.org>
 +
 +      * international/characters.el: Fix setting of category ?C, ?|, ?K,
 +      and ?H.  Fix setting of case for Latin Extended and Greek Extended.
 +      (build-unicode-category-table): Fix range checks.
 +
 +2009-07-24  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * vc-dispatcher.el (vc-resynch-buffers-in-directory): Make sure
 +      the buffer we try to sync is current when calling
 +      vc-resynch-buffer.
 +
 +      * vc-dir.el (vc-dir-resynch-file): Make sure vc-dir-update does
 +      not show up to date files.
 +
 +2009-07-24  Glenn Morris  <rgm@gnu.org>
 +
 +      * emacs-lisp/elint.el (elint-current-buffer, elint-defun):
 +      Add autoload cookies.  If necessary, initialize.
 +      (elint-log): Handle non-file buffers.
 +      (elint-initialize): Add optional argument to reinitialize.
 +      (elint-find-builtin-variables): Save excursion.
 +
 +2009-07-23  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * emacs-lisp/lisp-mode.el (emacs-lisp-mode-map): Add menu entries
 +      for Lint.
 +
 +2009-07-22  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * vc.el (vc-print-log-internal): New function, split out from ...
 +      (vc-print-log): ... here.
 +      (vc-dir-move-to-goal-column): Declare.
 +
 +      * vc-git.el (vc-git-add-signoff): New variable.
 +      (vc-git-checkin): Use it.
 +      (vc-git-toggle-signoff): New function.
 +      (vc-git-extra-menu-map): Bind it to menu.
 +      (vc-git--run-command-string): Accept a nil FILE argument.
 +      (vc-git-stash-list): New function.
 +      (vc-git-dir-extra-headers): Use it.
 +
 +2009-07-23  Glenn Morris  <rgm@gnu.org>
 +
 +      * help-fns.el (describe-variable): Describe ignored and risky local
 +      variables in a similar way to that in which we describe safe ones.
 +
 +      * emacs-lisp/bytecomp.el (byte-compile-from-buffer)
 +      (byte-compile-output-file-form, byte-compile-output-docform)
 +      (byte-compile-file-form-defmumble, byte-compile-output-as-comment):
 +      Give some more local variables with common names a "bytecomp-" prefix,
 +      so as not to shadow things during compilation.
 +      * emacs-lisp/cl-macs.el (load-time-value)
 +      * emacs-lisp/cl.el (cl-compiling-file): Update for the name-change
 +      `outbuffer' to `bytecomp-outbuffer'.
 +
 +      * emacs-lisp/elint.el (elint-standard-variables): Remove most members,
 +      since the next two variables cover them automatically now.
 +      (elint-builtin-variables, elint-autoloaded-variables): New.
 +      (elint-unknown-builtin-args): Remove all members, since they can be
 +      parsed automatically now.
 +      (elint-extra-errors): New.
 +      (elint-env-add-env, elint-env-add-macro): Use cadr.
 +      (elint-current-buffer): Use or.  Change final message.
 +      (elint-get-top-forms): Use line-end-position.
 +      (elint-init-env): Use cadr.  Handle autoload, declare-function,
 +      and defalias.
 +      (elint-add-required-env): Doc fix.  Use or.  Standardize error.
 +      (regexp-assoc): Remove unused function.
 +      (elint-top-form): Set elint-current-pos, to record the start of the
 +      top-level form, for compilation-mode.
 +      (elint-form): Trap errors in macro expansion.  Use dolist.
 +      (elint-unbound-variable): Use elint-builtin-variables and
 +      elint-autoloaded-variables.
 +      (elint-get-args): Use cadr, or.
 +      (elint-check-cond-form): Use dolist, cadr.
 +      (elint-check-condition-case-form): Doc fix.  Use cadr.
 +      Use elint-extra-errors.
 +      (elint-log): New function.
 +      (elint-error, elint-warning): Use elint-log for a bytecomp-style format.
 +      Distinguish errors and warnings.
 +      (elint-log-message): Use with-current-buffer.  Inhibit read-only.
 +      Use a bytecomp-style format.
 +      (elint-clear-log): Preserve default-directory.  Inhibit read-only.
 +      (elint-get-log-buffer): Use compilation mode.  Disable undo.
 +      Don't truncate lines.
 +      (elint-initialize): Set builtin and autoloaded variable lists.
 +      Only process elint-unknown-builtin-args if non-nil.
 +      (elint-find-builtin-variables, elint-find-autoloaded-variables):
 +      New functions.
 +      (elint-find-builtin-args): Doc fix.  Handle "BODY...)".
 +
 +2009-07-22  Kevin Ryde  <user42@zip.com.au>
 +
 +      * net/newst-backend.el (newsticker--parse-atom-1.0)
 +      (newsticker--parse-rss-0.91, newsticker--parse-rss-0.92)
 +      (newsticker--parse-rss-1.0):
 +      * progmodes/idlwave.el (idlwave-mode):
 +      * progmodes/idlw-shell.el (idlwave-shell-mode):
 +      * progmodes/vera-mode.el (vera-mode):
 +      * progmodes/verilog-mode.el (verilog-auto-inst, verilog-auto):
 +      * progmodes/vhdl-mode.el (vhdl-mode):
 +      * textmodes/table.el (table-generate-source)
 +      (table--warn-incompatibility):
 +      Hyperlink urls in docstrings with URL `...'.
 +
 +2009-07-22  Glenn Morris  <rgm@gnu.org>
 +
 +      * emacs-lisp/advice.el, emacs-lisp/checkdoc.el:
 +      * emacs-lisp/debug.el, emacs-lisp/elp.el, emacs-lisp/gulp.el:
 +      * emacs-lisp/lisp.el, emacs-lisp/pp.el, emacs-lisp/trace.el:
 +      Remove leading * from defcustom docs.
 +
 +      * simple.el (blink-matching-paren-distance): Bump to 100k.  (Bug#3889)
 +
 +      * emacs-lisp/shadow.el (shadows-compare-text-p): Remove leading * from
 +      defcustom doc.
 +      (list-load-path-shadows): Optionally, just return shadows as a string.
 +
 +      * mail/emacsbug.el (report-emacs-bug): Include any load-path shadows.
 +
 +2009-07-21  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * mail/rmailedit.el (rmail-edit-mode):
 +      Use auto-save-include-big-deletions.
 +
 +      * mail/rmail.el (rmail-variables):
 +      Use auto-save-include-big-deletions.
 +
 +      * files.el (auto-save-mode): Revert 2009-07-21 and 2009-07-16
 +      changes.
 +
 +2009-07-21  Jay Belanger  <jay.p.belanger@gmail.com>
 +
 +      * calc/calc.el (calc-undo-length): New variable.
 +      (calc-quit): Truncate rather than eliminate `calc-undo-list'.
 +
 +2009-07-21  Richard Stallman  <rms@gnu.org>
 +
 +      * files.el (auto-save-mode): Handle buffer-save-size = -2
 +      for toggling mode.
 +
 +2009-07-21  Glenn Morris  <rgm@gnu.org>
 +
 +      * textmodes/ispell.el (ispell-looking-back): Update declaration.
 +
 +      * calendar/todo-mode.el (calendar-current-date): Update declaration.
 +
 +      * ps-print.el (ps-jitify, ps-lazify): Remove aliases only used to
 +      silence compiler.  Instead...
 +      (jit-lock-fontify-now, lazy-lock-fontify-region): ...Declare.
 +      (ps-print-ensure-fontified): Update for above function name changes.
 +
 +      * printing.el (pr-mh-get-msg-num, pr-mh-show)
 +      (pr-mh-start-of-uncleaned-message): Remove aliases only used to
 +      silence compiler.  Instead...
 +      (mh-get-msg-num, mh-show, mh-start-of-uncleaned-message): ...Declare.
 +      (mh-show-buffer): Only define for compiler.
 +      (pr-mh-current-message): Update for above function name changes.
 +
 +      * files.el (abort-if-file-too-large): Explicitly pass `filename'
 +      as an argument.
 +      (find-file-noselect, insert-file-1): Update for above change.
 +
 +      * mail/rmail.el (rmail-retry-ignored-headers): Bump :version.
 +
 +      * mail/mailclient.el (mailclient-send-it): Fix message.
 +
 +      * emacs-lisp/edebug.el (cl-debug-env): Only define for compiler.
 +      (edebug-eval): Check cl-debug-env is bound.
 +      (print-level, print-circle): Don't redefine built-in variables.
 +
 +      * emacs-lisp/cust-print.el: Remove leading * from defcustom docs.
 +      (custom-print-vectors): Remove old comments from doc.
 +
 +      * emerge.el (menu-bar-emerge-menu): Remove unused variable.
 +      (emerge-version): Make the variable an obsolete alias for the
 +      emacs-version variable.  Make the function obsolete.
 +      (emerge-fast-keymap, emerge-edit-keymap): Make a separate menu for
 +      Emerge options, rather than merging in into the main Options menu.
 +      (emerge-options-menu): Adjust menu text.  Use buttons for skip prefers
 +      and auto advance modes.  Disable edit/fast items when not relevant.
 +
 +2009-07-20  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * term/vt420.el (terminal-init-vt420): Fix typo.
 +
 +2009-07-20  Sam Steingold  <sds@gnu.org>
 +
 +      * progmodes/ada-mode.el (compile-auto-highlight): Remove the
 +      variable (removed from compile.el on 2004-03-11).
 +
 +2009-07-20  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * files.el (hack-local-variables-filter): Fix last change.
 +
 +2009-07-19  Juri Linkov  <juri@jurta.org>
 +
 +      * files.el (ignored-local-variables): Add `dir-local-variables-alist'.
 +      (dir-local-variables-alist): New buffer-local variable.
 +      (hack-local-variables-filter): If variable is not dir-local,
 +      i.e. `dir-name' is nil, then remove it from `dir-local-variables-alist',
 +      because file-local overrides dir-local.
 +      (c-postprocess-file-styles) <declare-function>:
 +      Remove obsolete declaration.
 +      (hack-dir-local-variables): Add dir-local variable/value pair to
 +      `dir-local-variables-alist' and remove duplicates.  Doc fix.
 +
 +      * help-fns.el (describe-variable): Add information about
 +      file-local and dir-local variables.
 +
 +2009-07-19  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * files.el (hack-local-variables-filter): Rewrite.
 +
 +2009-07-19  Glenn Morris  <rgm@gnu.org>
 +
 +      * progmodes/verilog-mode.el (verilog-error-regexp-add-xemacs):
 +      Silence compiler by only defining on XEmacs.
 +
 +      * international/mule.el (auto-coding-regexp-alist): Only match
 +      BABYL... at the start of buffer, not of lines.  (Bug#3790)
 +
 +      * calendar/cal-menu.el (cal-menu-set-date-title): Handle calls from
 +      non-calendar buffers (Bug#3862).  Restore "not on a date" message.
 +      (cal-menu-context-mouse-menu): Doc fix.
 +
 +      * desktop.el (desktop-buffers-not-to-save): Set :version tag.
 +
 +      * simple.el (mail-user-agent): Doc fix.  Set :version tag.
 +
 +2009-07-18  Juri Linkov  <juri@jurta.org>
 +
 +      * info.el: Virtual Info keyword finder.
 +      (add-to-list) <Info-virtual-files>: Add "\\`\\*Finder.*\\*\\'".
 +      (Info-finder-file): New variable.
 +      (Info-finder-find-file): New function.
 +      (finder-known-keywords, finder-package-info)
 +      (find-library-name, lm-commentary): Use defvar and
 +      declare-function to silence compiler warnings.
 +      (Info-finder-find-node): New function.
 +      (info-finder): New command.
 +
 +      * subr.el (process-kill-buffer-query-function): New function.
 +      (add-hook)<kill-buffer-query-functions>: Add hook
 +      `process-kill-buffer-query-function'.
 +
 +2009-07-18  Alan Mackenzie  <acm@muc.de>
 +
 +      * progmodes/cc-mode.el (c-before-hack-hook)
 +      (c-postprocess-file-styles): Give invocation of `c-set-style'
 +      DONT-OVERRIDE parameter of t.  Already set style variables will
 +      thus not be overridden by style settings given by `c-file-syle'.
 +
 +      * files.el (hack-local-variables-filter): Remove entries with
 +      duplicate keys from `file-local-variables-alist'.
 +
 +2009-07-18  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * simple.el (deactivate-mark, activate-mark, set-mark): Don't call
 +      x-set-selection if display-selections-p returns nil for the
 +      current frame.
 +
 +2009-07-18  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * simple.el (region-active-p, use-region-p): Doc fix (Bug#3873).
 +
 +2009-07-18  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * desktop.el (desktop-buffers-not-to-save): Default value is nil.
 +      Accept nil in addition to a regexp.
 +      (desktop-files-not-to-save): Add "(ftp)$" to the default regexp.
 +      Accept nil in addition to a regexp.
 +      (desktop-save-buffer-p): Don't use desktop-buffers-not-to-save for
 +      buffers that have an associated file.  Handle nil values of
 +      desktop-buffers-not-to-save and desktop-files-not-to-save.
 +      (Bug#3833)
 +
 +      * term/pc-win.el (x-selection-owner-p, x-own-selection-internal)
 +      (x-disown-selection-internal): New functions.
 +
 +2009-07-18  Nick Roberts  <nickrob@snap.net.nz>
 +
 +      * progmodes/gdb-mi.el (speedbar-frame): Declare to avoid compiler
 +      warning.
 +      (gdb-breakpoints-header): Move forward to avoid compiler warning.
 +      (gdb-make-header-line-mouse-map): Remove duplicate definition.
 +
 +2009-07-18  David De La Harpe Golden  <david@harpegolden.net>
 +
 +      * simple.el (set-mark): Revert last change.
 +
 +2009-07-17  Tassilo Horn  <tassilo@member.fsf.org>
 +
 +      * doc-view.el (doc-view-initiate-display): Add yes-or-no-p if
 +      rendering of pngs is not possible instead of messaging a long
 +      description.
 +
 +2009-07-17  David De La Harpe Golden  <david@harpegolden.net>
 +
 +      * w32-fns.el (x-selection-owner-p): New function.
 +
 +      * mouse.el (mouse-drag-track): Call deactivate-mark earlier.
 +      (mouse-yank-at-click, mouse-yank-primary):
 +      If select-active-regions is non-nil, deactivate the mark before
 +      insertion.
 +
 +      * simple.el (deactivate-mark, set-mark): Only save selection if we
 +      own it.
 +
 +2009-07-17  Kenichi Handa  <handa@m17n.org>
 +
 +      * case-table.el (describe-buffer-case-table): Fix for the case
 +      that KEY is a cons.
 +
 +2009-07-16  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * vc-rcs.el (vc-rcs-find-file-hook):
 +      * vc-sccs.el (vc-sccs-find-file-hook): Fix cut and paste error.
 +
 +2009-07-16  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/tramp.el (tramp-wait-for-output): Handle the case when
 +      commands do not return a newline but a null byte before the shell
 +      prompt.  (Bug#3858)
 +
 +2009-07-16  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
 +
 +      * term/ns-win.el (ns-set-alpha): Don't declare.
 +      (ns-set-background-alpha): Remove function.
 +
 +2009-07-16  Kevin Ryde  <user42@zip.com.au>
 +
 +      * emacs-lisp/copyright.el (copyright-update): Save match-data across
 +      y-or-n-p, for safety.
 +
 +2009-07-16  Richard Stallman  <rms@gnu.org>
 +
 +      * files.el (auto-save-mode): If buffer-saved-size is -2,
 +      don't clobber it.
 +
 +      * mail/rmail.el (rmail-variables): Set buffer-saved-size to -2.
 +      (rmail-retry-ignored-headers): Add more uninteresting fields.
 +
 +2009-07-15  Jari Aalto  <jari.aalto@cante.net>
 +
 +      * net/rcirc.el (rcirc): Use history variables.
 +      (rcirc-server-name-history, rcirc-nick-name-history)
 +      (rcirc-server-port-history): New variables.
 +
 +2009-07-15  Kenichi Handa  <handa@m17n.org>
 +
 +      * international/mule-cmds.el (set-language-environment-charset):
 +      If coding-system-charset-list returns `iso-2022' or `emacs-mule',
 +      ignore them.
 +
 +      * language/misc-lang.el ("IPA"): Change coding systems to utf-8.
 +      Delete unibyte-display.
 +
 +2009-07-15  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * simple.el (kill-visual-line): Obey kill-whole-line (Bug#3695).
 +
 +2009-07-15  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * simple.el (deactivate-mark): Optional argument FORCE.
 +      (set-mark): Use deactivate-mark.
 +
 +      * info.el (Info-search): No need to check transient-mark-mode
 +      before calling deactivate-mark.
 +
 +      * select.el (x-set-selection): Doc fix.
 +      (x-valid-simple-selection-p): Allow buffer values.
 +      (xselect--selection-bounds): Handle buffer values.
 +      Suggested by David De La Harpe Golden.
 +
 +      * mouse.el (mouse-set-region, mouse-drag-track):
 +      Call copy-region-as-kill before setting the mark, to let
 +      select-active-regions work.
 +
 +2009-07-15  David De La Harpe Golden  <david@harpegolden.net>
 +
 +      * simple.el (deactivate-mark): If select-active-regions is
 +      non-nil, copy the selection data into a string.
 +      (activate-mark): If select-active-regions is non-nil, set the
 +      selection to the current buffer.
 +      (set-mark): Update selection if select-active-regions is non-nil.
 +
 +      * select.el (x-valid-simple-selection-p): Allow buffer values.
 +
 +2009-07-14  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * simple.el (mail-user-agent): Default to the upwardly-UI-compatible
 +      and more featureful message-mode.
 +
 +2009-07-14  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * select.el (x-set-selection): Doc fix.
 +      (x-valid-simple-selection-p): Disallow selection data consisting
 +      of a list or cons of integers, since that is not used.
 +      (xselect--selection-bounds, xselect--int-to-cons): New functions.
 +      (xselect-convert-to-string, xselect-convert-to-length)
 +      (xselect-convert-to-filename, xselect-convert-to-charpos)
 +      (xselect-convert-to-lineno, xselect-convert-to-colno): Use them.
 +
 +2009-07-14  Dmitry Dzhus  <dima@sphinx.net.ru>
 +
 +      * progmodes/gdb-mi.el (json-partial-output): Fix broken GDB/MI
 +      output in -break-info command (Emacs bug #3794).
 +
 +2009-07-14  Glenn Morris  <rgm@gnu.org>
 +
 +      * emacs-lisp/edebug.el (edebug-setup-hook, edebug-all-forms)
 +      (edebug-eval-macro-args, edebug-save-displayed-buffer-points)
 +      (edebug-print-length, edebug-print-level, edebug-print-circle)
 +      (edebug-sit-for-seconds, edebug-view-outside)
 +      (edebug-bounce-point, edebug-set-global-break-condition)
 +      (edebug-Go-nonstop-mode, edebug-trace-mode)
 +      (edebug-Trace-fast-mode, edebug-continue-mode)
 +      (edebug-Continue-fast-mode, edebug-forward-sexp, edebug-help)
 +      (edebug-visit-eval-list): Doc fixes.
 +
 +      * subr.el (def-edebug-spec): Doc fix.
 +
 +2009-07-14  Kenichi Handa  <handa@m17n.org>
 +
 +      * international/characters.el: Fix setting of category ?C.
 +
 +2009-07-13  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * term/ns-win.el (x-select-font): defalias x-select-font to
 +      ns-popup-font-panel instead of generate-fontset-menu.
 +
 +2009-07-12  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * desktop.el (desktop-buffers-not-to-save): Remove ".log".  (Bug#3833)
 +
 +2009-07-12  Peter Jolly  <peter@jollys.org>  (tiny change)
 +
 +      * arc-mode.el (archive-find-type): Allow for a PK00 string before
 +      the PK\003\004 header (Bug#3770).
 +
 +2009-07-12  Guanpeng Xu  <herberteuler@hotmail.com>
 +
 +      * pcomplete.el (pcomplete-comint-setup): Check for
 +      shell-dynamic-complete-filename too.
 +
 +2009-07-11  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * simple.el (temporary-goal-column): Change the value for
 +      line-move-visual to a cons cell.
 +      (line-move-visual): Record or set the window hscroll, if
 +      necessary (Bug#3494).
 +      (line-move-1): Handle cons value of temporary-goal-column.
 +
 +2009-07-11  Kenichi Handa  <handa@m17n.org>
 +
 +      * international/mule-diag.el (describe-character-set): Don't show
 +      width.
 +
 +2009-07-10  Sam Steingold  <sds@gnu.org>
 +
 +      * progmodes/compile.el (compilation-mode-font-lock-keywords):
 +      Omake sometimes indents the errors it prints, so allow all
 +      regexps to start with spaces.
 +
 +2009-07-10  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * cus-edit.el (customize-changed-options-previous-release):
 +      Bump value to 22.1.  (Bug#3804)
 +
 +2009-07-08  Sam Steingold  <sds@gnu.org>
 +
 +      * progmodes/grep.el (rgrep): Allow grep-find-ignored-directories
 +      to be a cons cell (test . ignored-directory) to selectively ignore
 +      some directories depending on the location of the search.
 +
 +2009-07-08  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/tramp.el (tramp-set-file-uid-gid): Handle the case the
 +      remote user is root, on the local host.
 +      (tramp-local-host-p): Either the local user or the remote user
 +      must be root.  (Bug#3771)
 +
 +2009-07-08  Nick Roberts  <nickrob@snap.net.nz>
 +
 +      * progmodes/gdb-mi.el (gdb): Remove description of
 +      gdb-use-separate-io-buffer.
 +      (menu): Don't allow toggling of or enable
 +      gdb-use-separate-io-buffer from menubar.
 +
 +2009-07-08  E. Jay Berkenbilt  <ejb@ql.org>  (tiny change)
 +
 +      * mail/unrmail.el (unrmail): Make sure the message ends with two
 +      newlines (Bug#3769).
 +
 +2009-07-08  Glenn Morris  <rgm@gnu.org>
 +
 +      * calendar/calendar.el (calendar-current-date): Rework previous change.
 +
 +2009-07-08  Ed Reingold  <reingold@emr.cs.iit.edu>
 +
 +      * calendar/calendar.el (calendar-current-date):
 +      Add an optional argument giving an offset from today.
 +
 +2009-07-08  Glenn Morris  <rgm@gnu.org>
 +
 +      * tutorial.el (tutorial--describe-nonstandard-key):
 +      Adjust the message for when a key has been unbound.
 +      (help-with-tutorial): Hide the arch-tag.
 +
 +2009-07-08  Kenichi Handa  <handa@m17n.org>
 +
 +      * international/fontset.el (setup-default-fontset): For each
 +      script, append (not set) font-specs.
 +
 +      * language/japanese.el (japanese-shift-jis-2004): Fix typo in the
 +      docstring.
 +
 +2009-07-08  Nick Roberts  <nickrob@snap.net.nz>
 +
 +      * progmodes/gdb-mi.el (gdb-init-1): Move sending
 +      -data-list-register-names to ...
 +      (gdb-starting): ... here because GDB 7.0 requires execution to
 +      have started when using this MI command.
 +      (gdb-set-header): New function to distinguish select and
 +      unselected tabs in gdb buffers.
 +      (gdb-propertize-header): New macro that uses gdb-set-header.
 +      (gdb-breakpoints-header, gdb-locals-header): Use it.
 +      (gdb-disassembly-mode-map): Add keybinding to kill buffer.
 +
 +2009-07-07  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * Makefile.in (ELCFILES): Remove fadr.elc.
 +
 +2009-07-07  Dmitry Dzhus  <dima@sphinx.net.ru>
 +
 +      * progmodes/gdb-mi.el (gdb-init-1): Disassembly buffer mode name
 +      may contain frame information, so `string-match' should be used.
 +      (gdb-update): Disassembly is invalidated through
 +      `gdb-get-selected-frame'.
 +      (gdb-pad-string): New function to pad string with spaces.
 +      (gdb-invalidate-disassembly): Invalidate only if the buffer
 +      exists.
 +      (gdb-disassembly-handler-custom): Column alignment.
 +      (gdb-disassembly-place-breakpoints): Clear old breakpoints before
 +      placing new ones.
 +      (gdb-toggle-breakpoint, gdb-delete-breakpoint): Now work from the
 +      end of line, too.
 +      (gdb-frame-handler): Match convention to for disassembly buffer
 +      mode name.
 +      (gdb-stack-list-frames-handler): Rewritten without regexps.
 +      (gdb-breakpoints-list-handler-custom): y/n instead of on/off; do
 +      not highlight breakpoints without line information.
 +      (gdb-input): Add trailing newline to command.
 +
 +      * progmodes/gdb-mi.el (gdb-init-1): Set mode name for disassembly
 +      buffer properly.
 +      (gdb-breakpoints-list-handler-custom): Replacement for
 +      `gdb-break-list-handler'.  Using real parser instead of regexps
 +      now.
 +      (gdb-place-breakpoints): Replacement for `gdb-break-list-custom'.
 +      Use `gdb-breakpoints-list' instead of parsing breakpoints buffer
 +      to place breakpoints.
 +      (def-gdb-memory-unit): A new macro to define gdb-memory-unit-..
 +      functions.
 +      (gdb-disassembly-handler-custom): Show overlay arrow.
 +      (gdb-disassembly-place-breakpoints): Show breakpoints in
 +      disassembly buffer.
 +      (gdb-toggle-breakpoint, gdb-delete-breakpoint)
 +      (gdb-goto-breakpoint): Using `gdb-breakpoint' text properties
 +      instead of parsing breakpoints buffer.  Fixed old menu references
 +      in `gud-menu-map'.
 +
 +      * fadr.el: Remove.
 +
 +      * progmodes/gdb-mi.el: Port memory buffer from gdb-ui.el.
 +      (gdb-memory-address): New variable which holds top address of
 +      memory page shown in memory buffer.
 +      (gdb-memory-repeat-count, gdb-memory-format, gdb-memory-unit):
 +      New customization variables.
 +      New functions:
 +      (gdb-display-memory-buffer, gdb-frame-memory-buffer): Functions to
 +      display the memory buffer.
 +      (gdb-memory-set-address, gdb-memory-set-repeat-count): Set memory
 +      buffer display parameters.
 +      (def-gdb-memory-format, gdb-memory-format-binary)
 +      (gdb-memory-format-octal, gdb-memory-format-unsigned)
 +      (gdb-memory-format-signed, gdb-memory-format-hexadecimal):
 +      Functions for setting memory buffer format.
 +      (gdb-memory-unit-word, gdb-memory-unit-halfword)
 +      (gdb-memory-unit-giant, gdb-memory-unit-byte): Functions to set
 +      unit size used in memory buffer.
 +      (gdb-memory-show-next-page, gdb-memory-show-previous-page):
 +      Switch to next/previous page of memory buffer.
 +      Now using (bindat-get-field) instead of fadr functions.
 +
 +2009-07-07  Sam Steingold  <sds@gnu.org>
 +
 +      * vc-cvs.el (vc-cvs-merge-news): Fix message parsing for
 +      non-top-level files.
 +
 +2009-07-07  Kenichi Handa  <handa@m17n.org>
 +
 +      * international/mule-cmds.el (reset-language-environment):
 +      Put the highset priority to the charset iso-8859-1.
 +
 +2009-07-06  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * progmodes/hideshow.el (hs-hide-block-at-point): Don't move point
 +      to the end of the line when locating the block (Bug#700).
 +
 +2009-07-06  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/tramp.el (tramp-handle-write-region): Flush file properties
 +      in case of short track.
 +
 +2009-07-06  Michael McNamara  <mac@mail.brushroad.com>
 +
 +      * progmodes/verilog-mode.el (verilog-error-regexp-emacs-alist):
 +      Coded custom representation of verilog error regular expressions
 +      to work with Emacs-22's new format.
 +      (verilog-error-regexp-xemacs-alist): Coded custom representation
 +      of verilog error regular expressions to work with XEmacs format.
 +      (verilog-error-regexp-add-xemacs): Hook routine to install verilog
 +      error recognition into XEmacs.
 +      (verilog-error-regexp-add-emacs): Hook routine to install verilog
 +      error recognition into Emacs-22.
 +
 +2009-07-06  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * woman.el: Remove stand-alone closing parentheses.
 +      (woman-file-name, woman2-format-paragraphs)
 +      (woman-leave-blank-lines): Code cleanup.
 +      (woman-use-own-frame): Change default to nil.
 +      (woman-italic, woman-bold, woman-unknown, woman-addition):
 +      Change defaults to inherit from default faces.
 +      (woman2-process-escapes): Consume the newline after a stand-alone
 +      filler character (Bug#3651).
 +
 +2009-07-06  Glenn Morris  <rgm@gnu.org>
 +
 +      * ffap.el (ffap-version): Make it an obsolete alias for emacs-version.
 +      (top-level): Move provide to the end.
 +      (ffap): Remove defunct URL from custom group.
 +
 +      * subr.el (eval-after-load): Doc fix.
 +
 +2009-07-06  Vincent Belaïche  <vincent.belaiche@gmail.com>
 +
 +      * calc/calc-embed.el (calc-embedded-make-info): Don't force when
 +      `calc-embedded-word' is called twice.
 +
 +2009-07-05  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * files.el (find-alternate-file-other-window, find-alternate-file):
 +      Obey confirm-nonexistent-file-or-buffer.
 +
 +2009-07-05  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * dired-aux.el (dired-show-file-type): Handle remote files.
 +
 +2009-07-05  Jari Aalto  <jari.aalto@cante.net>
 +
 +      * desktop.el (desktop-globals-to-save):
 +      Add file-name-history (Bug#2750).
 +
 +2009-07-05  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * add-log.el (add-log-current-defun-header-regexp): Doc fix (Bug#2217).
 +
 +2009-07-04  Johan Bockgård  <bojohan@gnu.org>
 +
 +      * eshell/esh-arg.el (eshell-parse-argument-hook): Put `number'
 +      property on entire argument since this is what eshell-lisp-command
 +      expects.
 +
 +2009-07-03  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/tramp-gvfs.el (tramp-gvfs-methods)
 +      (tramp-gvfs-zeroconf-domain)
 +      (tramp-bluez-discover-devices-timeout): Add version flag.
 +      (tramp-gvfs-handler-mounted-unmounted)
 +      (tramp-gvfs-connection-mounted-p): Polish handling of
 +      incompatibilities between GVFS 0.2 and 1.0.
 +
 +2009-07-03  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * cus-start.el (all): Add make-pointer-invisible.
 +
 +2009-07-03  Jay Belanger  <jay.p.belanger@gmail.com>
 +
 +      * calc/calc-math.el (math-use-emacs-fn): Make sure that the number is
 +      formatted correctly.
 +
 +2009-07-02  Juri Linkov  <juri@jurta.org>
 +
 +      * info.el: Virtual Info files and nodes.
 +      (Info-virtual-files, Info-virtual-nodes): New variables.
 +      (Info-current-node-virtual): New variable.
 +      (Info-virtual-file-p, Info-virtual-fun, Info-virtual-call):
 +      New functions.
 +      (Info-file-supports-index-cookies): Use Info-virtual-file-p
 +      to check for a virtual file instead of checking a fixed list
 +      of node names.
 +      (Info-find-file): Use Info-virtual-fun and Info-virtual-call
 +      instead of ad-hoc processing of "dir" and (apropos history toc).
 +      (Info-find-node-2): Use Info-virtual-fun and Info-virtual-call
 +      instead of ad-hoc processing of "dir" and (apropos history toc).
 +      Reread a file when moving from a virtual node.
 +      (add-to-list)<Info-virtual-files>: Add "\\`dir\\'".
 +      (Info-directory-toc-nodes, Info-directory-find-file)
 +      (Info-directory-find-node): New functions.
 +      (add-to-list)<Info-virtual-files>: Add "\\`\\*History\\*\\'".
 +      (Info-history): Move part of code to
 +      `Info-history-find-node'.
 +      (Info-history-toc-nodes, Info-history-find-file)
 +      (Info-history-find-node): New functions.
 +      (add-to-list)<Info-virtual-nodes>: Add "\\`\\*TOC\\*\\'".
 +      (Info-toc): Move part of code to `Info-toc-find-node'.
 +      (Info-toc-find-node): New function.
 +      (Info-toc-insert): Rename from `Info-insert-toc'.  Don't insert
 +      the current Info file name to references because now the node
 +      "*TOC*" belongs to the same Info manual.
 +      (Info-toc-build): Rename from `Info-build-toc'.
 +      (Info-toc-nodes): Rename input argument `file' to `filename'.
 +      Use Info-virtual-fun, Info-virtual-call and Info-virtual-file-p
 +      instead of ad-hoc processing of ("dir" apropos history toc).
 +      (Info-index-nodes): Use Info-virtual-file-p
 +      to check for a virtual file instead of checking a fixed list
 +      of node names.
 +      (Info-index-node): Add check for `Info-current-node-virtual'.
 +      Raise `save-match-data' higher up the tree to contain
 +      `search-forward' too (bug fix).
 +      (add-to-list)<Info-virtual-nodes>: Add "\\`\\*Index.*\\*\\'".
 +      (Info-virtual-index-nodes): New variable.
 +      (Info-virtual-index-find-node, Info-virtual-index): New functions.
 +      (add-to-list)<Info-virtual-files>: Add "\\`\\*Apropos\\*\\'".
 +      (Info-apropos-file, Info-apropos-nodes): New variables.
 +      (Info-apropos-toc-nodes, Info-apropos-find-file)
 +      (Info-apropos-find-node, Info-apropos-matches): New functions.
 +      (info-apropos): Move part of code to `Info-apropos-find-node' and
 +      `Info-apropos-matches'.
 +      (Info-mode-map): Bind "I" to `Info-virtual-index'.
 +      (Info-desktop-buffer-misc-data): Use Info-virtual-file-p to check
 +      for a virtual file instead of checking a fixed list of node names.
 +
 +      * simple.el (async-shell-command): New command.
 +
 +      * bindings.el (esc-map): Bind "&" to `async-shell-command'.
 +
 +      * net/tramp-gvfs.el (tramp-gvfs-connection-mounted-p): Use `elt'
 +      instead of `mount-info'.
 +
 +2009-07-02  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/tramp-gvfs.el (tramp-gvfs-handler-mounted-unmounted)
 +      (tramp-gvfs-connection-mounted-p): Handle changed mount-info interface.
 +
 +2009-07-02  Kenichi Handa  <handa@m17n.org>
 +
 +      * international/mule.el (set-keyboard-coding-system): Force *-unix
 +      coding-system to avoid eol conversion.
 +
 +2009-07-01  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist):
 +      Add handler for `process-file', `shell-command' and
 +      `start-file-process'.
 +      (tramp-gvfs-handle-shell-command)
 +      (tramp-gvfs-handle-start-file-process)
 +      (tramp-gvfs-handle-process-file): New defuns.
 +      (tramp-synce-list-devices): Simplify check for existence of property.
 +
 +2009-07-01  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * startup.el (command-line-x-option-alist): Add -mm and --maximized.
 +
 +2009-07-01  Eduard Wiebe  <usenet@pusto.de>  (tiny change)
 +
 +      * language/korean.el (set-language-info-alist): Add korean-cp949,
 +      cp949 to spec.
 +
 +2009-07-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * Makefile.in (ELCFILES): Delete encoded-kb.elc.
 +
 +      * international/encoded-kb.el: Deleted.
 +
 +      * international/mule.el (set-keyboard-coding-system): Perform the
 +      necessary setup here instead of calling encoded-kbd-setup-display.
 +
 +2009-07-01  Glenn Morris  <rgm@gnu.org>
 +
 +      * progmodes/f90.el (f90-break-delimiters, f90-no-break-re): Doc fixes.
 +
 +2009-07-01  Evangelos Evangelou  <vangelis@email.unc.edu>  (tiny change)
 +
 +      * progmodes/f90.el (f90-no-break-re): Add "(/" and "/)".  (Bug#3730)
 +
 +2009-06-30  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/tramp.el (tramp-do-copy-or-rename-file-directly):
 +      Handle also the 'rename case, when setting file modes.  (Bug#3712)
 +      (tramp-default-file-modes): Remove execute permissions.
 +
 +      * net/tramp-gvfs.el (tramp-gvfs-methods): Add "synce" method.
 +      (top): Add a default for "synce" in `tramp-default-user-alist'.
 +      Add completion function for "synce" method.
 +      (tramp-hal-service, tramp-hal-path-manager)
 +      (tramp-hal-interface-manager, tramp-hal-interface-device):
 +      New defconst.
 +      (tramp-gvfs-connection-mounted-p): Handle empty user name for synce.
 +      (tramp-synce-list-devices, tramp-synce-parse-device-names):
 +      New defuns.
 +
 +      * net/trampver.el: Update release number.
 +
 +2009-06-30  Kenichi Handa  <handa@m17n.org>
 +
 +      * international/fontset.el (setup-default-fontset): Add CJK fonts
 +      for symbols and the other miscellaneous characters.
 +
 +      * language/korea-util.el (setup-korean-environment-internal):
 +      Make char-width-table suitable for Korean environments.
 +      (exit-korean-environment): Cancel above.
 +
 +      * language/chinese.el ("Chinese-GB", "Chinese-BIG5")
 +      ("Chinese-CNS", "Chinese-EUC-TW", "Chinese-GBK"): Add a
 +      setup-function to make char-width-table suitable for respective
 +      environments, and an exit-function to cancel that.
 +
 +      * language/japan-util.el (setup-japanese-environment-internal):
 +      Call use-cjk-char-width-table with arg `ja_JP'.
 +
 +      * international/characters.el (cjk-char-width-table): Delete it.
 +      (cjk-char-width-table-list): New variable.
 +      (use-cjk-char-width-table): New arg local-name.
 +      (use-default-char-width-table): Fix for the case that Emacs is
 +      already using the default char-width-table.
 +
 +2009-06-29  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/tramp.el (tramp-do-copy-or-rename-file-directly): Set file
 +      modes mandatory.  (Bug#3712)
 +
 +2009-06-29  Alan Mackenzie  <acm@muc.de>
 +
 +      * progmodes/cc-cmds.el (c-mask-paragraph): Remove a spurious
 +      correction between the visible width of TABs and their number of bytes.
 +
 +2009-06-29  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * server.el (server-buffer-done): Prevent kill-buffer from
 +      prompting by clearing the buffer modification flag (Bug#3696).
 +
 +2009-06-28  Michael McNamara  <mac@mail.brushroad.com>
 +
 +      * progmodes/verilog-mode.el (verilog-beg-of-statement)
 +      (verilog-endcomment-reason-re): Support unique case and priority case.
 +      (verilog-basic-complete-re): Support localparam lineup.
 +      (verilog-beg-of-statement-1): Fix for robustness, unique case.
 +      (verilog-set-auto-endcomments): Fix for unique case, always_comb
 +      commenting.
 +      (verilog-leap-to-case-head): Now support *nested* unique &
 +      priority case statements.
 +      (verilog-auto-lineup): Make just declarations the default (as it
 +      had been).
 +      (verilog-leap-to-case-head): Support priority/unique case statements.
 +      (verilog-auto-lineup): Rework to give users radio buttons to
 +      select the various styles of automatic lineup.
 +      (verilog-error-regexp-alist): Rework to support the XEmacs style
 +      of error regular expressions from compilers, lint tools &
 +      simulators.  Note that GNU Emacs has made it impossible for a mode
 +      to load such things.
 +      (electric-verilog-terminate-line, verilog-indent-declaration)
 +      (verilog-auto-wiure): Rework for radio button selection of
 +      auto-lineup selection of specification of auto lineup.
 +      (verilog-beg-of-statement-1): Redesign to support proper operation
 +      in additional code, based on testing with auto-lineup.
 +      (verilog-calculate-indent, assignments & declarations)
 +      (verilog-backward-token): Enhance to support auto-lineup of
 +      assignments & declarations.
 +      (verilog-in-directive-p, verilog-at-struct-p): New function for
 +      easy test of whether we are.
 +      (verilog-pretty-declarations, verilog-pretty-expr): Massive rework
 +      to support safe execution at almost anyline.
 +      (verilog-calc-1): Properly support indenting deep inside generate
 +      blocks.
 +      (verilog-init-font): Remove definition & use of verilog-init-font,
 +      as it is redundant with font-lock-defaults.
 +      (verilog-mode): Alter the definition of verilog-font-lock-defaults
 +      to avoid circular calls if syntax-ppss is a function (as is the
 +      case now in 22.x GNU Emacs) as that function would sometimes call
 +      itself, leading to (nearly) infinite recursion.
 +      (verilog-ovm-begin-re, verilog-ovm-end-re)
 +      (verilog-ovm-statement-re, verilog-leap-to-head)
 +      (verilog-backward-token): Add support for OVM macros.  Some are
 +      complete statements, and others open and close scopes like begin
 +      and end.
 +      (verilog-defun-level-not-generate-re, verilog-defun-level-re)
 +      (verilog-defun-level-generate-only-re): Really fix the defun-list
 +      compilation issue.
 +      (verilog-calc-1, verilog-beg-of-statement): Enhance support for
 +      coverpoint, constraint and cross statements.
 +      (verilog-defun-level-list, verilog-generate-defun-level-list)
 +      (verilog-all-defun-level-list): Redo these specifications - it is
 +      too hard to support eval-when compile aggregation of lists also
 +      built at when-compile time.
 +      (verilog-defun-level-list): Place defconsts of variables used in
 +      building regular expressions which are built in eval-when-compile
 +      bodies in the same eval-when-compile body to facilitate compile
 +      without load.
 +      (verilog-beg-block-re-ordered): Support indenting
 +      virtual/protected tasks and functions.
 +      (verilog-defun-level-list, verilog-in-generate-region-p)
 +      (verilog-backward-ws&directives, verilog-calc-1): Speed up
 +      indentation of some module items (generate items).
 +      (verilog-forward-sexp, verilog-leap-to-head): Support stepping
 +      across virtual/protected tasks and functions.
 +
 +2009-06-28  Wilson Snyder  <wsnyder@wsnyder.org>
 +
 +      * progmodes/verilog-mode.el (verilog-auto-arg, verilog-auto-arg-sort):
 +      Allow sorting AUTOARG lists.  Suggested by Andrea Fedeli.
 +      (verilog-read-sub-decls-line): Fix AUTOWIRE signals getting lost
 +      in concatenations.  Reported by Yishay Belkind.
 +      (verilog-auto-ascii-enum): Support one-hot state machines in
 +      AUTOASCIIENUM.  Suggested by Lloyd Gomez.
 +      (verilog-auto-inst, verilog-auto-inst-port): Include interface
 +      modport in AUTOINST and add vl-modport for users.
 +      Reported by David Rogoff.
 +      (verilog-auto-inout-module, verilog-auto-inst)
 +      (verilog-decls-get-interfaces, verilog-insert-definition)
 +      (verilog-insert-one-definition, verilog-read-decls)
 +      (verilog-read-sub-decls, verilog-read-sub-decls-sig)
 +      (verilog-sig-modport, verilog-signals-combine-bus)
 +      (verilog-subdecls-get-interfaces): Fix expansion of SystemVerilog
 +      interfaces in AUTOINOUTMODULE, AUTOINOUTCOMP, and AUTOINST.
 +      Suggested by David Rogoff.
 +      (verilog-repair-open-comma): Fix non-insertion of comma when
 +      `DEFINE occurs in V2K argument list.  Reported by Lane Brooks.
 +      (verilog-make-width-expression): Simplify [A-1:0] expression
 +      widths to just {A{1'b0}}.
 +      (verilog-mode): Cleanup checkdoc warnings.
 +      (verilog-auto-inout-module, verilog-signals-matching-dir-re):
 +      Add third optional regexp to AUTOINOUTMODULE to allow selecting only
 +      inputs/outputs or data type.  Suggested by Vasu Kandadi.
 +      (next-error-last-buffer): Fix byte-compiler warning.
 +      (verilog-auto, verilog-auto-insert-lisp, verilog-auto-inst)
 +      (verilog-delete-auto): Add AUTOINSERTLISP to insert arbitrary lisp
 +      or shell command text during AUTO expansion.  Suggested by Tad Truex.
 +      (verilog-read-sub-decls-expr, verilog-read-sub-decls-line)
 +      (verilog-read-sub-decls-sig, verilog-symbol-detick-text):
 +      Fix dotted nets {a.b,c.d} and excaped identifiers being mis-included
 +      in AUTOINOUT.  Reported by Matthew Lovell.
 +      (verilog-read-always-signals-recurse): Fix AUTORESET "if (a<=b)"
 +      causing use of <= assignments.  Reported by Alex Reed.
 +      (verilog-read-decls): Fix triand, trior, wand, wor to be
 +      recognized by AUTOWIRE.  Reported by Spencer Isaacson.
 +      (verilog-extended-complete-re): Support import "DPI-C" functions.
 +      (verilog-read-always-signals-recurse): Fix AUTORESET of "x <=
 +      y[a+1:a+1]" to not include a in reset list.  Reported by Dan Dever.
 +      (verilog-insert-date, verilog-insert-year)
 +      (verilog-sk-header-tmpl): Fix verilog-header inserting error on
 +      Windows systems.  Reported by Michael Potts.
 +      (verilog-read-module-name): Fix AUTOINST when the child module
 +      declaration's name is a tick define.  Reported by Elliot Mednick.
 +      (verilog-read-decls): Fix V2K parameter bit subscripts getting
 +      passed to next parameter's definition.  Reported by Bruce T.
 +      (verilog-read-decls): Fix detecting "parameter int" when using
 +      AUTOINSTPARAM.  Reported by Bruce T.
 +      (verilog-goto-defun): Fix goto not finding modules unless first
 +      perform a verilog-auto expansion.  Suggested by Lawrence Butcher.
 +      (verilog-mode): Expand -f flag arguments on entry to mode so
 +      verilog-goto-defun will work.  Reported by Lawrence Butcher.
 +      (verilog-getopt): Expand environment variables in -f file
 +      arguments.  Suggested by Lawrence Butcher.
 +      (verilog-set-define): Fix "Symbol's value as variable is void"
 +      when reading enumerations.
 +      (verilog-auto-ascii-enum): Fix duplicate labels in AUTOASCIIENUM.
 +      Suggested by Stephen Peltan.
 +      (verilog-read-defines): Fix reading of enumerations in include
 +      files.  Reported by Steve Peltan.
 +
 +2009-06-28  David De La Harpe Golden  <david@harpegolden.net>
 +
 +      * files.el (trash-directory): Fix defcustom type.
 +
 +2009-06-28  Juri Linkov  <juri@jurta.org>
 +
 +      * help-fns.el (describe-function-1): Correctly locate adviced
 +      functions in hyperlink (Bug#2438).
 +
 +2009-06-28  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * files.el (trash-directory): Change default to nil.
 +      (move-file-to-trash): If trash-directory is nil and
 +      system-move-file-to-trash is unbound, perform freedesktop-style
 +      trashing.
 +
 +2009-06-28  David De La Harpe Golden  <david@harpegolden.net>
 +
 +      * files.el (move-file-to-trash): Add freedesktop trash
 +      support (Bug#973).
 +
 +2009-06-28  Glenn Morris  <rgm@gnu.org>
 +
 +      * autorevert.el (global-auto-revert-non-file-buffers)
 +      (global-auto-revert-mode): Doc fixes.
 +
 +2009-06-27  Johan Bockgård  <bojohan@gnu.org>
 +
 +      * emacs-lisp/cl-specs.el (defstruct): Fix :conc-name spec.
 +
 +2009-06-27  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * faces.el (x-handle-named-frame-geometry): Ensure that we have
 +      opened an X connection before calling x-get-resource (Bug#3194).
 +
 +      * play/doctor.el: Remove reference to obsolete website.
 +      (make-doctor-variables): Correct grammar mistake (Bug#2633).
 +
 +2009-06-26  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      Remove find-file-not-found-hook VC method.  (Bug#2757)
 +      * vc-hooks.el (vc-file-not-found-hook)
 +      (vc-default-find-file-not-found-hook): Remove functions.
 +      (find-file-not-found-functions): Do not add vc-file-not-found-hook.
 +      * vc-rcs.el (vc-rcs-find-file-not-found-hook): Remove function.
 +      * vc.el:
 +      * vc-hg.el:
 +      * vc-git.el: Do not mention find-file-not-found-hook VC method.
 +
 +2009-06-25  Agustín Martín  <agustin.martin@hispalinux.es>
 +
 +      * textmodes/ispell.el: Add `ispell-looking-back' XEmacs
 +      compatibility function for `looking-back'.
 +
 +      * textmodes/flyspell.el (sgml-mode-flyspell-verify):
 +      Use `ispell-looking-back'.
 +
 +2009-06-24  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/tramp-gvfs.el (tramp-gvfs-handle-make-directory): Use `dir'
 +      rather than `filename'.
 +
 +2009-06-23  Miles Bader  <miles@gnu.org>
 +
 +      * face-remap.el (text-scale-set): New function.
 +
 +2009-06-23  Glenn Morris  <rgm@gnu.org>
 +
 +      * pcmpl-rpm.el (pcomplete/rpm): Doc fix.
 +
 +      * bindings.el (mode-line-modified): Fix case of "Buffer is modified".
 +
 +      * textmodes/ispell.el (ispell-local-dictionary): Doc fix.
 +
 +      * progmodes/gdb-mi.el (gud-remove, gud-break): Update declarations.
 +
 +      * calendar/cal-dst.el (calendar-time-zone-daylight-rules):
 +      Simplify Persian conditionals.
 +
 +      * calc/calc-graph.el (calc-graph-plot): Avoid assignment to free
 +      variable `filename'.
 +
 +      * comint.el (comint-insert-input): Doc fix.
 +
 +      * Makefile.in (ELCFILES): Fix typo in previous change.
 +
 +2009-06-23  Miles Bader  <miles@gnu.org>
 +
 +      * cus-start.el: Add entry for `recenter-redisplay'.
 +
 +2009-06-23  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * vc-hooks.el (vc-stay-local-p, vc-state, vc-working-revision):
 +      Add an optional argument for the backend, use it instead of
 +      calling vc-backend.
 +      (vc-mode-line): Add an optional argument for the backend.
 +      Pass the backend to vc-state and vc-working-revision.  Move code for
 +      special handling for vc-state being a buffer to ...
 +
 +      * vc-rcs.el (vc-rcs-find-file-hook):
 +      * vc-sccs.el (vc-sccs-find-file-hook): ... here.  New functions.
 +
 +      * vc-svn.el (vc-svn-state, vc-svn-dir-status, vc-svn-checkout)
 +      (vc-svn-print-log, vc-svn-diff): Pass 'SVN to vc-state,
 +      vc-stay-local-p and vc-mode-line calls.
 +
 +      * vc-cvs.el (vc-cvs-state, vc-cvs-checkout, vc-cvs-print-log)
 +      (vc-cvs-diff, vc-cvs-annotate-command)
 +      (vc-cvs-make-version-backups-p, vc-cvs-stay-local-p)
 +      (vc-cvs-dir-status): Pass 'CVS to vc-state, vc-stay-local-p and
 +      vc-mode-line calls.
 +
 +      * vc.el (vc-deduce-fileset): Use vc-deduce-fileset instead of
 +      direct comparison.
 +      (vc-next-action, vc-transfer-file, vc-rename-file): Also pass the
 +      backend when calling vc-mode-line.
 +      (vc-register): Do not create a closure for calling the vc register
 +      function, call it directly.
 +
 +2009-06-23  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * emacs-lisp/elp.el (elp-output-insert-symname): Add a link face
 +      to make it obvious item can be clicked.
 +
 +      * vc-mtn.el (vc-mtn-after-dir-status, vc-mtn-dir-status): New functions.
 +
 +2009-06-23  Kenichi Handa  <handa@m17n.org>
 +
 +      * language/korea-util.el (korean-key-bindings): Change the binding
 +      of F9 to hangul-to-hanja-conversion.  Bind Hangul_Hanja to the
 +      same command.
 +
 +2009-06-22  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      Sync with Tramp 2.1.16.
 +
 +      * Makefile.in (ELCFILES): Add net/tramp-gvfs.elc.
 +
 +      * net/tramp.el (top): Require tramp-gvfs.  Catch `tramp-loading',
 +      when a loading of a package fails.  Completion function for rsync
 +      is `tramp-completion-function-alist-ssh'.
 +      (all): Replace all calls of `split-string' and
 +      `tramp-split-string' by `tramp-compat-split-string'.
 +      (tramp-default-method): Use `tramp-compat-process-running-p'.
 +      (tramp-default-proxies-alist): Allow also Lisp forms.
 +      (tramp-remote-path): Add choice "Private Directories".
 +      (tramp-wrong-passwd-regexp): Remove "Tramp connection closed" option.
 +      (tramp-domain-regexp): Allow also "-", "_" and ".".
 +      (tramp-end-of-output): Remove newlines, and add "$" at the end.
 +      (tramp-file-name-handler-alist): Add handler for `dired-uncache'.
 +      (tramp-debug-message): Insert header line in debug buffer.
 +      (tramp-handle-directory-files-and-attributes-with-stat):
 +      Care about filenames with spaces, or starting with "-".
 +      (tramp-handle-dired-uncache): New defun.
 +      (tramp-handle-insert-directory): Don't flush the directory from
 +      cache, this is handled by `dired-uncache' now.
 +      (tramp-handle-insert-file-contents): Improve error handling.
 +      (tramp-find-shell, tramp-open-connection-setup-interactive-shell):
 +      Quote `tramp-end-of-output'.
 +      (tramp-action-password): Improve trace message.
 +      (tramp-check-for-regexp): Both echoes must be present, before removing.
 +      (tramp-open-connection-setup-interactive-shell): Trace coding system.
 +      (tramp-compute-multi-hops): Eval cons cells of
 +      `tramp-default-proxies-alist'.
 +      (tramp-maybe-open-connection): Use the same command pattern for
 +      first hop and further hops.
 +      (tramp-wait-for-output): Remove handling of newlines.
 +      (tramp-get-remote-path): Handle also `tramp-own-remote-path'.
 +      (tramp-split-string): Remove function.  It is handled in
 +      tramp-compat now.
 +
 +      * net/tramp-cmds.el (tramp-bug):
 +      Recommend `tramp-cleanup-all-connections' in the bug mail.
 +
 +      * net/tramp-compat.el (tramp-compat-split-string)
 +      (tramp-compat-process-running-p): New defuns.
 +
 +      * net/tramp-fish.el (tramp-fish-file-name-handler-alist): Add handler
 +      for `dired-uncache'.
 +
 +      * net/tramp-gvfs.el: New package.
 +
 +      * net/tramp-smb.el (tramp-smb-file-name-handler-alist):
 +      Add handler for `dired-uncache'.
 +      (tramp-smb-handle-file-local-copy): Cleanup in case of error.
 +
 +      * net/trampver.el: Update release number.  Make version check fit
 +      for SXEmacs 22.
 +
 +2009-06-22  Jim Meyering  <meyering@redhat.com>
 +
 +      Automatically handle .xz suffix (XZ-compressed files), too.
 +      * jka-cmpr-hook.el (jka-compr-compression-info-list): Add xz.
 +      XZ is the successor to LZMA: <http://tukaani.org/xz/>
 +
 +2009-06-22  Dmitry Dzhus  <dima@sphinx.net.ru>
 +            Nick Roberts  <nickrob@snap.net.nz>
 +
 +      * progmodes/gdb-mi.el: Pull further modified changes from Dmitry's
 +      repository (http://sphinx.net.ru/hg/gdb-mi/).
 +
 +2009-06-22  Glenn Morris  <rgm@gnu.org>
 +
 +      * files.el (dir-locals-collect-mode-variables): Allow for any number of
 +      `mode' and `eval' entries.  (Bug#3430)
 +
 +      * Makefile.in (ELCFILES): Add fadr.elc.
 +
 +      * calendar/appt.el (appt-make-list): Fix off-by-one error caused by
 +      differing behavior of \n and ^ in strings.  (Bug#3385)
 +
 +      * emacs-lisp/cl-indent.el: Remove leading "*" from defcustom docs.
 +
 +      * emacs-lisp/lisp-mode.el (lisp-indent-offset): Fix safe-local-variable
 +      property.
 +      (lisp-indent-function): Make it a defcustom.
 +
 +2009-06-21  Nick Roberts  <nickrob@snap.net.nz>
 +
 +      * progmodes/gdb-ui.el: Replace with ...
 +      * progmodes/gdb-mi.el: ... this file.
 +      * progmodes/gud.el: Modify for gdb-mi.el.
 +
 +2009-06-21  Dmitry Dzhus  <dima@sphinx.net.ru>
 +
 +      * fadr.el: New file.
 +
 +See ChangeLog.14 for earlier changes.
 +
 +;; Local Variables:
 +;; coding: utf-8
 +;; End:
 +
++  Copyright (C) 2009-2011  Free Software Foundation, Inc.
 +
 +  This file is part of GNU Emacs.
 +
 +  GNU Emacs is free software: you can redistribute it and/or modify
 +  it under the terms of the GNU General Public License as published by
 +  the Free Software Foundation, either version 3 of the License, or
 +  (at your option) any later version.
 +
 +  GNU Emacs is distributed in the hope that it will be useful,
 +  but WITHOUT ANY WARRANTY; without even the implied warranty of
 +  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 +  GNU General Public License for more details.
 +
 +  You should have received a copy of the GNU General Public License
 +  along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.
diff --combined lisp/Makefile.in
index fc7ba7120e2bf522eea8e68d37e8ae368fa9a0b2,2f92578b5168137d461205b723dc74c5f7dadaa0..374358e4aa36289755843a76636a94fb61fd6b84
@@@ -1,6 -1,5 +1,5 @@@
  # Maintenance productions for the Lisp directory
- # Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008,
- #   2009, 2010  Free Software Foundation, Inc.
+ # Copyright (C) 2000-2011  Free Software Foundation, Inc.
  
  # This file is part of GNU Emacs.
  
@@@ -35,7 -34,7 +34,7 @@@ EMACS = ${abs_top_builddir}/src/emac
  
  # Command line flags for Emacs.
  
- EMACSOPT = -batch --no-site-file
+ EMACSOPT = -batch --no-site-file --no-site-lisp
  
  # Extra flags to pass to the byte compiler
  BYTE_COMPILE_EXTRA_FLAGS =
@@@ -71,20 -70,12 +70,20 @@@ AUTOGENEL = loaddefs.el 
        cedet/ede/loaddefs.el \
        cedet/srecode/loaddefs.el
  
 +# Value of max-lisp-eval-depth when compiling initially.
 +# During bootstrapping the byte-compiler is run interpreted when compiling
 +# itself, and uses more stack than usual.
 +#
 +BIG_STACK_DEPTH = 1000
 +BIG_STACK_OPTS = --eval "(setq max-lisp-eval-depth $(BIG_STACK_DEPTH))"
 +
  # Files to compile before others during a bootstrap.  This is done to
  # speed up the bootstrap process.
  
  COMPILE_FIRST = \
        $(lisp)/emacs-lisp/bytecomp.elc \
        $(lisp)/emacs-lisp/byte-opt.elc \
 +      $(lisp)/emacs-lisp/macroexp.elc \
        $(lisp)/emacs-lisp/autoload.elc
  
  # The actual Emacs command run in the targets below.
@@@ -203,9 -194,7 +202,9 @@@ compile-onefile
        @echo Compiling $(THEFILE)
        @# Use byte-compile-refresh-preloaded to try and work around some of
        @# the most common bootstrapping problems.
 -      @$(emacs) -l bytecomp -f byte-compile-refresh-preloaded $(BYTE_COMPILE_EXTRA_FLAGS) -f batch-byte-compile $(THEFILE)
 +      @$(emacs) -l bytecomp.el -f byte-compile-refresh-preloaded \
 +              $(BIG_STACK_OPTS) $(BYTE_COMPILE_EXTRA_FLAGS) \
 +              -f batch-byte-compile $(THEFILE)
  
  # Files MUST be compiled one by one. If we compile several files in a
  # row (i.e., in the same instance of Emacs) we can't make sure that
  # cannot have prerequisites.
  .el.elc:
        @echo Compiling $<
 -      @$(emacs) $(BYTE_COMPILE_EXTRA_FLAGS) -f batch-byte-compile $<
 +      @$(emacs) $(BIG_STACK_OPTS) $(BYTE_COMPILE_EXTRA_FLAGS) \
 +              -f batch-byte-compile $<
  
  .PHONY: compile-first compile-main compile compile-always
  
index 24b762c9cb7cc975bcf554c85429f18e3a3a643d,0f4018dc8da059942a16fa5cd0f7ac7ebc3cff09..02107b0e11f0aa23dc8599aaa1e4d687bff3e01f
@@@ -1,7 -1,6 +1,6 @@@
  ;;; byte-opt.el --- the optimization passes of the emacs-lisp byte compiler
  
- ;; Copyright (C) 1991, 1994, 2000, 2001, 2002, 2003, 2004, 2005, 2006,
- ;;   2007, 2008, 2009, 2010  Free Software Foundation, Inc.
+ ;; Copyright (C) 1991, 1994, 2000-2011  Free Software Foundation, Inc.
  
  ;; Author: Jamie Zawinski <jwz@lucid.com>
  ;;    Hallvard Furuseth <hbf@ulrik.uio.no>
  (eval-when-compile (require 'cl))
  
  (defun byte-compile-log-lap-1 (format &rest args)
 -  (if (aref byte-code-vector 0)
 -      (error "The old version of the disassembler is loaded.  Reload new-bytecomp as well"))
 +;;   (if (aref byte-code-vector 0)
 +;;       (error "The old version of the disassembler is loaded.  Reload new-bytecomp as well"))
    (byte-compile-log-1
     (apply 'format format
       (let (c a)
                       (byte-code ,string ,(aref fn 2) ,(aref fn 3)))
                    (cdr form)))
          (if (eq (car-safe fn) 'lambda)
 -            (cons fn (cdr form))
 +            (macroexpand-all (cons fn (cdr form))
 +                             byte-compile-macro-environment)
            ;; Give up on inlining.
            form))))))
  
        ((>= bytedecomp-op byte-constant)
         (prog1 (- bytedecomp-op byte-constant) ;offset in opcode
           (setq bytedecomp-op byte-constant)))
 -      ((and (>= bytedecomp-op byte-constant2)
 -            (<= bytedecomp-op byte-goto-if-not-nil-else-pop))
 +      ((or (and (>= bytedecomp-op byte-constant2)
 +                  (<= bytedecomp-op byte-goto-if-not-nil-else-pop))
 +             (= bytedecomp-op byte-stack-set2))
         ;; Offset in next 2 bytes.
         (setq bytedecomp-ptr (1+ bytedecomp-ptr))
         (+ (aref bytedecomp-bytes bytedecomp-ptr)
            (progn (setq bytedecomp-ptr (1+ bytedecomp-ptr))
                   (lsh (aref bytedecomp-bytes bytedecomp-ptr) 8))))
        ((and (>= bytedecomp-op byte-listN)
 -            (<= bytedecomp-op byte-insertN))
 +            (<= bytedecomp-op byte-discardN))
         (setq bytedecomp-ptr (1+ bytedecomp-ptr)) ;offset in next byte
         (aref bytedecomp-bytes bytedecomp-ptr))))
  
             (if (= bytedecomp-ptr (1- length))
                 (setq bytedecomp-op nil)
               (setq offset (or endtag (setq endtag (byte-compile-make-tag)))
 -                   bytedecomp-op 'byte-goto))))
 +                   bytedecomp-op 'byte-goto)))
 +          ((eq bytedecomp-op 'byte-stack-set2)
 +           (setq bytedecomp-op 'byte-stack-set))
 +          ((and (eq bytedecomp-op 'byte-discardN) (>= offset #x80))
 +           ;; The top bit of the operand for byte-discardN is a flag,
 +           ;; saying whether the top-of-stack is preserved.  In
 +           ;; lapcode, we represent this by using a different opcode
 +           ;; (with the flag removed from the operand).
 +           (setq bytedecomp-op 'byte-discardN-preserve-tos)
 +           (setq offset (- offset #x80))))
        ;; lap = ( [ (pc . (op . arg)) ]* )
        (setq lap (cons (cons optr (cons bytedecomp-op (or offset 0)))
                      lap))
      byte-cdr-safe byte-cons byte-list1 byte-list2 byte-point byte-point-max
      byte-point-min byte-following-char byte-preceding-char
      byte-current-column byte-eolp byte-eobp byte-bolp byte-bobp
 -    byte-current-buffer byte-interactive-p))
 +    byte-current-buffer byte-interactive-p byte-stack-ref))
  
  (defconst byte-compile-side-effect-free-ops
    (nconc
       byte-eqlsign byte-gtr byte-lss byte-leq byte-geq byte-diff byte-negate
       byte-plus byte-max byte-min byte-mult byte-char-after byte-char-syntax
       byte-buffer-substring byte-string= byte-string< byte-nthcdr byte-elt
 -     byte-member byte-assq byte-quo byte-rem)
 +     byte-member byte-assq byte-quo byte-rem byte-vec-ref)
     byte-compile-side-effect-and-error-free-ops))
  
  ;; This crock is because of the way DEFVAR_BOOL variables work.
  ;; The variable `byte-boolean-vars' is now primitive and updated
  ;; automatically by DEFVAR_BOOL.
  
 +(defmacro byte-opt-update-stack-params (stack-adjust stack-depth lap0 rest lap)
 +  "...macro used by byte-optimize-lapcode..."
 +  `(progn
 +     (byte-compile-log-lap "Before %s  [depth = %s]" ,lap0 ,stack-depth)
 +     (cond ((eq (car ,lap0) 'TAG)
 +          ;; A tag can encode the expected stack depth.
 +          (when (cddr ,lap0)
 +            ;; First, check to see if our notion of the current stack
 +            ;; depth agrees with this tag.  We don't check at the
 +            ;; beginning of the function, because the presence of
 +            ;; lexical arguments means the first tag will have a
 +            ;; non-zero offset.
 +            (when (and (not (eq ,rest ,lap)) ; not at first insn
 +                       ,stack-depth   ; not just after a goto
 +                       (not (= (cddr ,lap0) ,stack-depth)))
 +              (error "Compiler error: optimizer is confused about %s:
 +  %s != %s at lapcode %s" ',stack-depth (cddr ,lap0) ,stack-depth ,lap0))
 +            ;; Now set out current depth from this tag
 +            (setq ,stack-depth (cddr ,lap0)))
 +          (setq ,stack-adjust 0))
 +         ((memq (car ,lap0) '(byte-goto byte-return))
 +          ;; These insns leave us in an unknown state
 +          (setq ,stack-adjust nil))
 +         ((car ,lap0)
 +          ;; Not a no-op, set ,stack-adjust for lap0.  ,stack-adjust will
 +          ;; be added to ,stack-depth at the end of the loop, so any code
 +          ;; that modifies the instruction sequence must adjust this too.
 +          (setq ,stack-adjust
 +                (byte-compile-stack-adjustment (car ,lap0) (cdr ,lap0)))))
 +     (byte-compile-log-lap "Before %s  [depth => %s, adj = %s]" ,lap0 ,stack-depth ,stack-adjust)
 +     ))
 +
  (defun byte-optimize-lapcode (lap &optional for-effect)
    "Simple peephole optimizer.  LAP is both modified and returned.
  If FOR-EFFECT is non-nil, the return value is assumed to be of no importance."
    (let (lap0
        lap1
        lap2
 +      stack-adjust
 +      stack-depth
 +      (initial-stack-depth
 +       (if (and lap (eq (car (car lap)) 'TAG))
 +           (cdr (cdr (car lap)))
 +         0))
        (keep-going 'first-time)
        (add-depth 0)
        rest tmp tmp2 tmp3
        (or (eq keep-going 'first-time)
          (byte-compile-log-lap "  ---- next pass"))
        (setq rest lap
 +          stack-depth initial-stack-depth
            keep-going nil)
        (while rest
        (setq lap0 (car rest)
              lap1 (nth 1 rest)
              lap2 (nth 2 rest))
  
 +      (byte-opt-update-stack-params stack-adjust stack-depth lap0 rest lap)
 +
        ;; You may notice that sequences like "dup varset discard" are
        ;; optimized but sequences like "dup varset TAG1: discard" are not.
        ;; You may be tempted to change this; resist that temptation.
              ((and (eq 'byte-discard (car lap1))
                    (memq (car lap0) side-effect-free))
               (setq keep-going t)
 -             (setq tmp (aref byte-stack+-info (symbol-value (car lap0))))
               (setq rest (cdr rest))
 -             (cond ((= tmp 1)
 +             (cond ((= stack-adjust 1)
                      (byte-compile-log-lap
                       "  %s discard\t-->\t<deleted>" lap0)
                      (setq lap (delq lap0 (delq lap1 lap))))
 -                   ((= tmp 0)
 +                   ((= stack-adjust 0)
                      (byte-compile-log-lap
                       "  %s discard\t-->\t<deleted> discard" lap0)
                      (setq lap (delq lap0 lap)))
 -                   ((= tmp -1)
 +                   ((= stack-adjust -1)
                      (byte-compile-log-lap
                       "  %s discard\t-->\tdiscard discard" lap0)
                      (setcar lap0 'byte-discard)
                      (setcdr lap0 0))
 -                   ((error "Optimizer error: too much on the stack"))))
 +                   ((error "Optimizer error: too much on the stack")))
 +             (setq stack-adjust (1- stack-adjust)))
              ;;
              ;; goto*-X X:  -->  X:
              ;;
              ;; const/dup varbind-X varref-X --> const/dup varbind-X const/dup
              ;; The latter two can enable other optimizations.
              ;;
 -            ((and (eq 'byte-varref (car lap2))
 -                  (eq (cdr lap1) (cdr lap2))
 -                  (memq (car lap1) '(byte-varset byte-varbind)))
 -             (if (and (setq tmp (memq (car (cdr lap2)) byte-boolean-vars))
 +            ((or (and (eq 'byte-varref (car lap2))
 +                      (eq (cdr lap1) (cdr lap2))
 +                      (memq (car lap1) '(byte-varset byte-varbind)))
 +                 (and (eq (car lap2) 'byte-stack-ref)
 +                      (eq (car lap1) 'byte-stack-set)
 +                      (eq (cdr lap1) (cdr lap2))))
 +             (if (and (eq 'byte-varref (car lap2))
 +                      (setq tmp (memq (car (cdr lap2)) byte-boolean-vars))
                        (not (eq (car lap0) 'byte-constant)))
                   nil
                 (setq keep-going t)
              ;;
              ((and (eq 'byte-dup (car lap0))
                    (eq 'byte-discard (car lap2))
 -                  (memq (car lap1) '(byte-varset byte-varbind)))
 +                  (memq (car lap1) '(byte-varset byte-varbind byte-stack-set byte-vec-set)))
               (byte-compile-log-lap "  dup %s discard\t-->\t%s" lap1 lap1)
               (setq keep-going t
 -                   rest (cdr rest))
 +                   rest (cdr rest)
 +                   stack-adjust -1)
               (setq lap (delq lap0 (delq lap2 lap))))
              ;;
              ;; not goto-X-if-nil              -->  goto-X-if-non-nil
                                'byte-goto-if-not-nil
                                'byte-goto-if-nil))
               (setq lap (delq lap0 lap))
 -             (setq keep-going t))
 +             (setq keep-going t
 +                   stack-adjust 0))
              ;;
              ;; goto-X-if-nil     goto-Y X:  -->  goto-Y-if-non-nil X:
              ;; goto-X-if-non-nil goto-Y X:  -->  goto-Y-if-nil     X:
                 (byte-compile-log-lap "  %s %s %s:\t-->\t%s %s:"
                                       lap0 lap1 lap2
                                       (cons inverse (cdr lap1)) lap2)
 -               (setq lap (delq lap0 lap))
 +               (setq lap (delq lap0 lap)
 +                     stack-adjust 0)
                 (setcar lap1 inverse)
                 (setq keep-going t)))
              ;;
                      (setq rest (cdr rest)
                            lap (delq lap0 (delq lap1 lap))))
                     (t
 -                    (if (memq (car lap1) byte-goto-always-pop-ops)
 -                        (progn
 -                          (byte-compile-log-lap "  %s %s\t-->\t%s"
 -                           lap0 lap1 (cons 'byte-goto (cdr lap1)))
 -                          (setq lap (delq lap0 lap)))
 -                      (byte-compile-log-lap "  %s %s\t-->\t%s" lap0 lap1
 -                       (cons 'byte-goto (cdr lap1))))
 +                    (byte-compile-log-lap "  %s %s\t-->\t%s"
 +                                          lap0 lap1
 +                                          (cons 'byte-goto (cdr lap1)))
 +                    (when (memq (car lap1) byte-goto-always-pop-ops)
 +                      (setq lap (delq lap0 lap)))
                      (setcar lap1 'byte-goto)))
 -             (setq keep-going t))
 +             (setq keep-going t
 +                   stack-adjust 0))
              ;;
              ;; varref-X varref-X  -->  varref-X dup
              ;; varref-X [dup ...] varref-X  -->  varref-X [dup ...] dup
              ;; because that would inhibit some goto optimizations; we
              ;; optimize the const-X case after all other optimizations.
              ;;
 -            ((and (eq 'byte-varref (car lap0))
 +            ((and (memq (car lap0) '(byte-varref byte-stack-ref))
                    (progn
 -                    (setq tmp (cdr rest))
 +                    (setq tmp (cdr rest) tmp2 0)
                      (while (eq (car (car tmp)) 'byte-dup)
 -                      (setq tmp (cdr tmp)))
 +                      (setq tmp (cdr tmp) tmp2 (1+ tmp2)))
                      t)
 -                  (eq (cdr lap0) (cdr (car tmp)))
 -                  (eq 'byte-varref (car (car tmp))))
 +                  (eq (car lap0) (car (car tmp)))
 +                  (eq (cdr lap0) (cdr (car tmp))))
               (if (memq byte-optimize-log '(t byte))
                   (let ((str ""))
                     (setq tmp2 (cdr rest))
               (setq keep-going t)
               (setcar (car tmp) 'byte-dup)
               (setcdr (car tmp) 0)
 -             (setq rest tmp))
 +             (setq rest tmp
 +                   stack-adjust (+ 2 tmp2)))
              ;;
              ;; TAG1: TAG2: --> TAG1: <deleted>
              ;; (and other references to TAG2 are replaced with TAG1)
               (byte-compile-log-lap "  %s %s\t-->\t%s %s" lap0 lap1 lap1 lap0)
               (setcar rest lap1)
               (setcar (cdr rest) lap0)
 -             (setq keep-going t))
 +             (setq keep-going t
 +                   stack-adjust 0))
              ;;
              ;; varbind-X unbind-N         -->  discard unbind-(N-1)
              ;; save-excursion unbind-N    -->  unbind-(N-1)
                   ""))
               (setq keep-going t))
              ;;
 +            ;; stack-ref-N  -->  dup    ; where N is TOS
 +            ;;
 +            ((and (eq (car lap0) 'byte-stack-ref)
 +                  (= (cdr lap0) (1- stack-depth)))
 +             (setcar lap0 'byte-dup)
 +             (setcdr lap0 nil)
 +             (setq keep-going t))
 +            ;;
              ;; goto*-X ... X: goto-Y  --> goto*-Y
              ;; goto-X ...  X: return  --> return
              ;;
                                            (cdr tmp))))
                      (setcdr lap1 (car (cdr tmp)))
                      (setq lap (delq lap0 lap))))
 -             (setq keep-going t))
 +             (setq keep-going t
 +                   stack-adjust 0))
              ;;
              ;; X: varref-Y    ...     varset-Y goto-X  -->
              ;; X: varref-Y Z: ... dup varset-Y goto-Z
              ;; (varset-X goto-BACK, BACK: varref-X --> copy the varref down.)
              ;; (This is so usual for while loops that it is worth handling).
              ;;
 -            ((and (eq (car lap1) 'byte-varset)
 +            ((and (memq (car lap1) '(byte-varset byte-stack-set))
                    (eq (car lap2) 'byte-goto)
                    (not (memq (cdr lap2) rest)) ;Backwards jump
                    (eq (car (car (setq tmp (cdr (memq (cdr lap2) lap)))))
 -                      'byte-varref)
 +                      (if (eq (car lap1) 'byte-varset) 'byte-varref 'byte-stack-ref))
                    (eq (cdr (car tmp)) (cdr lap1))
 -                  (not (memq (car (cdr lap1)) byte-boolean-vars)))
 +                  (not (and (eq (car lap1) 'byte-varref)
 +                            (memq (car (cdr lap1)) byte-boolean-vars))))
               ;;(byte-compile-log-lap "  Pulled %s to end of loop" (car tmp))
               (let ((newtag (byte-compile-make-tag)))
                 (byte-compile-log-lap
                                           byte-goto-if-not-nil
                                           byte-goto byte-goto))))
               )
 -             (setq keep-going t))
 +             (setq keep-going t
 +                   stack-adjust (and (not (eq (car lap0) 'byte-goto)) -1)))
              )
 +
 +      (setq stack-depth 
 +            (and stack-depth stack-adjust (+ stack-depth stack-adjust)))
        (setq rest (cdr rest)))
        )
 +
      ;; Cleanup stage:
      ;; Rebuild byte-compile-constants / byte-compile-variables.
      ;; Simple optimizations that would inhibit other optimizations if they
      ;;  need to do more than once.
      (setq byte-compile-constants nil
          byte-compile-variables nil)
 -    (setq rest lap)
 +    (setq rest lap
 +        stack-depth initial-stack-depth)
 +    (byte-compile-log-lap "  ---- final pass")
      (while rest
        (setq lap0 (car rest)
            lap1 (nth 1 rest))
 +      (byte-opt-update-stack-params stack-adjust stack-depth lap0 rest lap)
        (if (memq (car lap0) byte-constref-ops)
          (if (or (eq (car lap0) 'byte-constant)
                  (eq (car lap0) 'byte-constant2))
             (byte-compile-log-lap "  %s %s\t-->\t%s" lap0 lap1
                                   (cons 'byte-unbind
                                         (+ (cdr lap0) (cdr lap1))))
 -           (setq keep-going t)
             (setq lap (delq lap0 lap))
             (setcdr lap1 (+ (cdr lap1) (cdr lap0))))
 +          
 +          ;;
 +          ;; stack-set-M [discard/discardN ...]  -->  discardN-preserve-tos
 +          ;; stack-set-M [discard/discardN ...]  -->  discardN
 +          ;;
 +          ((and (eq (car lap0) 'byte-stack-set)
 +                (memq (car lap1) '(byte-discard byte-discardN))
 +                (progn
 +                  ;; See if enough discard operations follow to expose or
 +                  ;; destroy the value stored by the stack-set.
 +                  (setq tmp (cdr rest))
 +                  (setq tmp2 (- stack-depth 2 (cdr lap0)))
 +                  (setq tmp3 0)
 +                  (while (memq (car (car tmp)) '(byte-discard byte-discardN))
 +                    (if (eq (car (car tmp)) 'byte-discard)
 +                        (setq tmp3 (1+ tmp3))
 +                      (setq tmp3 (+ tmp3 (cdr (car tmp)))))
 +                    (setq tmp (cdr tmp)))
 +                  (>= tmp3 tmp2)))
 +           ;; Do the optimization
 +           (setq lap (delq lap0 lap))
 +           (cond ((= tmp2 tmp3)
 +                  ;; The value stored is the new TOS, so pop one more value
 +                  ;; (to get rid of the old value) using the TOS-preserving
 +                  ;; discard operator.
 +                  (setcar lap1 'byte-discardN-preserve-tos)
 +                  (setcdr lap1 (1+ tmp3)))
 +                 (t
 +                  ;; Otherwise, the value stored is lost, so just use a
 +                  ;; normal discard.
 +                  (setcar lap1 'byte-discardN)
 +                  (setcdr lap1 tmp3)))
 +           (setcdr (cdr rest) tmp)
 +           (setq stack-adjust 0)
 +           (byte-compile-log-lap "  %s [discard/discardN]...\t-->\t%s"
 +                                 lap0 lap1))
 +
 +          ;;
 +          ;; discard/discardN/discardN-preserve-tos-X discard/discardN-Y  -->
 +          ;; discardN-(X+Y)
 +          ;;
 +          ((and (memq (car lap0)
 +                      '(byte-discard
 +                        byte-discardN
 +                        byte-discardN-preserve-tos))
 +                (memq (car lap1) '(byte-discard byte-discardN)))
 +           (setq lap (delq lap0 lap))
 +           (byte-compile-log-lap
 +            "  %s %s\t-->\t(discardN %s)"
 +            lap0 lap1
 +            (+ (if (eq (car lap0) 'byte-discard) 1 (cdr lap0))
 +               (if (eq (car lap1) 'byte-discard) 1 (cdr lap1))))
 +           (setcdr lap1 (+ (if (eq (car lap0) 'byte-discard) 1 (cdr lap0))
 +                           (if (eq (car lap1) 'byte-discard) 1 (cdr lap1))))
 +           (setcar lap1 'byte-discardN)
 +           (setq stack-adjust 0))
 +
 +          ;;
 +          ;; discardN-preserve-tos-X discardN-preserve-tos-Y  -->
 +          ;; discardN-preserve-tos-(X+Y)
 +          ;;
 +          ((and (eq (car lap0) 'byte-discardN-preserve-tos)
 +                (eq (car lap1) 'byte-discardN-preserve-tos))
 +           (setq lap (delq lap0 lap))
 +           (setcdr lap1 (+ (cdr lap0) (cdr lap1)))
 +           (setq stack-adjust 0)
 +           (byte-compile-log-lap "  %s %s\t-->\t%s" lap0 lap1 (car rest)))
 +
 +          ;;
 +          ;; discardN-preserve-tos return  -->  return
 +          ;; dup return  -->  return
 +          ;; stack-set-N return  -->  return     ; where N is TOS-1
 +          ;;
 +          ((and (eq (car lap1) 'byte-return)
 +                (or (memq (car lap0) '(byte-discardN-preserve-tos byte-dup))
 +                    (and (eq (car lap0) 'byte-stack-set)
 +                         (= (cdr lap0) (- stack-depth 2)))))
 +           ;; the byte-code interpreter will pop the stack for us, so
 +           ;; we can just leave stuff on it
 +           (setq lap (delq lap0 lap))
 +           (setq stack-adjust 0)
 +           (byte-compile-log-lap "  %s %s\t-->\t%s" lap0 lap1 lap1))
 +
 +          ;;
 +          ;; dup stack-set-N return  -->  return     ; where N is TOS
 +          ;;
 +          ((and (eq (car lap0) 'byte-dup)
 +                (eq (car lap1) 'byte-stack-set)
 +                (eq (car (car (cdr (cdr rest)))) 'byte-return)
 +                (= (cdr lap1) (1- stack-depth)))
 +           (setq lap (delq lap0 (delq lap1 lap)))
 +           (setq rest (cdr rest))
 +           (setq stack-adjust 0)
 +           (byte-compile-log-lap "  dup %s return\t-->\treturn" lap1))
            )
 +
 +      (setq stack-depth 
 +          (and stack-depth stack-adjust (+ stack-depth stack-adjust)))
        (setq rest (cdr rest)))
 +
      (setq byte-compile-maxdepth (+ byte-compile-maxdepth add-depth)))
    lap)
  
index 82b5ed3367df1e8adb255a4dc67a1ab51dfbe232,199927d536ed262c94b4b8dc5289a3db79d38ec8..be3e1ed617c13234ab6b48a31475d9280d277621
@@@ -1,7 -1,6 +1,6 @@@
  ;;; bytecomp.el --- compilation of Lisp code into byte code
  
- ;; Copyright (C) 1985, 1986, 1987, 1992, 1994, 1998, 2000, 2001, 2002,
- ;;   2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
+ ;; Copyright (C) 1985-1987, 1992, 1994, 1998, 2000-2011
  ;;   Free Software Foundation, Inc.
  
  ;; Author: Jamie Zawinski <jwz@lucid.com>
  ;;     Some versions of `file' can be customized to recognize that.
  
  (require 'backquote)
 +(require 'macroexp)
  (eval-when-compile (require 'cl))
  
  (or (fboundp 'defsubst)
      ;; This really ought to be loaded already!
      (load "byte-run"))
  
 +;; We want to do (require 'byte-lexbind) when compiling, to avoid compilation
 +;; errors; however that file also wants to do (require 'bytecomp) for the
 +;; same reason.  Since we know it's OK to load byte-lexbind.el second, we
 +;; have that file require a feature that's provided before at the beginning
 +;; of this file, to avoid an infinite require loop.
 +;; `eval-when-compile' is defined in byte-run.el, so it must come after the
 +;; preceding load expression.
 +(provide 'bytecomp-preload)
 +(eval-when-compile (require 'byte-lexbind))
 +
 +;; The feature of compiling in a specific target Emacs version
 +;; has been turned off because compile time options are a bad idea.
 +(defmacro byte-compile-single-version () nil)
 +(defmacro byte-compile-version-cond (cond) cond)
 +
 +;; The crud you see scattered through this file of the form
 +;;   (or (and (boundp 'epoch::version) epoch::version)
 +;;      (string-lessp emacs-version "19"))
 +;; is because the Epoch folks couldn't be bothered to follow the
 +;; normal emacs version numbering convention.
 +
 +;; (if (byte-compile-version-cond
 +;;      (or (and (boundp 'epoch::version) epoch::version)
 +;;     (string-lessp emacs-version "19")))
 +;;     (progn
 +;;       ;; emacs-18 compatibility.
 +;;       (defvar baud-rate (baud-rate))       ;Define baud-rate if it's undefined
 +;;
 +;;       (if (byte-compile-single-version)
 +;;      (defmacro byte-code-function-p (x) "Emacs 18 doesn't have these." nil)
 +;;    (defun byte-code-function-p (x) "Emacs 18 doesn't have these." nil))
 +;;
 +;;       (or (and (fboundp 'member)
 +;;           ;; avoid using someone else's possibly bogus definition of this.
 +;;           (subrp (symbol-function 'member)))
 +;;      (defun member (elt list)
 +;;        "like memq, but uses equal instead of eq.  In v19, this is a subr."
 +;;        (while (and list (not (equal elt (car list))))
 +;;          (setq list (cdr list)))
 +;;        list))))
 +
 +
  (defgroup bytecomp nil
    "Emacs Lisp byte-compiler."
    :group 'lisp)
@@@ -439,18 -395,7 +438,18 @@@ specify different fields to sort on.
    :type '(choice (const name) (const callers) (const calls)
                 (const calls+callers) (const nil)))
  
 -(defvar byte-compile-debug nil)
 +;(defvar byte-compile-debug nil)
 +(defvar byte-compile-debug t)
 +(setq debug-on-error t)
 +
 +;; (defvar byte-compile-overwrite-file t
 +;;   "If nil, old .elc files are deleted before the new is saved, and .elc
 +;; files will have the same modes as the corresponding .el file.  Otherwise,
 +;; existing .elc files will simply be overwritten, and the existing modes
 +;; will not be changed.  If this variable is nil, then an .elc file which
 +;; is a symbolic link will be turned into a normal file, instead of the file
 +;; which the link points to being overwritten.")
 +
  (defvar byte-compile-constants nil
    "List of all constants encountered during compilation of this form.")
  (defvar byte-compile-variables nil
@@@ -470,13 -415,9 +469,13 @@@ This list lives partly on the stack."
  ;;     (byte-compiler-options . (lambda (&rest forms)
  ;;                           (apply 'byte-compiler-options-handler forms)))
      (eval-when-compile . (lambda (&rest body)
 -                         (list 'quote
 -                               (byte-compile-eval (byte-compile-top-level
 -                                                   (cons 'progn body))))))
 +                         (list
 +                          'quote
 +                          (byte-compile-eval
 +                            (byte-compile-top-level
 +                             (macroexpand-all
 +                              (cons 'progn body)
 +                              byte-compile-initial-macro-environment))))))
      (eval-and-compile . (lambda (&rest body)
                          (byte-compile-eval-before-compile (cons 'progn body))
                          (cons 'progn body))))
@@@ -509,14 -450,6 +508,14 @@@ defined with incorrect args."
  Used for warnings about calling a function that is defined during compilation
  but won't necessarily be defined when the compiled file is loaded.")
  
 +;; Variables for lexical binding
 +(defvar byte-compile-lexical-environment nil
 +  "The current lexical environment.")
 +(defvar byte-compile-current-heap-environment nil
 +  "If non-nil, a descriptor for the current heap-allocated lexical environment.")
 +(defvar byte-compile-current-num-closures 0
 +  "The number of lexical closures that close over `byte-compile-current-heap-environment'.")
 +
  (defvar byte-compile-tag-number 0)
  (defvar byte-compile-output nil
    "Alist describing contents to put in byte code string.
@@@ -562,10 -495,11 +561,10 @@@ Each element is (INDEX . VALUE)"
      (put 'byte-stack+-info 'tmp-compile-time-value nil)))
  
  
 -;; unused: 0-7
 -
  ;; These opcodes are special in that they pack their argument into the
  ;; opcode word.
  ;;
 +(byte-defop   0  1 byte-stack-ref "for stack reference")
  (byte-defop   8  1 byte-varref        "for variable reference")
  (byte-defop  16 -1 byte-varset        "for setting a variable")
  (byte-defop  24 -1 byte-varbind       "for binding a variable")
@@@ -727,28 -661,11 +726,28 @@@ otherwise pop it"
  (byte-defop 168  0 byte-integerp)
  
  ;; unused: 169-174
 +
  (byte-defop 175 nil byte-listN)
  (byte-defop 176 nil byte-concatN)
  (byte-defop 177 nil byte-insertN)
  
 -;; unused: 178-191
 +(byte-defop 178 -1 byte-stack-set)    ; stack offset in following one byte
 +(byte-defop 179 -1 byte-stack-set2)   ; stack offset in following two bytes
 +(byte-defop 180  1 byte-vec-ref)      ; vector offset in following one byte
 +(byte-defop 181 -1 byte-vec-set)      ; vector offset in following one byte
 +
 +;; if (following one byte & 0x80) == 0
 +;;    discard (following one byte & 0x7F) stack entries
 +;; else
 +;;    discard (following one byte & 0x7F) stack entries _underneath_ the top of stack
 +;;    (that is, if the operand = 0x83,  ... X Y Z T  =>  ... T)
 +(byte-defop 182 nil byte-discardN)
 +;; `byte-discardN-preserve-tos' is a pseudo-op that gets turned into
 +;; `byte-discardN' with the high bit in the operand set (by
 +;; `byte-compile-lapcode').
 +(defconst byte-discardN-preserve-tos byte-discardN)
 +
 +;; unused: 182-191
  
  (byte-defop 192  1 byte-constant      "for reference to a constant")
  ;; codes 193-255 are consumed by byte-constant.
  ;; front of the constants-vector than the constant-referencing instructions.
  ;; Also, this lets us notice references to free variables.
  
 +(defmacro byte-compile-push-bytecodes (&rest args)
 +  "Push BYTE... onto BYTES, and increment PC by the number of bytes pushed.
 +ARGS is of the form (BYTE... BYTES PC), where BYTES and PC are variable names.
 +BYTES and PC are updated after evaluating all the arguments."
 +  (let ((byte-exprs (butlast args 2))
 +      (bytes-var (car (last args 2)))
 +      (pc-var (car (last args))))
 +    `(setq ,bytes-var ,(if (null (cdr byte-exprs))
 +                         `(cons ,@byte-exprs ,bytes-var)
 +                       `(nconc (list ,@(reverse byte-exprs)) ,bytes-var))
 +         ,pc-var (+ ,(length byte-exprs) ,pc-var))))
 +
 +(defmacro byte-compile-push-bytecode-const2 (opcode const2 bytes pc)
 +  "Push OPCODE and the two-byte constant CONST2 onto BYTES, and add 3 to PC.
 +CONST2 may be evaulated multiple times."
 +  `(byte-compile-push-bytecodes ,opcode (logand ,const2 255) (lsh ,const2 -8)
 +                              ,bytes ,pc))
 +
  (defun byte-compile-lapcode (lap)
    "Turns lapcode into bytecode.  The lapcode is destroyed."
    ;; Lapcode modifications: changes the ID of a tag to be the tag's PC.
    (let ((pc 0)                        ; Program counter
        op off                  ; Operation & offset
 +      opcode                  ; numeric value of OP
        (bytes '())             ; Put the output bytes here
 -      (patchlist nil))        ; List of tags and goto's to patch
 -    (while lap
 -      (setq op (car (car lap))
 -          off (cdr (car lap)))
 +      (patchlist nil))        ; List of gotos to patch
 +    (dolist (lap-entry lap)
 +      (setq op (car lap-entry)
 +          off (cdr lap-entry))
        (cond ((not (symbolp op))
             (error "Non-symbolic opcode `%s'" op))
            ((eq op 'TAG)
 -           (setcar off pc)
 -           (setq patchlist (cons off patchlist)))
 -          ((memq op byte-goto-ops)
 -           (setq pc (+ pc 3))
 -           (setq bytes (cons (cons pc (cdr off))
 -                             (cons nil
 -                                   (cons (symbol-value op) bytes))))
 -           (setq patchlist (cons bytes patchlist)))
 +           (setcar off pc))
 +          ((null op)
 +           ;; a no-op added by `byte-compile-delay-out'
 +           (unless (zerop off)
 +             (error
 +              "Placeholder added by `byte-compile-delay-out' not filled in.")
 +             ))
            (t
 -           (setq bytes
 -                 (cond ((cond ((consp off)
 -                               ;; Variable or constant reference
 -                               (setq off (cdr off))
 -                               (eq op 'byte-constant)))
 -                        (cond ((< off byte-constant-limit)
 -                               (setq pc (1+ pc))
 -                               (cons (+ byte-constant off) bytes))
 -                              (t
 -                               (setq pc (+ 3 pc))
 -                               (cons (lsh off -8)
 -                                     (cons (logand off 255)
 -                                           (cons byte-constant2 bytes))))))
 -                       ((<= byte-listN (symbol-value op))
 -                        (setq pc (+ 2 pc))
 -                        (cons off (cons (symbol-value op) bytes)))
 -                       ((< off 6)
 -                        (setq pc (1+ pc))
 -                        (cons (+ (symbol-value op) off) bytes))
 -                       ((< off 256)
 -                        (setq pc (+ 2 pc))
 -                        (cons off (cons (+ (symbol-value op) 6) bytes)))
 -                       (t
 -                        (setq pc (+ 3 pc))
 -                        (cons (lsh off -8)
 -                              (cons (logand off 255)
 -                                    (cons (+ (symbol-value op) 7)
 -                                          bytes))))))))
 -      (setq lap (cdr lap)))
 +           (if (eq op 'byte-discardN-preserve-tos)
 +               ;; byte-discardN-preserve-tos is a psuedo op, which is actually
 +               ;; the same as byte-discardN with a modified argument
 +               (setq opcode byte-discardN)
 +             (setq opcode (symbol-value op)))
 +           (cond ((memq op byte-goto-ops)
 +                  ;; goto
 +                  (byte-compile-push-bytecodes opcode nil (cdr off) bytes pc)
 +                  (push bytes patchlist)) 
 +                 ((and (consp off)
 +                       ;; Variable or constant reference
 +                       (progn (setq off (cdr off))
 +                              (eq op 'byte-constant)))
 +                  ;; constant ref
 +                  (if (< off byte-constant-limit)
 +                      (byte-compile-push-bytecodes (+ byte-constant off)
 +                                                   bytes pc)
 +                    (byte-compile-push-bytecode-const2 byte-constant2 off
 +                                                       bytes pc)))
 +                 ((and (= opcode byte-stack-set)
 +                       (> off 255))
 +                  ;; Use the two-byte version of byte-stack-set if the
 +                  ;; offset is too large for the normal version.
 +                  (byte-compile-push-bytecode-const2 byte-stack-set2 off
 +                                                     bytes pc))
 +                 ((and (>= opcode byte-listN)
 +                       (< opcode byte-discardN))
 +                  ;; These insns all put their operand into one extra byte.
 +                  (byte-compile-push-bytecodes opcode off bytes pc))
 +                 ((= opcode byte-discardN)
 +                  ;; byte-discardN is wierd in that it encodes a flag in the
 +                  ;; top bit of its one-byte argument.  If the argument is
 +                  ;; too large to fit in 7 bits, the opcode can be repeated.
 +                  (let ((flag (if (eq op 'byte-discardN-preserve-tos) #x80 0)))
 +                    (while (> off #x7f)
 +                      (byte-compile-push-bytecodes opcode (logior #x7f flag) bytes pc)
 +                      (setq off (- off #x7f)))
 +                    (byte-compile-push-bytecodes opcode (logior off flag) bytes pc)))
 +                 ((null off)
 +                  ;; opcode that doesn't use OFF
 +                  (byte-compile-push-bytecodes opcode bytes pc))
 +                 ;; The following three cases are for the special
 +                 ;; insns that encode their operand into 0, 1, or 2
 +                 ;; extra bytes depending on its magnitude.
 +                 ((< off 6)
 +                  (byte-compile-push-bytecodes (+ opcode off) bytes pc))
 +                 ((< off 256)
 +                  (byte-compile-push-bytecodes (+ opcode 6) off bytes pc))
 +                 (t
 +                  (byte-compile-push-bytecode-const2 (+ opcode 7) off
 +                                                     bytes pc))))))
      ;;(if (not (= pc (length bytes)))
      ;;    (error "Compiler error: pc mismatch - %s %s" pc (length bytes)))
 -    ;; Patch PC into jumps
 -    (let (bytes)
 -      (while patchlist
 -      (setq bytes (car patchlist))
 -      (cond ((atom (car bytes)))      ; Tag
 -            (t                        ; Absolute jump
 -             (setq pc (car (cdr (car bytes))))        ; Pick PC from tag
 -             (setcar (cdr bytes) (logand pc 255))
 -             (setcar bytes (lsh pc -8))
 -               ;; FIXME: Replace this by some workaround.
 -               (if (> (car bytes) 255) (error "Bytecode overflow"))))
 -      (setq patchlist (cdr patchlist))))
 +
 +    ;; Patch tag PCs into absolute jumps
 +    (dolist (bytes-tail patchlist)
 +      (setq pc (caar bytes-tail))     ; Pick PC from goto's tag
 +      (setcar (cdr bytes-tail) (logand pc 255))
 +      (setcar bytes-tail (lsh pc -8))
 +      ;; FIXME: Replace this by some workaround.
 +      (if (> (car bytes) 255) (error "Bytecode overflow")))
 +
      (apply 'unibyte-string (nreverse bytes))))
  
  \f
@@@ -2177,9 -2057,9 +2176,9 @@@ list that represents a doc string refer
                          ;; to objects already output
                          ;; (for instance, gensyms in the arg list).
                          (let (non-nil)
-                           (dotimes (i (length print-number-table))
-                             (if (aref print-number-table i)
-                                 (setq non-nil t)))
+                           (when (hash-table-p print-number-table)
+                             (maphash (lambda (k v) (if v (setq non-nil t)))
+                                      print-number-table))
                            (not non-nil)))
                     ;; Output the byte code and constants specially
                     ;; for lazy dynamic loading.
  (defun byte-compile-file-form (form)
    (let ((byte-compile-current-form nil)       ; close over this for warnings.
        bytecomp-handler)
 -    (cond
 -     ((not (consp form))
 -      (byte-compile-keep-pending form))
 -     ((and (symbolp (car form))
 -         (setq bytecomp-handler (get (car form) 'byte-hunk-handler)))
 -      (cond ((setq form (funcall bytecomp-handler form))
 -           (byte-compile-flush-pending)
 -           (byte-compile-output-file-form form))))
 -     ((eq form (setq form (macroexpand form byte-compile-macro-environment)))
 -      (byte-compile-keep-pending form))
 -     (t
 -      (byte-compile-file-form form)))))
 +    (setq form (macroexpand-all form byte-compile-macro-environment))
 +    (cond ((not (consp form))
 +         (byte-compile-keep-pending form))
 +        ((and (symbolp (car form))
 +              (setq bytecomp-handler (get (car form) 'byte-hunk-handler)))
 +         (cond ((setq form (funcall bytecomp-handler form))
 +                (byte-compile-flush-pending)
 +                (byte-compile-output-file-form form))))
 +        (t
 +         (byte-compile-keep-pending form)))))
  
  ;; Functions and variables with doc strings must be output separately,
  ;; so make-docfile can recognise them.  Most other things can be output
      (setq byte-compile-current-form (nth 1 form))
      (byte-compile-warn "defsubst `%s' was used before it was defined"
                       (nth 1 form)))
 -  (byte-compile-file-form
 -   (macroexpand form byte-compile-macro-environment))
 +  (byte-compile-file-form form)
    ;; Return nil so the form is not output twice.
    nil)
  
@@@ -2585,12 -2468,6 +2584,12 @@@ If FORM is a lambda or a macro, byte-co
        (if macro
          (setq fun (cdr fun)))
        (cond ((eq (car-safe fun) 'lambda)
 +           ;; expand macros
 +           (setq fun
 +                 (macroexpand-all fun
 +                                  byte-compile-initial-macro-environment))
 +           ;; get rid of the `function' quote added by the `lambda' macro
 +           (setq fun (cadr fun))
             (setq fun (if macro
                           (cons 'macro (byte-compile-lambda fun))
                         (byte-compile-lambda fun)))
        (setq list (cdr list)))))
  
  
 +(autoload 'byte-compile-make-lambda-lexenv "byte-lexbind")
 +
  ;; Byte-compile a lambda-expression and return a valid function.
  ;; The value is usually a compiled function but may be the original
  ;; lambda-expression.
             (byte-compile-warn "malformed interactive spec: %s"
                                (prin1-to-string bytecomp-int)))))
      ;; Process the body.
 -    (let ((compiled (byte-compile-top-level
 -                   (cons 'progn bytecomp-body) nil 'lambda)))
 +    (let* ((byte-compile-lexical-environment
 +          ;; If doing lexical binding, push a new lexical environment
 +          ;; containing the args and any closed-over variables.
 +          (and lexical-binding
 +               (byte-compile-make-lambda-lexenv
 +                fun
 +                byte-compile-lexical-environment))) 
 +         (is-closure
 +          ;; This is true if we should be making a closure instead of
 +          ;; a simple lambda (because some variables from the
 +          ;; containing lexical environment are closed over).
 +          (and lexical-binding
 +               (byte-compile-closure-initial-lexenv-p
 +                byte-compile-lexical-environment)))
 +         (byte-compile-current-heap-environment nil)
 +         (byte-compile-current-num-closures 0)
 +         (compiled
 +          (byte-compile-top-level (cons 'progn bytecomp-body) nil 'lambda)))
        ;; Build the actual byte-coded function.
        (if (eq 'byte-code (car-safe compiled))
 -        (apply 'make-byte-code
 -               (append (list bytecomp-arglist)
 -                       ;; byte-string, constants-vector, stack depth
 -                       (cdr compiled)
 -                       ;; optionally, the doc string.
 -                       (if (or bytecomp-doc bytecomp-int)
 -                           (list bytecomp-doc))
 -                       ;; optionally, the interactive spec.
 -                       (if bytecomp-int
 -                           (list (nth 1 bytecomp-int)))))
 +        (let ((code
 +               (apply 'make-byte-code
 +                      (append (list bytecomp-arglist)
 +                              ;; byte-string, constants-vector, stack depth
 +                              (cdr compiled)
 +                              ;; optionally, the doc string.
 +                              (if (or bytecomp-doc bytecomp-int
 +                                      lexical-binding)
 +                                  (list bytecomp-doc))
 +                              ;; optionally, the interactive spec.
 +                              (if (or bytecomp-int lexical-binding)
 +                                  (list (nth 1 bytecomp-int)))
 +                              (if lexical-binding
 +                                  '(t))))))
 +          (if is-closure
 +              (cons 'closure code)
 +            code))
        (setq compiled
              (nconc (if bytecomp-int (list bytecomp-int))
                     (cond ((eq (car-safe compiled) 'progn) (cdr compiled))
                                   (bytecomp-body (list nil))))
                 compiled))))))
  
 +(defun byte-compile-closure-code-p (code)
 +  (eq (car-safe code) 'closure))
 +
 +(defun byte-compile-make-closure (code)
 +  ;; A real closure requires that the constant be curried with an
 +  ;; environment vector to make a closure object.
 +  (if for-effect
 +      (setq for-effect nil)
 +    (byte-compile-push-constant 'curry)
 +    (byte-compile-push-constant code)
 +    (byte-compile-lexical-variable-ref byte-compile-current-heap-environment)
 +    (byte-compile-out 'byte-call 2)))
 +
 +(defun byte-compile-closure (form &optional add-lambda)
 +  (let ((code (byte-compile-lambda form add-lambda)))
 +    (if (byte-compile-closure-code-p code)
 +      (byte-compile-make-closure code)
 +      ;; A simple lambda is just a constant
 +      (byte-compile-constant code))))
 +
  (defun byte-compile-constants-vector ()
    ;; Builds the constants-vector from the current variables and constants.
    ;;   This modifies the constants from (const . nil) to (const . offset).
        (byte-compile-depth 0)
        (byte-compile-maxdepth 0)
        (byte-compile-output nil))
 -     (if (memq byte-optimize '(t source))
 -       (setq form (byte-optimize-form form for-effect)))
 -     (while (and (eq (car-safe form) 'progn) (null (cdr (cdr form))))
 -       (setq form (nth 1 form)))
 -     (if (and (eq 'byte-code (car-safe form))
 -            (not (memq byte-optimize '(t byte)))
 -            (stringp (nth 1 form)) (vectorp (nth 2 form))
 -            (natnump (nth 3 form)))
 -       form
 -       (byte-compile-form form for-effect)
 -       (byte-compile-out-toplevel for-effect output-type))))
 +    (if (memq byte-optimize '(t source))
 +      (setq form (byte-optimize-form form for-effect)))
 +    (while (and (eq (car-safe form) 'progn) (null (cdr (cdr form))))
 +      (setq form (nth 1 form)))
 +    (if (and (eq 'byte-code (car-safe form))
 +           (not (memq byte-optimize '(t byte)))
 +           (stringp (nth 1 form)) (vectorp (nth 2 form))
 +           (natnump (nth 3 form)))
 +      form
 +      ;; Set up things for a lexically-bound function
 +      (when (and lexical-binding (eq output-type 'lambda))
 +      ;; See how many arguments there are, and set the current stack depth
 +      ;; accordingly
 +      (dolist (var byte-compile-lexical-environment)
 +        (when (byte-compile-lexvar-on-stack-p var)
 +          (setq byte-compile-depth (1+ byte-compile-depth))))
 +      ;; If there are args, output a tag to record the initial
 +      ;; stack-depth for the optimizer
 +      (when (> byte-compile-depth 0)
 +        (byte-compile-out-tag (byte-compile-make-tag)))
 +      ;; If this is the top-level of a lexically bound lambda expression,
 +      ;; perhaps some parameters on stack need to be copied into a heap
 +      ;; environment, so check for them, and do so if necessary.
 +      (let ((lforminfo (byte-compile-make-lforminfo)))
 +        ;; Add any lexical variable that's on the stack to the analysis set.
 +        (dolist (var byte-compile-lexical-environment)
 +          (when (byte-compile-lexvar-on-stack-p var)
 +            (byte-compile-lforminfo-add-var lforminfo (car var) t)))
 +        ;; Analyze the body
 +        (unless (null (byte-compile-lforminfo-vars lforminfo))
 +          (byte-compile-lforminfo-analyze lforminfo form nil nil))
 +        ;; If the analysis revealed some argument need to be in a heap
 +        ;; environment (because they're closed over by an embedded
 +        ;; lambda), put them there.
 +        (setq byte-compile-lexical-environment
 +              (nconc (byte-compile-maybe-push-heap-environment lforminfo)
 +                     byte-compile-lexical-environment))
 +        (dolist (arginfo (byte-compile-lforminfo-vars lforminfo))
 +          (when (byte-compile-lvarinfo-closed-over-p arginfo)
 +            (byte-compile-bind (car arginfo)
 +                               byte-compile-lexical-environment
 +                               lforminfo)))))
 +      ;; Now compile FORM
 +      (byte-compile-form form for-effect)
 +      (byte-compile-out-toplevel for-effect output-type))))
  
  (defun byte-compile-out-toplevel (&optional for-effect output-type)
    (if for-effect
  
  ;; Given BYTECOMP-BODY, compile it and return a new body.
  (defun byte-compile-top-level-body (bytecomp-body &optional for-effect)
 +  ;; FIXME: lexbind.  Check all callers!
    (setq bytecomp-body
        (byte-compile-top-level (cons 'progn bytecomp-body) for-effect t))
    (cond ((eq (car-safe bytecomp-body) 'progn)
  ;; (Use byte-compile-form-do-effect to reset the for-effect flag too.)
  ;;
  (defun byte-compile-form (form &optional for-effect)
 -  (setq form (macroexpand form byte-compile-macro-environment))
    (cond ((not (consp form))
         (cond ((or (not (symbolp form)) (byte-compile-const-symbol-p form))
                (when (symbolp form)
                (when (symbolp form)
                  (byte-compile-set-symbol-position form))
                (setq for-effect nil))
 -             (t (byte-compile-variable-ref 'byte-varref form))))
 +             (t
 +              (byte-compile-variable-ref form))))
        ((symbolp (car form))
         (let* ((bytecomp-fn (car form))
                (bytecomp-handler (get bytecomp-fn 'byte-compile)))
@@@ -3075,98 -2872,44 +3074,98 @@@ That command is designed for interactiv
    (mapc 'byte-compile-form (cdr form))        ; wasteful, but faster.
    (byte-compile-out 'byte-call (length (cdr form))))
  
 -(defun byte-compile-variable-ref (base-op bytecomp-var)
 -  (when (symbolp bytecomp-var)
 -    (byte-compile-set-symbol-position bytecomp-var))
 -  (if (or (not (symbolp bytecomp-var))
 -        (byte-compile-const-symbol-p bytecomp-var
 -                                     (not (eq base-op 'byte-varref))))
 -      (if (byte-compile-warning-enabled-p 'constants)
 -        (byte-compile-warn
 -         (cond ((eq base-op 'byte-varbind) "attempt to let-bind %s `%s'")
 -               ((eq base-op 'byte-varset) "variable assignment to %s `%s'")
 -               (t "variable reference to %s `%s'"))
 -         (if (symbolp bytecomp-var) "constant" "nonvariable")
 -         (prin1-to-string bytecomp-var)))
 -    (and (get bytecomp-var 'byte-obsolete-variable)
 -       (not (memq bytecomp-var byte-compile-not-obsolete-vars))
 -       (byte-compile-warn-obsolete bytecomp-var))
 -    (if (eq base-op 'byte-varbind)
 -      (push bytecomp-var byte-compile-bound-variables)
 -      (or (not (byte-compile-warning-enabled-p 'free-vars))
 -        (boundp bytecomp-var)
 -        (memq bytecomp-var byte-compile-bound-variables)
 -        (if (eq base-op 'byte-varset)
 -            (or (memq bytecomp-var byte-compile-free-assignments)
 -                (progn
 -                  (byte-compile-warn "assignment to free variable `%s'"
 -                                     bytecomp-var)
 -                  (push bytecomp-var byte-compile-free-assignments)))
 -          (or (memq bytecomp-var byte-compile-free-references)
 -              (progn
 -                (byte-compile-warn "reference to free variable `%s'"
 -                                   bytecomp-var)
 -                (push bytecomp-var byte-compile-free-references)))))))
 -  (let ((tmp (assq bytecomp-var byte-compile-variables)))
 +(defun byte-compile-check-variable (var &optional binding)
 +  "Do various error checks before a use of the variable VAR.
 +If BINDING is non-nil, VAR is being bound."
 +  (when (symbolp var)
 +    (byte-compile-set-symbol-position var))
 +  (cond ((or (not (symbolp var)) (byte-compile-const-symbol-p var))
 +       (when (byte-compile-warning-enabled-p 'constants)
 +         (byte-compile-warn (if binding
 +                                "attempt to let-bind %s `%s`"
 +                              "variable reference to %s `%s'")
 +                            (if (symbolp var) "constant" "nonvariable")
 +                            (prin1-to-string var))))
 +      ((and (get var 'byte-obsolete-variable)
 +            (not (memq var byte-compile-not-obsolete-vars)))
 +       (byte-compile-warn-obsolete var))))
 +
 +(defsubst byte-compile-dynamic-variable-op (base-op var)
 +  (let ((tmp (assq var byte-compile-variables)))
      (unless tmp
 -      (setq tmp (list bytecomp-var))
 +      (setq tmp (list var))
        (push tmp byte-compile-variables))
      (byte-compile-out base-op tmp)))
  
 +(defun byte-compile-dynamic-variable-bind (var)
 +  "Generate code to bind the lexical variable VAR to the top-of-stack value."
 +  (byte-compile-check-variable var t)
 +  (when (byte-compile-warning-enabled-p 'free-vars)
 +    (push var byte-compile-bound-variables))
 +  (byte-compile-dynamic-variable-op 'byte-varbind var))
 +
 +;; This is used when it's know that VAR _definitely_ has a lexical
 +;; binding, and no error-checking should be done.
 +(defun byte-compile-lexical-variable-ref (var)
 +  "Generate code to push the value of the lexical variable VAR on the stack."
 +  (let ((binding (assq var byte-compile-lexical-environment)))
 +    (when (null binding)
 +      (error "Lexical binding not found for `%s'" var))
 +    (if (byte-compile-lexvar-on-stack-p binding)
 +      ;; On the stack
 +      (byte-compile-stack-ref (byte-compile-lexvar-offset binding))
 +      ;; In a heap environment vector; first push the vector on the stack
 +      (byte-compile-lexical-variable-ref
 +       (byte-compile-lexvar-environment binding))
 +      ;; Now get the value from it
 +      (byte-compile-out 'byte-vec-ref (byte-compile-lexvar-offset binding)))))
 +
 +(defun byte-compile-variable-ref (var)
 +  "Generate code to push the value of the variable VAR on the stack."
 +  (byte-compile-check-variable var)
 +  (let ((lex-binding (assq var byte-compile-lexical-environment)))
 +    (if lex-binding
 +      ;; VAR is lexically bound
 +      (if (byte-compile-lexvar-on-stack-p lex-binding)
 +          ;; On the stack
 +          (byte-compile-stack-ref (byte-compile-lexvar-offset lex-binding))
 +        ;; In a heap environment vector
 +        (byte-compile-lexical-variable-ref
 +         (byte-compile-lexvar-environment lex-binding))
 +        (byte-compile-out 'byte-vec-ref 
 +                          (byte-compile-lexvar-offset lex-binding)))
 +      ;; VAR is dynamically bound
 +      (unless (or (not (byte-compile-warning-enabled-p 'free-vars))
 +                (boundp var)
 +                (memq var byte-compile-bound-variables)
 +                (memq var byte-compile-free-references))
 +      (byte-compile-warn "reference to free variable `%s'" var)
 +      (push var byte-compile-free-references))
 +      (byte-compile-dynamic-variable-op 'byte-varref var))))
 +
 +(defun byte-compile-variable-set (var)
 +  "Generate code to set the variable VAR from the top-of-stack value."
 +  (byte-compile-check-variable var)
 +  (let ((lex-binding (assq var byte-compile-lexical-environment)))
 +    (if lex-binding
 +      ;; VAR is lexically bound
 +      (if (byte-compile-lexvar-on-stack-p lex-binding)
 +          ;; On the stack
 +          (byte-compile-stack-set (byte-compile-lexvar-offset lex-binding))
 +        ;; In a heap environment vector
 +        (byte-compile-lexical-variable-ref
 +         (byte-compile-lexvar-environment lex-binding))
 +        (byte-compile-out 'byte-vec-set
 +                          (byte-compile-lexvar-offset lex-binding)))
 +      ;; VAR is dynamically bound
 +      (unless (or (not (byte-compile-warning-enabled-p 'free-vars))
 +                (boundp var)
 +                (memq var byte-compile-bound-variables)
 +                (memq var byte-compile-free-assignments))
 +      (byte-compile-warn "assignment to free variable `%s'" var)
 +      (push var byte-compile-free-assignments))
 +      (byte-compile-dynamic-variable-op 'byte-varset var))))
 +
  (defmacro byte-compile-get-constant (const)
    `(or (if (stringp ,const)
           ;; In a string constant, treat properties as significant.
    (let ((for-effect nil))
      (inline (byte-compile-constant const))))
  
 +(defun byte-compile-push-unknown-constant (&optional id)
 +  "Generate code to push a `constant' who's value isn't known yet.
 +A tag is returned which may then later be passed to
 +`byte-compile-resolve-unknown-constant' to finalize the value.
 +The optional argument ID is a tag returned by an earlier call to
 +`byte-compile-push-unknown-constant', in which case the same constant is
 +pushed again."
 +  (unless id
 +    (setq id (list (make-symbol "unknown")))
 +    (push id byte-compile-constants))
 +  (byte-compile-out 'byte-constant id)
 +  id)
 +
 +(defun byte-compile-resolve-unknown-constant (id value)
 +  "Give an `unknown constant' a value.
 +ID is the tag returned by `byte-compile-push-unknown-constant'.  and VALUE
 +is the value it should have."
 +  (setcar id value))
 +
  \f
  ;; Compile those primitive ordinary functions
  ;; which have special byte codes just for speed.
@@@ -3415,39 -3139,8 +3414,39 @@@ If it is nil, then the handler is \"byt
  (defun byte-compile-noop (form)
    (byte-compile-constant nil))
  
 -(defun byte-compile-discard ()
 -  (byte-compile-out 'byte-discard 0))
 +(defun byte-compile-discard (&optional num preserve-tos)
 +  "Output byte codes to discard the NUM entries at the top of the stack (NUM defaults to 1).
 +If PRESERVE-TOS is non-nil, preserve the top-of-stack value, as if it were
 +popped before discarding the num values, and then pushed back again after
 +discarding."
 +  (if (and (null num) (not preserve-tos))
 +      ;; common case
 +      (byte-compile-out 'byte-discard)
 +    ;; general case
 +    (unless num
 +      (setq num 1))
 +    (when (and preserve-tos (> num 0))
 +      ;; Preserve the top-of-stack value by writing it directly to the stack
 +      ;; location which will be at the top-of-stack after popping.
 +      (byte-compile-stack-set (1- (- byte-compile-depth num)))
 +      ;; Now we actually discard one less value, since we want to keep
 +      ;; the eventual TOS
 +      (setq num (1- num)))
 +    (while (> num 0)
 +      (byte-compile-out 'byte-discard)
 +      (setq num (1- num)))))
 +
 +(defun byte-compile-stack-ref (stack-pos)
 +  "Output byte codes to push the value at position STACK-POS in the stack, on the top of the stack."
 +  (if (= byte-compile-depth (1+ stack-pos))
 +      ;; A simple optimization
 +      (byte-compile-out 'byte-dup)
 +    ;; normal case
 +    (byte-compile-out 'byte-stack-ref stack-pos)))
 +
 +(defun byte-compile-stack-set (stack-pos)
 +  "Output byte codes to store the top-of-stack value at position STACK-POS in the stack."
 +  (byte-compile-out 'byte-stack-set stack-pos))
  
  
  ;; Compile a function that accepts one or more args and is right-associative.
       the syntax (function (lambda (...) ...)) instead.")))))
    (byte-compile-two-args form))
  
 -(defun byte-compile-funarg (form)
 -  ;; (mapcar '(lambda (x) ..) ..) ==> (mapcar (function (lambda (x) ..)) ..)
 -  ;; for cases where it's guaranteed that first arg will be used as a lambda.
 -  (byte-compile-normal-call
 -   (let ((fn (nth 1 form)))
 -     (if (and (eq (car-safe fn) 'quote)
 -            (eq (car-safe (nth 1 fn)) 'lambda))
 -       (cons (car form)
 -             (cons (cons 'function (cdr fn))
 -                   (cdr (cdr form))))
 -       form))))
 -
 -(defun byte-compile-funarg-2 (form)
 -  ;; (sort ... '(lambda (x) ..)) ==> (sort ... (function (lambda (x) ..)))
 -  ;; for cases where it's guaranteed that second arg will be used as a lambda.
 -  (byte-compile-normal-call
 -   (let ((fn (nth 2 form)))
 -     (if (and (eq (car-safe fn) 'quote)
 -            (eq (car-safe (nth 1 fn)) 'lambda))
 -       (cons (car form)
 -             (cons (nth 1 form)
 -                   (cons (cons 'function (cdr fn))
 -                         (cdr (cdr (cdr form))))))
 -       form))))
 -
  ;; (function foo) must compile like 'foo, not like (symbol-function 'foo).
  ;; Otherwise it will be incompatible with the interpreter,
  ;; and (funcall (function foo)) will lose with autoloads.
  
  (defun byte-compile-function-form (form)
 -  (byte-compile-constant
 -   (cond ((symbolp (nth 1 form))
 -        (nth 1 form))
 -       ((byte-compile-lambda (nth 1 form))))))
 +  (if (symbolp (nth 1 form))
 +      (byte-compile-constant (nth 1 form))
 +    (byte-compile-closure (nth 1 form))))
  
  (defun byte-compile-indent-to (form)
    (let ((len (length form)))
          (byte-compile-form (car (cdr bytecomp-args)))
          (or for-effect (cdr (cdr bytecomp-args))
              (byte-compile-out 'byte-dup 0))
 -        (byte-compile-variable-ref 'byte-varset (car bytecomp-args))
 +        (byte-compile-variable-set (car bytecomp-args))
          (setq bytecomp-args (cdr (cdr bytecomp-args))))
        ;; (setq), with no arguments.
        (byte-compile-form nil for-effect))
  (byte-defop-compiler-1 or)
  (byte-defop-compiler-1 while)
  (byte-defop-compiler-1 funcall)
 -(byte-defop-compiler-1 apply byte-compile-funarg)
 -(byte-defop-compiler-1 mapcar byte-compile-funarg)
 -(byte-defop-compiler-1 mapatoms byte-compile-funarg)
 -(byte-defop-compiler-1 mapconcat byte-compile-funarg)
 -(byte-defop-compiler-1 mapc byte-compile-funarg)
 -(byte-defop-compiler-1 maphash byte-compile-funarg)
 -(byte-defop-compiler-1 map-char-table byte-compile-funarg)
 -(byte-defop-compiler-1 map-char-table byte-compile-funarg-2)
 -;; map-charset-chars should be funarg but has optional third arg
 -(byte-defop-compiler-1 sort byte-compile-funarg-2)
  (byte-defop-compiler-1 let)
  (byte-defop-compiler-1 let*)
  
@@@ -3904,14 -3633,7 +3903,14 @@@ that suppresses all warnings during exe
  
  (defun byte-compile-while (form)
    (let ((endtag (byte-compile-make-tag))
 -      (looptag (byte-compile-make-tag)))
 +      (looptag (byte-compile-make-tag))
 +      ;; Heap environments can't be shared between a loop and its
 +      ;; enclosing environment (because any lexical variables bound
 +      ;; inside the loop should have an independent value for each
 +      ;; iteration).  Setting `byte-compile-current-num-closures' to
 +      ;; an invalid value causes the code that tries to merge
 +      ;; environments to not do so.
 +      (byte-compile-current-num-closures -1))
      (byte-compile-out-tag looptag)
      (byte-compile-form (car (cdr form)))
      (byte-compile-goto-if nil for-effect endtag)
    (mapc 'byte-compile-form (cdr form))
    (byte-compile-out 'byte-call (length (cdr (cdr form)))))
  
 +\f
 +;; let binding
 +
 +;; All other lexical-binding functions are guarded by a non-nil return
 +;; value from `byte-compile-compute-lforminfo', so they needn't be
 +;; autoloaded.
 +(autoload 'byte-compile-compute-lforminfo "byte-lexbind")
 +
 +(defun byte-compile-push-binding-init (clause init-lexenv lforminfo)
 +  "Emit byte-codes to push the initialization value for CLAUSE on the stack.
 +INIT-LEXENV is the lexical environment created for initializations
 +already done for this form.
 +LFORMINFO should be information about lexical variables being bound.
 +Return INIT-LEXENV updated to include the newest initialization, or nil
 +if LFORMINFO is nil (meaning all bindings are dynamic)."
 +  (let* ((var (if (consp clause) (car clause) clause))
 +       (vinfo
 +        (and lforminfo (assq var (byte-compile-lforminfo-vars lforminfo))))
 +       (unused (and vinfo (zerop (cadr vinfo)))))
 +    (unless (and unused (symbolp clause))
 +      (when (and lforminfo (not unused))
 +      ;; We record the stack position even of dynamic bindings and
 +      ;; variables in non-stack lexical environments; we'll put
 +      ;; them in the proper place below.
 +      (push (byte-compile-make-lexvar var byte-compile-depth) init-lexenv))
 +      (if (consp clause)
 +        (byte-compile-form (cadr clause) unused)
 +      (byte-compile-push-constant nil))))
 +  init-lexenv)
  
  (defun byte-compile-let (form)
 -  ;; First compute the binding values in the old scope.
 -  (let ((varlist (car (cdr form))))
 -    (dolist (var varlist)
 -      (if (consp var)
 -        (byte-compile-form (car (cdr var)))
 -      (byte-compile-push-constant nil))))
 -  (let ((byte-compile-bound-variables byte-compile-bound-variables) ;new scope
 -      (varlist (reverse (car (cdr form)))))
 -    (dolist (var varlist)
 -      (byte-compile-variable-ref 'byte-varbind
 -                                 (if (consp var) (car var) var)))
 -    (byte-compile-body-do-effect (cdr (cdr form)))
 -    (byte-compile-out 'byte-unbind (length (car (cdr form))))))
 +  "Generate code for the `let' form FORM."
 +  (let ((clauses (cadr form))
 +      (lforminfo (and lexical-binding (byte-compile-compute-lforminfo form)))
 +      (init-lexenv nil)
 +      ;; bind these to restrict the scope of any changes
 +      (byte-compile-current-heap-environment
 +       byte-compile-current-heap-environment)
 +      (byte-compile-current-num-closures byte-compile-current-num-closures))
 +    (when (and lforminfo (byte-compile-non-stack-bindings-p clauses lforminfo))
 +      ;; Some of the variables we're binding are lexical variables on
 +      ;; the stack, but not all.  As much as we can, rearrange the list
 +      ;; so that non-stack lexical variables and dynamically bound
 +      ;; variables come last, which allows slightly more optimal
 +      ;; byte-code for binding them.
 +      (setq clauses (byte-compile-rearrange-let-clauses clauses lforminfo)))
 +    ;; If necessary, create a new heap environment to hold some of the
 +    ;; variables bound here.
 +    (when lforminfo 
 +      (setq init-lexenv (byte-compile-maybe-push-heap-environment lforminfo)))
 +    ;; First compute the binding values in the old scope.
 +    (dolist (clause clauses)
 +      (setq init-lexenv
 +          (byte-compile-push-binding-init clause init-lexenv lforminfo)))
 +    ;; Now do the bindings, execute the body, and undo the bindings
 +    (let ((byte-compile-bound-variables byte-compile-bound-variables)
 +        (byte-compile-lexical-environment byte-compile-lexical-environment)
 +        (preserve-body-value (not for-effect)))
 +      (dolist (clause (reverse clauses))
 +      (let ((var (if (consp clause) (car clause) clause)))
 +        (cond ((null lforminfo)
 +               ;; If there are no lexical bindings, we can do things simply.
 +               (byte-compile-dynamic-variable-bind var))
 +              ((byte-compile-bind var init-lexenv lforminfo)
 +               (pop init-lexenv)))))
 +      ;; Emit the body
 +      (byte-compile-body-do-effect (cdr (cdr form)))
 +      ;; Unbind the variables
 +      (if lforminfo
 +        ;; Unbind both lexical and dynamic variables
 +       (byte-compile-unbind clauses init-lexenv lforminfo preserve-body-value)
 +      ;; Unbind dynamic variables
 +      (byte-compile-out 'byte-unbind (length clauses))))))
  
  (defun byte-compile-let* (form)
 -  (let ((byte-compile-bound-variables byte-compile-bound-variables) ;new scope
 -      (varlist (copy-sequence (car (cdr form)))))
 -    (dolist (var varlist)
 -      (if (atom var)
 -        (byte-compile-push-constant nil)
 -      (byte-compile-form (car (cdr var)))
 -      (setq var (car var)))
 -      (byte-compile-variable-ref 'byte-varbind var))
 +  "Generate code for the `let*' form FORM."
 +  (let ((clauses (cadr form))
 +      (lforminfo (and lexical-binding (byte-compile-compute-lforminfo form)))
 +      (init-lexenv nil)
 +      (preserve-body-value (not for-effect))
 +      ;; bind these to restrict the scope of any changes
 +      (byte-compile-bound-variables byte-compile-bound-variables)
 +      (byte-compile-lexical-environment byte-compile-lexical-environment)
 +      (byte-compile-current-heap-environment
 +       byte-compile-current-heap-environment)
 +      (byte-compile-current-num-closures byte-compile-current-num-closures))
 +    ;; If necessary, create a new heap environment to hold some of the
 +    ;; variables bound here.
 +    (when lforminfo 
 +      (setq init-lexenv (byte-compile-maybe-push-heap-environment lforminfo)))
 +    ;; Bind the variables
 +    (dolist (clause clauses)
 +      (setq init-lexenv
 +          (byte-compile-push-binding-init clause init-lexenv lforminfo))
 +      (let ((var (if (consp clause) (car clause) clause)))
 +      (cond ((null lforminfo)
 +             ;; If there are no lexical bindings, we can do things simply.
 +             (byte-compile-dynamic-variable-bind var))
 +            ((byte-compile-bind var init-lexenv lforminfo)
 +             (pop init-lexenv)))))
 +    ;; Emit the body
      (byte-compile-body-do-effect (cdr (cdr form)))
 -    (byte-compile-out 'byte-unbind (length (car (cdr form))))))
 +    ;; Unbind the variables
 +    (if lforminfo
 +      ;; Unbind both lexical and dynamic variables
 +      (byte-compile-unbind clauses init-lexenv lforminfo preserve-body-value)
 +      ;; Unbind dynamic variables
 +      (byte-compile-out 'byte-unbind (length clauses)))))
  
 +\f
  
  (byte-defop-compiler-1 /= byte-compile-negated)
  (byte-defop-compiler-1 atom byte-compile-negated)
               "Compiler error: `%s' has no `byte-compile-negated-op' property"
               (car form)))
          (cdr form))))
 +
  \f
  ;;; other tricky macro-like special-forms
  
  
  (defun byte-compile-track-mouse (form)
    (byte-compile-form
 +   ;; Use quote rather that #' here, because we don't want to go
 +   ;; through the body again, which would lead to an infinite recursion:
 +   ;; "byte-compile-track-mouse" (0xbffc98e4)
 +   ;; "byte-compile-form" (0xbffc9c54)
 +   ;; "byte-compile-top-level" (0xbffc9fd4)
 +   ;; "byte-compile-lambda" (0xbffca364)
 +   ;; "byte-compile-closure" (0xbffca6d4)
 +   ;; "byte-compile-function-form" (0xbffcaa44)
 +   ;; "byte-compile-form" (0xbffcadc0)
 +   ;; "mapc" (0xbffcaf74)
 +   ;; "byte-compile-funcall" (0xbffcb2e4)
 +   ;; "byte-compile-form" (0xbffcb654)
 +   ;; "byte-compile-track-mouse" (0xbffcb9d4)
     `(funcall '(lambda nil
                (track-mouse ,@(byte-compile-top-level-body (cdr form)))))))
  
  ;;                   "`%s' is not a known condition name (in condition-case)"
  ;;                   condition))
                )
 -        (setq compiled-clauses
 -              (cons (cons condition
 -                          (byte-compile-top-level-body
 -                           (cdr clause) for-effect))
 -                    compiled-clauses)))
 +          (push (cons condition
 +                      (byte-compile-top-level-body
 +                       (cdr clause) for-effect))
 +                compiled-clauses))
        (setq clauses (cdr clauses)))
        (byte-compile-push-constant (nreverse compiled-clauses)))
      (byte-compile-out 'byte-condition-case 0)))
        (byte-compile-set-symbol-position (car form))
      (byte-compile-set-symbol-position 'defun)
      (error "defun name must be a symbol, not %s" (car form)))
 -  ;; We prefer to generate a defalias form so it will record the function
 -  ;; definition just like interpreting a defun.
 -  (byte-compile-form
 -   (list 'defalias
 -       (list 'quote (nth 1 form))
 -       (byte-compile-byte-code-maker
 -        (byte-compile-lambda (cdr (cdr form)) t)))
 -   t)
 -  (byte-compile-constant (nth 1 form)))
 +  (let ((for-effect nil))
 +    (byte-compile-push-constant 'defalias)
 +    (byte-compile-push-constant (nth 1 form))
 +    (byte-compile-closure (cdr (cdr form)) t))
 +  (byte-compile-out 'byte-call 2))
  
  (defun byte-compile-defmacro (form)
    ;; This is not used for file-level defmacros with doc strings.
 -  (byte-compile-body-do-effect
 -   (let ((decls (byte-compile-defmacro-declaration form))
 -         (code (byte-compile-byte-code-maker
 -                (byte-compile-lambda (cdr (cdr form)) t))))
 -     `((defalias ',(nth 1 form)
 -         ,(if (eq (car-safe code) 'make-byte-code)
 -              `(cons 'macro ,code)
 -            `'(macro . ,(eval code))))
 -       ,@decls
 -       ',(nth 1 form)))))
 +  ;; FIXME handle decls, use defalias?
 +  (let ((decls (byte-compile-defmacro-declaration form))
 +      (code (byte-compile-lambda (cdr (cdr form)) t))
 +      (for-effect nil))
 +    (byte-compile-push-constant (nth 1 form))
 +    (if (not (byte-compile-closure-code-p code))
 +      ;; simple lambda
 +      (byte-compile-push-constant (cons 'macro code))
 +      (byte-compile-push-constant 'macro)
 +      (byte-compile-make-closure code)
 +      (byte-compile-out 'byte-cons))
 +    (byte-compile-out 'byte-fset)
 +    (byte-compile-discard))
 +  (byte-compile-constant (nth 1 form)))
  
  (defun byte-compile-defvar (form)
    ;; This is not used for file-level defvar/consts with doc strings.
        ;; Put the defined variable in this library's load-history entry
        ;; just as a real defvar would, but only in top-level forms.
        (when (and (cddr form) (null byte-compile-current-form))
 -      `(push ',var current-load-list))
 +      `(setq current-load-list (cons ',var current-load-list)))
        (when (> (length form) 3)
        (when (and string (not (stringp string)))
            (byte-compile-warn "third arg to `%s %s' is not a string: %s"
              `(if (not (default-boundp ',var)) (setq-default ,var ,value))))
        (when (eq fun 'defconst)
          ;; This will signal an appropriate error at runtime.
 -        `(eval ',form)))
 +        `(eval ',form)))              ;FIXME: lexbind
        `',var))))
  
  (defun byte-compile-autoload (form)
    (setq byte-compile-depth (and (not (eq opcode 'byte-goto))
                                (1- byte-compile-depth))))
  
 -(defun byte-compile-out (opcode offset)
 -  (push (cons opcode offset) byte-compile-output)
 -  (cond ((eq opcode 'byte-call)
 -       (setq byte-compile-depth (- byte-compile-depth offset)))
 -      ((eq opcode 'byte-return)
 -       ;; This is actually an unnecessary case, because there should be
 -       ;; no more opcodes behind byte-return.
 -       (setq byte-compile-depth nil))
 -      (t
 -       (setq byte-compile-depth (+ byte-compile-depth
 -                                   (or (aref byte-stack+-info
 -                                             (symbol-value opcode))
 -                                       (- (1- offset))))
 -             byte-compile-maxdepth (max byte-compile-depth
 -                                        byte-compile-maxdepth))))
 -  ;;(if (< byte-compile-depth 0) (error "Compiler error: stack underflow"))
 -  )
 +(defun byte-compile-stack-adjustment (op operand)
 +  "Return the amount by which an operation adjusts the stack.
 +OP and OPERAND are as passed to `byte-compile-out'."
 +  (if (memq op '(byte-call byte-discardN byte-discardN-preserve-tos))
 +      ;; For calls, OPERAND is the number of args, so we pop OPERAND + 1
 +      ;; elements, and the push the result, for a total of -OPERAND.
 +      ;; For discardN*, of course, we just pop OPERAND elements.
 +      (- operand)
 +    (or (aref byte-stack+-info (symbol-value op))
 +      ;; Ops with a nil entry in `byte-stack+-info' are byte-codes
 +      ;; that take OPERAND values off the stack and push a result, for
 +      ;; a total of 1 - OPERAND
 +      (- 1 operand))))
 +  
 +(defun byte-compile-out (op &optional operand)
 +  (push (cons op operand) byte-compile-output)
 +  (if (eq op 'byte-return)
 +      ;; This is actually an unnecessary case, because there should be no
 +      ;; more ops behind byte-return.
 +      (setq byte-compile-depth nil)
 +    (setq byte-compile-depth
 +        (+ byte-compile-depth (byte-compile-stack-adjustment op operand)))
 +    (setq byte-compile-maxdepth (max byte-compile-depth byte-compile-maxdepth))
 +    ;;(if (< byte-compile-depth 0) (error "Compiler error: stack underflow"))
 +    ))
 +
 +(defun byte-compile-delay-out (&optional stack-used stack-adjust)
 +  "Add a placeholder to the output, which can be used to later add byte-codes.
 +Return a position tag that can be passed to `byte-compile-delayed-out'
 +to add the delayed byte-codes.  STACK-USED is the maximum amount of
 +stack-spaced used by the delayed byte-codes (defaulting to 0), and
 +STACK-ADJUST is the amount by which the later-added code will adjust the
 +stack (defaulting to 0); the byte-codes added later _must_ adjust the
 +stack by this amount!  If STACK-ADJUST is 0, then it's not necessary to
 +actually add anything later; the effect as if nothing was added at all."
 +  ;; We just add a no-op to `byte-compile-output', and return a pointer to
 +  ;; the tail of the list; `byte-compile-delayed-out' uses list surgery
 +  ;; to add the byte-codes.
 +  (when stack-used
 +    (setq byte-compile-maxdepth
 +        (max byte-compile-depth (+ byte-compile-depth (or stack-used 0)))))
 +  (when stack-adjust
 +    (setq byte-compile-depth
 +        (+ byte-compile-depth stack-adjust)))
 +  (push (cons nil (or stack-adjust 0)) byte-compile-output))
 +
 +(defun byte-compile-delayed-out (position op &optional operand)
 +  "Add at POSITION the byte-operation OP, with optional numeric arg OPERAND.
 +POSITION should a position returned by `byte-compile-delay-out'.
 +Return a new position, which can be used to add further operations."
 +  (unless (null (caar position))
 +    (error "Bad POSITION arg to `byte-compile-delayed-out'"))
 +  ;; This is kind of like `byte-compile-out', but we splice into the list
 +  ;; where POSITION is.  We don't bother updating `byte-compile-maxdepth'
 +  ;; because that was already done by `byte-compile-delay-out', but we do
 +  ;; update the relative operand stored in the no-op marker currently at
 +  ;; POSITION; since we insert before that marker, this means that if the
 +  ;; caller doesn't insert a sequence of byte-codes that matches the expected
 +  ;; operand passed to `byte-compile-delay-out', then the nop will still have
 +  ;; a non-zero operand when `byte-compile-lapcode' is called, which will
 +  ;; cause an error to be signaled.
 +
 +  ;; Adjust the cumulative stack-adjustment stored in the cdr of the no-op
 +  (setcdr (car position)
 +        (- (cdar position) (byte-compile-stack-adjustment op operand)))
 +  ;; Add the new operation onto the list tail at POSITION
 +  (setcdr position (cons (cons op operand) (cdr position)))
 +  position)
  
  \f
  ;;; call tree stuff
index 18aa5fde0c8834a1e445a207926108c62f33491b,9f4cca91676d5383c8b9a5abeb102b85a97e14e2..9ee02a98e5eb65d40be59d5b25843244c7dee406
@@@ -1,7 -1,6 +1,6 @@@
  ;;; disass.el --- disassembler for compiled Emacs Lisp code
  
- ;; Copyright (C) 1986, 1991, 2002, 2003, 2004,
- ;;   2005, 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
+ ;; Copyright (C) 1986, 1991, 2002-2011 Free Software Foundation, Inc.
  
  ;; Author: Doug Cutting <doug@csli.stanford.edu>
  ;;    Jamie Zawinski <jwz@lucid.com>
@@@ -73,22 -72,19 +72,22 @@@ redefine OBJECT if it is a symbol.
    (let ((macro 'nil)
        (name 'nil)
        (doc 'nil)
 +      (lexical-binding nil)
        args)
      (while (symbolp obj)
        (setq name obj
            obj (symbol-function obj)))
      (if (subrp obj)
        (error "Can't disassemble #<subr %s>" name))
 -    (if (and (listp obj) (eq (car obj) 'autoload))
 -      (progn
 -        (load (nth 1 obj))
 -        (setq obj (symbol-function name))))
 +    (when (and (listp obj) (eq (car obj) 'autoload))
 +      (load (nth 1 obj))
 +      (setq obj (symbol-function name)))
      (if (eq (car-safe obj) 'macro)    ;handle macros
        (setq macro t
              obj (cdr obj)))
 +    (when (and (listp obj) (eq (car obj) 'closure))
 +      (setq lexical-binding t)
 +      (setq obj (cddr obj)))
      (if (and (listp obj) (eq (car obj) 'byte-code))
        (setq obj (list 'lambda nil obj)))
      (if (and (listp obj) (not (eq (car obj) 'lambda)))
@@@ -219,9 -215,7 +218,9 @@@ OBJ should be a call to BYTE-CODE gener
          (cond ((memq op byte-goto-ops)
                 (insert (int-to-string (nth 1 arg))))
                ((memq op '(byte-call byte-unbind
 -                          byte-listN byte-concatN byte-insertN))
 +                          byte-listN byte-concatN byte-insertN
 +                          byte-stack-ref byte-stack-set byte-stack-set2
 +                          byte-discardN byte-discardN-preserve-tos))
                 (insert (int-to-string arg)))
                ((memq op '(byte-varref byte-varset byte-varbind))
                 (prin1 (car arg) (current-buffer)))
  
  (provide 'disass)
  
- ;; arch-tag: 89482fe4-a087-4761-8dc6-d771054e763a
  ;;; disass.el ends here
index 4dfccb4c5b4021a749e2dc9ded724b6599f26d53,f281521841ca4dd719b6327335ec7eb4cb6ce165..7932309cff46a400df5e1f1bde58ab726723608b
@@@ -1,8 -1,6 +1,6 @@@
  ;;; edebug.el --- a source-level debugger for Emacs Lisp
  
- ;; Copyright (C) 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1995, 1997,
- ;;   1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009,
- ;;   2010  Free Software Foundation, Inc.
+ ;; Copyright (C) 1988-1995, 1997, 1999-2011  Free Software Foundation, Inc.
  
  ;; Author: Daniel LaLiberte <liberte@holonexus.org>
  ;; Maintainer: FSF
@@@ -521,7 -519,7 +519,7 @@@ the minibuffer.
          ((and (eq (car form) 'defcustom)
                (default-boundp (nth 1 form)))
           ;; Force variable to be bound.
 -         (set-default (nth 1 form) (eval (nth 2 form))))
 +         (set-default (nth 1 form) (eval (nth 2 form) lexical-binding)))
            ((eq (car form) 'defface)
             ;; Reset the face.
             (setq face-new-frame-defaults
                                (put ',(nth 1 form) 'customized-face
                                     ,(nth 2 form)))
                        (put (nth 1 form) 'saved-face nil)))))
 -    (setq edebug-result (eval form))
 +    (setq edebug-result (eval form lexical-binding))
      (if (not edebugging)
        (princ edebug-result)
        edebug-result)))
@@@ -2131,8 -2129,6 +2129,6 @@@ expressions; a `progn' form will be ret
  
  (def-edebug-spec with-custom-print body)
  
- (def-edebug-spec sregexq (&rest sexp))
- (def-edebug-spec rx (&rest sexp))
  
  ;;; The debugger itself
  
@@@ -2466,7 -2462,6 +2462,7 @@@ MSG is printed after `::::} '.
            (if edebug-global-break-condition
                (condition-case nil
                    (setq edebug-global-break-result
 +                          ;; FIXME: lexbind.
                          (eval edebug-global-break-condition))
                  (error nil))))
           (edebug-break))
                (and edebug-break-data
                     (or (not edebug-break-condition)
                         (setq edebug-break-result
 +                               ;; FIXME: lexbind.
                               (eval edebug-break-condition))))))
        (if (and edebug-break
               (nth 2 edebug-break-data)) ; is it temporary?
@@@ -3639,10 -3633,9 +3635,10 @@@ Return the result of the last expressio
  
  (defun edebug-eval (edebug-expr)
    ;; Are there cl lexical variables active?
 -  (if (bound-and-true-p cl-debug-env)
 -      (eval (cl-macroexpand-all edebug-expr cl-debug-env))
 -    (eval edebug-expr)))
 +  (eval (if (bound-and-true-p cl-debug-env)
 +            (cl-macroexpand-all edebug-expr cl-debug-env)
 +          edebug-expr)
 +        lexical-binding)) ;; FIXME: lexbind.
  
  (defun edebug-safe-eval (edebug-expr)
    ;; Evaluate EXPR safely.
@@@ -4244,8 -4237,8 +4240,8 @@@ It is removed when you hit any char.
  ;;; Menus
  
  (defun edebug-toggle (variable)
 -  (set variable (not (eval variable)))
 -  (message "%s: %s" variable (eval variable)))
 +  (set variable (not (symbol-value variable)))
 +  (message "%s: %s" variable (symbol-value variable)))
  
  ;; We have to require easymenu (even for Emacs 18) just so
  ;; the easy-menu-define macro call is compiled correctly.
index 2cdbd115928f02924e8891eb7abbecc1af625858,15690023700355b892426382aec01d06955aebf2..37a86b7135d8866e64e9ce27bc31cf6833b0264c
@@@ -1,7 -1,6 +1,6 @@@
  ;;; lisp-mode.el --- Lisp mode, and its idiosyncratic commands
  
- ;; Copyright (C) 1985, 1986, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
- ;;   2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
+ ;; Copyright (C) 1985-1986, 1999-2011 Free Software Foundation, Inc.
  
  ;; Maintainer: FSF
  ;; Keywords: lisp, languages
@@@ -700,8 -699,7 +699,8 @@@ If CHAR is not a character, return nil.
    "Evaluate sexp before point; print value in minibuffer.
  With argument, print output into current buffer."
    (let ((standard-output (if eval-last-sexp-arg-internal (current-buffer) t)))
 -    (eval-last-sexp-print-value (eval (preceding-sexp)))))
 +    ;; Setup the lexical environment if lexical-binding is enabled.
 +    (eval-last-sexp-print-value (eval (preceding-sexp) lexical-binding))))
  
  
  (defun eval-last-sexp-print-value (value)
@@@ -765,18 -763,16 +764,18 @@@ Reinitialize the face according to the 
        ;; `defcustom' is now macroexpanded to
        ;; `custom-declare-variable' with a quoted value arg.
        ((and (eq (car form) 'custom-declare-variable)
 -            (default-boundp (eval (nth 1 form))))
 +            (default-boundp (eval (nth 1 form) lexical-binding)))
         ;; Force variable to be bound.
 -       (set-default (eval (nth 1 form)) (eval (nth 1 (nth 2 form))))
 +       (set-default (eval (nth 1 form) lexical-binding)
 +                      (eval (nth 1 (nth 2 form)) lexical-binding))
         form)
        ;; `defface' is macroexpanded to `custom-declare-face'.
        ((eq (car form) 'custom-declare-face)
         ;; Reset the face.
         (setq face-new-frame-defaults
 -             (assq-delete-all (eval (nth 1 form)) face-new-frame-defaults))
 -       (put (eval (nth 1 form)) 'face-defface-spec nil)
 +             (assq-delete-all (eval (nth 1 form) lexical-binding)
 +                                face-new-frame-defaults))
 +       (put (eval (nth 1 form) lexical-binding) 'face-defface-spec nil)
         ;; Setting `customized-face' to the new spec after calling
         ;; the form, but preserving the old saved spec in `saved-face',
         ;; imitates the situation when the new face spec is set
         ;; `defface' change the spec, regardless of a saved spec.
         (prog1 `(prog1 ,form
                   (put ,(nth 1 form) 'saved-face
 -                      ',(get (eval (nth 1 form)) 'saved-face))
 +                      ',(get (eval (nth 1 form) lexical-binding)
 +                               'saved-face))
                   (put ,(nth 1 form) 'customized-face
                        ,(nth 2 form)))
 -         (put (eval (nth 1 form)) 'saved-face nil)))
 +         (put (eval (nth 1 form) lexical-binding) 'saved-face nil)))
        ((eq (car form) 'progn)
         (cons 'progn (mapcar 'eval-defun-1 (cdr form))))
        (t form)))
diff --combined lisp/help-fns.el
index 65bcdbcb8f8dee394f7774761c1052e508eb589a,12b77672a5369c08de039dffb522ece6fbd46b50..ed266c71a59aca27d659a9ab314e9131cb840095
@@@ -1,7 -1,6 +1,6 @@@
  ;;; help-fns.el --- Complex help functions
  
- ;; Copyright (C) 1985, 1986, 1993, 1994, 1998, 1999, 2000, 2001, 2002,
- ;;   2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
+ ;; Copyright (C) 1985-1986, 1993-1994, 1998-2011
  ;;   Free Software Foundation, Inc.
  
  ;; Maintainer: FSF
@@@ -101,8 -100,6 +100,8 @@@ ARGLIST can also be t or a string of th
    (if (and (symbolp def) (fboundp def)) (setq def (indirect-function def)))
    ;; If definition is a macro, find the function inside it.
    (if (eq (car-safe def) 'macro) (setq def (cdr def)))
 +  ;; and do the same for interpreted closures
 +  (if (eq (car-safe def) 'closure) (setq def (cddr def)))
    (cond
     ((byte-code-function-p def) (aref def 0))
     ((eq (car-safe def) 'lambda) (nth 1 def))
@@@ -193,7 -190,7 +192,7 @@@ if the variable `help-downcase-argument
                   doc t t 1)))))
  
  (defun help-highlight-arguments (usage doc &rest args)
 -  (when usage
 +  (when (and usage (string-match "^(" usage))
      (with-temp-buffer
        (insert usage)
        (goto-char (point-min))
@@@ -291,13 -288,19 +290,19 @@@ suitable file is found, return nil.
       ((not (stringp file-name))
        ;; If we don't have a file-name string by now, we lost.
        nil)
+      ;; Now, `file-name' should have become an absolute file name.
+      ;; For files loaded from ~/.emacs.elc, try ~/.emacs.
+      ((let (fn)
+       (and (string-equal file-name
+                          (expand-file-name ".emacs.elc" "~"))
+            (file-readable-p (setq fn (expand-file-name ".emacs" "~")))
+            fn)))
+      ;; When the Elisp source file can be found in the install
+      ;; directory, return the name of that file.
       ((let ((lib-name
             (if (string-match "[.]elc\\'" file-name)
                 (substring-no-properties file-name 0 -1)
               file-name)))
-       ;; When the Elisp source file can be found in the install
-       ;; directory return the name of that file - `file-name' should
-       ;; have become an absolute file name ny now.
        (or (and (file-readable-p lib-name) lib-name)
            ;; The library might be compressed.
            (and (file-readable-p (concat lib-name ".gz")) lib-name))))
           (pt1 (with-current-buffer (help-buffer) (point)))
         errtype)
      (setq string
 -        (cond ((or (stringp def)
 -                   (vectorp def))
 +        (cond ((or (stringp def) (vectorp def))
                 "a keyboard macro")
                ((subrp def)
                 (if (eq 'unevalled (cdr (subr-arity def)))
                   (concat beg "built-in function")))
                ((byte-code-function-p def)
                 (concat beg "compiled Lisp function"))
 +              ((and (funvecp def) (eq (aref def 0) 'curry))
 +               (if (symbolp (aref def 1))
 +                   (format "a curried function calling `%s'" (aref def 1))
 +                 "a curried function"))
 +              ((funvecp def)
 +               (format "a function-vector (funvec) of type `%s'"
 +                       (aref def 0)))
                ((symbolp def)
                 (while (and (fboundp def)
                             (symbolp (symbol-function def)))
                 (concat beg "Lisp function"))
                ((eq (car-safe def) 'macro)
                 "a Lisp macro")
 +              ((eq (car-safe def) 'closure)
 +               (concat beg "Lisp closure"))
                ((eq (car-safe def) 'autoload)
                 (format "%s autoloaded %s"
                         (if (commandp def) "an interactive" "an")
                         ((or (stringp def)
                              (vectorp def))
                          (format "\nMacro: %s" (format-kbd-macro def)))
 +                       ((and (funvecp def) (eq (aref def 0) 'curry))
 +                        ;; Describe a curried-function's function and args
 +                        (let ((slot 0))
 +                          (mapconcat (lambda (arg)
 +                                       (setq slot (1+ slot))
 +                                       (cond
 +                                        ((= slot 1) "")
 +                                        ((= slot 2)
 +                                         (format "  Function: %S" arg))
 +                                        (t
 +                                         (format "Argument %d: %S"
 +                                                 (- slot 3) arg))))
 +                                     def
 +                                     "\n")))
 +                       ((funvecp def) nil)
                         (t "[Missing arglist.  Please make a bug report.]")))
                   (high (help-highlight-arguments use doc)))
              (let ((fill-begin (point)))
                (insert (car high) "\n")
 -              (fill-region fill-begin (point)))
 -            (setq doc (cdr high))))
 -        (let* ((obsolete (and
 -                          ;; function might be a lambda construct.
 -                          (symbolp function)
 -                          (get function 'byte-obsolete-info)))
 -               (use (car obsolete)))
 -          (when obsolete
 -            (princ "\nThis function is obsolete")
 -            (when (nth 2 obsolete)
 -              (insert (format " since %s" (nth 2 obsolete))))
 -            (insert (cond ((stringp use) (concat ";\n" use))
 -                          (use (format ";\nuse `%s' instead." use))
 -                          (t "."))
 -                    "\n"))
 -          (insert "\n"
 -                  (or doc "Not documented."))))))))
 +              (fill-region fill-begin (point))))
 +            (setq doc (cdr high))))
 +      (let* ((obsolete (and
 +                        ;; function might be a lambda construct.
 +                        (symbolp function)
 +                        (get function 'byte-obsolete-info)))
 +             (use (car obsolete)))
 +        (when obsolete
 +          (princ "\nThis function is obsolete")
 +          (when (nth 2 obsolete)
 +            (insert (format " since %s" (nth 2 obsolete))))
 +          (insert (cond ((stringp use) (concat ";\n" use))
 +                        (use (format ";\nuse `%s' instead." use))
 +                        (t "."))
 +                  "\n"))
 +        (insert "\n"
 +                (or doc "Not documented.")))))))
  
  \f
  ;; Variables
@@@ -658,19 -638,16 +663,16 @@@ it is displayed along with the global v
                (if valvoid
                    (princ " is void as a variable.")
                  (princ "'s "))))
-           (if valvoid
-               nil
+           (unless valvoid
              (with-current-buffer standard-output
                (setq val-start-pos (point))
                (princ "value is ")
-               (terpri)
                (let ((from (point)))
+                 (terpri)
                  (pp val)
-                 ;; Hyperlinks in variable's value are quite frequently
-                 ;; inappropriate e.g C-h v <RET> features <RET>
-                 ;; (help-xref-on-pp from (point))
-                 (if (< (point) (+ from 20))
-                     (delete-region (1- from) from))
+                 (if (< (point) (+ 68 (line-beginning-position 0)))
+                     (delete-region from (1+ from))
+                   (delete-region (1- from) from))
                  (let* ((sv (get variable 'standard-value))
                         (origval (and (consp sv)
                                       (condition-case nil
                      (if (< (point) (+ from 20))
                          (delete-region (1- from) from)))))))
            (terpri)
            (when locus
              (if (bufferp locus)
                  (princ (format "%socal in buffer %s; "
diff --combined lisp/ielm.el
index e1f8dc78d329936f6b80493cb051fb7fed4d7551,a5731eb09e20865b0ed9552faa29b3669c813cf2..a10573037431c631b9f5397d912189249065c217
@@@ -1,7 -1,6 +1,6 @@@
  ;;; ielm.el --- interaction mode for Emacs Lisp
  
- ;; Copyright (C) 1994, 2001, 2002, 2003, 2004, 2005,
- ;;   2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
+ ;; Copyright (C) 1994, 2001-2011 Free Software Foundation, Inc.
  
  ;; Author: David Smith <maa036@lancaster.ac.uk>
  ;; Maintainer: FSF
@@@ -372,8 -371,7 +371,8 @@@ simply inserts a newline.
                                   (*** *3))
                               (kill-buffer (current-buffer))
                               (set-buffer ielm-wbuf)
 -                             (setq ielm-result (eval ielm-form))
 +                             (setq ielm-result
 +                                     (eval ielm-form lexical-binding))
                               (setq ielm-wbuf (current-buffer))
                               (setq
                                ielm-temp-buffer
@@@ -561,5 -559,4 +560,4 @@@ Switches to the buffer `*ielm*', or cre
  
  (provide 'ielm)
  
- ;; arch-tag: ef60e4c0-9c4f-4bdb-8402-271313329790
  ;;; ielm.el ends here
diff --combined lisp/ldefs-boot.el
index 7d7e0fdb6bd7800b349d0c027d2b4e0274da77b8,8bb01f2c793eda03a6fc12b3514c4c3ce996a0e7..df19537688e1618aef4f9da427341ad331247d2b
@@@ -5,7 -5,7 +5,7 @@@
  \f
  ;;;### (autoloads (5x5-crack 5x5-crack-xor-mutate 5x5-crack-mutating-best
  ;;;;;;  5x5-crack-mutating-current 5x5-crack-randomly 5x5) "5x5"
 -;;;;;;  "play/5x5.el" (19775 2029))
 +;;;;;;  "play/5x5.el" (19640 47194))
  ;;; Generated autoloads from play/5x5.el
  
  (autoload '5x5 "5x5" "\
@@@ -65,7 -65,7 +65,7 @@@ should return a grid vector array that 
  ;;;***
  \f
  ;;;### (autoloads (list-one-abbrev-table) "abbrevlist" "abbrevlist.el"
 -;;;;;;  (19775 2027))
 +;;;;;;  (19598 13691))
  ;;; Generated autoloads from abbrevlist.el
  
  (autoload 'list-one-abbrev-table "abbrevlist" "\
@@@ -76,7 -76,7 +76,7 @@@ Display alphabetical listing of ABBREV-
  ;;;***
  \f
  ;;;### (autoloads (ada-mode ada-add-extensions) "ada-mode" "progmodes/ada-mode.el"
 -;;;;;;  (19780 4514))
 +;;;;;;  (19714 43298))
  ;;; Generated autoloads from progmodes/ada-mode.el
  
  (autoload 'ada-add-extensions "ada-mode" "\
@@@ -96,7 -96,7 +96,7 @@@ Ada mode is the major mode for editing 
  ;;;***
  \f
  ;;;### (autoloads (ada-header) "ada-stmt" "progmodes/ada-stmt.el"
 -;;;;;;  (19780 4514))
 +;;;;;;  (19598 13691))
  ;;; Generated autoloads from progmodes/ada-stmt.el
  
  (autoload 'ada-header "ada-stmt" "\
@@@ -107,7 -107,7 +107,7 @@@ Insert a descriptive header at the top 
  ;;;***
  \f
  ;;;### (autoloads (ada-find-file) "ada-xref" "progmodes/ada-xref.el"
 -;;;;;;  (19780 4514))
 +;;;;;;  (19714 43298))
  ;;; Generated autoloads from progmodes/ada-xref.el
  
  (autoload 'ada-find-file "ada-xref" "\
@@@ -122,7 -122,7 +122,7 @@@ Completion is available
  ;;;;;;  add-change-log-entry-other-window add-change-log-entry find-change-log
  ;;;;;;  prompt-for-change-log-name add-log-mailing-address add-log-full-name
  ;;;;;;  add-log-current-defun-function) "add-log" "vc/add-log.el"
 -;;;;;;  (19775 2030))
 +;;;;;;  (19714 43298))
  ;;; Generated autoloads from vc/add-log.el
  
  (put 'change-log-default-name 'safe-local-variable 'string-or-null-p)
@@@ -261,7 -261,7 +261,7 @@@ old-style time formats for entries are 
  \f
  ;;;### (autoloads (defadvice ad-activate ad-add-advice ad-disable-advice
  ;;;;;;  ad-enable-advice ad-default-compilation-action ad-redefinition-action)
 -;;;;;;  "advice" "emacs-lisp/advice.el" (19780 4513))
 +;;;;;;  "advice" "emacs-lisp/advice.el" (19598 13691))
  ;;; Generated autoloads from emacs-lisp/advice.el
  
  (defvar ad-redefinition-action 'warn "\
@@@ -406,7 -406,7 +406,7 @@@ usage: (defadvice FUNCTION (CLASS NAME 
  \f
  ;;;### (autoloads (align-newline-and-indent align-unhighlight-rule
  ;;;;;;  align-highlight-rule align-current align-entire align-regexp
 -;;;;;;  align) "align" "align.el" (19775 2027))
 +;;;;;;  align) "align" "align.el" (19598 13691))
  ;;; Generated autoloads from align.el
  
  (autoload 'align "align" "\
@@@ -496,7 -496,7 +496,7 @@@ A replacement function for `newline-and
  ;;;***
  \f
  ;;;### (autoloads (outlineify-sticky allout-mode) "allout" "allout.el"
 -;;;;;;  (19775 2027))
 +;;;;;;  (19714 43298))
  ;;; Generated autoloads from allout.el
  
  (put 'allout-use-hanging-indents 'safe-local-variable (if (fboundp 'booleanp) 'booleanp '(lambda (x) (member x '(t nil)))))
  
  (autoload 'allout-mode "allout" "\
  Toggle minor mode for controlling exposure and editing of text outlines.
 -\\<allout-mode-map-value>
 +\\<allout-mode-map>
  
 -Allout outline mode always runs as a minor mode.
 +Optional prefix argument TOGGLE forces the mode to re-initialize
 +if it is positive, otherwise it turns the mode off.  Allout
 +outline mode always runs as a minor mode.
  
 -Allout outline mode provides extensive outline oriented
 -formatting and manipulation.  It enables structural editing of
 -outlines, as well as navigation and exposure.  It also is
 -specifically aimed at accommodating syntax-sensitive text like
 -programming languages.  (For example, see the allout code itself,
 -which is organized as an allout outline.)
 +Allout outline mode provides extensive outline oriented formatting and
 +manipulation.  It enables structural editing of outlines, as well as
 +navigation and exposure.  It also is specifically aimed at
 +accommodating syntax-sensitive text like programming languages.  (For
 +an example, see the allout code itself, which is organized as an allout
 +outline.)
  
  In addition to typical outline navigation and exposure, allout includes:
  
     repositioning, promotion/demotion, cut, and paste
   - incremental search with dynamic exposure and reconcealment of hidden text
   - adjustable format, so programming code can be developed in outline-structure
 - - easy topic encryption and decryption, symmetric or key-pair
 + - easy topic encryption and decryption
   - \"Hot-spot\" operation, for single-keystroke maneuvering and exposure control
   - integral outline layout, for automatic initial exposure when visiting a file
   - independent extensibility, using comprehensive exposure and authoring hooks
  
  and many other features.
  
 -Below is a description of the key bindings, and then description
 -of special `allout-mode' features and terminology.  See also the
 -outline menubar additions for quick reference to many of the
 -features, and see the docstring of the function `allout-init' for
 -instructions on priming your emacs session for automatic
 -activation of `allout-mode'.
 -
 -The bindings are those listed in `allout-prefixed-keybindings'
 -and `allout-unprefixed-keybindings'.  We recommend customizing
 -`allout-command-prefix' to use just `\\C-c' as the command
 -prefix, if the allout bindings don't conflict with any personal
 -bindings you have on \\C-c.  In any case, outline structure
 -navigation and authoring is simplified by positioning the cursor
 -on an item's bullet character, the \"hot-spot\" -- then you can
 -invoke allout commands with just the un-prefixed,
 -un-control-shifted command letters.  This is described further in
 -the HOT-SPOT Operation section.
 +Below is a description of the key bindings, and then explanation of
 +special `allout-mode' features and terminology.  See also the outline
 +menubar additions for quick reference to many of the features, and see
 +the docstring of the function `allout-init' for instructions on
 +priming your emacs session for automatic activation of `allout-mode'.
 +
 +The bindings are dictated by the customizable `allout-keybindings-list'
 +variable.  We recommend customizing `allout-command-prefix' to use just
 +`\\C-c' as the command prefix, if the allout bindings don't conflict with
 +any personal bindings you have on \\C-c.  In any case, outline structure
 +navigation and authoring is simplified by positioning the cursor on an
 +item's bullet character, the \"hot-spot\" -- then you can invoke allout
 +commands with just the un-prefixed, un-control-shifted command letters.
 +This is described further in the HOT-SPOT Operation section.
  
          Exposure Control:
          ----------------
@@@ -651,19 -652,22 +651,19 @@@ M-x outlineify-sticky       Activate ou
                    Topic Encryption
  
  Outline mode supports gpg encryption of topics, with support for
 -symmetric and key-pair modes, and auto-encryption of topics
 -pending encryption on save.
 +symmetric and key-pair modes, passphrase timeout, passphrase
 +consistency checking, user-provided hinting for symmetric key
 +mode, and auto-encryption of topics pending encryption on save.
  
  Topics pending encryption are, by default, automatically
 -encrypted during file saves, including checkpoint saves, to avoid
 -exposing the plain text of encrypted topics in the file system.
 -If the content of the topic containing the cursor was encrypted
 -for a save, it is automatically decrypted for continued editing.
 -
 -NOTE: A few GnuPG v2 versions improperly preserve incorrect
 -symmetric decryption keys, preventing entry of the correct key on
 -subsequent decryption attempts until the cache times-out.  That
 -can take several minutes.  (Decryption of other entries is not
 -affected.)  Upgrade your EasyPG version, if you can, and you can
 -deliberately clear your gpg-agent's cache by sending it a '-HUP'
 -signal.
 +encrypted during file saves.  If the contents of the topic
 +containing the cursor was encrypted for a save, it is
 +automatically decrypted for continued editing.
 +
 +The aim of these measures is reliable topic privacy while
 +preventing accidents like neglected encryption before saves,
 +forgetting which passphrase was used, and other practical
 +pitfalls.
  
  See `allout-toggle-current-subtree-encryption' function docstring
  and `allout-encrypt-unencrypted-on-saves' customization variable
@@@ -701,7 -705,8 +701,7 @@@ hooks, by which independent code can co
  without changes to the allout core.  Here are key ones:
  
  `allout-mode-hook'
 -`allout-mode-deactivate-hook' (deprecated)
 -`allout-mode-off-hook'
 +`allout-mode-deactivate-hook'
  `allout-exposure-change-hook'
  `allout-structure-added-hook'
  `allout-structure-deleted-hook'
@@@ -788,7 -793,7 +788,7 @@@ CONCEALED
  CLOSED: A TOPIC whose immediate OFFSPRING and body-text is CONCEALED.
  OPEN: A TOPIC that is not CLOSED, though its OFFSPRING or BODY may be.
  
 -\(fn &optional ARG)" t nil)
 +\(fn &optional TOGGLE)" t nil)
  
  (defalias 'outlinify-sticky 'outlineify-sticky)
  
@@@ -803,7 -808,7 +803,7 @@@ setup for auto-startup
  ;;;***
  \f
  ;;;### (autoloads (ange-ftp-hook-function ange-ftp-reread-dir) "ange-ftp"
 -;;;;;;  "net/ange-ftp.el" (19780 4514))
 +;;;;;;  "net/ange-ftp.el" (19714 43298))
  ;;; Generated autoloads from net/ange-ftp.el
  
  (defalias 'ange-ftp-re-read-dir 'ange-ftp-reread-dir)
@@@ -825,7 -830,7 +825,7 @@@ Not documente
  ;;;***
  \f
  ;;;### (autoloads (animate-birthday-present animate-sequence animate-string)
 -;;;;;;  "animate" "play/animate.el" (19775 2029))
 +;;;;;;  "animate" "play/animate.el" (19562 42953))
  ;;; Generated autoloads from play/animate.el
  
  (autoload 'animate-string "animate" "\
@@@ -853,7 -858,7 +853,7 @@@ You can specify the one's name by NAME
  ;;;***
  \f
  ;;;### (autoloads (ansi-color-process-output ansi-color-for-comint-mode-on)
 -;;;;;;  "ansi-color" "ansi-color.el" (19775 2027))
 +;;;;;;  "ansi-color" "ansi-color.el" (19714 43298))
  ;;; Generated autoloads from ansi-color.el
  
  (autoload 'ansi-color-for-comint-mode-on "ansi-color" "\
@@@ -879,7 -884,7 +879,7 @@@ This is a good function to put in `comi
  ;;;***
  \f
  ;;;### (autoloads (antlr-set-tabs antlr-mode antlr-show-makefile-rules)
 -;;;;;;  "antlr-mode" "progmodes/antlr-mode.el" (19775 2029))
 +;;;;;;  "antlr-mode" "progmodes/antlr-mode.el" (19714 43298))
  ;;; Generated autoloads from progmodes/antlr-mode.el
  
  (autoload 'antlr-show-makefile-rules "antlr-mode" "\
@@@ -915,7 -920,7 +915,7 @@@ Used in `antlr-mode'.  Also a useful fu
  ;;;***
  \f
  ;;;### (autoloads (appt-activate appt-add) "appt" "calendar/appt.el"
 -;;;;;;  (19780 4513))
 +;;;;;;  (19640 47194))
  ;;; Generated autoloads from calendar/appt.el
  
  (autoload 'appt-add "appt" "\
@@@ -938,7 -943,7 +938,7 @@@ ARG is positive, otherwise off
  \f
  ;;;### (autoloads (apropos-documentation apropos-value apropos-library
  ;;;;;;  apropos apropos-documentation-property apropos-command apropos-variable
 -;;;;;;  apropos-read-pattern) "apropos" "apropos.el" (19775 2027))
 +;;;;;;  apropos-read-pattern) "apropos" "apropos.el" (19598 13691))
  ;;; Generated autoloads from apropos.el
  
  (autoload 'apropos-read-pattern "apropos" "\
@@@ -1041,8 -1046,8 +1041,8 @@@ Returns list of symbols and documentati
  
  ;;;***
  \f
 -;;;### (autoloads (archive-mode) "arc-mode" "arc-mode.el" (19775
 -;;;;;;  2027))
 +;;;### (autoloads (archive-mode) "arc-mode" "arc-mode.el" (19714
 +;;;;;;  43298))
  ;;; Generated autoloads from arc-mode.el
  
  (autoload 'archive-mode "arc-mode" "\
@@@ -1062,7 -1067,7 +1062,7 @@@ archive
  
  ;;;***
  \f
 -;;;### (autoloads (array-mode) "array" "array.el" (19775 2027))
 +;;;### (autoloads (array-mode) "array" "array.el" (19714 43298))
  ;;; Generated autoloads from array.el
  
  (autoload 'array-mode "array" "\
@@@ -1133,8 -1138,8 +1133,8 @@@ Entering array mode calls the function 
  
  ;;;***
  \f
 -;;;### (autoloads (artist-mode) "artist" "textmodes/artist.el" (19775
 -;;;;;;  2030))
 +;;;### (autoloads (artist-mode) "artist" "textmodes/artist.el" (19640
 +;;;;;;  47194))
  ;;; Generated autoloads from textmodes/artist.el
  
  (autoload 'artist-mode "artist" "\
@@@ -1340,8 -1345,8 +1340,8 @@@ Keymap summar
  
  ;;;***
  \f
 -;;;### (autoloads (asm-mode) "asm-mode" "progmodes/asm-mode.el" (19780
 -;;;;;;  4514))
 +;;;### (autoloads (asm-mode) "asm-mode" "progmodes/asm-mode.el" (19714
 +;;;;;;  43298))
  ;;; Generated autoloads from progmodes/asm-mode.el
  
  (autoload 'asm-mode "asm-mode" "\
@@@ -1369,7 -1374,7 +1369,7 @@@ Special commands
  ;;;***
  \f
  ;;;### (autoloads (autoarg-kp-mode autoarg-mode) "autoarg" "autoarg.el"
 -;;;;;;  (19775 2027))
 +;;;;;;  (19562 42953))
  ;;; Generated autoloads from autoarg.el
  
  (defvar autoarg-mode nil "\
@@@ -1423,7 -1428,7 +1423,7 @@@ etc. to supply digit arguments
  ;;;***
  \f
  ;;;### (autoloads (autoconf-mode) "autoconf" "progmodes/autoconf.el"
 -;;;;;;  (19780 4514))
 +;;;;;;  (19714 43298))
  ;;; Generated autoloads from progmodes/autoconf.el
  
  (autoload 'autoconf-mode "autoconf" "\
@@@ -1434,7 -1439,7 +1434,7 @@@ Major mode for editing Autoconf configu
  ;;;***
  \f
  ;;;### (autoloads (auto-insert-mode define-auto-insert auto-insert)
 -;;;;;;  "autoinsert" "autoinsert.el" (19780 4512))
 +;;;;;;  "autoinsert" "autoinsert.el" (19591 62571))
  ;;; Generated autoloads from autoinsert.el
  
  (autoload 'auto-insert "autoinsert" "\
@@@ -1473,7 -1478,7 +1473,7 @@@ insert a template for the file dependin
  \f
  ;;;### (autoloads (batch-update-autoloads update-directory-autoloads
  ;;;;;;  update-file-autoloads) "autoload" "emacs-lisp/autoload.el"
 -;;;;;;  (19780 4513))
 +;;;;;;  (19714 43298))
  ;;; Generated autoloads from emacs-lisp/autoload.el
  
  (put 'generated-autoload-file 'safe-local-variable 'stringp)
@@@ -1512,7 -1517,7 +1512,7 @@@ Calls `update-directory-autoloads' on t
  \f
  ;;;### (autoloads (global-auto-revert-mode turn-on-auto-revert-tail-mode
  ;;;;;;  auto-revert-tail-mode turn-on-auto-revert-mode auto-revert-mode)
 -;;;;;;  "autorevert" "autorevert.el" (19775 2027))
 +;;;;;;  "autorevert" "autorevert.el" (19562 42953))
  ;;; Generated autoloads from autorevert.el
  
  (autoload 'auto-revert-mode "autorevert" "\
@@@ -1593,7 -1598,7 +1593,7 @@@ specifies in the mode line
  ;;;***
  \f
  ;;;### (autoloads (mouse-avoidance-mode mouse-avoidance-mode) "avoid"
 -;;;;;;  "avoid.el" (19775 2027))
 +;;;;;;  "avoid.el" (19714 43298))
  ;;; Generated autoloads from avoid.el
  
  (defvar mouse-avoidance-mode nil "\
@@@ -1634,7 -1639,7 +1634,7 @@@ definition of \"random distance\".
  ;;;***
  \f
  ;;;### (autoloads (display-battery-mode battery) "battery" "battery.el"
 -;;;;;;  (19775 2027))
 +;;;;;;  (19562 42953))
  ;;; Generated autoloads from battery.el
   (put 'battery-mode-line-string 'risky-local-variable t)
  
@@@ -1666,7 -1671,7 +1666,7 @@@ seconds
  ;;;***
  \f
  ;;;### (autoloads (benchmark benchmark-run-compiled benchmark-run)
 -;;;;;;  "benchmark" "emacs-lisp/benchmark.el" (19780 4513))
 +;;;;;;  "benchmark" "emacs-lisp/benchmark.el" (19562 42953))
  ;;; Generated autoloads from emacs-lisp/benchmark.el
  
  (autoload 'benchmark-run "benchmark" "\
@@@ -1699,7 -1704,7 +1699,7 @@@ For non-interactive use see also `bench
  ;;;***
  \f
  ;;;### (autoloads (bibtex-search-entry bibtex-mode bibtex-initialize)
 -;;;;;;  "bibtex" "textmodes/bibtex.el" (19780 4514))
 +;;;;;;  "bibtex" "textmodes/bibtex.el" (19714 43298))
  ;;; Generated autoloads from textmodes/bibtex.el
  
  (autoload 'bibtex-initialize "bibtex" "\
@@@ -1786,7 -1791,7 +1786,7 @@@ mode is not `bibtex-mode', START is nil
  ;;;***
  \f
  ;;;### (autoloads (bibtex-style-mode) "bibtex-style" "textmodes/bibtex-style.el"
 -;;;;;;  (19780 4514))
 +;;;;;;  (19619 52030))
  ;;; Generated autoloads from textmodes/bibtex-style.el
  
  (autoload 'bibtex-style-mode "bibtex-style" "\
@@@ -1798,7 -1803,7 +1798,7 @@@ Major mode for editing BibTeX style fil
  \f
  ;;;### (autoloads (binhex-decode-region binhex-decode-region-external
  ;;;;;;  binhex-decode-region-internal) "binhex" "mail/binhex.el"
 -;;;;;;  (19775 2028))
 +;;;;;;  (19598 13691))
  ;;; Generated autoloads from mail/binhex.el
  
  (defconst binhex-begin-line "^:...............................................................$")
@@@ -1821,8 -1826,8 +1821,8 @@@ Binhex decode region between START and 
  
  ;;;***
  \f
 -;;;### (autoloads (blackbox) "blackbox" "play/blackbox.el" (19775
 -;;;;;;  2029))
 +;;;### (autoloads (blackbox) "blackbox" "play/blackbox.el" (19562
 +;;;;;;  42953))
  ;;; Generated autoloads from play/blackbox.el
  
  (autoload 'blackbox "blackbox" "\
@@@ -1945,7 -1950,7 +1945,7 @@@ a reflection
  ;;;;;;  bookmark-save bookmark-write bookmark-delete bookmark-insert
  ;;;;;;  bookmark-rename bookmark-insert-location bookmark-relocate
  ;;;;;;  bookmark-jump-other-window bookmark-jump bookmark-set) "bookmark"
- ;;;;;;  "bookmark.el" (19714 43298))
 -;;;;;;  "bookmark.el" (19780 4512))
++;;;;;;  "bookmark.el" (19717 39999))
  ;;; Generated autoloads from bookmark.el
   (define-key ctl-x-r-map "b" 'bookmark-jump)
   (define-key ctl-x-r-map "m" 'bookmark-set)
@@@ -2146,7 -2151,7 +2146,7 @@@ Incremental search of bookmarks, hidin
  ;;;;;;  browse-url-at-mouse browse-url-at-point browse-url browse-url-of-region
  ;;;;;;  browse-url-of-dired-file browse-url-of-buffer browse-url-of-file
  ;;;;;;  browse-url-browser-function) "browse-url" "net/browse-url.el"
 -;;;;;;  (19780 4514))
 +;;;;;;  (19714 43298))
  ;;; Generated autoloads from net/browse-url.el
  
  (defvar browse-url-browser-function (cond ((memq system-type '(windows-nt ms-dos cygwin)) 'browse-url-default-windows-browser) ((memq system-type '(darwin)) 'browse-url-default-macosx-browser) (t 'browse-url-default-browser)) "\
@@@ -2451,8 -2456,8 +2451,8 @@@ from `browse-url-elinks-wrapper'
  
  ;;;***
  \f
 -;;;### (autoloads (snarf-bruces bruce) "bruce" "play/bruce.el" (19775
 -;;;;;;  2029))
 +;;;### (autoloads (snarf-bruces bruce) "bruce" "play/bruce.el" (19562
 +;;;;;;  42953))
  ;;; Generated autoloads from play/bruce.el
  
  (autoload 'bruce "bruce" "\
@@@ -2468,7 -2473,7 +2468,7 @@@ Return a vector containing the lines fr
  ;;;***
  \f
  ;;;### (autoloads (bs-show bs-customize bs-cycle-previous bs-cycle-next)
 -;;;;;;  "bs" "bs.el" (19775 2027))
 +;;;;;;  "bs" "bs.el" (19562 42953))
  ;;; Generated autoloads from bs.el
  
  (autoload 'bs-cycle-next "bs" "\
@@@ -2508,7 -2513,7 +2508,7 @@@ name of buffer configuration
  
  ;;;***
  \f
 -;;;### (autoloads (bubbles) "bubbles" "play/bubbles.el" (19775 2029))
 +;;;### (autoloads (bubbles) "bubbles" "play/bubbles.el" (19619 52030))
  ;;; Generated autoloads from play/bubbles.el
  
  (autoload 'bubbles "bubbles" "\
@@@ -2527,28 -2532,28 +2527,10 @@@ columns on its right towards the left
  
  \(fn)" t nil)
  
--;;;***
--\f
- ;;;### (autoloads (list-buffers) "buff-menu" "buff-menu.el" (19714
- ;;;;;;  43298))
 -;;;### (autoloads (list-buffers) "buff-menu" "buff-menu.el" (19775
 -;;;;;;  2027))
--;;; Generated autoloads from buff-menu.el
--
--(define-key ctl-x-map "\ 2" 'list-buffers)
--
--(autoload 'list-buffers "buff-menu" "\
--Display a list of names of existing buffers.
--The list is displayed in a buffer named `*Buffer List*'.
--Note that buffers with names starting with spaces are omitted.
--Non-null optional arg FILES-ONLY means mention only file buffers.
--
--For more information, see the function `buffer-menu'.
--
--\(fn &optional FILES-ONLY)" t nil)
--
  ;;;***
  \f
  ;;;### (autoloads (bug-reference-prog-mode bug-reference-mode) "bug-reference"
 -;;;;;;  "progmodes/bug-reference.el" (19775 2029))
 +;;;;;;  "progmodes/bug-reference.el" (19562 42953))
  ;;; Generated autoloads from progmodes/bug-reference.el
  
  (put 'bug-reference-url-format 'safe-local-variable (lambda (s) (or (stringp s) (and (symbolp s) (get s 'bug-reference-url-format)))))
@@@ -2569,7 -2574,7 +2551,7 @@@ Like `bug-reference-mode', but only but
  ;;;;;;  batch-byte-compile-if-not-done display-call-tree byte-compile
  ;;;;;;  compile-defun byte-compile-file byte-recompile-directory
  ;;;;;;  byte-force-recompile byte-compile-enable-warning byte-compile-disable-warning)
- ;;;;;;  "bytecomp" "emacs-lisp/bytecomp.el" (19714 43298))
 -;;;;;;  "bytecomp" "emacs-lisp/bytecomp.el" (19775 2028))
++;;;;;;  "bytecomp" "emacs-lisp/bytecomp.el" (19737 17936))
  ;;; Generated autoloads from emacs-lisp/bytecomp.el
  (put 'byte-compile-dynamic 'safe-local-variable 'booleanp)
  (put 'byte-compile-disable-print-circle 'safe-local-variable 'booleanp)
@@@ -2689,8 -2694,8 +2671,8 @@@ and corresponding effects
  
  ;;;***
  \f
 -;;;### (autoloads nil "cal-china" "calendar/cal-china.el" (19775
 -;;;;;;  2027))
 +;;;### (autoloads nil "cal-china" "calendar/cal-china.el" (19598
 +;;;;;;  13691))
  ;;; Generated autoloads from calendar/cal-china.el
  
  (put 'calendar-chinese-time-zone 'risky-local-variable t)
  
  ;;;***
  \f
 -;;;### (autoloads nil "cal-dst" "calendar/cal-dst.el" (19775 2027))
 +;;;### (autoloads nil "cal-dst" "calendar/cal-dst.el" (19598 13691))
  ;;; Generated autoloads from calendar/cal-dst.el
  
  (put 'calendar-daylight-savings-starts 'risky-local-variable t)
  ;;;***
  \f
  ;;;### (autoloads (calendar-hebrew-list-yahrzeits) "cal-hebrew" "calendar/cal-hebrew.el"
 -;;;;;;  (19775 2027))
 +;;;;;;  (19640 47194))
  ;;; Generated autoloads from calendar/cal-hebrew.el
  
  (autoload 'calendar-hebrew-list-yahrzeits "cal-hebrew" "\
@@@ -2727,8 -2732,8 +2709,8 @@@ from the cursor position
  \f
  ;;;### (autoloads (defmath calc-embedded-activate calc-embedded calc-grab-rectangle
  ;;;;;;  calc-grab-region full-calc-keypad calc-keypad calc-eval quick-calc
 -;;;;;;  full-calc calc calc-dispatch) "calc" "calc/calc.el" (19775
 -;;;;;;  2027))
 +;;;;;;  full-calc calc calc-dispatch) "calc" "calc/calc.el" (19591
 +;;;;;;  62571))
  ;;; Generated autoloads from calc/calc.el
   (define-key ctl-x-map "*" 'calc-dispatch)
  
@@@ -2812,8 -2817,19 +2794,8 @@@ See Info node `(calc)Defining Functions
  
  ;;;***
  \f
 -;;;### (autoloads (calc-undo) "calc-undo" "calc/calc-undo.el" (19775
 -;;;;;;  2027))
 -;;; Generated autoloads from calc/calc-undo.el
 -
 -(autoload 'calc-undo "calc-undo" "\
 -Not documented
 -
 -\(fn N)" t nil)
 -
 -;;;***
 -\f
 -;;;### (autoloads (calculator) "calculator" "calculator.el" (19775
 -;;;;;;  2027))
 +;;;### (autoloads (calculator) "calculator" "calculator.el" (19619
 +;;;;;;  52030))
  ;;; Generated autoloads from calculator.el
  
  (autoload 'calculator "calculator" "\
@@@ -2824,8 -2840,8 +2806,8 @@@ See the documentation for `calculator-m
  
  ;;;***
  \f
 -;;;### (autoloads (calendar) "calendar" "calendar/calendar.el" (19780
 -;;;;;;  4513))
 +;;;### (autoloads (calendar) "calendar" "calendar/calendar.el" (19714
 +;;;;;;  43298))
  ;;; Generated autoloads from calendar/calendar.el
  
  (autoload 'calendar "calendar" "\
@@@ -2869,7 -2885,7 +2851,7 @@@ This function is suitable for executio
  ;;;***
  \f
  ;;;### (autoloads (canlock-verify canlock-insert-header) "canlock"
 -;;;;;;  "gnus/canlock.el" (19775 2028))
 +;;;;;;  "gnus/canlock.el" (19598 13691))
  ;;; Generated autoloads from gnus/canlock.el
  
  (autoload 'canlock-insert-header "canlock" "\
@@@ -2887,7 -2903,7 +2869,7 @@@ it fails
  ;;;***
  \f
  ;;;### (autoloads (capitalized-words-mode) "cap-words" "progmodes/cap-words.el"
 -;;;;;;  (19780 4514))
 +;;;;;;  (19562 42953))
  ;;; Generated autoloads from progmodes/cap-words.el
  
  (autoload 'capitalized-words-mode "cap-words" "\
@@@ -2922,15 -2938,15 +2904,15 @@@ Obsoletes `c-forward-into-nomenclature'
  
  ;;;***
  \f
 -;;;### (autoloads nil "cc-compat" "progmodes/cc-compat.el" (19780
 -;;;;;;  4514))
 +;;;### (autoloads nil "cc-compat" "progmodes/cc-compat.el" (19598
 +;;;;;;  13691))
  ;;; Generated autoloads from progmodes/cc-compat.el
  (put 'c-indent-level 'safe-local-variable 'integerp)
  
  ;;;***
  \f
  ;;;### (autoloads (c-guess-basic-syntax) "cc-engine" "progmodes/cc-engine.el"
- ;;;;;;  (19640 47194))
 -;;;;;;  (19780 45051))
++;;;;;;  (19717 39999))
  ;;; Generated autoloads from progmodes/cc-engine.el
  
  (autoload 'c-guess-basic-syntax "cc-engine" "\
@@@ -2942,7 -2958,7 +2924,7 @@@ Return the syntactic context of the cur
  \f
  ;;;### (autoloads (pike-mode idl-mode java-mode objc-mode c++-mode
  ;;;;;;  c-mode c-initialize-cc-mode) "cc-mode" "progmodes/cc-mode.el"
 -;;;;;;  (19775 2029))
 +;;;;;;  (19714 43298))
  ;;; Generated autoloads from progmodes/cc-mode.el
  
  (autoload 'c-initialize-cc-mode "cc-mode" "\
@@@ -3102,7 -3118,7 +3084,7 @@@ Key bindings
  ;;;***
  \f
  ;;;### (autoloads (c-set-offset c-add-style c-set-style) "cc-styles"
 -;;;;;;  "progmodes/cc-styles.el" (19780 4514))
 +;;;;;;  "progmodes/cc-styles.el" (19714 43298))
  ;;; Generated autoloads from progmodes/cc-styles.el
  
  (autoload 'c-set-style "cc-styles" "\
@@@ -3153,7 -3169,7 +3135,7 @@@ and exists only for compatibility reaso
  
  ;;;***
  \f
 -;;;### (autoloads nil "cc-vars" "progmodes/cc-vars.el" (19780 4514))
 +;;;### (autoloads nil "cc-vars" "progmodes/cc-vars.el" (19598 13691))
  ;;; Generated autoloads from progmodes/cc-vars.el
  (put 'c-basic-offset 'safe-local-variable 'integerp)
  (put 'c-backslash-column 'safe-local-variable 'integerp)
  \f
  ;;;### (autoloads (ccl-execute-with-args check-ccl-program define-ccl-program
  ;;;;;;  declare-ccl-program ccl-dump ccl-compile) "ccl" "international/ccl.el"
 -;;;;;;  (19775 2028))
 +;;;;;;  (19640 47194))
  ;;; Generated autoloads from international/ccl.el
  
  (autoload 'ccl-compile "ccl" "\
@@@ -3424,7 -3440,7 +3406,7 @@@ See the documentation of `define-ccl-pr
  ;;;***
  \f
  ;;;### (autoloads (cfengine-mode) "cfengine" "progmodes/cfengine.el"
 -;;;;;;  (19780 4514))
 +;;;;;;  (19714 43298))
  ;;; Generated autoloads from progmodes/cfengine.el
  
  (autoload 'cfengine-mode "cfengine" "\
@@@ -3439,7 -3455,7 +3421,7 @@@ to the action header
  ;;;***
  \f
  ;;;### (autoloads (check-declare-directory check-declare-file) "check-declare"
 -;;;;;;  "emacs-lisp/check-declare.el" (19775 2028))
 +;;;;;;  "emacs-lisp/check-declare.el" (19562 42953))
  ;;; Generated autoloads from emacs-lisp/check-declare.el
  
  (autoload 'check-declare-file "check-declare" "\
@@@ -3464,7 -3480,7 +3446,7 @@@ Returns non-nil if any false statement
  ;;;;;;  checkdoc-comments checkdoc-continue checkdoc-start checkdoc-current-buffer
  ;;;;;;  checkdoc-eval-current-buffer checkdoc-message-interactive
  ;;;;;;  checkdoc-interactive checkdoc checkdoc-list-of-strings-p)
 -;;;;;;  "checkdoc" "emacs-lisp/checkdoc.el" (19775 2028))
 +;;;;;;  "checkdoc" "emacs-lisp/checkdoc.el" (19714 43298))
  ;;; Generated autoloads from emacs-lisp/checkdoc.el
  (put 'checkdoc-force-docstrings-flag 'safe-local-variable 'booleanp)
  (put 'checkdoc-force-history-flag 'safe-local-variable 'booleanp)
@@@ -3659,7 -3675,7 +3641,7 @@@ checking of documentation strings
  \f
  ;;;### (autoloads (pre-write-encode-hz post-read-decode-hz encode-hz-buffer
  ;;;;;;  encode-hz-region decode-hz-buffer decode-hz-region) "china-util"
 -;;;;;;  "language/china-util.el" (19780 4513))
 +;;;;;;  "language/china-util.el" (19562 42953))
  ;;; Generated autoloads from language/china-util.el
  
  (autoload 'decode-hz-region "china-util" "\
@@@ -3697,7 -3713,7 +3679,7 @@@ Not documente
  ;;;***
  \f
  ;;;### (autoloads (command-history list-command-history repeat-matching-complex-command)
 -;;;;;;  "chistory" "chistory.el" (19775 2027))
 +;;;;;;  "chistory" "chistory.el" (19562 42953))
  ;;; Generated autoloads from chistory.el
  
  (autoload 'repeat-matching-complex-command "chistory" "\
@@@ -3736,7 -3752,7 +3718,7 @@@ and runs the normal hook `command-histo
  
  ;;;***
  \f
 -;;;### (autoloads nil "cl" "emacs-lisp/cl.el" (19775 2028))
 +;;;### (autoloads nil "cl" "emacs-lisp/cl.el" (19640 47194))
  ;;; Generated autoloads from emacs-lisp/cl.el
  
  (defvar custom-print-functions nil "\
@@@ -3752,7 -3768,7 +3734,7 @@@ a future Emacs interpreter will be abl
  ;;;***
  \f
  ;;;### (autoloads (common-lisp-indent-function) "cl-indent" "emacs-lisp/cl-indent.el"
 -;;;;;;  (19775 2028))
 +;;;;;;  (19598 13691))
  ;;; Generated autoloads from emacs-lisp/cl-indent.el
  
  (autoload 'common-lisp-indent-function "cl-indent" "\
@@@ -3831,7 -3847,7 +3813,7 @@@ For example, the function `case' has a
  ;;;***
  \f
  ;;;### (autoloads (c-macro-expand) "cmacexp" "progmodes/cmacexp.el"
 -;;;;;;  (19775 2029))
 +;;;;;;  (19562 42953))
  ;;; Generated autoloads from progmodes/cmacexp.el
  
  (autoload 'c-macro-expand "cmacexp" "\
@@@ -3851,8 -3867,8 +3833,8 @@@ For use inside Lisp programs, see also 
  
  ;;;***
  \f
 -;;;### (autoloads (run-scheme) "cmuscheme" "cmuscheme.el" (19775
 -;;;;;;  2027))
 +;;;### (autoloads (run-scheme) "cmuscheme" "cmuscheme.el" (19562
 +;;;;;;  42953))
  ;;; Generated autoloads from cmuscheme.el
  
  (autoload 'run-scheme "cmuscheme" "\
@@@ -3876,7 -3892,7 +3858,7 @@@ is run)
  ;;;### (autoloads (comint-redirect-results-list-from-process comint-redirect-results-list
  ;;;;;;  comint-redirect-send-command-to-process comint-redirect-send-command
  ;;;;;;  comint-run make-comint make-comint-in-buffer) "comint" "comint.el"
 -;;;;;;  (19775 2027))
 +;;;;;;  (19714 43298))
  ;;; Generated autoloads from comint.el
  
  (defvar comint-output-filter-functions '(comint-postoutput-scroll-to-bottom comint-watch-for-password-prompt) "\
@@@ -3971,7 -3987,7 +3953,7 @@@ REGEXP-GROUP is the regular expression 
  ;;;***
  \f
  ;;;### (autoloads (compare-windows) "compare-w" "vc/compare-w.el"
 -;;;;;;  (19780 4514))
 +;;;;;;  (19562 42953))
  ;;; Generated autoloads from vc/compare-w.el
  
  (autoload 'compare-windows "compare-w" "\
@@@ -4008,8 -4024,8 +3990,8 @@@ on third call it again advances points 
  ;;;;;;  compilation-shell-minor-mode compilation-mode compilation-start
  ;;;;;;  compile compilation-disable-input compile-command compilation-search-path
  ;;;;;;  compilation-ask-about-save compilation-window-height compilation-start-hook
 -;;;;;;  compilation-mode-hook) "compile" "progmodes/compile.el" (19780
 -;;;;;;  4514))
 +;;;;;;  compilation-mode-hook) "compile" "progmodes/compile.el" (19714
 +;;;;;;  43298))
  ;;; Generated autoloads from progmodes/compile.el
  
  (defvar compilation-mode-hook nil "\
@@@ -4036,9 -4052,7 +4018,9 @@@ Number of lines in a compilation window
  *Function to call to customize the compilation process.
  This function is called immediately before the compilation process is
  started.  It can be used to set any variables or functions that are used
 -while processing the output of the compilation process.")
 +while processing the output of the compilation process.  The function
 +is called with variables `compilation-buffer' and `compilation-window'
 +bound to the compilation buffer and window, respectively.")
  
  (defvar compilation-buffer-name-function nil "\
  Function to compute the name of a compilation buffer.
@@@ -4185,7 -4199,7 +4167,7 @@@ This is the value of `next-error-functi
  ;;;***
  \f
  ;;;### (autoloads (dynamic-completion-mode) "completion" "completion.el"
 -;;;;;;  (19780 4513))
 +;;;;;;  (19562 42953))
  ;;; Generated autoloads from completion.el
  
  (defvar dynamic-completion-mode nil "\
@@@ -4202,48 -4216,48 +4184,12 @@@ Enable dynamic word-completion
  
  \(fn &optional ARG)" t nil)
  
--;;;***
--\f
--;;;### (autoloads (global-auto-composition-mode auto-composition-mode
- ;;;;;;  encode-composition-rule) "composite" "composite.el" (19714
- ;;;;;;  43298))
 -;;;;;;  encode-composition-rule) "composite" "composite.el" (19760
 -;;;;;;  54262))
--;;; Generated autoloads from composite.el
--
--(autoload 'encode-composition-rule "composite" "\
--Encode composition rule RULE into an integer value.
--RULE is a cons of global and new reference point symbols
--\(see `reference-point-alist').
--
--\(fn RULE)" nil nil)
--
--(autoload 'auto-composition-mode "composite" "\
--Toggle Auto Composition mode.
--With ARG, turn Auto Composition mode off if and only if ARG is a non-positive
--number; if ARG is nil, toggle Auto Composition mode; anything else turns Auto
--Composition on.
--
--When Auto Composition is enabled, text characters are automatically composed
--by functions registered in `composition-function-table' (which see).
--
--You can use `global-auto-composition-mode' to turn on
--Auto Composition mode in all buffers (this is the default).
--
--\(fn &optional ARG)" t nil)
--
--(autoload 'global-auto-composition-mode "composite" "\
--Toggle Auto-Composition mode in every possible buffer.
--With prefix arg, turn Global-Auto-Composition mode on if and only if arg
--is positive.
--See `auto-composition-mode' for more information on Auto-Composition mode.
--
--\(fn &optional ARG)" t nil)
--
  ;;;***
  \f
  ;;;### (autoloads (conf-xdefaults-mode conf-ppd-mode conf-colon-mode
  ;;;;;;  conf-space-keywords conf-space-mode conf-javaprop-mode conf-windows-mode
  ;;;;;;  conf-unix-mode conf-mode) "conf-mode" "textmodes/conf-mode.el"
 -;;;;;;  (19780 4514))
 +;;;;;;  (19562 42953))
  ;;; Generated autoloads from textmodes/conf-mode.el
  
  (autoload 'conf-mode "conf-mode" "\
@@@ -4399,7 -4413,7 +4345,7 @@@ For details see `conf-mode'.  Example
  ;;;***
  \f
  ;;;### (autoloads (shuffle-vector cookie-snarf cookie-insert cookie)
 -;;;;;;  "cookie1" "play/cookie1.el" (19775 2029))
 +;;;;;;  "cookie1" "play/cookie1.el" (19598 13691))
  ;;; Generated autoloads from play/cookie1.el
  
  (autoload 'cookie "cookie1" "\
@@@ -4431,9 -4445,12 +4377,9 @@@ Randomly permute the elements of VECTO
  ;;;***
  \f
  ;;;### (autoloads (copyright-update-directory copyright copyright-fix-years
 -;;;;;;  copyright-update) "copyright" "emacs-lisp/copyright.el" (19780
 -;;;;;;  4513))
 +;;;;;;  copyright-update) "copyright" "emacs-lisp/copyright.el" (19598
 +;;;;;;  13691))
  ;;; Generated autoloads from emacs-lisp/copyright.el
 -(put 'copyright-at-end-flag 'safe-local-variable 'booleanp)
 -(put 'copyright-names-regexp 'safe-local-variable 'stringp)
 -(put 'copyright-year-ranges 'safe-local-variable 'booleanp)
  
  (autoload 'copyright-update "copyright" "\
  Update copyright notice to indicate the current year.
@@@ -4449,6 -4466,8 +4395,6 @@@ interactively
  (autoload 'copyright-fix-years "copyright" "\
  Convert 2 digit years to 4 digit years.
  Uses heuristic: year >= 50 means 19xx, < 50 means 20xx.
 -If `copyright-year-ranges' (which see) is non-nil, also
 -independently replaces consecutive years with a range.
  
  \(fn)" t nil)
  
@@@ -4459,13 -4478,14 +4405,13 @@@ Insert a copyright by $ORGANIZATION not
  
  (autoload 'copyright-update-directory "copyright" "\
  Update copyright notice for all files in DIRECTORY matching MATCH.
 -If FIX is non-nil, run `copyright-fix-years' instead.
  
 -\(fn DIRECTORY MATCH &optional FIX)" t nil)
 +\(fn DIRECTORY MATCH)" t nil)
  
  ;;;***
  \f
  ;;;### (autoloads (cperl-perldoc-at-point cperl-perldoc cperl-mode)
 -;;;;;;  "cperl-mode" "progmodes/cperl-mode.el" (19775 2029))
 +;;;;;;  "cperl-mode" "progmodes/cperl-mode.el" (19714 43298))
  ;;; Generated autoloads from progmodes/cperl-mode.el
  (put 'cperl-indent-level 'safe-local-variable 'integerp)
  (put 'cperl-brace-offset 'safe-local-variable 'integerp)
@@@ -4664,7 -4684,7 +4610,7 @@@ Run a `perldoc' on the word around poin
  ;;;***
  \f
  ;;;### (autoloads (cpp-parse-edit cpp-highlight-buffer) "cpp" "progmodes/cpp.el"
 -;;;;;;  (19780 4514))
 +;;;;;;  (19714 43298))
  ;;; Generated autoloads from progmodes/cpp.el
  
  (autoload 'cpp-highlight-buffer "cpp" "\
@@@ -4683,7 -4703,7 +4629,7 @@@ Edit display information for cpp condit
  ;;;***
  \f
  ;;;### (autoloads (crisp-mode crisp-mode) "crisp" "emulation/crisp.el"
 -;;;;;;  (19775 2028))
 +;;;;;;  (19619 52030))
  ;;; Generated autoloads from emulation/crisp.el
  
  (defvar crisp-mode nil "\
@@@ -4707,7 -4727,7 +4653,7 @@@ With ARG, turn CRiSP mode on if ARG is 
  ;;;***
  \f
  ;;;### (autoloads (completing-read-multiple) "crm" "emacs-lisp/crm.el"
 -;;;;;;  (19775 2028))
 +;;;;;;  (19562 42953))
  ;;; Generated autoloads from emacs-lisp/crm.el
  
  (autoload 'completing-read-multiple "crm" "\
@@@ -4742,8 -4762,8 +4688,8 @@@ INHERIT-INPUT-METHOD
  
  ;;;***
  \f
 -;;;### (autoloads (css-mode) "css-mode" "textmodes/css-mode.el" (19775
 -;;;;;;  2030))
 +;;;### (autoloads (css-mode) "css-mode" "textmodes/css-mode.el" (19619
 +;;;;;;  52030))
  ;;; Generated autoloads from textmodes/css-mode.el
  
  (autoload 'css-mode "css-mode" "\
@@@ -4754,7 -4774,7 +4700,7 @@@ Major mode to edit Cascading Style Shee
  ;;;***
  \f
  ;;;### (autoloads (cua-selection-mode cua-mode) "cua-base" "emulation/cua-base.el"
 -;;;;;;  (19775 2028))
 +;;;;;;  (19714 43298))
  ;;; Generated autoloads from emulation/cua-base.el
  
  (defvar cua-mode nil "\
@@@ -4813,7 -4833,7 +4759,7 @@@ Enable CUA selection mode without the C
  ;;;;;;  customize-mode customize customize-save-variable customize-set-variable
  ;;;;;;  customize-set-value custom-menu-sort-alphabetically custom-buffer-sort-alphabetically
  ;;;;;;  custom-browse-sort-alphabetically) "cus-edit" "cus-edit.el"
 -;;;;;;  (19775 2027))
 +;;;;;;  (19714 43298))
  ;;; Generated autoloads from cus-edit.el
  
  (defvar custom-browse-sort-alphabetically nil "\
@@@ -5116,7 -5136,7 +5062,7 @@@ The format is suitable for use with `ea
  ;;;***
  \f
  ;;;### (autoloads (customize-themes describe-theme customize-create-theme)
 -;;;;;;  "cus-theme" "cus-theme.el" (19775 2028))
 +;;;;;;  "cus-theme" "cus-theme.el" (19714 43298))
  ;;; Generated autoloads from cus-theme.el
  
  (autoload 'customize-create-theme "cus-theme" "\
@@@ -5143,7 -5163,7 +5089,7 @@@ omitted, a buffer named *Custom Themes
  ;;;***
  \f
  ;;;### (autoloads (cvs-status-mode) "cvs-status" "vc/cvs-status.el"
 -;;;;;;  (19775 2030))
 +;;;;;;  (19562 42953))
  ;;; Generated autoloads from vc/cvs-status.el
  
  (autoload 'cvs-status-mode "cvs-status" "\
@@@ -5154,7 -5174,7 +5100,7 @@@ Mode used for cvs status output
  ;;;***
  \f
  ;;;### (autoloads (global-cwarn-mode turn-on-cwarn-mode cwarn-mode)
 -;;;;;;  "cwarn" "progmodes/cwarn.el" (19780 4514))
 +;;;;;;  "cwarn" "progmodes/cwarn.el" (19598 13691))
  ;;; Generated autoloads from progmodes/cwarn.el
  
  (autoload 'cwarn-mode "cwarn" "\
@@@ -5201,7 -5221,7 +5147,7 @@@ See `cwarn-mode' for more information o
  \f
  ;;;### (autoloads (standard-display-cyrillic-translit cyrillic-encode-alternativnyj-char
  ;;;;;;  cyrillic-encode-koi8-r-char) "cyril-util" "language/cyril-util.el"
 -;;;;;;  (19775 2028))
 +;;;;;;  (19562 42953))
  ;;; Generated autoloads from language/cyril-util.el
  
  (autoload 'cyrillic-encode-koi8-r-char "cyril-util" "\
@@@ -5230,7 -5250,7 +5176,7 @@@ If the argument is nil, we return the d
  ;;;***
  \f
  ;;;### (autoloads (dabbrev-expand dabbrev-completion) "dabbrev" "dabbrev.el"
 -;;;;;;  (19775 2028))
 +;;;;;;  (19591 62571))
  ;;; Generated autoloads from dabbrev.el
  (put 'dabbrev-case-fold-search 'risky-local-variable t)
  (put 'dabbrev-case-replace 'risky-local-variable t)
@@@ -5277,7 -5297,7 +5223,7 @@@ See also `dabbrev-abbrev-char-regexp' a
  ;;;***
  \f
  ;;;### (autoloads (data-debug-new-buffer) "data-debug" "cedet/data-debug.el"
 -;;;;;;  (19775 2027))
 +;;;;;;  (19598 13691))
  ;;; Generated autoloads from cedet/data-debug.el
  
  (autoload 'data-debug-new-buffer "data-debug" "\
@@@ -5287,8 -5307,8 +5233,8 @@@ Create a new data-debug buffer with NAM
  
  ;;;***
  \f
 -;;;### (autoloads (dbus-handle-event) "dbus" "net/dbus.el" (19775
 -;;;;;;  2029))
 +;;;### (autoloads (dbus-handle-event) "dbus" "net/dbus.el" (19714
 +;;;;;;  43298))
  ;;; Generated autoloads from net/dbus.el
  
  (autoload 'dbus-handle-event "dbus" "\
@@@ -5301,8 -5321,8 +5247,8 @@@ If the HANDLER returns a `dbus-error', 
  
  ;;;***
  \f
 -;;;### (autoloads (dcl-mode) "dcl-mode" "progmodes/dcl-mode.el" (19775
 -;;;;;;  2029))
 +;;;### (autoloads (dcl-mode) "dcl-mode" "progmodes/dcl-mode.el" (19714
 +;;;;;;  43298))
  ;;; Generated autoloads from progmodes/dcl-mode.el
  
  (autoload 'dcl-mode "dcl-mode" "\
@@@ -5429,7 -5449,7 +5375,7 @@@ There is some minimal font-lock suppor
  ;;;***
  \f
  ;;;### (autoloads (cancel-debug-on-entry debug-on-entry debug) "debug"
 -;;;;;;  "emacs-lisp/debug.el" (19775 2028))
 +;;;;;;  "emacs-lisp/debug.el" (19598 13691))
  ;;; Generated autoloads from emacs-lisp/debug.el
  
  (setq debugger 'debug)
@@@ -5473,7 -5493,7 +5419,7 @@@ To specify a nil argument interactively
  ;;;***
  \f
  ;;;### (autoloads (decipher-mode decipher) "decipher" "play/decipher.el"
 -;;;;;;  (19775 2029))
 +;;;;;;  (19714 43298))
  ;;; Generated autoloads from play/decipher.el
  
  (autoload 'decipher "decipher" "\
@@@ -5502,8 -5522,8 +5448,8 @@@ The most useful commands are
  ;;;***
  \f
  ;;;### (autoloads (delimit-columns-rectangle delimit-columns-region
 -;;;;;;  delimit-columns-customize) "delim-col" "delim-col.el" (19775
 -;;;;;;  2028))
 +;;;;;;  delimit-columns-customize) "delim-col" "delim-col.el" (19562
 +;;;;;;  42953))
  ;;; Generated autoloads from delim-col.el
  
  (autoload 'delimit-columns-customize "delim-col" "\
@@@ -5527,8 -5547,8 +5473,8 @@@ START and END delimits the corners of t
  
  ;;;***
  \f
 -;;;### (autoloads (delphi-mode) "delphi" "progmodes/delphi.el" (19775
 -;;;;;;  2029))
 +;;;### (autoloads (delphi-mode) "delphi" "progmodes/delphi.el" (19714
 +;;;;;;  43298))
  ;;; Generated autoloads from progmodes/delphi.el
  
  (autoload 'delphi-mode "delphi" "\
@@@ -5579,8 -5599,8 +5525,8 @@@ no args, if that value is non-nil
  
  ;;;***
  \f
 -;;;### (autoloads (delete-selection-mode) "delsel" "delsel.el" (19775
 -;;;;;;  2028))
 +;;;### (autoloads (delete-selection-mode) "delsel" "delsel.el" (19562
 +;;;;;;  42953))
  ;;; Generated autoloads from delsel.el
  
  (defalias 'pending-delete-mode 'delete-selection-mode)
@@@ -5609,7 -5629,7 +5555,7 @@@ any selection
  ;;;***
  \f
  ;;;### (autoloads (derived-mode-init-mode-variables define-derived-mode)
 -;;;;;;  "derived" "emacs-lisp/derived.el" (19775 2028))
 +;;;;;;  "derived" "emacs-lisp/derived.el" (19598 13691))
  ;;; Generated autoloads from emacs-lisp/derived.el
  
  (autoload 'define-derived-mode "derived" "\
@@@ -5676,7 -5696,7 +5622,7 @@@ the first time the mode is used
  ;;;***
  \f
  ;;;### (autoloads (describe-char describe-text-properties) "descr-text"
 -;;;;;;  "descr-text.el" (19775 2028))
 +;;;;;;  "descr-text.el" (19591 62571))
  ;;; Generated autoloads from descr-text.el
  
  (autoload 'describe-text-properties "descr-text" "\
@@@ -5704,7 -5724,7 +5650,7 @@@ as well as widgets, buttons, overlays, 
  ;;;### (autoloads (desktop-revert desktop-save-in-desktop-dir desktop-change-dir
  ;;;;;;  desktop-load-default desktop-read desktop-remove desktop-save
  ;;;;;;  desktop-clear desktop-locals-to-save desktop-save-mode) "desktop"
 -;;;;;;  "desktop.el" (19780 4513))
 +;;;;;;  "desktop.el" (19598 13691))
  ;;; Generated autoloads from desktop.el
  
  (defvar desktop-save-mode nil "\
@@@ -5888,7 -5908,7 +5834,7 @@@ Revert to the last loaded desktop
  \f
  ;;;### (autoloads (gnus-article-outlook-deuglify-article gnus-outlook-deuglify-article
  ;;;;;;  gnus-article-outlook-repair-attribution gnus-article-outlook-unwrap-lines)
 -;;;;;;  "deuglify" "gnus/deuglify.el" (19780 4513))
 +;;;;;;  "deuglify" "gnus/deuglify.el" (19598 13691))
  ;;; Generated autoloads from gnus/deuglify.el
  
  (autoload 'gnus-article-outlook-unwrap-lines "deuglify" "\
@@@ -5921,7 -5941,7 +5867,7 @@@ Deuglify broken Outlook (Express) artic
  ;;;***
  \f
  ;;;### (autoloads (diary-mode diary-mail-entries diary) "diary-lib"
 -;;;;;;  "calendar/diary-lib.el" (19775 2027))
 +;;;;;;  "calendar/diary-lib.el" (19714 43298))
  ;;; Generated autoloads from calendar/diary-lib.el
  
  (autoload 'diary "diary-lib" "\
@@@ -5964,7 -5984,7 +5910,7 @@@ Major mode for editing the diary file
  ;;;***
  \f
  ;;;### (autoloads (diff-buffer-with-file diff-backup diff diff-command
 -;;;;;;  diff-switches) "diff" "vc/diff.el" (19775 2030))
 +;;;;;;  diff-switches) "diff" "vc/diff.el" (19714 43298))
  ;;; Generated autoloads from vc/diff.el
  
  (defvar diff-switches (purecopy "-c") "\
@@@ -6008,7 -6028,7 +5954,7 @@@ This requires the external program `dif
  ;;;***
  \f
  ;;;### (autoloads (diff-minor-mode diff-mode) "diff-mode" "vc/diff-mode.el"
 -;;;;;;  (19775 2030))
 +;;;;;;  (19591 62571))
  ;;; Generated autoloads from vc/diff-mode.el
  
  (autoload 'diff-mode "diff-mode" "\
@@@ -6036,7 -6056,7 +5982,7 @@@ Minor mode for viewing/editing context 
  
  ;;;***
  \f
 -;;;### (autoloads (dig) "dig" "net/dig.el" (19775 2029))
 +;;;### (autoloads (dig) "dig" "net/dig.el" (19640 47194))
  ;;; Generated autoloads from net/dig.el
  
  (autoload 'dig "dig" "\
@@@ -6047,9 -6067,8 +5993,9 @@@ Optional arguments are passed to `dig-i
  
  ;;;***
  \f
 -;;;### (autoloads (dired-mode dired-noselect dired-other-frame dired-other-window
 -;;;;;;  dired dired-listing-switches) "dired" "dired.el" (19780 4513))
 +;;;### (autoloads (dired-mode dired-auto-revert-buffer dired-noselect
 +;;;;;;  dired-other-frame dired-other-window dired dired-trivial-filenames
 +;;;;;;  dired-listing-switches) "dired" "dired.el" (19714 43298))
  ;;; Generated autoloads from dired.el
  
  (defvar dired-listing-switches (purecopy "-al") "\
@@@ -6063,16 -6082,6 +6009,16 @@@ some of the `ls' switches are not suppo
  
  (custom-autoload 'dired-listing-switches "dired" t)
  
 +(defvar dired-chown-program (purecopy (if (memq system-type '(hpux usg-unix-v irix gnu/linux cygwin)) "chown" (if (file-exists-p "/usr/sbin/chown") "/usr/sbin/chown" "/etc/chown"))) "\
 +Name of chown command (usually `chown' or `/etc/chown').")
 +
 +(defvar dired-trivial-filenames (purecopy "^\\.\\.?$\\|^#") "\
 +Regexp of files to skip when finding first file of a directory.
 +A value of nil means move to the subdir line.
 +A value of t means move to first file.")
 +
 +(custom-autoload 'dired-trivial-filenames "dired" t)
 +
  (defvar dired-directory nil "\
  The directory name or wildcard spec that this dired directory lists.
  Local to each dired buffer.  May be a list, in which case the car is the
@@@ -6114,18 -6123,6 +6060,18 @@@ Like `dired' but returns the dired buff
  
  \(fn DIR-OR-LIST &optional SWITCHES)" nil nil)
  
 +(defvar dired-auto-revert-buffer nil "\
 +Automatically revert dired buffer on revisiting.
 +If t, revisiting an existing dired buffer automatically reverts it.
 +If its value is a function, call this function with the directory
 +name as single argument and revert the buffer if it returns non-nil.
 +Otherwise, a message offering to revert the changed dired buffer
 +is displayed.
 +Note that this is not the same as `auto-revert-mode' that
 +periodically reverts at specified time intervals.")
 +
 +(custom-autoload 'dired-auto-revert-buffer "dired" t)
 +
  (autoload 'dired-mode "dired" "\
  Mode for \"editing\" directory listings.
  In Dired, you are \"editing\" a list of the files in a directory and
@@@ -6194,7 -6191,7 +6140,7 @@@ Keybindings
  ;;;***
  \f
  ;;;### (autoloads (dirtrack dirtrack-mode) "dirtrack" "dirtrack.el"
 -;;;;;;  (19775 2028))
 +;;;;;;  (19714 43298))
  ;;; Generated autoloads from dirtrack.el
  
  (autoload 'dirtrack-mode "dirtrack" "\
@@@ -6220,8 -6217,8 +6166,8 @@@ function `dirtrack-debug-mode' to turn 
  
  ;;;***
  \f
 -;;;### (autoloads (disassemble) "disass" "emacs-lisp/disass.el" (19775
 -;;;;;;  2028))
 +;;;### (autoloads (disassemble) "disass" "emacs-lisp/disass.el" (19598
 +;;;;;;  13508))
  ;;; Generated autoloads from emacs-lisp/disass.el
  
  (autoload 'disassemble "disass" "\
@@@ -6240,7 -6237,7 +6186,7 @@@ redefine OBJECT if it is a symbol
  ;;;;;;  standard-display-g1 standard-display-ascii standard-display-default
  ;;;;;;  standard-display-8bit describe-current-display-table describe-display-table
  ;;;;;;  set-display-table-slot display-table-slot make-display-table)
 -;;;;;;  "disp-table" "disp-table.el" (19780 4513))
 +;;;;;;  "disp-table" "disp-table.el" (19598 13691))
  ;;; Generated autoloads from disp-table.el
  
  (autoload 'make-display-table "disp-table" "\
@@@ -6362,7 -6359,7 +6308,7 @@@ in `.emacs'
  ;;;***
  \f
  ;;;### (autoloads (dissociated-press) "dissociate" "play/dissociate.el"
 -;;;;;;  (19775 2029))
 +;;;;;;  (19562 42953))
  ;;; Generated autoloads from play/dissociate.el
  
  (autoload 'dissociated-press "dissociate" "\
@@@ -6378,7 -6375,7 +6324,7 @@@ Default is 2
  
  ;;;***
  \f
 -;;;### (autoloads (dnd-protocol-alist) "dnd" "dnd.el" (19780 4513))
 +;;;### (autoloads (dnd-protocol-alist) "dnd" "dnd.el" (19640 47194))
  ;;; Generated autoloads from dnd.el
  
  (defvar dnd-protocol-alist `((,(purecopy "^file:///") . dnd-open-local-file) (,(purecopy "^file://") . dnd-open-file) (,(purecopy "^file:") . dnd-open-local-file) (,(purecopy "^\\(https?\\|ftp\\|file\\|nfs\\)://") . dnd-open-file)) "\
@@@ -6399,7 -6396,7 +6345,7 @@@ if some action was made, or nil if the 
  ;;;***
  \f
  ;;;### (autoloads (dns-mode-soa-increment-serial dns-mode) "dns-mode"
 -;;;;;;  "textmodes/dns-mode.el" (19780 4514))
 +;;;;;;  "textmodes/dns-mode.el" (19619 52030))
  ;;; Generated autoloads from textmodes/dns-mode.el
  
  (autoload 'dns-mode "dns-mode" "\
@@@ -6422,13 -6419,15 +6368,13 @@@ Locate SOA record and increment the ser
  
  ;;;***
  \f
 -;;;### (autoloads (doc-view-bookmark-jump doc-view-minor-mode doc-view-mode-maybe
 -;;;;;;  doc-view-mode doc-view-mode-p) "doc-view" "doc-view.el" (19775
 -;;;;;;  2028))
 +;;;### (autoloads (doc-view-bookmark-jump doc-view-minor-mode doc-view-mode
 +;;;;;;  doc-view-mode-p) "doc-view" "doc-view.el" (19714 43269))
  ;;; Generated autoloads from doc-view.el
  
  (autoload 'doc-view-mode-p "doc-view" "\
 -Return non-nil if document type TYPE is available for `doc-view'.
 -Document types are symbols like `dvi', `ps', `pdf', or `odf' (any
 -OpenDocument format).
 +Return non-nil if image type TYPE is available for `doc-view'.
 +Image types are symbols like `dvi', `postscript' or `pdf'.
  
  \(fn TYPE)" nil nil)
  
@@@ -6444,6 -6443,13 +6390,6 @@@ toggle between displaying the document 
  
  \(fn)" t nil)
  
 -(autoload 'doc-view-mode-maybe "doc-view" "\
 -Switch to `doc-view-mode' if possible.
 -If the required external tools are not available, then fallback
 -to the next best mode.
 -
 -\(fn)" nil nil)
 -
  (autoload 'doc-view-minor-mode "doc-view" "\
  Toggle Doc view minor mode.
  With arg, turn Doc view minor mode on if arg is positive, off otherwise.
@@@ -6458,7 -6464,7 +6404,7 @@@ Not documente
  
  ;;;***
  \f
 -;;;### (autoloads (doctor) "doctor" "play/doctor.el" (19780 4514))
 +;;;### (autoloads (doctor) "doctor" "play/doctor.el" (19714 43298))
  ;;; Generated autoloads from play/doctor.el
  
  (autoload 'doctor "doctor" "\
@@@ -6468,7 -6474,7 +6414,7 @@@ Switch to *doctor* buffer and start giv
  
  ;;;***
  \f
 -;;;### (autoloads (double-mode) "double" "double.el" (19775 2028))
 +;;;### (autoloads (double-mode) "double" "double.el" (19562 42953))
  ;;; Generated autoloads from double.el
  
  (autoload 'double-mode "double" "\
@@@ -6483,7 -6489,7 +6429,7 @@@ when pressed twice.  See variable `doub
  
  ;;;***
  \f
 -;;;### (autoloads (dunnet) "dunnet" "play/dunnet.el" (19775 2029))
 +;;;### (autoloads (dunnet) "dunnet" "play/dunnet.el" (19562 42953))
  ;;; Generated autoloads from play/dunnet.el
  
  (autoload 'dunnet "dunnet" "\
@@@ -6495,7 -6501,7 +6441,7 @@@ Switch to *dungeon* buffer and start ga
  \f
  ;;;### (autoloads (easy-mmode-defsyntax easy-mmode-defmap easy-mmode-define-keymap
  ;;;;;;  define-globalized-minor-mode define-minor-mode) "easy-mmode"
 -;;;;;;  "emacs-lisp/easy-mmode.el" (19775 2028))
 +;;;;;;  "emacs-lisp/easy-mmode.el" (19714 43298))
  ;;; Generated autoloads from emacs-lisp/easy-mmode.el
  
  (defalias 'easy-mmode-define-minor-mode 'define-minor-mode)
@@@ -6509,8 -6515,9 +6455,8 @@@ Optional INIT-VALUE is the initial valu
  Optional LIGHTER is displayed in the modeline when the mode is on.
  Optional KEYMAP is the default keymap bound to the mode keymap.
    If non-nil, it should be a variable name (whose value is a keymap),
 -  or an expression that returns either a keymap or a list of
 -  arguments for `easy-mmode-define-keymap'.  If KEYMAP is not a symbol,
 -  this also defines the variable MODE-map.
 +  a keymap, or a list of arguments for `easy-mmode-define-keymap'.
 +  If KEYMAP is a keymap or list, this also defines the variable MODE-map.
  
  BODY contains code to execute each time the mode is enabled or disabled.
    It is executed after toggling the mode, and before running MODE-hook.
@@@ -6604,8 -6611,8 +6550,8 @@@ CSS contains a list of syntax specifica
  ;;;***
  \f
  ;;;### (autoloads (easy-menu-change easy-menu-create-menu easy-menu-do-define
 -;;;;;;  easy-menu-define) "easymenu" "emacs-lisp/easymenu.el" (19775
 -;;;;;;  2028))
 +;;;;;;  easy-menu-define) "easymenu" "emacs-lisp/easymenu.el" (19598
 +;;;;;;  13691))
  ;;; Generated autoloads from emacs-lisp/easymenu.el
  
  (autoload 'easy-menu-define "easymenu" "\
@@@ -6630,8 -6637,8 +6576,8 @@@ expression has a non-nil value.  `:incl
  
     :active ENABLE
  
 -ENABLE is an expression; the menu is enabled for selection whenever
 -this expression's value is non-nil.  `:enable' is an alias for `:active'.
 +ENABLE is an expression; the menu is enabled for selection
 +whenever this expression's value is non-nil.
  
  The rest of the elements in MENU, are menu items.
  
@@@ -6668,8 -6675,8 +6614,8 @@@ keyboard equivalent
  
     :active ENABLE
  
 -ENABLE is an expression; the item is enabled for selection whenever
 -this expression's value is non-nil.  `:enable' is an alias for `:active'.
 +ENABLE is an expression; the item is enabled for selection
 +whenever this expression's value is non-nil.
  
     :visible INCLUDE
  
@@@ -6759,7 -6766,7 +6705,7 @@@ To implement dynamic menus, either cal
  ;;;;;;  ebnf-eps-file ebnf-eps-directory ebnf-spool-region ebnf-spool-buffer
  ;;;;;;  ebnf-spool-file ebnf-spool-directory ebnf-print-region ebnf-print-buffer
  ;;;;;;  ebnf-print-file ebnf-print-directory ebnf-customize) "ebnf2ps"
 -;;;;;;  "progmodes/ebnf2ps.el" (19775 2029))
 +;;;;;;  "progmodes/ebnf2ps.el" (19714 43298))
  ;;; Generated autoloads from progmodes/ebnf2ps.el
  
  (autoload 'ebnf-customize "ebnf2ps" "\
@@@ -7033,8 -7040,8 +6979,8 @@@ See `ebnf-style-database' documentation
  ;;;;;;  ebrowse-tags-find-declaration-other-window ebrowse-tags-find-definition
  ;;;;;;  ebrowse-tags-view-definition ebrowse-tags-find-declaration
  ;;;;;;  ebrowse-tags-view-declaration ebrowse-member-mode ebrowse-electric-choose-tree
 -;;;;;;  ebrowse-tree-mode) "ebrowse" "progmodes/ebrowse.el" (19780
 -;;;;;;  4514))
 +;;;;;;  ebrowse-tree-mode) "ebrowse" "progmodes/ebrowse.el" (19714
 +;;;;;;  43298))
  ;;; Generated autoloads from progmodes/ebrowse.el
  
  (autoload 'ebrowse-tree-mode "ebrowse" "\
@@@ -7183,7 -7190,7 +7129,7 @@@ Display statistics for a class tree
  ;;;***
  \f
  ;;;### (autoloads (electric-buffer-list) "ebuff-menu" "ebuff-menu.el"
 -;;;;;;  (19775 2028))
 +;;;;;;  (19714 43298))
  ;;; Generated autoloads from ebuff-menu.el
  
  (autoload 'electric-buffer-list "ebuff-menu" "\
@@@ -7208,7 -7215,7 +7154,7 @@@ Run hooks in `electric-buffer-menu-mode
  ;;;***
  \f
  ;;;### (autoloads (Electric-command-history-redo-expression) "echistory"
 -;;;;;;  "echistory.el" (19775 2028))
 +;;;;;;  "echistory.el" (19562 42953))
  ;;; Generated autoloads from echistory.el
  
  (autoload 'Electric-command-history-redo-expression "echistory" "\
@@@ -7220,7 -7227,7 +7166,7 @@@ With prefix arg NOCONFIRM, execute curr
  ;;;***
  \f
  ;;;### (autoloads (ecomplete-setup) "ecomplete" "gnus/ecomplete.el"
 -;;;;;;  (19780 4513))
 +;;;;;;  (19714 43298))
  ;;; Generated autoloads from gnus/ecomplete.el
  
  (autoload 'ecomplete-setup "ecomplete" "\
@@@ -7230,7 -7237,7 +7176,7 @@@ Not documente
  
  ;;;***
  \f
 -;;;### (autoloads (global-ede-mode) "ede" "cedet/ede.el" (19775 2027))
 +;;;### (autoloads (global-ede-mode) "ede" "cedet/ede.el" (19714 43298))
  ;;; Generated autoloads from cedet/ede.el
  
  (defvar global-ede-mode nil "\
@@@ -7256,7 -7263,7 +7202,7 @@@ an EDE controlled project
  \f
  ;;;### (autoloads (edebug-all-forms edebug-all-defs edebug-eval-top-level-form
  ;;;;;;  edebug-basic-spec edebug-all-forms edebug-all-defs) "edebug"
- ;;;;;;  "emacs-lisp/edebug.el" (19714 43298))
 -;;;;;;  "emacs-lisp/edebug.el" (19775 2028))
++;;;;;;  "emacs-lisp/edebug.el" (19720 57265))
  ;;; Generated autoloads from emacs-lisp/edebug.el
  
  (defvar edebug-all-defs nil "\
@@@ -7329,7 -7336,7 +7275,7 @@@ Toggle edebugging of all forms
  ;;;;;;  ediff-merge-directories-with-ancestor ediff-merge-directories
  ;;;;;;  ediff-directories3 ediff-directory-revisions ediff-directories
  ;;;;;;  ediff-buffers3 ediff-buffers ediff-backup ediff-current-file
 -;;;;;;  ediff-files3 ediff-files) "ediff" "vc/ediff.el" (19775 2030))
 +;;;;;;  ediff-files3 ediff-files) "ediff" "vc/ediff.el" (19598 13691))
  ;;; Generated autoloads from vc/ediff.el
  
  (autoload 'ediff-files "ediff" "\
@@@ -7561,7 -7568,7 +7507,7 @@@ With optional NODE, goes to that node
  ;;;***
  \f
  ;;;### (autoloads (ediff-customize) "ediff-help" "vc/ediff-help.el"
 -;;;;;;  (19775 2030))
 +;;;;;;  (19598 13691))
  ;;; Generated autoloads from vc/ediff-help.el
  
  (autoload 'ediff-customize "ediff-help" "\
@@@ -7569,17 -7576,17 +7515,10 @@@ Not documente
  
  \(fn)" t nil)
  
--;;;***
--\f
- ;;;### (autoloads nil "ediff-hook" "vc/ediff-hook.el" (19598 13691))
 -;;;### (autoloads nil "ediff-hook" "vc/ediff-hook.el" (19775 2030))
--;;; Generated autoloads from vc/ediff-hook.el
--
--(if (featurep 'xemacs) (progn (defun ediff-xemacs-init-menus nil (when (featurep 'menubar) (add-submenu '("Tools") ediff-menu "OO-Browser...") (add-submenu '("Tools") ediff-merge-menu "OO-Browser...") (add-submenu '("Tools") epatch-menu "OO-Browser...") (add-submenu '("Tools") ediff-misc-menu "OO-Browser...") (add-menu-button '("Tools") "-------" "OO-Browser..."))) (defvar ediff-menu '("Compare" ["Two Files..." ediff-files t] ["Two Buffers..." ediff-buffers t] ["Three Files..." ediff-files3 t] ["Three Buffers..." ediff-buffers3 t] "---" ["Two Directories..." ediff-directories t] ["Three Directories..." ediff-directories3 t] "---" ["File with Revision..." ediff-revision t] ["Directory Revisions..." ediff-directory-revisions t] "---" ["Windows Word-by-word..." ediff-windows-wordwise t] ["Windows Line-by-line..." ediff-windows-linewise t] "---" ["Regions Word-by-word..." ediff-regions-wordwise t] ["Regions Line-by-line..." ediff-regions-linewise t])) (defvar ediff-merge-menu '("Merge" ["Files..." ediff-merge-files t] ["Files with Ancestor..." ediff-merge-files-with-ancestor t] ["Buffers..." ediff-merge-buffers t] ["Buffers with Ancestor..." ediff-merge-buffers-with-ancestor t] "---" ["Directories..." ediff-merge-directories t] ["Directories with Ancestor..." ediff-merge-directories-with-ancestor t] "---" ["Revisions..." ediff-merge-revisions t] ["Revisions with Ancestor..." ediff-merge-revisions-with-ancestor t] ["Directory Revisions..." ediff-merge-directory-revisions t] ["Directory Revisions with Ancestor..." ediff-merge-directory-revisions-with-ancestor t])) (defvar epatch-menu '("Apply Patch" ["To a file..." ediff-patch-file t] ["To a buffer..." ediff-patch-buffer t])) (defvar ediff-misc-menu '("Ediff Miscellanea" ["Ediff Manual" ediff-documentation t] ["Customize Ediff" ediff-customize t] ["List Ediff Sessions" ediff-show-registry t] ["Use separate frame for Ediff control buffer" ediff-toggle-multiframe :style toggle :selected (if (and (featurep 'ediff-util) (boundp 'ediff-window-setup-function)) (eq ediff-window-setup-function 'ediff-setup-windows-multiframe))] ["Use a toolbar with Ediff control buffer" ediff-toggle-use-toolbar :style toggle :selected (if (featurep 'ediff-tbar) (ediff-use-toolbar-p))])) (if (and (featurep 'menubar) (not (featurep 'infodock)) (not (featurep 'ediff-hook))) (ediff-xemacs-init-menus))) (defvar menu-bar-ediff-misc-menu (make-sparse-keymap "Ediff Miscellanea")) (fset 'menu-bar-ediff-misc-menu (symbol-value 'menu-bar-ediff-misc-menu)) (defvar menu-bar-epatch-menu (make-sparse-keymap "Apply Patch")) (fset 'menu-bar-epatch-menu (symbol-value 'menu-bar-epatch-menu)) (defvar menu-bar-ediff-merge-menu (make-sparse-keymap "Merge")) (fset 'menu-bar-ediff-merge-menu (symbol-value 'menu-bar-ediff-merge-menu)) (defvar menu-bar-ediff-menu (make-sparse-keymap "Compare")) (fset 'menu-bar-ediff-menu (symbol-value 'menu-bar-ediff-menu)) (define-key menu-bar-ediff-menu [ediff-misc] `(menu-item ,(purecopy "Ediff Miscellanea") menu-bar-ediff-misc-menu)) (define-key menu-bar-ediff-menu [separator-ediff-misc] menu-bar-separator) (define-key menu-bar-ediff-menu [window] `(menu-item ,(purecopy "This Window and Next Window") compare-windows :help ,(purecopy "Compare the current window and the next window"))) (define-key menu-bar-ediff-menu [ediff-windows-linewise] `(menu-item ,(purecopy "Windows Line-by-line...") ediff-windows-linewise :help ,(purecopy "Compare windows line-wise"))) (define-key menu-bar-ediff-menu [ediff-windows-wordwise] `(menu-item ,(purecopy "Windows Word-by-word...") ediff-windows-wordwise :help ,(purecopy "Compare windows word-wise"))) (define-key menu-bar-ediff-menu [separator-ediff-windows] menu-bar-separator) (define-key menu-bar-ediff-menu [ediff-regions-linewise] `(menu-item ,(purecopy "Regions Line-by-line...") ediff-regions-linewise :help ,(purecopy "Compare regions line-wise"))) (define-key menu-bar-ediff-menu [ediff-regions-wordwise] `(menu-item ,(purecopy "Regions Word-by-word...") ediff-regions-wordwise :help ,(purecopy "Compare regions word-wise"))) (define-key menu-bar-ediff-menu [separator-ediff-regions] menu-bar-separator) (define-key menu-bar-ediff-menu [ediff-dir-revision] `(menu-item ,(purecopy "Directory Revisions...") ediff-directory-revisions :help ,(purecopy "Compare directory files with their older versions"))) (define-key menu-bar-ediff-menu [ediff-revision] `(menu-item ,(purecopy "File with Revision...") ediff-revision :help ,(purecopy "Compare file with its older versions"))) (define-key menu-bar-ediff-menu [separator-ediff-directories] menu-bar-separator) (define-key menu-bar-ediff-menu [ediff-directories3] `(menu-item ,(purecopy "Three Directories...") ediff-directories3 :help ,(purecopy "Compare files common to three directories simultaneously"))) (define-key menu-bar-ediff-menu [ediff-directories] `(menu-item ,(purecopy "Two Directories...") ediff-directories :help ,(purecopy "Compare files common to two directories simultaneously"))) (define-key menu-bar-ediff-menu [separator-ediff-files] menu-bar-separator) (define-key menu-bar-ediff-menu [ediff-buffers3] `(menu-item ,(purecopy "Three Buffers...") ediff-buffers3 :help ,(purecopy "Compare three buffers simultaneously"))) (define-key menu-bar-ediff-menu [ediff-files3] `(menu-item ,(purecopy "Three Files...") ediff-files3 :help ,(purecopy "Compare three files simultaneously"))) (define-key menu-bar-ediff-menu [ediff-buffers] `(menu-item ,(purecopy "Two Buffers...") ediff-buffers :help ,(purecopy "Compare two buffers simultaneously"))) (define-key menu-bar-ediff-menu [ediff-files] `(menu-item ,(purecopy "Two Files...") ediff-files :help ,(purecopy "Compare two files simultaneously"))) (define-key menu-bar-ediff-merge-menu [ediff-merge-dir-revisions-with-ancestor] `(menu-item ,(purecopy "Directory Revisions with Ancestor...") ediff-merge-directory-revisions-with-ancestor :help ,(purecopy "Merge versions of the files in the same directory by comparing the files with common ancestors"))) (define-key menu-bar-ediff-merge-menu [ediff-merge-dir-revisions] `(menu-item ,(purecopy "Directory Revisions...") ediff-merge-directory-revisions :help ,(purecopy "Merge versions of the files in the same directory (without using ancestor information)"))) (define-key menu-bar-ediff-merge-menu [ediff-merge-revisions-with-ancestor] `(menu-item ,(purecopy "Revisions with Ancestor...") ediff-merge-revisions-with-ancestor :help ,(purecopy "Merge versions of the same file by comparing them with a common ancestor"))) (define-key menu-bar-ediff-merge-menu [ediff-merge-revisions] `(menu-item ,(purecopy "Revisions...") ediff-merge-revisions :help ,(purecopy "Merge versions of the same file (without using ancestor information)"))) (define-key menu-bar-ediff-merge-menu [separator-ediff-merge] menu-bar-separator) (define-key menu-bar-ediff-merge-menu [ediff-merge-directories-with-ancestor] `(menu-item ,(purecopy "Directories with Ancestor...") ediff-merge-directories-with-ancestor :help ,(purecopy "Merge files common to a pair of directories by comparing the files with common ancestors"))) (define-key menu-bar-ediff-merge-menu [ediff-merge-directories] `(menu-item ,(purecopy "Directories...") ediff-merge-directories :help ,(purecopy "Merge files common to a pair of directories"))) (define-key menu-bar-ediff-merge-menu [separator-ediff-merge-dirs] menu-bar-separator) (define-key menu-bar-ediff-merge-menu [ediff-merge-buffers-with-ancestor] `(menu-item ,(purecopy "Buffers with Ancestor...") ediff-merge-buffers-with-ancestor :help ,(purecopy "Merge buffers by comparing their contents with a common ancestor"))) (define-key menu-bar-ediff-merge-menu [ediff-merge-buffers] `(menu-item ,(purecopy "Buffers...") ediff-merge-buffers :help ,(purecopy "Merge buffers (without using ancestor information)"))) (define-key menu-bar-ediff-merge-menu [ediff-merge-files-with-ancestor] `(menu-item ,(purecopy "Files with Ancestor...") ediff-merge-files-with-ancestor :help ,(purecopy "Merge files by comparing them with a common ancestor"))) (define-key menu-bar-ediff-merge-menu [ediff-merge-files] `(menu-item ,(purecopy "Files...") ediff-merge-files :help ,(purecopy "Merge files (without using ancestor information)"))) (define-key menu-bar-epatch-menu [ediff-patch-buffer] `(menu-item ,(purecopy "To a Buffer...") ediff-patch-buffer :help ,(purecopy "Apply a patch to the contents of a buffer"))) (define-key menu-bar-epatch-menu [ediff-patch-file] `(menu-item ,(purecopy "To a File...") ediff-patch-file :help ,(purecopy "Apply a patch to a file"))) (define-key menu-bar-ediff-misc-menu [emultiframe] `(menu-item ,(purecopy "Use separate control buffer frame") ediff-toggle-multiframe :help ,(purecopy "Switch between the single-frame presentation mode and the multi-frame mode"))) (define-key menu-bar-ediff-misc-menu [eregistry] `(menu-item ,(purecopy "List Ediff Sessions") ediff-show-registry :help ,(purecopy "List all active Ediff sessions; it is a convenient way to find and resume such a session"))) (define-key menu-bar-ediff-misc-menu [ediff-cust] `(menu-item ,(purecopy "Customize Ediff") ediff-customize :help ,(purecopy "Change some of the parameters that govern the behavior of Ediff"))) (define-key menu-bar-ediff-misc-menu [ediff-doc] `(menu-item ,(purecopy "Ediff Manual") ediff-documentation :help ,(purecopy "Bring up the Ediff manual"))))
--
  ;;;***
  \f
  ;;;### (autoloads (ediff-show-registry) "ediff-mult" "vc/ediff-mult.el"
 -;;;;;;  (19775 2030))
 +;;;;;;  (19598 13691))
  ;;; Generated autoloads from vc/ediff-mult.el
  
  (autoload 'ediff-show-registry "ediff-mult" "\
@@@ -7592,7 -7599,7 +7531,7 @@@ Display Ediff's registry
  ;;;***
  \f
  ;;;### (autoloads (ediff-toggle-use-toolbar ediff-toggle-multiframe)
 -;;;;;;  "ediff-util" "vc/ediff-util.el" (19780 4514))
 +;;;;;;  "ediff-util" "vc/ediff-util.el" (19714 43298))
  ;;; Generated autoloads from vc/ediff-util.el
  
  (autoload 'ediff-toggle-multiframe "ediff-util" "\
@@@ -7613,7 -7620,7 +7552,7 @@@ To change the default, set the variabl
  \f
  ;;;### (autoloads (format-kbd-macro read-kbd-macro edit-named-kbd-macro
  ;;;;;;  edit-last-kbd-macro edit-kbd-macro) "edmacro" "edmacro.el"
 -;;;;;;  (19775 2028))
 +;;;;;;  (19640 47194))
  ;;; Generated autoloads from edmacro.el
  
  (defvar edmacro-eight-bits nil "\
@@@ -7666,7 -7673,7 +7605,7 @@@ or nil, use a compact 80-column format
  ;;;***
  \f
  ;;;### (autoloads (edt-emulation-on edt-set-scroll-margins) "edt"
 -;;;;;;  "emulation/edt.el" (19780 4513))
 +;;;;;;  "emulation/edt.el" (19714 43298))
  ;;; Generated autoloads from emulation/edt.el
  
  (autoload 'edt-set-scroll-margins "edt" "\
@@@ -7684,7 -7691,7 +7623,7 @@@ Turn on EDT Emulation
  ;;;***
  \f
  ;;;### (autoloads (electric-helpify with-electric-help) "ehelp" "ehelp.el"
 -;;;;;;  (19775 2028))
 +;;;;;;  (19562 42953))
  ;;; Generated autoloads from ehelp.el
  
  (autoload 'with-electric-help "ehelp" "\
@@@ -7721,7 -7728,7 +7660,7 @@@ Not documente
  ;;;***
  \f
  ;;;### (autoloads (turn-on-eldoc-mode eldoc-mode eldoc-minor-mode-string)
 -;;;;;;  "eldoc" "emacs-lisp/eldoc.el" (19775 2028))
 +;;;;;;  "eldoc" "emacs-lisp/eldoc.el" (19562 42953))
  ;;; Generated autoloads from emacs-lisp/eldoc.el
  
  (defvar eldoc-minor-mode-string (purecopy " ElDoc") "\
@@@ -7765,7 -7772,7 +7704,7 @@@ Emacs Lisp mode) that support ElDoc."
  ;;;***
  \f
  ;;;### (autoloads (electric-layout-mode electric-pair-mode electric-indent-mode)
 -;;;;;;  "electric" "electric.el" (19775 2028))
 +;;;;;;  "electric" "electric.el" (19714 43298))
  ;;; Generated autoloads from electric.el
  
  (defvar electric-indent-chars '(10) "\
@@@ -7816,8 -7823,8 +7755,8 @@@ Automatically insert newlines around so
  
  ;;;***
  \f
 -;;;### (autoloads (elide-head) "elide-head" "elide-head.el" (19775
 -;;;;;;  2028))
 +;;;### (autoloads (elide-head) "elide-head" "elide-head.el" (19562
 +;;;;;;  42953))
  ;;; Generated autoloads from elide-head.el
  
  (autoload 'elide-head "elide-head" "\
@@@ -7834,7 -7841,7 +7773,7 @@@ This is suitable as an entry on `find-f
  \f
  ;;;### (autoloads (elint-initialize elint-defun elint-current-buffer
  ;;;;;;  elint-directory elint-file) "elint" "emacs-lisp/elint.el"
 -;;;;;;  (19775 2028))
 +;;;;;;  (19714 43298))
  ;;; Generated autoloads from emacs-lisp/elint.el
  
  (autoload 'elint-file "elint" "\
@@@ -7870,8 -7877,8 +7809,8 @@@ optional prefix argument REINIT is non-
  ;;;***
  \f
  ;;;### (autoloads (elp-results elp-instrument-package elp-instrument-list
 -;;;;;;  elp-instrument-function) "elp" "emacs-lisp/elp.el" (19780
 -;;;;;;  4513))
 +;;;;;;  elp-instrument-function) "elp" "emacs-lisp/elp.el" (19562
 +;;;;;;  42953))
  ;;; Generated autoloads from emacs-lisp/elp.el
  
  (autoload 'elp-instrument-function "elp" "\
@@@ -7906,7 -7913,7 +7845,7 @@@ displayed
  ;;;***
  \f
  ;;;### (autoloads (report-emacs-bug) "emacsbug" "mail/emacsbug.el"
 -;;;;;;  (19775 2028))
 +;;;;;;  (19714 43298))
  ;;; Generated autoloads from mail/emacsbug.el
  
  (autoload 'report-emacs-bug "emacsbug" "\
@@@ -7921,7 -7928,7 +7860,7 @@@ Prompts for bug subject.  Leaves you i
  ;;;;;;  emerge-revisions emerge-files-with-ancestor-remote emerge-files-remote
  ;;;;;;  emerge-files-with-ancestor-command emerge-files-command emerge-buffers-with-ancestor
  ;;;;;;  emerge-buffers emerge-files-with-ancestor emerge-files) "emerge"
 -;;;;;;  "vc/emerge.el" (19677 34570))
 +;;;;;;  "vc/emerge.el" (19714 43298))
  ;;; Generated autoloads from vc/emerge.el
  
  (autoload 'emerge-files "emerge" "\
@@@ -7982,7 -7989,7 +7921,7 @@@ Not documente
  ;;;***
  \f
  ;;;### (autoloads (enriched-decode enriched-encode enriched-mode)
 -;;;;;;  "enriched" "textmodes/enriched.el" (19775 2030))
 +;;;;;;  "enriched" "textmodes/enriched.el" (19619 52030))
  ;;; Generated autoloads from textmodes/enriched.el
  
  (autoload 'enriched-mode "enriched" "\
@@@ -8017,8 -8024,8 +7956,8 @@@ Not documente
  ;;;;;;  epa-sign-region epa-verify-cleartext-in-region epa-verify-region
  ;;;;;;  epa-decrypt-armor-in-region epa-decrypt-region epa-encrypt-file
  ;;;;;;  epa-sign-file epa-verify-file epa-decrypt-file epa-select-keys
 -;;;;;;  epa-list-secret-keys epa-list-keys) "epa" "epa.el" (19780
 -;;;;;;  4513))
 +;;;;;;  epa-list-secret-keys epa-list-keys) "epa" "epa.el" (19714
 +;;;;;;  43298))
  ;;; Generated autoloads from epa.el
  
  (autoload 'epa-list-keys "epa" "\
@@@ -8191,7 -8198,7 +8130,7 @@@ Insert selected KEYS after the point
  ;;;***
  \f
  ;;;### (autoloads (epa-dired-do-encrypt epa-dired-do-sign epa-dired-do-verify
 -;;;;;;  epa-dired-do-decrypt) "epa-dired" "epa-dired.el" (19775 2028))
 +;;;;;;  epa-dired-do-decrypt) "epa-dired" "epa-dired.el" (19598 13691))
  ;;; Generated autoloads from epa-dired.el
  
  (autoload 'epa-dired-do-decrypt "epa-dired" "\
@@@ -8217,7 -8224,7 +8156,7 @@@ Encrypt marked files
  ;;;***
  \f
  ;;;### (autoloads (epa-file-disable epa-file-enable epa-file-handler)
 -;;;;;;  "epa-file" "epa-file.el" (19775 2028))
 +;;;;;;  "epa-file" "epa-file.el" (19640 47194))
  ;;; Generated autoloads from epa-file.el
  
  (autoload 'epa-file-handler "epa-file" "\
@@@ -8239,7 -8246,7 +8178,7 @@@ Not documente
  \f
  ;;;### (autoloads (epa-global-mail-mode epa-mail-import-keys epa-mail-encrypt
  ;;;;;;  epa-mail-sign epa-mail-verify epa-mail-decrypt epa-mail-mode)
 -;;;;;;  "epa-mail" "epa-mail.el" (19775 2028))
 +;;;;;;  "epa-mail" "epa-mail.el" (19714 43298))
  ;;; Generated autoloads from epa-mail.el
  
  (autoload 'epa-mail-mode "epa-mail" "\
@@@ -8303,7 -8310,7 +8242,7 @@@ Minor mode to hook EasyPG into Mail mod
  
  ;;;***
  \f
 -;;;### (autoloads (epg-make-context) "epg" "epg.el" (19780 4513))
 +;;;### (autoloads (epg-make-context) "epg" "epg.el" (19714 43298))
  ;;; Generated autoloads from epg.el
  
  (autoload 'epg-make-context "epg" "\
@@@ -8314,7 -8321,7 +8253,7 @@@ Return a context object
  ;;;***
  \f
  ;;;### (autoloads (epg-expand-group epg-check-configuration epg-configuration)
 -;;;;;;  "epg-config" "epg-config.el" (19775 2028))
 +;;;;;;  "epg-config" "epg-config.el" (19714 43298))
  ;;; Generated autoloads from epg-config.el
  
  (autoload 'epg-configuration "epg-config" "\
@@@ -8335,7 -8342,7 +8274,7 @@@ Look at CONFIG and try to expand GROUP
  ;;;***
  \f
  ;;;### (autoloads (erc-handle-irc-url erc erc-select-read-args) "erc"
 -;;;;;;  "erc/erc.el" (19775 2028))
 +;;;;;;  "erc/erc.el" (19598 13691))
  ;;; Generated autoloads from erc/erc.el
  
  (autoload 'erc-select-read-args "erc" "\
@@@ -8377,33 -8384,33 +8316,33 @@@ Otherwise, connect to HOST:PORT as USE
  
  ;;;***
  \f
 -;;;### (autoloads nil "erc-autoaway" "erc/erc-autoaway.el" (19780
 -;;;;;;  4513))
 +;;;### (autoloads nil "erc-autoaway" "erc/erc-autoaway.el" (19562
 +;;;;;;  42953))
  ;;; Generated autoloads from erc/erc-autoaway.el
   (autoload 'erc-autoaway-mode "erc-autoaway")
  
  ;;;***
  \f
 -;;;### (autoloads nil "erc-button" "erc/erc-button.el" (19775 2028))
 +;;;### (autoloads nil "erc-button" "erc/erc-button.el" (19562 42953))
  ;;; Generated autoloads from erc/erc-button.el
   (autoload 'erc-button-mode "erc-button" nil t)
  
  ;;;***
  \f
 -;;;### (autoloads nil "erc-capab" "erc/erc-capab.el" (19775 2028))
 +;;;### (autoloads nil "erc-capab" "erc/erc-capab.el" (19562 42953))
  ;;; Generated autoloads from erc/erc-capab.el
   (autoload 'erc-capab-identify-mode "erc-capab" nil t)
  
  ;;;***
  \f
 -;;;### (autoloads nil "erc-compat" "erc/erc-compat.el" (19780 4513))
 +;;;### (autoloads nil "erc-compat" "erc/erc-compat.el" (19562 42953))
  ;;; Generated autoloads from erc/erc-compat.el
   (autoload 'erc-define-minor-mode "erc-compat")
  
  ;;;***
  \f
  ;;;### (autoloads (erc-ctcp-query-DCC pcomplete/erc-mode/DCC erc-cmd-DCC)
 -;;;;;;  "erc-dcc" "erc/erc-dcc.el" (19780 4513))
 +;;;;;;  "erc-dcc" "erc/erc-dcc.el" (19562 42953))
  ;;; Generated autoloads from erc/erc-dcc.el
   (autoload 'erc-dcc-mode "erc-dcc")
  
@@@ -8436,7 -8443,7 +8375,7 @@@ that subcommand
  ;;;;;;  erc-ezb-add-session erc-ezb-end-of-session-list erc-ezb-init-session-list
  ;;;;;;  erc-ezb-identify erc-ezb-notice-autodetect erc-ezb-lookup-action
  ;;;;;;  erc-ezb-get-login erc-cmd-ezb) "erc-ezbounce" "erc/erc-ezbounce.el"
 -;;;;;;  (19775 2028))
 +;;;;;;  (19562 42953))
  ;;; Generated autoloads from erc/erc-ezbounce.el
  
  (autoload 'erc-cmd-ezb "erc-ezbounce" "\
@@@ -8498,8 -8505,8 +8437,8 @@@ Add EZBouncer convenience functions to 
  
  ;;;***
  \f
 -;;;### (autoloads (erc-fill) "erc-fill" "erc/erc-fill.el" (19775
 -;;;;;;  2028))
 +;;;### (autoloads (erc-fill) "erc-fill" "erc/erc-fill.el" (19562
 +;;;;;;  42953))
  ;;; Generated autoloads from erc/erc-fill.el
   (autoload 'erc-fill-mode "erc-fill" nil t)
  
@@@ -8511,15 -8518,15 +8450,15 @@@ You can put this on `erc-insert-modify-
  
  ;;;***
  \f
 -;;;### (autoloads nil "erc-hecomplete" "erc/erc-hecomplete.el" (19775
 -;;;;;;  2028))
 +;;;### (autoloads nil "erc-hecomplete" "erc/erc-hecomplete.el" (19591
 +;;;;;;  62571))
  ;;; Generated autoloads from erc/erc-hecomplete.el
   (autoload 'erc-hecomplete-mode "erc-hecomplete" nil t)
  
  ;;;***
  \f
  ;;;### (autoloads (erc-identd-stop erc-identd-start) "erc-identd"
 -;;;;;;  "erc/erc-identd.el" (19775 2028))
 +;;;;;;  "erc/erc-identd.el" (19562 42953))
  ;;; Generated autoloads from erc/erc-identd.el
   (autoload 'erc-identd-mode "erc-identd")
  
@@@ -8541,7 -8548,7 +8480,7 @@@ Not documente
  ;;;***
  \f
  ;;;### (autoloads (erc-create-imenu-index) "erc-imenu" "erc/erc-imenu.el"
 -;;;;;;  (19775 2028))
 +;;;;;;  (19562 42953))
  ;;; Generated autoloads from erc/erc-imenu.el
  
  (autoload 'erc-create-imenu-index "erc-imenu" "\
@@@ -8551,20 -8558,20 +8490,20 @@@ Not documente
  
  ;;;***
  \f
 -;;;### (autoloads nil "erc-join" "erc/erc-join.el" (19775 2028))
 +;;;### (autoloads nil "erc-join" "erc/erc-join.el" (19598 13691))
  ;;; Generated autoloads from erc/erc-join.el
   (autoload 'erc-autojoin-mode "erc-join" nil t)
  
  ;;;***
  \f
 -;;;### (autoloads nil "erc-list" "erc/erc-list.el" (19775 2028))
 +;;;### (autoloads nil "erc-list" "erc/erc-list.el" (19640 47194))
  ;;; Generated autoloads from erc/erc-list.el
   (autoload 'erc-list-mode "erc-list")
  
  ;;;***
  \f
  ;;;### (autoloads (erc-save-buffer-in-logs erc-logging-enabled) "erc-log"
 -;;;;;;  "erc/erc-log.el" (19775 2028))
 +;;;;;;  "erc/erc-log.el" (19562 42953))
  ;;; Generated autoloads from erc/erc-log.el
   (autoload 'erc-log-mode "erc-log" nil t)
  
@@@ -8596,7 -8603,7 +8535,7 @@@ You can save every individual message b
  ;;;### (autoloads (erc-delete-dangerous-host erc-add-dangerous-host
  ;;;;;;  erc-delete-keyword erc-add-keyword erc-delete-fool erc-add-fool
  ;;;;;;  erc-delete-pal erc-add-pal) "erc-match" "erc/erc-match.el"
 -;;;;;;  (19775 2028))
 +;;;;;;  (19562 42953))
  ;;; Generated autoloads from erc/erc-match.el
   (autoload 'erc-match-mode "erc-match")
  
@@@ -8642,14 -8649,14 +8581,14 @@@ Delete dangerous-host interactively to 
  
  ;;;***
  \f
 -;;;### (autoloads nil "erc-menu" "erc/erc-menu.el" (19775 2028))
 +;;;### (autoloads nil "erc-menu" "erc/erc-menu.el" (19562 42953))
  ;;; Generated autoloads from erc/erc-menu.el
   (autoload 'erc-menu-mode "erc-menu" nil t)
  
  ;;;***
  \f
  ;;;### (autoloads (erc-cmd-WHOLEFT) "erc-netsplit" "erc/erc-netsplit.el"
 -;;;;;;  (19775 2028))
 +;;;;;;  (19562 42953))
  ;;; Generated autoloads from erc/erc-netsplit.el
   (autoload 'erc-netsplit-mode "erc-netsplit")
  
@@@ -8661,7 -8668,7 +8600,7 @@@ Show who's gone
  ;;;***
  \f
  ;;;### (autoloads (erc-server-select erc-determine-network) "erc-networks"
 -;;;;;;  "erc/erc-networks.el" (19775 2028))
 +;;;;;;  "erc/erc-networks.el" (19562 42953))
  ;;; Generated autoloads from erc/erc-networks.el
  
  (autoload 'erc-determine-network "erc-networks" "\
@@@ -8679,7 -8686,7 +8618,7 @@@ Interactively select a server to connec
  ;;;***
  \f
  ;;;### (autoloads (pcomplete/erc-mode/NOTIFY erc-cmd-NOTIFY) "erc-notify"
 -;;;;;;  "erc/erc-notify.el" (19775 2028))
 +;;;;;;  "erc/erc-notify.el" (19562 42953))
  ;;; Generated autoloads from erc/erc-notify.el
   (autoload 'erc-notify-mode "erc-notify" nil t)
  
@@@ -8697,33 -8704,33 +8636,33 @@@ Not documente
  
  ;;;***
  \f
 -;;;### (autoloads nil "erc-page" "erc/erc-page.el" (19775 2028))
 +;;;### (autoloads nil "erc-page" "erc/erc-page.el" (19562 42953))
  ;;; Generated autoloads from erc/erc-page.el
   (autoload 'erc-page-mode "erc-page")
  
  ;;;***
  \f
 -;;;### (autoloads nil "erc-pcomplete" "erc/erc-pcomplete.el" (19775
 -;;;;;;  2028))
 +;;;### (autoloads nil "erc-pcomplete" "erc/erc-pcomplete.el" (19562
 +;;;;;;  42953))
  ;;; Generated autoloads from erc/erc-pcomplete.el
   (autoload 'erc-completion-mode "erc-pcomplete" nil t)
  
  ;;;***
  \f
 -;;;### (autoloads nil "erc-replace" "erc/erc-replace.el" (19775 2028))
 +;;;### (autoloads nil "erc-replace" "erc/erc-replace.el" (19562 42953))
  ;;; Generated autoloads from erc/erc-replace.el
   (autoload 'erc-replace-mode "erc-replace")
  
  ;;;***
  \f
 -;;;### (autoloads nil "erc-ring" "erc/erc-ring.el" (19775 2028))
 +;;;### (autoloads nil "erc-ring" "erc/erc-ring.el" (19562 42953))
  ;;; Generated autoloads from erc/erc-ring.el
   (autoload 'erc-ring-mode "erc-ring" nil t)
  
  ;;;***
  \f
  ;;;### (autoloads (erc-nickserv-identify erc-nickserv-identify-mode)
 -;;;;;;  "erc-services" "erc/erc-services.el" (19775 2028))
 +;;;;;;  "erc-services" "erc/erc-services.el" (19562 42953))
  ;;; Generated autoloads from erc/erc-services.el
   (autoload 'erc-services-mode "erc-services" nil t)
  
@@@ -8740,14 -8747,14 +8679,14 @@@ When called interactively, read the pas
  
  ;;;***
  \f
 -;;;### (autoloads nil "erc-sound" "erc/erc-sound.el" (19775 2028))
 +;;;### (autoloads nil "erc-sound" "erc/erc-sound.el" (19562 42953))
  ;;; Generated autoloads from erc/erc-sound.el
   (autoload 'erc-sound-mode "erc-sound")
  
  ;;;***
  \f
  ;;;### (autoloads (erc-speedbar-browser) "erc-speedbar" "erc/erc-speedbar.el"
 -;;;;;;  (19775 2028))
 +;;;;;;  (19562 42953))
  ;;; Generated autoloads from erc/erc-speedbar.el
  
  (autoload 'erc-speedbar-browser "erc-speedbar" "\
@@@ -8758,21 -8765,21 +8697,21 @@@ This will add a speedbar major display 
  
  ;;;***
  \f
 -;;;### (autoloads nil "erc-spelling" "erc/erc-spelling.el" (19775
 -;;;;;;  2028))
 +;;;### (autoloads nil "erc-spelling" "erc/erc-spelling.el" (19562
 +;;;;;;  42953))
  ;;; Generated autoloads from erc/erc-spelling.el
   (autoload 'erc-spelling-mode "erc-spelling" nil t)
  
  ;;;***
  \f
 -;;;### (autoloads nil "erc-stamp" "erc/erc-stamp.el" (19780 4513))
 +;;;### (autoloads nil "erc-stamp" "erc/erc-stamp.el" (19562 42953))
  ;;; Generated autoloads from erc/erc-stamp.el
   (autoload 'erc-timestamp-mode "erc-stamp" nil t)
  
  ;;;***
  \f
  ;;;### (autoloads (erc-track-minor-mode) "erc-track" "erc/erc-track.el"
 -;;;;;;  (19775 2028))
 +;;;;;;  (19562 42953))
  ;;; Generated autoloads from erc/erc-track.el
  
  (defvar erc-track-minor-mode nil "\
@@@ -8795,7 -8802,7 +8734,7 @@@ module, otherwise the keybindings will 
  ;;;***
  \f
  ;;;### (autoloads (erc-truncate-buffer erc-truncate-buffer-to-size)
 -;;;;;;  "erc-truncate" "erc/erc-truncate.el" (19775 2028))
 +;;;;;;  "erc-truncate" "erc/erc-truncate.el" (19562 42953))
  ;;; Generated autoloads from erc/erc-truncate.el
   (autoload 'erc-truncate-mode "erc-truncate" nil t)
  
@@@ -8815,7 -8822,7 +8754,7 @@@ Meant to be used in hooks, like `erc-in
  ;;;***
  \f
  ;;;### (autoloads (erc-xdcc-add-file) "erc-xdcc" "erc/erc-xdcc.el"
 -;;;;;;  (19775 2028))
 +;;;;;;  (19640 47194))
  ;;; Generated autoloads from erc/erc-xdcc.el
   (autoload 'erc-xdcc-mode "erc-xdcc")
  
@@@ -8826,8 -8833,92 +8765,8 @@@ Add a file to `erc-xdcc-files'
  
  ;;;***
  \f
 -;;;### (autoloads (ert-describe-test ert-run-tests-interactively
 -;;;;;;  ert-run-tests-batch-and-exit ert-run-tests-batch ert-deftest)
 -;;;;;;  "ert" "emacs-lisp/ert.el" (19775 2028))
 -;;; Generated autoloads from emacs-lisp/ert.el
 -
 -(autoload 'ert-deftest "ert" "\
 -Define NAME (a symbol) as a test.
 -
 -BODY is evaluated as a `progn' when the test is run.  It should
 -signal a condition on failure or just return if the test passes.
 -
 -`should', `should-not' and `should-error' are useful for
 -assertions in BODY.
 -
 -Use `ert' to run tests interactively.
 -
 -Tests that are expected to fail can be marked as such
 -using :expected-result.  See `ert-test-result-type-p' for a
 -description of valid values for RESULT-TYPE.
 -
 -\(fn NAME () [DOCSTRING] [:expected-result RESULT-TYPE] [:tags '(TAG...)] BODY...)" nil (quote macro))
 -
 -(put 'ert-deftest 'lisp-indent-function '2)
 -
 -(put 'ert-deftest 'doc-string-elt '3)
 -
 -(put 'ert-deftest 'lisp-indent-function 2)
 -
 -(put 'ert-info 'lisp-indent-function 1)
 -
 -(autoload 'ert-run-tests-batch "ert" "\
 -Run the tests specified by SELECTOR, printing results to the terminal.
 -
 -SELECTOR works as described in `ert-select-tests', except if
 -SELECTOR is nil, in which case all tests rather than none will be
 -run; this makes the command line \"emacs -batch -l my-tests.el -f
 -ert-run-tests-batch-and-exit\" useful.
 -
 -Returns the stats object.
 -
 -\(fn &optional SELECTOR)" nil nil)
 -
 -(autoload 'ert-run-tests-batch-and-exit "ert" "\
 -Like `ert-run-tests-batch', but exits Emacs when done.
 -
 -The exit status will be 0 if all test results were as expected, 1
 -on unexpected results, or 2 if the tool detected an error outside
 -of the tests (e.g. invalid SELECTOR or bug in the code that runs
 -the tests).
 -
 -\(fn &optional SELECTOR)" nil nil)
 -
 -(autoload 'ert-run-tests-interactively "ert" "\
 -Run the tests specified by SELECTOR and display the results in a buffer.
 -
 -SELECTOR works as described in `ert-select-tests'.
 -OUTPUT-BUFFER-NAME and MESSAGE-FN should normally be nil; they
 -are used for automated self-tests and specify which buffer to use
 -and how to display message.
 -
 -\(fn SELECTOR &optional OUTPUT-BUFFER-NAME MESSAGE-FN)" t nil)
 -
 -(defalias 'ert 'ert-run-tests-interactively)
 -
 -(autoload 'ert-describe-test "ert" "\
 -Display the documentation for TEST-OR-TEST-NAME (a symbol or ert-test).
 -
 -\(fn TEST-OR-TEST-NAME)" t nil)
 -
 -;;;***
 -\f
 -;;;### (autoloads (ert-kill-all-test-buffers) "ert-x" "emacs-lisp/ert-x.el"
 -;;;;;;  (19775 2028))
 -;;; Generated autoloads from emacs-lisp/ert-x.el
 -
 -(put 'ert-with-test-buffer 'lisp-indent-function 1)
 -
 -(autoload 'ert-kill-all-test-buffers "ert-x" "\
 -Kill all test buffers that are still live.
 -
 -\(fn)" t nil)
 -
 -;;;***
 -\f
 -;;;### (autoloads (eshell-mode) "esh-mode" "eshell/esh-mode.el" (19775
 -;;;;;;  2028))
 +;;;### (autoloads (eshell-mode) "esh-mode" "eshell/esh-mode.el" (19619
 +;;;;;;  52030))
  ;;; Generated autoloads from eshell/esh-mode.el
  
  (autoload 'eshell-mode "esh-mode" "\
@@@ -8839,8 -8930,8 +8778,8 @@@ Emacs shell interactive mode
  
  ;;;***
  \f
 -;;;### (autoloads (eshell-test) "esh-test" "eshell/esh-test.el" (19775
 -;;;;;;  2028))
 +;;;### (autoloads (eshell-test) "esh-test" "eshell/esh-test.el" (19714
 +;;;;;;  43298))
  ;;; Generated autoloads from eshell/esh-test.el
  
  (autoload 'eshell-test "esh-test" "\
@@@ -8851,7 -8942,7 +8790,7 @@@ Test Eshell to verify that it works as 
  ;;;***
  \f
  ;;;### (autoloads (eshell-command-result eshell-command eshell) "eshell"
 -;;;;;;  "eshell/eshell.el" (19775 2028))
 +;;;;;;  "eshell/eshell.el" (19562 42953))
  ;;; Generated autoloads from eshell/eshell.el
  
  (autoload 'eshell "eshell" "\
@@@ -8892,7 -8983,7 +8831,7 @@@ corresponding to a successful execution
  ;;;;;;  visit-tags-table tags-table-mode find-tag-default-function
  ;;;;;;  find-tag-hook tags-add-tables tags-compression-info-list
  ;;;;;;  tags-table-list tags-case-fold-search) "etags" "progmodes/etags.el"
 -;;;;;;  (19780 4514))
 +;;;;;;  (19714 43298))
  ;;; Generated autoloads from progmodes/etags.el
  
  (defvar tags-file-name nil "\
@@@ -9206,7 -9297,7 +9145,7 @@@ for \\[find-tag] (which see)
  ;;;;;;  ethio-fidel-to-sera-marker ethio-fidel-to-sera-region ethio-fidel-to-sera-buffer
  ;;;;;;  ethio-sera-to-fidel-marker ethio-sera-to-fidel-region ethio-sera-to-fidel-buffer
  ;;;;;;  setup-ethiopic-environment-internal) "ethio-util" "language/ethio-util.el"
 -;;;;;;  (19780 4513))
 +;;;;;;  (19562 42953))
  ;;; Generated autoloads from language/ethio-util.el
  
  (autoload 'setup-ethiopic-environment-internal "ethio-util" "\
@@@ -9376,7 -9467,7 +9315,7 @@@ Not documente
  \f
  ;;;### (autoloads (eudc-load-eudc eudc-query-form eudc-expand-inline
  ;;;;;;  eudc-get-phone eudc-get-email eudc-set-server) "eudc" "net/eudc.el"
 -;;;;;;  (19775 2029))
 +;;;;;;  (19714 43298))
  ;;; Generated autoloads from net/eudc.el
  
  (autoload 'eudc-set-server "eudc" "\
@@@ -9432,7 -9523,7 +9371,7 @@@ This does nothing except loading eudc b
  \f
  ;;;### (autoloads (eudc-display-jpeg-as-button eudc-display-jpeg-inline
  ;;;;;;  eudc-display-sound eudc-display-mail eudc-display-url eudc-display-generic-binary)
 -;;;;;;  "eudc-bob" "net/eudc-bob.el" (19775 2029))
 +;;;;;;  "eudc-bob" "net/eudc-bob.el" (19598 13691))
  ;;; Generated autoloads from net/eudc-bob.el
  
  (autoload 'eudc-display-generic-binary "eudc-bob" "\
@@@ -9468,7 -9559,7 +9407,7 @@@ Display a button for the JPEG DATA
  ;;;***
  \f
  ;;;### (autoloads (eudc-try-bbdb-insert eudc-insert-record-at-point-into-bbdb)
 -;;;;;;  "eudc-export" "net/eudc-export.el" (19775 2029))
 +;;;;;;  "eudc-export" "net/eudc-export.el" (19598 13691))
  ;;; Generated autoloads from net/eudc-export.el
  
  (autoload 'eudc-insert-record-at-point-into-bbdb "eudc-export" "\
@@@ -9485,7 -9576,7 +9424,7 @@@ Call `eudc-insert-record-at-point-into-
  ;;;***
  \f
  ;;;### (autoloads (eudc-edit-hotlist) "eudc-hotlist" "net/eudc-hotlist.el"
 -;;;;;;  (19775 2029))
 +;;;;;;  (19640 47194))
  ;;; Generated autoloads from net/eudc-hotlist.el
  
  (autoload 'eudc-edit-hotlist "eudc-hotlist" "\
@@@ -9495,8 -9586,8 +9434,8 @@@ Edit the hotlist of directory servers i
  
  ;;;***
  \f
 -;;;### (autoloads (ewoc-create) "ewoc" "emacs-lisp/ewoc.el" (19775
 -;;;;;;  2028))
 +;;;### (autoloads (ewoc-create) "ewoc" "emacs-lisp/ewoc.el" (19591
 +;;;;;;  62571))
  ;;; Generated autoloads from emacs-lisp/ewoc.el
  
  (autoload 'ewoc-create "ewoc" "\
@@@ -9525,7 -9616,7 +9464,7 @@@ fourth arg NOSEP non-nil inhibits this
  ;;;### (autoloads (executable-make-buffer-file-executable-if-script-p
  ;;;;;;  executable-self-display executable-set-magic executable-interpret
  ;;;;;;  executable-command-find-posix-p) "executable" "progmodes/executable.el"
 -;;;;;;  (19775 2029))
 +;;;;;;  (19562 42953))
  ;;; Generated autoloads from progmodes/executable.el
  
  (autoload 'executable-command-find-posix-p "executable" "\
@@@ -9568,7 -9659,7 +9507,7 @@@ file modes
  \f
  ;;;### (autoloads (expand-jump-to-next-slot expand-jump-to-previous-slot
  ;;;;;;  expand-abbrev-hook expand-add-abbrevs) "expand" "expand.el"
 -;;;;;;  (19775 2028))
 +;;;;;;  (19562 42953))
  ;;; Generated autoloads from expand.el
  
  (autoload 'expand-add-abbrevs "expand" "\
@@@ -9617,7 -9708,7 +9556,7 @@@ This is used only in conjunction with `
  
  ;;;***
  \f
 -;;;### (autoloads (f90-mode) "f90" "progmodes/f90.el" (19775 2029))
 +;;;### (autoloads (f90-mode) "f90" "progmodes/f90.el" (19714 43298))
  ;;; Generated autoloads from progmodes/f90.el
  
  (autoload 'f90-mode "f90" "\
@@@ -9683,8 -9774,8 +9622,8 @@@ with no args, if that value is non-nil
  ;;;### (autoloads (variable-pitch-mode buffer-face-toggle buffer-face-set
  ;;;;;;  buffer-face-mode text-scale-adjust text-scale-decrease text-scale-increase
  ;;;;;;  text-scale-set face-remap-set-base face-remap-reset-base
 -;;;;;;  face-remap-add-relative) "face-remap" "face-remap.el" (19775
 -;;;;;;  2028))
 +;;;;;;  face-remap-add-relative) "face-remap" "face-remap.el" (19714
 +;;;;;;  43298))
  ;;; Generated autoloads from face-remap.el
  
  (autoload 'face-remap-add-relative "face-remap" "\
@@@ -9824,7 -9915,7 +9763,7 @@@ Besides the choice of face, it is the s
  \f
  ;;;### (autoloads (feedmail-queue-reminder feedmail-run-the-queue
  ;;;;;;  feedmail-run-the-queue-global-prompt feedmail-run-the-queue-no-prompts
 -;;;;;;  feedmail-send-it) "feedmail" "mail/feedmail.el" (19763 27286))
 +;;;;;;  feedmail-send-it) "feedmail" "mail/feedmail.el" (19619 52030))
  ;;; Generated autoloads from mail/feedmail.el
  
  (autoload 'feedmail-send-it "feedmail" "\
@@@ -9878,7 -9969,7 +9817,7 @@@ you can set `feedmail-queue-reminder-al
  ;;;***
  \f
  ;;;### (autoloads (ffap-bindings dired-at-point ffap-at-mouse ffap-menu
 -;;;;;;  find-file-at-point ffap-next) "ffap" "ffap.el" (19775 2028))
 +;;;;;;  find-file-at-point ffap-next) "ffap" "ffap.el" (19591 62571))
  ;;; Generated autoloads from ffap.el
  
  (autoload 'ffap-next "ffap" "\
@@@ -9942,7 -10033,7 +9881,7 @@@ Evaluate the forms in variable `ffap-bi
  ;;;### (autoloads (file-cache-minibuffer-complete file-cache-add-directory-recursively
  ;;;;;;  file-cache-add-directory-using-locate file-cache-add-directory-using-find
  ;;;;;;  file-cache-add-file file-cache-add-directory-list file-cache-add-directory)
 -;;;;;;  "filecache" "filecache.el" (19775 2028))
 +;;;;;;  "filecache" "filecache.el" (19714 43298))
  ;;; Generated autoloads from filecache.el
  
  (autoload 'file-cache-add-directory "filecache" "\
@@@ -10002,7 -10093,7 +9941,7 @@@ the name is considered already unique; 
  ;;;;;;  copy-file-locals-to-dir-locals delete-dir-local-variable
  ;;;;;;  add-dir-local-variable delete-file-local-variable-prop-line
  ;;;;;;  add-file-local-variable-prop-line delete-file-local-variable
 -;;;;;;  add-file-local-variable) "files-x" "files-x.el" (19775 2028))
 +;;;;;;  add-file-local-variable) "files-x" "files-x.el" (19598 13691))
  ;;; Generated autoloads from files-x.el
  
  (autoload 'add-file-local-variable "files-x" "\
@@@ -10067,8 -10158,8 +10006,8 @@@ Copy directory-local variables to the -
  
  ;;;***
  \f
 -;;;### (autoloads (filesets-init) "filesets" "filesets.el" (19780
 -;;;;;;  4513))
 +;;;### (autoloads (filesets-init) "filesets" "filesets.el" (19619
 +;;;;;;  52030))
  ;;; Generated autoloads from filesets.el
  
  (autoload 'filesets-init "filesets" "\
@@@ -10079,7 -10170,7 +10018,7 @@@ Set up hooks, load the cache file -- i
  
  ;;;***
  \f
 -;;;### (autoloads (find-cmd) "find-cmd" "find-cmd.el" (19775 2028))
 +;;;### (autoloads (find-cmd) "find-cmd" "find-cmd.el" (19562 42953))
  ;;; Generated autoloads from find-cmd.el
  
  (autoload 'find-cmd "find-cmd" "\
@@@ -10100,7 -10191,7 +10039,7 @@@ result is a string that should be read
  \f
  ;;;### (autoloads (find-grep-dired find-name-dired find-dired find-grep-options
  ;;;;;;  find-ls-subdir-switches find-ls-option) "find-dired" "find-dired.el"
 -;;;;;;  (19775 2028))
 +;;;;;;  (19562 42953))
  ;;; Generated autoloads from find-dired.el
  
  (defvar find-ls-option (if (eq system-type 'berkeley-unix) (purecopy '("-ls" . "-gilsb")) (purecopy '("-exec ls -ld {} \\;" . "-ld"))) "\
@@@ -10161,7 -10252,7 +10100,7 @@@ Thus ARG can also contain additional gr
  \f
  ;;;### (autoloads (ff-mouse-find-other-file-other-window ff-mouse-find-other-file
  ;;;;;;  ff-find-other-file ff-get-other-file) "find-file" "find-file.el"
 -;;;;;;  (19775 2028))
 +;;;;;;  (19562 42953))
  ;;; Generated autoloads from find-file.el
  
  (defvar ff-special-constructs `((,(purecopy "^#\\s *\\(include\\|import\\)\\s +[<\"]\\(.*\\)[>\"]") lambda nil (buffer-substring (match-beginning 2) (match-end 2)))) "\
@@@ -10255,7 -10346,7 +10194,7 @@@ Visit the file you click on in another 
  ;;;;;;  find-variable find-variable-noselect find-function-other-frame
  ;;;;;;  find-function-other-window find-function find-function-noselect
  ;;;;;;  find-function-search-for-symbol find-library) "find-func"
 -;;;;;;  "emacs-lisp/find-func.el" (19775 2028))
 +;;;;;;  "emacs-lisp/find-func.el" (19714 43298))
  ;;; Generated autoloads from emacs-lisp/find-func.el
  
  (autoload 'find-library "find-func" "\
@@@ -10410,7 -10501,7 +10349,7 @@@ Define some key bindings for the find-f
  ;;;***
  \f
  ;;;### (autoloads (find-lisp-find-dired-filter find-lisp-find-dired-subdirectories
 -;;;;;;  find-lisp-find-dired) "find-lisp" "find-lisp.el" (19775 2028))
 +;;;;;;  find-lisp-find-dired) "find-lisp" "find-lisp.el" (19591 62571))
  ;;; Generated autoloads from find-lisp.el
  
  (autoload 'find-lisp-find-dired "find-lisp" "\
@@@ -10431,7 -10522,7 +10370,7 @@@ Change the filter on a find-lisp-find-d
  ;;;***
  \f
  ;;;### (autoloads (finder-by-keyword finder-commentary finder-list-keywords)
 -;;;;;;  "finder" "finder.el" (19775 2028))
 +;;;;;;  "finder" "finder.el" (19714 43298))
  ;;; Generated autoloads from finder.el
  
  (autoload 'finder-list-keywords "finder" "\
@@@ -10453,7 -10544,7 +10392,7 @@@ Find packages matching a given keyword
  ;;;***
  \f
  ;;;### (autoloads (enable-flow-control-on enable-flow-control) "flow-ctrl"
 -;;;;;;  "flow-ctrl.el" (19775 2028))
 +;;;;;;  "flow-ctrl.el" (19591 62571))
  ;;; Generated autoloads from flow-ctrl.el
  
  (autoload 'enable-flow-control "flow-ctrl" "\
@@@ -10475,7 -10566,7 +10414,7 @@@ to get the effect of a C-q
  ;;;***
  \f
  ;;;### (autoloads (fill-flowed fill-flowed-encode) "flow-fill" "gnus/flow-fill.el"
 -;;;;;;  (19775 2028))
 +;;;;;;  (19619 52030))
  ;;; Generated autoloads from gnus/flow-fill.el
  
  (autoload 'fill-flowed-encode "flow-fill" "\
@@@ -10491,7 -10582,7 +10430,7 @@@ Not documente
  ;;;***
  \f
  ;;;### (autoloads (flymake-mode-off flymake-mode-on flymake-mode)
 -;;;;;;  "flymake" "progmodes/flymake.el" (19780 4514))
 +;;;;;;  "flymake" "progmodes/flymake.el" (19714 43298))
  ;;; Generated autoloads from progmodes/flymake.el
  
  (autoload 'flymake-mode "flymake" "\
@@@ -10515,7 -10606,7 +10454,7 @@@ Turn flymake mode off
  \f
  ;;;### (autoloads (flyspell-buffer flyspell-region flyspell-mode-off
  ;;;;;;  turn-off-flyspell turn-on-flyspell flyspell-mode flyspell-prog-mode)
 -;;;;;;  "flyspell" "textmodes/flyspell.el" (19775 2030))
 +;;;;;;  "flyspell" "textmodes/flyspell.el" (19714 43298))
  ;;; Generated autoloads from textmodes/flyspell.el
  
  (autoload 'flyspell-prog-mode "flyspell" "\
@@@ -10585,7 -10676,7 +10524,7 @@@ Flyspell whole buffer
  \f
  ;;;### (autoloads (follow-delete-other-windows-and-split follow-mode
  ;;;;;;  turn-off-follow-mode turn-on-follow-mode) "follow" "follow.el"
 -;;;;;;  (19775 2028))
 +;;;;;;  (19562 42953))
  ;;; Generated autoloads from follow.el
  
  (autoload 'turn-on-follow-mode "follow" "\
@@@ -10656,17 -10747,17 +10595,10 @@@ in your `~/.emacs' file, replacing [f7
  
  \(fn &optional ARG)" t nil)
  
- ;;;***
\f
- ;;;### (autoloads nil "font-core" "font-core.el" (19640 47194))
- ;;; Generated autoloads from font-core.el
- (put 'font-lock-defaults 'risky-local-variable t)
  ;;;***
  \f
 -;;;### (autoloads nil "font-core" "font-core.el" (19780 4513))
 -;;; Generated autoloads from font-core.el
 -
 -(put 'font-lock-defaults 'risky-local-variable t)
 -
 -;;;***
 -\f
 -;;;### (autoloads (footnote-mode) "footnote" "mail/footnote.el" (19775
 -;;;;;;  2028))
 +;;;### (autoloads (footnote-mode) "footnote" "mail/footnote.el" (19562
 +;;;;;;  42953))
  ;;; Generated autoloads from mail/footnote.el
  
  (autoload 'footnote-mode "footnote" "\
@@@ -10677,17 -10768,17 +10609,10 @@@ started, play around with the followin
  
  \(fn &optional ARG)" t nil)
  
--;;;***
--\f
- ;;;### (autoloads nil "format" "format.el" (19598 13691))
 -;;;### (autoloads nil "format" "format.el" (19780 4513))
--;;; Generated autoloads from format.el
--
--(put 'format-alist 'risky-local-variable t)
--
  ;;;***
  \f
  ;;;### (autoloads (forms-find-file-other-window forms-find-file forms-mode)
 -;;;;;;  "forms" "forms.el" (19775 2028))
 +;;;;;;  "forms" "forms.el" (19562 42953))
  ;;; Generated autoloads from forms.el
  
  (autoload 'forms-mode "forms" "\
@@@ -10724,7 -10815,7 +10649,7 @@@ Visit a file in Forms mode in other win
  ;;;***
  \f
  ;;;### (autoloads (fortran-mode) "fortran" "progmodes/fortran.el"
 -;;;;;;  (19780 4514))
 +;;;;;;  (19714 43298))
  ;;; Generated autoloads from progmodes/fortran.el
  
  (autoload 'fortran-mode "fortran" "\
@@@ -10802,7 -10893,7 +10727,7 @@@ with no args, if that value is non-nil
  ;;;***
  \f
  ;;;### (autoloads (fortune fortune-to-signature fortune-compile fortune-from-region
 -;;;;;;  fortune-add-fortune) "fortune" "play/fortune.el" (19775 2029))
 +;;;;;;  fortune-add-fortune) "fortune" "play/fortune.el" (19714 43298))
  ;;; Generated autoloads from play/fortune.el
  
  (autoload 'fortune-add-fortune "fortune" "\
@@@ -10851,7 -10942,7 +10776,7 @@@ and choose the directory as the fortune
  ;;;***
  \f
  ;;;### (autoloads (gdb gdb-enable-debug) "gdb-mi" "progmodes/gdb-mi.el"
 -;;;;;;  (19775 2029))
 +;;;;;;  (19714 43298))
  ;;; Generated autoloads from progmodes/gdb-mi.el
  
  (defvar gdb-enable-debug nil "\
@@@ -10912,8 -11003,8 +10837,8 @@@ detailed description of this mode
  ;;;***
  \f
  ;;;### (autoloads (generic-make-keywords-list generic-mode generic-mode-internal
 -;;;;;;  define-generic-mode) "generic" "emacs-lisp/generic.el" (19775
 -;;;;;;  2028))
 +;;;;;;  define-generic-mode) "generic" "emacs-lisp/generic.el" (19598
 +;;;;;;  13691))
  ;;; Generated autoloads from emacs-lisp/generic.el
  
  (defvar generic-mode-list nil "\
@@@ -10990,7 -11081,7 +10915,7 @@@ regular expression that can be used as 
  ;;;***
  \f
  ;;;### (autoloads (glasses-mode) "glasses" "progmodes/glasses.el"
 -;;;;;;  (19780 4514))
 +;;;;;;  (19562 42953))
  ;;; Generated autoloads from progmodes/glasses.el
  
  (autoload 'glasses-mode "glasses" "\
@@@ -11004,7 -11095,7 +10929,7 @@@ at places they belong to
  \f
  ;;;### (autoloads (gmm-tool-bar-from-list gmm-widget-p gmm-error
  ;;;;;;  gmm-message gmm-regexp-concat) "gmm-utils" "gnus/gmm-utils.el"
 -;;;;;;  (19780 4513))
 +;;;;;;  (19640 47194))
  ;;; Generated autoloads from gnus/gmm-utils.el
  
  (autoload 'gmm-regexp-concat "gmm-utils" "\
@@@ -11059,7 -11150,7 +10984,7 @@@ DEFAULT-MAP specifies the default key m
  ;;;***
  \f
  ;;;### (autoloads (gnus gnus-other-frame gnus-slave gnus-no-server
 -;;;;;;  gnus-slave-no-server) "gnus" "gnus/gnus.el" (19780 4513))
 +;;;;;;  gnus-slave-no-server) "gnus" "gnus/gnus.el" (19714 43298))
  ;;; Generated autoloads from gnus/gnus.el
  (when (fboundp 'custom-autoload)
   (custom-autoload 'gnus-select-method "gnus"))
@@@ -11112,7 -11203,7 +11037,7 @@@ prompt the user for the name of an NNT
  ;;;;;;  gnus-agent-get-undownloaded-list gnus-agent-delete-group
  ;;;;;;  gnus-agent-rename-group gnus-agent-possibly-save-gcc gnus-agentize
  ;;;;;;  gnus-slave-unplugged gnus-plugged gnus-unplugged) "gnus-agent"
 -;;;;;;  "gnus/gnus-agent.el" (19775 2028))
 +;;;;;;  "gnus/gnus-agent.el" (19714 43298))
  ;;; Generated autoloads from gnus/gnus-agent.el
  
  (autoload 'gnus-unplugged "gnus-agent" "\
@@@ -11203,7 -11294,7 +11128,7 @@@ If CLEAN, obsolete (ignore)
  ;;;***
  \f
  ;;;### (autoloads (gnus-article-prepare-display) "gnus-art" "gnus/gnus-art.el"
 -;;;;;;  (19780 4513))
 +;;;;;;  (19714 43298))
  ;;; Generated autoloads from gnus/gnus-art.el
  
  (autoload 'gnus-article-prepare-display "gnus-art" "\
@@@ -11214,7 -11305,7 +11139,7 @@@ Make the current buffer look like a nic
  ;;;***
  \f
  ;;;### (autoloads (gnus-bookmark-bmenu-list gnus-bookmark-jump gnus-bookmark-set)
 -;;;;;;  "gnus-bookmark" "gnus/gnus-bookmark.el" (19780 4513))
 +;;;;;;  "gnus-bookmark" "gnus/gnus-bookmark.el" (19714 43298))
  ;;; Generated autoloads from gnus/gnus-bookmark.el
  
  (autoload 'gnus-bookmark-set "gnus-bookmark" "\
@@@ -11239,8 -11330,8 +11164,8 @@@ deletion, or > if it is flagged for dis
  \f
  ;;;### (autoloads (gnus-cache-delete-group gnus-cache-rename-group
  ;;;;;;  gnus-cache-generate-nov-databases gnus-cache-generate-active
 -;;;;;;  gnus-jog-cache) "gnus-cache" "gnus/gnus-cache.el" (19775
 -;;;;;;  2028))
 +;;;;;;  gnus-jog-cache) "gnus-cache" "gnus/gnus-cache.el" (19714
 +;;;;;;  43298))
  ;;; Generated autoloads from gnus/gnus-cache.el
  
  (autoload 'gnus-jog-cache "gnus-cache" "\
@@@ -11282,7 -11373,7 +11207,7 @@@ supported
  ;;;***
  \f
  ;;;### (autoloads (gnus-delay-initialize gnus-delay-send-queue gnus-delay-article)
 -;;;;;;  "gnus-delay" "gnus/gnus-delay.el" (19780 4513))
 +;;;;;;  "gnus-delay" "gnus/gnus-delay.el" (19714 43298))
  ;;; Generated autoloads from gnus/gnus-delay.el
  
  (autoload 'gnus-delay-article "gnus-delay" "\
@@@ -11318,7 -11409,7 +11243,7 @@@ Checking delayed messages is skipped i
  ;;;***
  \f
  ;;;### (autoloads (gnus-user-format-function-D gnus-user-format-function-d)
 -;;;;;;  "gnus-diary" "gnus/gnus-diary.el" (19775 2028))
 +;;;;;;  "gnus-diary" "gnus/gnus-diary.el" (19714 43298))
  ;;; Generated autoloads from gnus/gnus-diary.el
  
  (autoload 'gnus-user-format-function-d "gnus-diary" "\
@@@ -11334,7 -11425,7 +11259,7 @@@ Not documente
  ;;;***
  \f
  ;;;### (autoloads (turn-on-gnus-dired-mode) "gnus-dired" "gnus/gnus-dired.el"
 -;;;;;;  (19775 2028))
 +;;;;;;  (19714 43298))
  ;;; Generated autoloads from gnus/gnus-dired.el
  
  (autoload 'turn-on-gnus-dired-mode "gnus-dired" "\
@@@ -11345,7 -11436,7 +11270,7 @@@ Convenience method to turn on gnus-dire
  ;;;***
  \f
  ;;;### (autoloads (gnus-draft-reminder) "gnus-draft" "gnus/gnus-draft.el"
 -;;;;;;  (19780 4513))
 +;;;;;;  (19714 43298))
  ;;; Generated autoloads from gnus/gnus-draft.el
  
  (autoload 'gnus-draft-reminder "gnus-draft" "\
@@@ -11357,8 -11448,8 +11282,8 @@@ Reminder user if there are unsent draft
  \f
  ;;;### (autoloads (gnus-convert-png-to-face gnus-convert-face-to-png
  ;;;;;;  gnus-face-from-file gnus-x-face-from-file gnus-insert-random-x-face-header
 -;;;;;;  gnus-random-x-face) "gnus-fun" "gnus/gnus-fun.el" (19775
 -;;;;;;  2028))
 +;;;;;;  gnus-random-x-face) "gnus-fun" "gnus/gnus-fun.el" (19640
 +;;;;;;  47194))
  ;;; Generated autoloads from gnus/gnus-fun.el
  
  (autoload 'gnus-random-x-face "gnus-fun" "\
@@@ -11403,7 -11494,7 +11328,7 @@@ FILE should be a PNG file that's 48x48 
  ;;;***
  \f
  ;;;### (autoloads (gnus-treat-mail-gravatar gnus-treat-from-gravatar)
- ;;;;;;  "gnus-gravatar" "gnus/gnus-gravatar.el" (19714 43298))
 -;;;;;;  "gnus-gravatar" "gnus/gnus-gravatar.el" (19775 2028))
++;;;;;;  "gnus-gravatar" "gnus/gnus-gravatar.el" (19717 39999))
  ;;; Generated autoloads from gnus/gnus-gravatar.el
  
  (autoload 'gnus-treat-from-gravatar "gnus-gravatar" "\
@@@ -11421,7 -11512,7 +11346,7 @@@ If gravatars are already displayed, rem
  ;;;***
  \f
  ;;;### (autoloads (gnus-fetch-group-other-frame gnus-fetch-group)
 -;;;;;;  "gnus-group" "gnus/gnus-group.el" (19780 4513))
 +;;;;;;  "gnus-group" "gnus/gnus-group.el" (19714 43298))
  ;;; Generated autoloads from gnus/gnus-group.el
  
  (autoload 'gnus-fetch-group "gnus-group" "\
@@@ -11439,7 -11530,7 +11364,7 @@@ Pop up a frame and enter GROUP
  ;;;***
  \f
  ;;;### (autoloads (gnus-html-prefetch-images gnus-article-html) "gnus-html"
 -;;;;;;  "gnus/gnus-html.el" (19775 2028))
 +;;;;;;  "gnus/gnus-html.el" (19714 43298))
  ;;; Generated autoloads from gnus/gnus-html.el
  
  (autoload 'gnus-article-html "gnus-html" "\
@@@ -11455,7 -11546,7 +11380,7 @@@ Not documente
  ;;;***
  \f
  ;;;### (autoloads (gnus-batch-score) "gnus-kill" "gnus/gnus-kill.el"
 -;;;;;;  (19775 2028))
 +;;;;;;  (19640 47194))
  ;;; Generated autoloads from gnus/gnus-kill.el
  
  (defalias 'gnus-batch-kill 'gnus-batch-score)
@@@ -11470,7 -11561,7 +11395,7 @@@ Usage: emacs -batch -l ~/.emacs -l gnu
  \f
  ;;;### (autoloads (gnus-mailing-list-mode gnus-mailing-list-insinuate
  ;;;;;;  turn-on-gnus-mailing-list-mode) "gnus-ml" "gnus/gnus-ml.el"
 -;;;;;;  (19775 2028))
 +;;;;;;  (19598 13691))
  ;;; Generated autoloads from gnus/gnus-ml.el
  
  (autoload 'turn-on-gnus-mailing-list-mode "gnus-ml" "\
@@@ -11495,7 -11586,7 +11420,7 @@@ Minor mode for providing mailing-list c
  \f
  ;;;### (autoloads (gnus-group-split-fancy gnus-group-split gnus-group-split-update
  ;;;;;;  gnus-group-split-setup) "gnus-mlspl" "gnus/gnus-mlspl.el"
 -;;;;;;  (19775 2028))
 +;;;;;;  (19598 13691))
  ;;; Generated autoloads from gnus/gnus-mlspl.el
  
  (autoload 'gnus-group-split-setup "gnus-mlspl" "\
@@@ -11596,7 -11687,7 +11521,7 @@@ Calling (gnus-group-split-fancy nil ni
  ;;;***
  \f
  ;;;### (autoloads (gnus-button-reply gnus-button-mailto gnus-msg-mail)
 -;;;;;;  "gnus-msg" "gnus/gnus-msg.el" (19780 4513))
 +;;;;;;  "gnus-msg" "gnus/gnus-msg.el" (19714 43298))
  ;;; Generated autoloads from gnus/gnus-msg.el
  
  (autoload 'gnus-msg-mail "gnus-msg" "\
@@@ -11604,7 -11695,7 +11529,7 @@@ Start editing a mail message to be sent
  Like `message-mail', but with Gnus paraphernalia, particularly the
  Gcc: header for archiving purposes.
  
 -\(fn &optional TO SUBJECT OTHER-HEADERS CONTINUE SWITCH-ACTION YANK-ACTION SEND-ACTIONS RETURN-ACTION)" t nil)
 +\(fn &optional TO SUBJECT OTHER-HEADERS CONTINUE SWITCH-ACTION YANK-ACTION SEND-ACTIONS)" t nil)
  
  (autoload 'gnus-button-mailto "gnus-msg" "\
  Mail to ADDRESS.
@@@ -11622,7 -11713,7 +11547,7 @@@ Like `message-reply'
  \f
  ;;;### (autoloads (gnus-treat-newsgroups-picon gnus-treat-mail-picon
  ;;;;;;  gnus-treat-from-picon) "gnus-picon" "gnus/gnus-picon.el"
 -;;;;;;  (19775 2028))
 +;;;;;;  (19640 47194))
  ;;; Generated autoloads from gnus/gnus-picon.el
  
  (autoload 'gnus-treat-from-picon "gnus-picon" "\
@@@ -11649,7 -11740,7 +11574,7 @@@ If picons are already displayed, remov
  ;;;;;;  gnus-sorted-nintersection gnus-sorted-range-intersection
  ;;;;;;  gnus-sorted-intersection gnus-intersection gnus-sorted-complement
  ;;;;;;  gnus-sorted-ndifference gnus-sorted-difference) "gnus-range"
 -;;;;;;  "gnus/gnus-range.el" (19775 2028))
 +;;;;;;  "gnus/gnus-range.el" (19619 52030))
  ;;; Generated autoloads from gnus/gnus-range.el
  
  (autoload 'gnus-sorted-difference "gnus-range" "\
@@@ -11717,7 -11808,7 +11642,7 @@@ Add NUM into sorted LIST by side effect
  ;;;***
  \f
  ;;;### (autoloads (gnus-registry-install-hooks gnus-registry-initialize)
 -;;;;;;  "gnus-registry" "gnus/gnus-registry.el" (19775 2028))
 +;;;;;;  "gnus-registry" "gnus/gnus-registry.el" (19714 43298))
  ;;; Generated autoloads from gnus/gnus-registry.el
  
  (autoload 'gnus-registry-initialize "gnus-registry" "\
@@@ -11733,8 -11824,8 +11658,8 @@@ Install the registry hooks
  ;;;***
  \f
  ;;;### (autoloads (gnus-sieve-article-add-rule gnus-sieve-generate
 -;;;;;;  gnus-sieve-update) "gnus-sieve" "gnus/gnus-sieve.el" (19775
 -;;;;;;  2028))
 +;;;;;;  gnus-sieve-update) "gnus-sieve" "gnus/gnus-sieve.el" (19598
 +;;;;;;  13691))
  ;;; Generated autoloads from gnus/gnus-sieve.el
  
  (autoload 'gnus-sieve-update "gnus-sieve" "\
@@@ -11762,7 -11853,7 +11687,7 @@@ Not documente
  ;;;***
  \f
  ;;;### (autoloads (gnus-update-format) "gnus-spec" "gnus/gnus-spec.el"
 -;;;;;;  (19775 2028))
 +;;;;;;  (19640 47194))
  ;;; Generated autoloads from gnus/gnus-spec.el
  
  (autoload 'gnus-update-format "gnus-spec" "\
@@@ -11773,7 -11864,7 +11698,7 @@@ Update the format specification near po
  ;;;***
  \f
  ;;;### (autoloads (gnus-declare-backend) "gnus-start" "gnus/gnus-start.el"
 -;;;;;;  (19775 2028))
 +;;;;;;  (19714 43298))
  ;;; Generated autoloads from gnus/gnus-start.el
  
  (autoload 'gnus-declare-backend "gnus-start" "\
@@@ -11784,7 -11875,7 +11709,7 @@@ Declare back end NAME with ABILITIES a
  ;;;***
  \f
  ;;;### (autoloads (gnus-summary-bookmark-jump) "gnus-sum" "gnus/gnus-sum.el"
 -;;;;;;  (19780 4513))
 +;;;;;;  (19714 43298))
  ;;; Generated autoloads from gnus/gnus-sum.el
  
  (autoload 'gnus-summary-bookmark-jump "gnus-sum" "\
@@@ -11796,7 -11887,7 +11721,7 @@@ BOOKMARK is a bookmark name or a bookma
  ;;;***
  \f
  ;;;### (autoloads (gnus-sync-install-hooks gnus-sync-initialize)
 -;;;;;;  "gnus-sync" "gnus/gnus-sync.el" (19775 2028))
 +;;;;;;  "gnus-sync" "gnus/gnus-sync.el" (19640 47194))
  ;;; Generated autoloads from gnus/gnus-sync.el
  
  (autoload 'gnus-sync-initialize "gnus-sync" "\
@@@ -11812,7 -11903,7 +11737,7 @@@ Install the sync hooks
  ;;;***
  \f
  ;;;### (autoloads (gnus-add-configuration) "gnus-win" "gnus/gnus-win.el"
 -;;;;;;  (19780 4513))
 +;;;;;;  (19714 43298))
  ;;; Generated autoloads from gnus/gnus-win.el
  
  (autoload 'gnus-add-configuration "gnus-win" "\
@@@ -11822,7 -11913,7 +11747,7 @@@ Add the window configuration CONF to `g
  
  ;;;***
  \f
 -;;;### (autoloads (gomoku) "gomoku" "play/gomoku.el" (19775 2029))
 +;;;### (autoloads (gomoku) "gomoku" "play/gomoku.el" (19714 43298))
  ;;; Generated autoloads from play/gomoku.el
  
  (autoload 'gomoku "gomoku" "\
@@@ -11849,8 -11940,8 +11774,8 @@@ Use \\[describe-mode] for more info
  ;;;***
  \f
  ;;;### (autoloads (goto-address-prog-mode goto-address-mode goto-address
 -;;;;;;  goto-address-at-point) "goto-addr" "net/goto-addr.el" (19775
 -;;;;;;  2029))
 +;;;;;;  goto-address-at-point) "goto-addr" "net/goto-addr.el" (19562
 +;;;;;;  42953))
  ;;; Generated autoloads from net/goto-addr.el
  
  (define-obsolete-function-alias 'goto-address-at-mouse 'goto-address-at-point "22.1")
@@@ -11888,8 -11979,8 +11813,8 @@@ Turn on `goto-address-mode', but only i
  
  ;;;***
  \f
 -;;;### (autoloads (gravatar-retrieve-synchronously gravatar-retrieve)
 -;;;;;;  "gravatar" "gnus/gravatar.el" (19775 2028))
 +;;;### (autoloads (gravatar-retrieve) "gravatar" "gnus/gravatar.el"
 +;;;;;;  (19640 47194))
  ;;; Generated autoloads from gnus/gravatar.el
  
  (autoload 'gravatar-retrieve "gravatar" "\
@@@ -11898,11 -11989,16 +11823,11 @@@ You can provide a list of argument to p
  
  \(fn MAIL-ADDRESS CB &optional CBARGS)" nil nil)
  
 -(autoload 'gravatar-retrieve-synchronously "gravatar" "\
 -Retrieve MAIL-ADDRESS gravatar and returns it.
 -
 -\(fn MAIL-ADDRESS)" nil nil)
 -
  ;;;***
  \f
  ;;;### (autoloads (zrgrep rgrep lgrep grep-find grep grep-mode grep-compute-defaults
  ;;;;;;  grep-process-setup grep-setup-hook grep-find-command grep-command
 -;;;;;;  grep-window-height) "grep" "progmodes/grep.el" (19780 4514))
 +;;;;;;  grep-window-height) "grep" "progmodes/grep.el" (19714 43298))
  ;;; Generated autoloads from progmodes/grep.el
  
  (defvar grep-window-height nil "\
@@@ -11935,7 -12031,7 +11860,7 @@@ List of hook functions run by `grep-pro
  
  (custom-autoload 'grep-setup-hook "grep" t)
  
 -(defconst grep-regexp-alist '(("^\\(.+?\\)\\(:[       ]*\\)\\([1-9][0-9]*\\)\\2" 1 3) ("^\\(\\(.+?\\):\\([1-9][0-9]*\\):\\).*?\\(\e\\[01;31m\\(?:\e\\[K\\)?\\)\\(.*?\\)\\(\e\\[[0-9]*m\\)" 2 3 ((lambda nil (setq compilation-error-screen-columns nil) (- (match-beginning 4) (match-end 1))) lambda nil (- (match-end 5) (match-end 1) (- (match-end 4) (match-beginning 4)))) nil 1) ("^Binary file \\(.+\\) matches$" 1 nil nil 0 1)) "\
 +(defconst grep-regexp-alist '(("^\\(.+?\\)\\(:[       ]*\\)\\([0-9]+\\)\\2" 1 3) ("^\\(\\(.+?\\):\\([1-9][0-9]*\\):\\).*?\\(\e\\[01;31m\\(?:\e\\[K\\)?\\)\\(.*?\\)\\(\e\\[[0-9]*m\\)" 2 3 ((lambda nil (setq compilation-error-screen-columns nil) (- (match-beginning 4) (match-end 1))) lambda nil (- (match-end 5) (match-end 1) (- (match-end 4) (match-beginning 4)))) nil 1) ("^Binary file \\(.+\\) matches$" 1 nil nil 0 1)) "\
  Regexp used to match grep hits.  See `compilation-error-regexp-alist'.")
  
  (defvar grep-program (purecopy "grep") "\
@@@ -12058,7 -12154,7 +11983,7 @@@ file name to `*.gz', and sets `grep-hig
  
  ;;;***
  \f
 -;;;### (autoloads (gs-load-image) "gs" "gs.el" (19775 2028))
 +;;;### (autoloads (gs-load-image) "gs" "gs.el" (19562 42953))
  ;;; Generated autoloads from gs.el
  
  (autoload 'gs-load-image "gs" "\
@@@ -12072,7 -12168,7 +11997,7 @@@ the form \"WINDOW-ID PIXMAP-ID\".  Valu
  ;;;***
  \f
  ;;;### (autoloads (gud-tooltip-mode gdb-script-mode jdb pdb perldb
 -;;;;;;  xdb dbx sdb gud-gdb) "gud" "progmodes/gud.el" (19775 2029))
 +;;;;;;  xdb dbx sdb gud-gdb) "gud" "progmodes/gud.el" (19714 43298))
  ;;; Generated autoloads from progmodes/gud.el
  
  (autoload 'gud-gdb "gud" "\
@@@ -12158,8 -12254,8 +12083,8 @@@ Toggle the display of GUD tooltips
  
  ;;;***
  \f
 -;;;### (autoloads (handwrite) "handwrite" "play/handwrite.el" (19775
 -;;;;;;  2029))
 +;;;### (autoloads (handwrite) "handwrite" "play/handwrite.el" (19562
 +;;;;;;  42953))
  ;;; Generated autoloads from play/handwrite.el
  
  (autoload 'handwrite "handwrite" "\
@@@ -12177,7 -12273,7 +12102,7 @@@ Variables: handwrite-linespace     (def
  ;;;***
  \f
  ;;;### (autoloads (hanoi-unix-64 hanoi-unix hanoi) "hanoi" "play/hanoi.el"
 -;;;;;;  (19763 27287))
 +;;;;;;  (19562 42953))
  ;;; Generated autoloads from play/hanoi.el
  
  (autoload 'hanoi "hanoi" "\
@@@ -12206,7 -12302,7 +12131,7 @@@ to be updated
  \f
  ;;;### (autoloads (mail-check-payment mail-add-payment-async mail-add-payment
  ;;;;;;  hashcash-verify-payment hashcash-insert-payment-async hashcash-insert-payment)
 -;;;;;;  "hashcash" "mail/hashcash.el" (19780 4513))
 +;;;;;;  "hashcash" "mail/hashcash.el" (19640 47194))
  ;;; Generated autoloads from mail/hashcash.el
  
  (autoload 'hashcash-insert-payment "hashcash" "\
@@@ -12251,7 -12347,7 +12176,7 @@@ Prefix arg sets default accept amount t
  ;;;### (autoloads (scan-buf-previous-region scan-buf-next-region
  ;;;;;;  scan-buf-move-to-region help-at-pt-display-when-idle help-at-pt-set-timer
  ;;;;;;  help-at-pt-cancel-timer display-local-help help-at-pt-kbd-string
 -;;;;;;  help-at-pt-string) "help-at-pt" "help-at-pt.el" (19775 2028))
 +;;;;;;  help-at-pt-string) "help-at-pt" "help-at-pt.el" (19562 42953))
  ;;; Generated autoloads from help-at-pt.el
  
  (autoload 'help-at-pt-string "help-at-pt" "\
@@@ -12381,7 -12477,7 +12306,7 @@@ different regions.  With numeric argume
  ;;;### (autoloads (doc-file-to-info doc-file-to-man describe-categories
  ;;;;;;  describe-syntax describe-variable variable-at-point describe-function-1
  ;;;;;;  find-lisp-object-file-name help-C-file-name describe-function)
 -;;;;;;  "help-fns" "help-fns.el" (19775 2028))
 +;;;;;;  "help-fns" "help-fns.el" (19714 43298))
  ;;; Generated autoloads from help-fns.el
  
  (autoload 'describe-function "help-fns" "\
@@@ -12461,7 -12557,7 +12386,7 @@@ Produce a texinfo buffer with sorted do
  ;;;***
  \f
  ;;;### (autoloads (three-step-help) "help-macro" "help-macro.el"
 -;;;;;;  (19775 2028))
 +;;;;;;  (19598 13691))
  ;;; Generated autoloads from help-macro.el
  
  (defvar three-step-help nil "\
@@@ -12477,8 -12573,8 +12402,8 @@@ gives the window that lists the options
  \f
  ;;;### (autoloads (help-xref-on-pp help-insert-xref-button help-xref-button
  ;;;;;;  help-make-xrefs help-buffer help-setup-xref help-mode-finish
 -;;;;;;  help-mode-setup help-mode) "help-mode" "help-mode.el" (19780
 -;;;;;;  4513))
 +;;;;;;  help-mode-setup help-mode) "help-mode" "help-mode.el" (19640
 +;;;;;;  47194))
  ;;; Generated autoloads from help-mode.el
  
  (autoload 'help-mode "help-mode" "\
@@@ -12570,7 -12666,7 +12495,7 @@@ Add xrefs for symbols in `pp's output b
  ;;;***
  \f
  ;;;### (autoloads (Helper-help Helper-describe-bindings) "helper"
 -;;;;;;  "emacs-lisp/helper.el" (19775 2028))
 +;;;;;;  "emacs-lisp/helper.el" (19598 13691))
  ;;; Generated autoloads from emacs-lisp/helper.el
  
  (autoload 'Helper-describe-bindings "helper" "\
@@@ -12586,7 -12682,7 +12511,7 @@@ Provide help for current mode
  ;;;***
  \f
  ;;;### (autoloads (hexlify-buffer hexl-find-file hexl-mode) "hexl"
 -;;;;;;  "hexl.el" (19775 2028))
 +;;;;;;  "hexl.el" (19714 43298))
  ;;; Generated autoloads from hexl.el
  
  (autoload 'hexl-mode "hexl" "\
@@@ -12683,7 -12779,7 +12608,7 @@@ This discards the buffer's undo informa
  ;;;### (autoloads (hi-lock-write-interactive-patterns hi-lock-unface-buffer
  ;;;;;;  hi-lock-face-phrase-buffer hi-lock-face-buffer hi-lock-line-face-buffer
  ;;;;;;  global-hi-lock-mode hi-lock-mode) "hi-lock" "hi-lock.el"
 -;;;;;;  (19775 2028))
 +;;;;;;  (19640 47194))
  ;;; Generated autoloads from hi-lock.el
  
  (autoload 'hi-lock-mode "hi-lock" "\
@@@ -12817,7 -12913,7 +12742,7 @@@ be found in variable `hi-lock-interacti
  ;;;***
  \f
  ;;;### (autoloads (hide-ifdef-mode) "hideif" "progmodes/hideif.el"
 -;;;;;;  (19775 2029))
 +;;;;;;  (19714 43298))
  ;;; Generated autoloads from progmodes/hideif.el
  
  (autoload 'hide-ifdef-mode "hideif" "\
@@@ -12857,7 -12953,7 +12782,7 @@@ how the hiding is done
  ;;;***
  \f
  ;;;### (autoloads (turn-off-hideshow hs-minor-mode) "hideshow" "progmodes/hideshow.el"
 -;;;;;;  (19775 2029))
 +;;;;;;  (19562 42953))
  ;;; Generated autoloads from progmodes/hideshow.el
  
  (defvar hs-special-modes-alist (mapcar 'purecopy '((c-mode "{" "}" "/[*/]" nil nil) (c++-mode "{" "}" "/[*/]" nil nil) (bibtex-mode ("@\\S(*\\(\\s(\\)" 1)) (java-mode "{" "}" "/[*/]" nil nil) (js-mode "{" "}" "/[*/]" nil))) "\
@@@ -12919,8 -13015,8 +12844,8 @@@ Unconditionally turn off `hs-minor-mode
  ;;;;;;  highlight-compare-buffers highlight-changes-rotate-faces
  ;;;;;;  highlight-changes-previous-change highlight-changes-next-change
  ;;;;;;  highlight-changes-remove-highlight highlight-changes-visible-mode
 -;;;;;;  highlight-changes-mode) "hilit-chg" "hilit-chg.el" (19775
 -;;;;;;  2028))
 +;;;;;;  highlight-changes-mode) "hilit-chg" "hilit-chg.el" (19640
 +;;;;;;  47194))
  ;;; Generated autoloads from hilit-chg.el
  
  (autoload 'highlight-changes-mode "hilit-chg" "\
@@@ -13049,7 -13145,7 +12974,7 @@@ See `highlight-changes-mode' for more i
  ;;;;;;  hippie-expand-ignore-buffers hippie-expand-max-buffers hippie-expand-no-restriction
  ;;;;;;  hippie-expand-dabbrev-as-symbol hippie-expand-dabbrev-skip-space
  ;;;;;;  hippie-expand-verbose hippie-expand-try-functions-list) "hippie-exp"
 -;;;;;;  "hippie-exp.el" (19775 2028))
 +;;;;;;  "hippie-exp.el" (19714 43298))
  ;;; Generated autoloads from hippie-exp.el
  
  (defvar hippie-expand-try-functions-list '(try-complete-file-name-partially try-complete-file-name try-expand-all-abbrevs try-expand-list try-expand-line try-expand-dabbrev try-expand-dabbrev-all-buffers try-expand-dabbrev-from-kill try-complete-lisp-symbol-partially try-complete-lisp-symbol) "\
@@@ -13122,7 -13218,7 +13047,7 @@@ argument VERBOSE non-nil makes the func
  ;;;***
  \f
  ;;;### (autoloads (global-hl-line-mode hl-line-mode) "hl-line" "hl-line.el"
 -;;;;;;  (19775 2028))
 +;;;;;;  (19562 42953))
  ;;; Generated autoloads from hl-line.el
  
  (autoload 'hl-line-mode "hl-line" "\
@@@ -13166,7 -13262,7 +13091,7 @@@ Global-Hl-Line mode uses the functions 
  ;;;;;;  holiday-bahai-holidays holiday-islamic-holidays holiday-christian-holidays
  ;;;;;;  holiday-hebrew-holidays holiday-other-holidays holiday-local-holidays
  ;;;;;;  holiday-oriental-holidays holiday-general-holidays) "holidays"
 -;;;;;;  "calendar/holidays.el" (19775 2027))
 +;;;;;;  "calendar/holidays.el" (19714 43298))
  ;;; Generated autoloads from calendar/holidays.el
  
  (define-obsolete-variable-alias 'general-holidays 'holiday-general-holidays "23.1")
@@@ -13314,8 -13410,8 +13239,8 @@@ The optional LABEL is used to label th
  
  ;;;***
  \f
 -;;;### (autoloads (html2text) "html2text" "gnus/html2text.el" (19775
 -;;;;;;  2028))
 +;;;### (autoloads (html2text) "html2text" "gnus/html2text.el" (19598
 +;;;;;;  13691))
  ;;; Generated autoloads from gnus/html2text.el
  
  (autoload 'html2text "html2text" "\
@@@ -13326,7 -13422,7 +13251,7 @@@ Convert HTML to plain text in the curre
  ;;;***
  \f
  ;;;### (autoloads (htmlfontify-copy-and-link-dir htmlfontify-buffer)
 -;;;;;;  "htmlfontify" "htmlfontify.el" (19780 4513))
 +;;;;;;  "htmlfontify" "htmlfontify.el" (19640 47194))
  ;;; Generated autoloads from htmlfontify.el
  
  (autoload 'htmlfontify-buffer "htmlfontify" "\
@@@ -13359,8 -13455,8 +13284,8 @@@ You may also want to set `hfy-page-head
  ;;;***
  \f
  ;;;### (autoloads (define-ibuffer-filter define-ibuffer-op define-ibuffer-sorter
 -;;;;;;  define-ibuffer-column) "ibuf-macs" "ibuf-macs.el" (19775
 -;;;;;;  2028))
 +;;;;;;  define-ibuffer-column) "ibuf-macs" "ibuf-macs.el" (19598
 +;;;;;;  13691))
  ;;; Generated autoloads from ibuf-macs.el
  
  (autoload 'define-ibuffer-column "ibuf-macs" "\
@@@ -13457,7 -13553,7 +13382,7 @@@ bound to the current value of the filte
  ;;;***
  \f
  ;;;### (autoloads (ibuffer ibuffer-other-window ibuffer-list-buffers)
 -;;;;;;  "ibuffer" "ibuffer.el" (19780 4513))
 +;;;;;;  "ibuffer" "ibuffer.el" (19714 43298))
  ;;; Generated autoloads from ibuffer.el
  
  (autoload 'ibuffer-list-buffers "ibuffer" "\
@@@ -13498,7 -13594,7 +13423,7 @@@ FORMATS is the value to use for `ibuffe
  \f
  ;;;### (autoloads (icalendar-import-buffer icalendar-import-file
  ;;;;;;  icalendar-export-region icalendar-export-file) "icalendar"
 -;;;;;;  "calendar/icalendar.el" (19780 4513))
 +;;;;;;  "calendar/icalendar.el" (19598 13691))
  ;;; Generated autoloads from calendar/icalendar.el
  
  (autoload 'icalendar-export-file "icalendar" "\
@@@ -13550,8 -13646,8 +13475,8 @@@ buffer `*icalendar-errors*'
  
  ;;;***
  \f
 -;;;### (autoloads (icomplete-mode) "icomplete" "icomplete.el" (19780
 -;;;;;;  4513))
 +;;;### (autoloads (icomplete-mode) "icomplete" "icomplete.el" (19591
 +;;;;;;  62571))
  ;;; Generated autoloads from icomplete.el
  
  (defvar icomplete-mode nil "\
@@@ -13572,7 -13668,7 +13497,7 @@@ otherwise turn it off
  
  ;;;***
  \f
 -;;;### (autoloads (icon-mode) "icon" "progmodes/icon.el" (19775 2029))
 +;;;### (autoloads (icon-mode) "icon" "progmodes/icon.el" (19714 43298))
  ;;; Generated autoloads from progmodes/icon.el
  
  (autoload 'icon-mode "icon" "\
@@@ -13613,7 -13709,7 +13538,7 @@@ with no args, if that value is non-nil
  ;;;***
  \f
  ;;;### (autoloads (idlwave-shell) "idlw-shell" "progmodes/idlw-shell.el"
 -;;;;;;  (19775 2029))
 +;;;;;;  (19714 43298))
  ;;; Generated autoloads from progmodes/idlw-shell.el
  
  (autoload 'idlwave-shell "idlw-shell" "\
@@@ -13639,7 -13735,7 +13564,7 @@@ See also the variable `idlwave-shell-pr
  ;;;***
  \f
  ;;;### (autoloads (idlwave-mode) "idlwave" "progmodes/idlwave.el"
 -;;;;;;  (19775 2029))
 +;;;;;;  (19714 43298))
  ;;; Generated autoloads from progmodes/idlwave.el
  
  (autoload 'idlwave-mode "idlwave" "\
@@@ -13773,8 -13869,8 +13698,8 @@@ The main features of this mode ar
  ;;;;;;  ido-find-alternate-file ido-find-file-other-window ido-find-file
  ;;;;;;  ido-find-file-in-dir ido-switch-buffer-other-frame ido-insert-buffer
  ;;;;;;  ido-kill-buffer ido-display-buffer ido-switch-buffer-other-window
 -;;;;;;  ido-switch-buffer ido-mode ido-mode) "ido" "ido.el" (19775
 -;;;;;;  2028))
 +;;;;;;  ido-switch-buffer ido-mode ido-mode) "ido" "ido.el" (19619
 +;;;;;;  52030))
  ;;; Generated autoloads from ido.el
  
  (defvar ido-mode nil "\
@@@ -14035,7 -14131,7 +13960,7 @@@ DEF, if non-nil, is the default value
  
  ;;;***
  \f
- ;;;### (autoloads (ielm) "ielm" "ielm.el" (19591 62571))
 -;;;### (autoloads (ielm) "ielm" "ielm.el" (19775 2028))
++;;;### (autoloads (ielm) "ielm" "ielm.el" (19720 64949))
  ;;; Generated autoloads from ielm.el
   (add-hook 'same-window-buffer-names (purecopy "*ielm*"))
  
@@@ -14047,7 -14143,7 +13972,7 @@@ Switches to the buffer `*ielm*', or cre
  
  ;;;***
  \f
 -;;;### (autoloads (iimage-mode) "iimage" "iimage.el" (19780 4513))
 +;;;### (autoloads (iimage-mode) "iimage" "iimage.el" (19640 47194))
  ;;; Generated autoloads from iimage.el
  
  (define-obsolete-function-alias 'turn-on-iimage-mode 'iimage-mode "24.1")
@@@ -14064,7 -14160,7 +13989,7 @@@ Toggle inline image minor mode
  ;;;;;;  put-image create-image image-type-auto-detected-p image-type-available-p
  ;;;;;;  image-type image-type-from-file-name image-type-from-file-header
  ;;;;;;  image-type-from-buffer image-type-from-data) "image" "image.el"
 -;;;;;;  (19775 2028))
 +;;;;;;  (19714 43298))
  ;;; Generated autoloads from image.el
  
  (autoload 'image-type-from-data "image" "\
@@@ -14270,7 -14366,7 +14195,7 @@@ Register the file types that ImageMagic
  ;;;;;;  image-dired-jump-thumbnail-buffer image-dired-delete-tag
  ;;;;;;  image-dired-tag-files image-dired-show-all-from-dir image-dired-display-thumbs
  ;;;;;;  image-dired-dired-with-window-configuration image-dired-dired-toggle-marked-thumbs)
 -;;;;;;  "image-dired" "image-dired.el" (19780 45051))
 +;;;;;;  "image-dired" "image-dired.el" (19562 42953))
  ;;; Generated autoloads from image-dired.el
  
  (autoload 'image-dired-dired-toggle-marked-thumbs "image-dired" "\
@@@ -14408,7 -14504,7 +14333,7 @@@ easy-to-use form
  \f
  ;;;### (autoloads (auto-image-file-mode insert-image-file image-file-name-regexp
  ;;;;;;  image-file-name-regexps image-file-name-extensions) "image-file"
 -;;;;;;  "image-file.el" (19775 2028))
 +;;;;;;  "image-file.el" (19562 42953))
  ;;; Generated autoloads from image-file.el
  
  (defvar image-file-name-extensions (purecopy '("png" "jpeg" "jpg" "gif" "tiff" "tif" "xbm" "xpm" "pbm" "pgm" "ppm" "pnm" "svg")) "\
@@@ -14470,7 -14566,7 +14395,7 @@@ Image files are those whose name has a
  ;;;***
  \f
  ;;;### (autoloads (image-bookmark-jump image-mode-as-text image-minor-mode
 -;;;;;;  image-mode) "image-mode" "image-mode.el" (19780 4513))
 +;;;;;;  image-mode) "image-mode" "image-mode.el" (19619 52030))
  ;;; Generated autoloads from image-mode.el
  
  (autoload 'image-mode "image-mode" "\
@@@ -14511,7 -14607,7 +14436,7 @@@ Not documente
  ;;;***
  \f
  ;;;### (autoloads (imenu imenu-add-menubar-index imenu-add-to-menubar
 -;;;;;;  imenu-sort-function) "imenu" "imenu.el" (19775 2028))
 +;;;;;;  imenu-sort-function) "imenu" "imenu.el" (19619 52030))
  ;;; Generated autoloads from imenu.el
  
  (defvar imenu-sort-function nil "\
@@@ -14628,7 -14724,7 +14553,7 @@@ for more information
  \f
  ;;;### (autoloads (indian-2-column-to-ucs-region in-is13194-pre-write-conversion
  ;;;;;;  in-is13194-post-read-conversion indian-compose-string indian-compose-region)
 -;;;;;;  "ind-util" "language/ind-util.el" (19780 4513))
 +;;;;;;  "ind-util" "language/ind-util.el" (19562 42953))
  ;;; Generated autoloads from language/ind-util.el
  
  (autoload 'indian-compose-region "ind-util" "\
@@@ -14660,7 -14756,7 +14585,7 @@@ Convert old Emacs Devanagari character
  \f
  ;;;### (autoloads (inferior-lisp inferior-lisp-prompt inferior-lisp-load-command
  ;;;;;;  inferior-lisp-program inferior-lisp-filter-regexp) "inf-lisp"
 -;;;;;;  "progmodes/inf-lisp.el" (19780 4514))
 +;;;;;;  "progmodes/inf-lisp.el" (19714 43298))
  ;;; Generated autoloads from progmodes/inf-lisp.el
  
  (defvar inferior-lisp-filter-regexp (purecopy "\\`\\s *\\(:\\(\\w\\|\\s_\\)\\)?\\s *\\'") "\
@@@ -14728,7 -14824,7 +14653,7 @@@ of `inferior-lisp-program').  Runs the 
  ;;;;;;  Info-goto-emacs-command-node Info-mode info-finder info-apropos
  ;;;;;;  Info-index Info-directory Info-on-current-buffer info-standalone
  ;;;;;;  info-emacs-manual info info-other-window) "info" "info.el"
 -;;;;;;  (19775 2028))
 +;;;;;;  (19714 43298))
  ;;; Generated autoloads from info.el
  
  (autoload 'info-other-window "info" "\
@@@ -14910,7 -15006,7 +14835,7 @@@ type returned by `Info-bookmark-make-re
  \f
  ;;;### (autoloads (info-complete-file info-complete-symbol info-lookup-file
  ;;;;;;  info-lookup-symbol info-lookup-reset) "info-look" "info-look.el"
 -;;;;;;  (19775 2028))
 +;;;;;;  (19591 62571))
  ;;; Generated autoloads from info-look.el
  
  (autoload 'info-lookup-reset "info-look" "\
@@@ -14957,35 -15053,92 +14882,35 @@@ Perform completion on file preceding po
  
  ;;;***
  \f
 -;;;### (autoloads (info-xref-docstrings info-xref-check-all-custom
 -;;;;;;  info-xref-check-all info-xref-check) "info-xref" "info-xref.el"
 -;;;;;;  (19780 4513))
 +;;;### (autoloads (info-xref-check-all-custom info-xref-check-all
 +;;;;;;  info-xref-check) "info-xref" "info-xref.el" (19562 42953))
  ;;; Generated autoloads from info-xref.el
  
  (autoload 'info-xref-check "info-xref" "\
  Check external references in FILENAME, an info document.
 -Interactively from an `Info-mode' or `texinfo-mode' buffer the
 -current info file is the default.
 -
 -Results are shown in a `compilation-mode' buffer.  The format is
 -a bit rough, but there shouldn't be many problems normally.  The
 -file:line:column: is the info document, but of course normally
 -any correction should be made in the original .texi file.
 -Finding the right place in the .texi is a manual process.
 -
 -When a target info file doesn't exist there's obviously no way to
 -validate node references within it.  A message is given for
 -missing target files once per source document.  It could be
 -simply that you don't have the target installed, or it could be a
 -mistake in the reference.
 -
 -Indirect info files are understood, just pass the top-level
 -foo.info to `info-xref-check' and it traverses all sub-files.
 -Compressed info files are accepted too as usual for `Info-mode'.
 -
 -\"makeinfo\" checks references internal to an info document, but
 -not external references, which makes it rather easy for mistakes
 -to creep in or node name changes to go unnoticed.
 -`Info-validate' doesn't check external references either.
  
  \(fn FILENAME)" t nil)
  
  (autoload 'info-xref-check-all "info-xref" "\
 -Check external references in all info documents in the info path.
 -`Info-directory-list' and `Info-additional-directory-list' are
 -the info paths.  See `info-xref-check' for how each file is
 -checked.
 -
 -The search for \"all\" info files is rather permissive, since
 -info files don't necessarily have a \".info\" extension and in
 -particular the Emacs manuals normally don't.  If you have a
 -source code directory in `Info-directory-list' then a lot of
 -extraneous files might be read.  This will be time consuming but
 -should be harmless.
 +Check external references in all info documents in the usual path.
 +The usual path is `Info-directory-list' and `Info-additional-directory-list'.
  
  \(fn)" t nil)
  
  (autoload 'info-xref-check-all-custom "info-xref" "\
  Check info references in all customize groups and variables.
 -Info references can be in `custom-manual' or `info-link' entries
 -of the `custom-links' for a variable.
 +`custom-manual' and `info-link' entries in the `custom-links' list are checked.
  
 -Any `custom-load' autoloads in variables are loaded in order to
 -get full link information.  This will be a lot of Lisp packages
 -and can take a long time.
 +`custom-load' autoloads for all symbols are loaded in order to get all the
 +link information.  This will be a lot of lisp packages loaded, and can take
 +quite a while.
  
  \(fn)" t nil)
  
 -(autoload 'info-xref-docstrings "info-xref" "\
 -Check docstring info node references in source files.
 -The given files are searched for docstring hyperlinks like
 -
 -    Info node `(elisp)Documentation Tips'
 -
 -and those links checked by attempting to visit the target nodes
 -as per `info-xref-check' does.
 -
 -Interactively filenames are read as a wildcard pattern like
 -\"foo*.el\", with the current file as a default.  Usually this
 -will be lisp sources, but anything with such hyperlinks can be
 -checked, including the Emacs .c sources (or the etc/DOC file of
 -all builtins).
 -
 -Because info node hyperlinks are found by a simple regexp search
 -in the files, the Lisp code checked doesn't have to be loaded,
 -and links can be in the file commentary or elsewhere too.  Even
 -.elc files can usually be checked successfully if you don't have
 -the sources handy.
 -
 -\(fn FILENAME-LIST)" t nil)
 -
  ;;;***
  \f
  ;;;### (autoloads (batch-info-validate Info-validate Info-split Info-split-threshold
 -;;;;;;  Info-tagify) "informat" "informat.el" (19775 2028))
 +;;;;;;  Info-tagify) "informat" "informat.el" (19591 62571))
  ;;; Generated autoloads from informat.el
  
  (autoload 'Info-tagify "informat" "\
@@@ -15032,7 -15185,7 +14957,7 @@@ For example, invoke \"emacs -batch -f b
  \f
  ;;;### (autoloads (isearch-process-search-multibyte-characters isearch-toggle-input-method
  ;;;;;;  isearch-toggle-specified-input-method) "isearch-x" "international/isearch-x.el"
 -;;;;;;  (19780 4513))
 +;;;;;;  (19562 42953))
  ;;; Generated autoloads from international/isearch-x.el
  
  (autoload 'isearch-toggle-specified-input-method "isearch-x" "\
@@@ -15052,8 -15205,8 +14977,8 @@@ Not documente
  
  ;;;***
  \f
 -;;;### (autoloads (isearchb-activate) "isearchb" "isearchb.el" (19780
 -;;;;;;  4513))
 +;;;### (autoloads (isearchb-activate) "isearchb" "isearchb.el" (19562
 +;;;;;;  42953))
  ;;; Generated autoloads from isearchb.el
  
  (autoload 'isearchb-activate "isearchb" "\
@@@ -15069,7 -15222,7 +14994,7 @@@ accessed via isearchb
  ;;;### (autoloads (iso-cvt-define-menu iso-cvt-write-only iso-cvt-read-only
  ;;;;;;  iso-sgml2iso iso-iso2sgml iso-iso2duden iso-iso2gtex iso-gtex2iso
  ;;;;;;  iso-tex2iso iso-iso2tex iso-german iso-spanish) "iso-cvt"
 -;;;;;;  "international/iso-cvt.el" (19775 2028))
 +;;;;;;  "international/iso-cvt.el" (19562 42953))
  ;;; Generated autoloads from international/iso-cvt.el
  
  (autoload 'iso-spanish "iso-cvt" "\
@@@ -15160,7 -15313,7 +15085,7 @@@ Add submenus to the File menu, to conve
  ;;;***
  \f
  ;;;### (autoloads nil "iso-transl" "international/iso-transl.el"
 -;;;;;;  (19775 2028))
 +;;;;;;  (19591 62571))
  ;;; Generated autoloads from international/iso-transl.el
   (or key-translation-map (setq key-translation-map (make-sparse-keymap)))
   (define-key key-translation-map "\C-x8" 'iso-transl-ctl-x-8-map)
  ;;;;;;  ispell-complete-word ispell-continue ispell-buffer ispell-comments-and-strings
  ;;;;;;  ispell-region ispell-change-dictionary ispell-kill-ispell
  ;;;;;;  ispell-help ispell-pdict-save ispell-word ispell-personal-dictionary)
 -;;;;;;  "ispell" "textmodes/ispell.el" (19780 4514))
 +;;;;;;  "ispell" "textmodes/ispell.el" (19714 43298))
  ;;; Generated autoloads from textmodes/ispell.el
  
  (put 'ispell-check-comments 'safe-local-variable (lambda (a) (memq a '(nil t exclusive))))
@@@ -15392,8 -15545,8 +15317,8 @@@ You can bind this to the key C-c i in G
  
  ;;;***
  \f
 -;;;### (autoloads (iswitchb-mode) "iswitchb" "iswitchb.el" (19775
 -;;;;;;  2028))
 +;;;### (autoloads (iswitchb-mode) "iswitchb" "iswitchb.el" (19714
 +;;;;;;  43298))
  ;;; Generated autoloads from iswitchb.el
  
  (defvar iswitchb-mode nil "\
@@@ -15418,7 -15571,7 +15343,7 @@@ This mode enables switching between buf
  ;;;### (autoloads (read-hiragana-string japanese-zenkaku-region japanese-hankaku-region
  ;;;;;;  japanese-hiragana-region japanese-katakana-region japanese-zenkaku
  ;;;;;;  japanese-hankaku japanese-hiragana japanese-katakana setup-japanese-environment-internal)
 -;;;;;;  "japan-util" "language/japan-util.el" (19780 4513))
 +;;;;;;  "japan-util" "language/japan-util.el" (19562 42953))
  ;;; Generated autoloads from language/japan-util.el
  
  (autoload 'setup-japanese-environment-internal "japan-util" "\
@@@ -15496,7 -15649,7 +15421,7 @@@ If non-nil, second arg INITIAL-INPUT i
  ;;;***
  \f
  ;;;### (autoloads (jka-compr-uninstall jka-compr-handler) "jka-compr"
 -;;;;;;  "jka-compr.el" (19775 2028))
 +;;;;;;  "jka-compr.el" (19562 42953))
  ;;; Generated autoloads from jka-compr.el
  
  (defvar jka-compr-inhibit nil "\
@@@ -15519,7 -15672,7 +15444,7 @@@ by `jka-compr-installed'
  
  ;;;***
  \f
 -;;;### (autoloads (js-mode) "js" "progmodes/js.el" (19775 2029))
 +;;;### (autoloads (js-mode) "js" "progmodes/js.el" (19714 43298))
  ;;; Generated autoloads from progmodes/js.el
  
  (autoload 'js-mode "js" "\
@@@ -15533,7 -15686,7 +15458,7 @@@ Major mode for editing JavaScript
  \f
  ;;;### (autoloads (keypad-setup keypad-numlock-shifted-setup keypad-shifted-setup
  ;;;;;;  keypad-numlock-setup keypad-setup) "keypad" "emulation/keypad.el"
 -;;;;;;  (19775 2028))
 +;;;;;;  (19562 42953))
  ;;; Generated autoloads from emulation/keypad.el
  
  (defvar keypad-setup nil "\
@@@ -15589,7 -15742,7 +15514,7 @@@ the decimal key on the keypad is mappe
  ;;;***
  \f
  ;;;### (autoloads (kinsoku) "kinsoku" "international/kinsoku.el"
 -;;;;;;  (19780 4513))
 +;;;;;;  (19562 42953))
  ;;; Generated autoloads from international/kinsoku.el
  
  (autoload 'kinsoku "kinsoku" "\
@@@ -15610,8 -15763,8 +15535,8 @@@ the context of text formatting
  
  ;;;***
  \f
 -;;;### (autoloads (kkc-region) "kkc" "international/kkc.el" (19775
 -;;;;;;  2028))
 +;;;### (autoloads (kkc-region) "kkc" "international/kkc.el" (19619
 +;;;;;;  52030))
  ;;; Generated autoloads from international/kkc.el
  
  (defvar kkc-after-update-conversion-functions nil "\
@@@ -15636,7 -15789,7 +15561,7 @@@ and the return value is the length of t
  ;;;### (autoloads (kmacro-end-call-mouse kmacro-end-and-call-macro
  ;;;;;;  kmacro-end-or-call-macro kmacro-start-macro-or-insert-counter
  ;;;;;;  kmacro-call-macro kmacro-end-macro kmacro-start-macro kmacro-exec-ring-item)
 -;;;;;;  "kmacro" "kmacro.el" (19780 4513))
 +;;;;;;  "kmacro" "kmacro.el" (19591 62571))
  ;;; Generated autoloads from kmacro.el
   (global-set-key "\C-x(" 'kmacro-start-macro)
   (global-set-key "\C-x)" 'kmacro-end-macro)
@@@ -15747,7 -15900,7 +15672,7 @@@ If kbd macro currently being defined en
  ;;;***
  \f
  ;;;### (autoloads (setup-korean-environment-internal) "korea-util"
 -;;;;;;  "language/korea-util.el" (19780 4513))
 +;;;;;;  "language/korea-util.el" (19562 42953))
  ;;; Generated autoloads from language/korea-util.el
  
  (defvar default-korean-keyboard (purecopy (if (string-match "3" (or (getenv "HANGUL_KEYBOARD_TYPE") "")) "3" "")) "\
@@@ -15761,21 -15914,19 +15686,21 @@@ Not documente
  
  ;;;***
  \f
 -;;;### (autoloads (landmark landmark-test-run) "landmark" "play/landmark.el"
 -;;;;;;  (19775 2029))
 +;;;### (autoloads (lm lm-test-run) "landmark" "play/landmark.el"
 +;;;;;;  (19714 43298))
  ;;; Generated autoloads from play/landmark.el
  
 -(defalias 'landmark-repeat 'landmark-test-run)
 +(defalias 'landmark-repeat 'lm-test-run)
  
 -(autoload 'landmark-test-run "landmark" "\
 -Run 100 Landmark games, each time saving the weights from the previous game.
 +(autoload 'lm-test-run "landmark" "\
 +Run 100 Lm games, each time saving the weights from the previous game.
  
  \(fn)" t nil)
  
 -(autoload 'landmark "landmark" "\
 -Start or resume an Landmark game.
 +(defalias 'landmark 'lm)
 +
 +(autoload 'lm "landmark" "\
 +Start or resume an Lm game.
  If a game is in progress, this command allows you to resume it.
  Here is the relation between prefix args and game options:
  
@@@ -15786,7 -15937,7 +15711,7 @@@ none / 1   | yes                   | n
         3   | no                    | yes
         4   | no                    | no
  
 -You start by moving to a square and typing \\[landmark-start-robot],
 +You start by moving to a square and typing \\[lm-start-robot],
  if you did not use a prefix arg to ask for automatic start.
  Use \\[describe-mode] for more info.
  
  \f
  ;;;### (autoloads (lao-compose-region lao-composition-function lao-transcribe-roman-to-lao-string
  ;;;;;;  lao-transcribe-single-roman-syllable-to-lao lao-compose-string)
 -;;;;;;  "lao-util" "language/lao-util.el" (19780 4513))
 +;;;;;;  "lao-util" "language/lao-util.el" (19562 42953))
  ;;; Generated autoloads from language/lao-util.el
  
  (autoload 'lao-compose-string "lao-util" "\
@@@ -15835,7 -15986,7 +15760,7 @@@ Not documente
  \f
  ;;;### (autoloads (latexenc-find-file-coding-system latexenc-coding-system-to-inputenc
  ;;;;;;  latexenc-inputenc-to-coding-system latex-inputenc-coding-alist)
 -;;;;;;  "latexenc" "international/latexenc.el" (19775 2028))
 +;;;;;;  "latexenc" "international/latexenc.el" (19562 42953))
  ;;; Generated autoloads from international/latexenc.el
  
  (defvar latex-inputenc-coding-alist (purecopy '(("ansinew" . windows-1252) ("applemac" . mac-roman) ("ascii" . us-ascii) ("cp1250" . windows-1250) ("cp1252" . windows-1252) ("cp1257" . cp1257) ("cp437de" . cp437) ("cp437" . cp437) ("cp850" . cp850) ("cp852" . cp852) ("cp858" . cp858) ("cp865" . cp865) ("latin1" . iso-8859-1) ("latin2" . iso-8859-2) ("latin3" . iso-8859-3) ("latin4" . iso-8859-4) ("latin5" . iso-8859-5) ("latin9" . iso-8859-15) ("next" . next) ("utf8" . utf-8) ("utf8x" . utf-8))) "\
@@@ -15867,7 -16018,7 +15792,7 @@@ coding system names is determined from 
  ;;;***
  \f
  ;;;### (autoloads (latin1-display-ucs-per-lynx latin1-display latin1-display)
 -;;;;;;  "latin1-disp" "international/latin1-disp.el" (19780 4513))
 +;;;;;;  "latin1-disp" "international/latin1-disp.el" (19562 42953))
  ;;; Generated autoloads from international/latin1-disp.el
  
  (defvar latin1-display nil "\
@@@ -15909,7 -16060,7 +15834,7 @@@ use either \\[customize] or the functio
  ;;;***
  \f
  ;;;### (autoloads (ld-script-mode) "ld-script" "progmodes/ld-script.el"
 -;;;;;;  (19775 2029))
 +;;;;;;  (19619 52030))
  ;;; Generated autoloads from progmodes/ld-script.el
  
  (autoload 'ld-script-mode "ld-script" "\
@@@ -15920,7 -16071,7 +15845,7 @@@ A major mode to edit GNU ld script file
  ;;;***
  \f
  ;;;### (autoloads (ledit-from-lisp-mode ledit-mode) "ledit" "ledit.el"
 -;;;;;;  (19775 2028))
 +;;;;;;  (19562 42953))
  ;;; Generated autoloads from ledit.el
  
  (defconst ledit-save-files t "\
@@@ -15955,7 -16106,7 +15880,7 @@@ Not documente
  
  ;;;***
  \f
 -;;;### (autoloads (life) "life" "play/life.el" (19775 2029))
 +;;;### (autoloads (life) "life" "play/life.el" (19714 43298))
  ;;; Generated autoloads from play/life.el
  
  (autoload 'life "life" "\
@@@ -15969,7 -16120,7 +15894,7 @@@ generations (this defaults to 1)
  ;;;***
  \f
  ;;;### (autoloads (global-linum-mode linum-mode linum-format) "linum"
 -;;;;;;  "linum.el" (19775 2028))
 +;;;;;;  "linum.el" (19598 13691))
  ;;; Generated autoloads from linum.el
  
  (defvar linum-format 'dynamic "\
@@@ -16007,8 -16158,8 +15932,8 @@@ See `linum-mode' for more information o
  
  ;;;***
  \f
 -;;;### (autoloads (unload-feature) "loadhist" "loadhist.el" (19775
 -;;;;;;  2028))
 +;;;### (autoloads (unload-feature) "loadhist" "loadhist.el" (19591
 +;;;;;;  62571))
  ;;; Generated autoloads from loadhist.el
  
  (autoload 'unload-feature "loadhist" "\
@@@ -16040,7 -16191,7 +15965,7 @@@ something strange, such as redefining a
  ;;;***
  \f
  ;;;### (autoloads (locate-with-filter locate locate-ls-subdir-switches)
 -;;;;;;  "locate" "locate.el" (19775 2028))
 +;;;;;;  "locate" "locate.el" (19714 43298))
  ;;; Generated autoloads from locate.el
  
  (defvar locate-ls-subdir-switches (purecopy "-al") "\
@@@ -16092,7 -16243,7 +16017,7 @@@ except that FILTER is not optional
  
  ;;;***
  \f
 -;;;### (autoloads (log-edit) "log-edit" "vc/log-edit.el" (19775 2030))
 +;;;### (autoloads (log-edit) "log-edit" "vc/log-edit.el" (19714 43298))
  ;;; Generated autoloads from vc/log-edit.el
  
  (autoload 'log-edit "log-edit" "\
@@@ -16119,8 -16270,8 +16044,8 @@@ uses the current buffer
  
  ;;;***
  \f
 -;;;### (autoloads (log-view-mode) "log-view" "vc/log-view.el" (19775
 -;;;;;;  2030))
 +;;;### (autoloads (log-view-mode) "log-view" "vc/log-view.el" (19640
 +;;;;;;  47194))
  ;;; Generated autoloads from vc/log-view.el
  
  (autoload 'log-view-mode "log-view" "\
@@@ -16130,8 -16281,8 +16055,8 @@@ Major mode for browsing CVS log output
  
  ;;;***
  \f
 -;;;### (autoloads (longlines-mode) "longlines" "longlines.el" (19775
 -;;;;;;  2028))
 +;;;### (autoloads (longlines-mode) "longlines" "longlines.el" (19591
 +;;;;;;  62571))
  ;;; Generated autoloads from longlines.el
  
  (autoload 'longlines-mode "longlines" "\
@@@ -16152,8 -16303,8 +16077,8 @@@ are indicated with a symbol
  ;;;***
  \f
  ;;;### (autoloads (print-region lpr-region print-buffer lpr-buffer
 -;;;;;;  lpr-command lpr-switches printer-name) "lpr" "lpr.el" (19780
 -;;;;;;  4513))
 +;;;;;;  lpr-command lpr-switches printer-name) "lpr" "lpr.el" (19714
 +;;;;;;  43298))
  ;;; Generated autoloads from lpr.el
  
  (defvar lpr-windows-system (memq system-type '(ms-dos windows-nt)))
@@@ -16247,7 -16398,7 +16172,7 @@@ for further customization of the printe
  ;;;***
  \f
  ;;;### (autoloads (ls-lisp-support-shell-wildcards) "ls-lisp" "ls-lisp.el"
 -;;;;;;  (19775 2028))
 +;;;;;;  (19714 43298))
  ;;; Generated autoloads from ls-lisp.el
  
  (defvar ls-lisp-support-shell-wildcards t "\
@@@ -16258,8 -16409,8 +16183,8 @@@ Otherwise they are treated as Emacs reg
  
  ;;;***
  \f
 -;;;### (autoloads (lunar-phases) "lunar" "calendar/lunar.el" (19780
 -;;;;;;  4513))
 +;;;### (autoloads (lunar-phases) "lunar" "calendar/lunar.el" (19598
 +;;;;;;  13691))
  ;;; Generated autoloads from calendar/lunar.el
  
  (autoload 'lunar-phases "lunar" "\
@@@ -16273,8 -16424,8 +16198,8 @@@ This function is suitable for executio
  
  ;;;***
  \f
 -;;;### (autoloads (m4-mode) "m4-mode" "progmodes/m4-mode.el" (19780
 -;;;;;;  4514))
 +;;;### (autoloads (m4-mode) "m4-mode" "progmodes/m4-mode.el" (19714
 +;;;;;;  43298))
  ;;; Generated autoloads from progmodes/m4-mode.el
  
  (autoload 'm4-mode "m4-mode" "\
@@@ -16285,7 -16436,7 +16210,7 @@@ A major mode to edit m4 macro files
  ;;;***
  \f
  ;;;### (autoloads (macroexpand-all) "macroexp" "emacs-lisp/macroexp.el"
 -;;;;;;  (19775 2028))
 +;;;;;;  (19598 13691))
  ;;; Generated autoloads from emacs-lisp/macroexp.el
  
  (autoload 'macroexpand-all "macroexp" "\
@@@ -16299,7 -16450,7 +16224,7 @@@ definitions to shadow the loaded ones f
  ;;;***
  \f
  ;;;### (autoloads (apply-macro-to-region-lines kbd-macro-query insert-kbd-macro
 -;;;;;;  name-last-kbd-macro) "macros" "macros.el" (19780 4513))
 +;;;;;;  name-last-kbd-macro) "macros" "macros.el" (19598 13691))
  ;;; Generated autoloads from macros.el
  
  (autoload 'name-last-kbd-macro "macros" "\
@@@ -16388,7 -16539,7 +16313,7 @@@ and then select the region of un-tablif
  ;;;***
  \f
  ;;;### (autoloads (what-domain mail-extract-address-components) "mail-extr"
 -;;;;;;  "mail/mail-extr.el" (19780 4513))
 +;;;;;;  "mail/mail-extr.el" (19714 43298))
  ;;; Generated autoloads from mail/mail-extr.el
  
  (autoload 'mail-extract-address-components "mail-extr" "\
@@@ -16420,7 -16571,7 +16345,7 @@@ Convert mail domain DOMAIN to the count
  \f
  ;;;### (autoloads (mail-hist-put-headers-into-history mail-hist-keep-history
  ;;;;;;  mail-hist-enable mail-hist-define-keys) "mail-hist" "mail/mail-hist.el"
 -;;;;;;  (19775 2028))
 +;;;;;;  (19598 13691))
  ;;; Generated autoloads from mail/mail-hist.el
  
  (autoload 'mail-hist-define-keys "mail-hist" "\
@@@ -16452,7 -16603,7 +16377,7 @@@ This function normally would be called 
  ;;;### (autoloads (mail-fetch-field mail-unquote-printable-region
  ;;;;;;  mail-unquote-printable mail-quote-printable-region mail-quote-printable
  ;;;;;;  mail-file-babyl-p mail-use-rfc822) "mail-utils" "mail/mail-utils.el"
 -;;;;;;  (19775 2028))
 +;;;;;;  (19640 47194))
  ;;; Generated autoloads from mail/mail-utils.el
  
  (defvar mail-use-rfc822 nil "\
@@@ -16514,8 -16665,8 +16439,8 @@@ matches may be returned from the messag
  ;;;***
  \f
  ;;;### (autoloads (define-mail-abbrev build-mail-abbrevs mail-abbrevs-setup
 -;;;;;;  mail-abbrevs-mode) "mailabbrev" "mail/mailabbrev.el" (19775
 -;;;;;;  2028))
 +;;;;;;  mail-abbrevs-mode) "mailabbrev" "mail/mailabbrev.el" (19591
 +;;;;;;  62571))
  ;;; Generated autoloads from mail/mailabbrev.el
  
  (defvar mail-abbrevs-mode nil "\
@@@ -16557,8 -16708,8 +16482,8 @@@ double-quotes
  ;;;***
  \f
  ;;;### (autoloads (mail-complete define-mail-alias expand-mail-aliases
 -;;;;;;  mail-complete-style) "mailalias" "mail/mailalias.el" (19775
 -;;;;;;  2028))
 +;;;;;;  mail-complete-style) "mailalias" "mail/mailalias.el" (19591
 +;;;;;;  62571))
  ;;; Generated autoloads from mail/mailalias.el
  
  (defvar mail-complete-style 'angles "\
@@@ -16604,7 -16755,7 +16529,7 @@@ current header, calls `mail-complete-fu
  ;;;***
  \f
  ;;;### (autoloads (mailclient-send-it) "mailclient" "mail/mailclient.el"
 -;;;;;;  (19775 2028))
 +;;;;;;  (19714 43298))
  ;;; Generated autoloads from mail/mailclient.el
  
  (autoload 'mailclient-send-it "mailclient" "\
@@@ -16618,7 -16769,7 +16543,7 @@@ The mail client is taken to be the hand
  \f
  ;;;### (autoloads (makefile-imake-mode makefile-bsdmake-mode makefile-makepp-mode
  ;;;;;;  makefile-gmake-mode makefile-automake-mode makefile-mode)
 -;;;;;;  "make-mode" "progmodes/make-mode.el" (19775 2029))
 +;;;;;;  "make-mode" "progmodes/make-mode.el" (19598 13691))
  ;;; Generated autoloads from progmodes/make-mode.el
  
  (autoload 'makefile-mode "make-mode" "\
@@@ -16735,8 -16886,8 +16660,8 @@@ An adapted `makefile-mode' that knows a
  
  ;;;***
  \f
 -;;;### (autoloads (make-command-summary) "makesum" "makesum.el" (19775
 -;;;;;;  2029))
 +;;;### (autoloads (make-command-summary) "makesum" "makesum.el" (19714
 +;;;;;;  43298))
  ;;; Generated autoloads from makesum.el
  
  (autoload 'make-command-summary "makesum" "\
@@@ -16748,7 -16899,7 +16673,7 @@@ Previous contents of that buffer are ki
  ;;;***
  \f
  ;;;### (autoloads (Man-bookmark-jump man-follow man) "man" "man.el"
 -;;;;;;  (19780 4513))
 +;;;;;;  (19619 52030))
  ;;; Generated autoloads from man.el
  
  (defalias 'manual-entry 'man)
@@@ -16802,7 -16953,7 +16727,7 @@@ Default bookmark handler for Man buffer
  
  ;;;***
  \f
 -;;;### (autoloads (master-mode) "master" "master.el" (19780 4513))
 +;;;### (autoloads (master-mode) "master" "master.el" (19562 42953))
  ;;; Generated autoloads from master.el
  
  (autoload 'master-mode "master" "\
@@@ -16825,7 -16976,7 +16750,7 @@@ yourself the value of `master-of' by ca
  ;;;***
  \f
  ;;;### (autoloads (minibuffer-depth-indicate-mode) "mb-depth" "mb-depth.el"
 -;;;;;;  (19775 2029))
 +;;;;;;  (19562 42953))
  ;;; Generated autoloads from mb-depth.el
  
  (defvar minibuffer-depth-indicate-mode nil "\
@@@ -16848,13 -16999,13 +16773,6 @@@ Returns non-nil if the new state is ena
  
  \(fn &optional ARG)" t nil)
  
--;;;***
--\f
- ;;;### (autoloads nil "menu-bar" "menu-bar.el" (19714 43298))
 -;;;### (autoloads nil "menu-bar" "menu-bar.el" (19775 2029))
--;;; Generated autoloads from menu-bar.el
--
--(put 'menu-bar-mode 'standard-value '(t))
--
  ;;;***
  \f
  ;;;### (autoloads (message-unbold-region message-bold-region message-news-other-frame
  ;;;;;;  message-forward-make-body message-forward message-recover
  ;;;;;;  message-supersede message-cancel-news message-followup message-wide-reply
  ;;;;;;  message-reply message-news message-mail message-mode) "message"
- ;;;;;;  "gnus/message.el" (19714 43298))
 -;;;;;;  "gnus/message.el" (19775 2028))
++;;;;;;  "gnus/message.el" (19717 39999))
  ;;; Generated autoloads from gnus/message.el
  
  (define-mail-user-agent 'message-user-agent 'message-mail 'message-send-and-exit 'message-kill-buffer 'message-send-hook)
@@@ -16915,7 -17066,7 +16833,7 @@@ OTHER-HEADERS is an alist of header/val
  to continue editing a message already being composed.  SWITCH-FUNCTION
  is a function used to switch to and display the mail buffer.
  
 -\(fn &optional TO SUBJECT OTHER-HEADERS CONTINUE SWITCH-FUNCTION YANK-ACTION SEND-ACTIONS RETURN-ACTION &rest IGNORED)" t nil)
 +\(fn &optional TO SUBJECT OTHER-HEADERS CONTINUE SWITCH-FUNCTION YANK-ACTION SEND-ACTIONS)" t nil)
  
  (autoload 'message-news "message" "\
  Start editing a news article to be sent.
@@@ -17029,7 -17180,7 +16947,7 @@@ which specify the range to operate on
  ;;;***
  \f
  ;;;### (autoloads (metapost-mode metafont-mode) "meta-mode" "progmodes/meta-mode.el"
 -;;;;;;  (19775 2029))
 +;;;;;;  (19714 43298))
  ;;; Generated autoloads from progmodes/meta-mode.el
  
  (autoload 'metafont-mode "meta-mode" "\
@@@ -17046,7 -17197,7 +16964,7 @@@ Major mode for editing MetaPost sources
  \f
  ;;;### (autoloads (metamail-region metamail-buffer metamail-interpret-body
  ;;;;;;  metamail-interpret-header) "metamail" "mail/metamail.el"
 -;;;;;;  (19775 2028))
 +;;;;;;  (19562 42953))
  ;;; Generated autoloads from mail/metamail.el
  
  (autoload 'metamail-interpret-header "metamail" "\
@@@ -17091,7 -17242,7 +17009,7 @@@ redisplayed as output is inserted
  \f
  ;;;### (autoloads (mh-fully-kill-draft mh-send-letter mh-user-agent-compose
  ;;;;;;  mh-smail-batch mh-smail-other-window mh-smail) "mh-comp"
 -;;;;;;  "mh-e/mh-comp.el" (19780 4513))
 +;;;;;;  "mh-e/mh-comp.el" (19562 42953))
  ;;; Generated autoloads from mh-e/mh-comp.el
  
  (autoload 'mh-smail "mh-comp" "\
@@@ -17137,10 -17288,10 +17055,10 @@@ OTHER-HEADERS is an alist specifying ad
  Elements look like (HEADER . VALUE) where both HEADER and VALUE
  are strings.
  
 -CONTINUE, SWITCH-FUNCTION, YANK-ACTION, SEND-ACTIONS, and
 -RETURN-ACTION are ignored.
 +CONTINUE, SWITCH-FUNCTION, YANK-ACTION and SEND-ACTIONS are
 +ignored.
  
 -\(fn &optional TO SUBJECT OTHER-HEADERS CONTINUE SWITCH-FUNCTION YANK-ACTION SEND-ACTIONS RETURN-ACTION &rest IGNORED)" nil nil)
 +\(fn &optional TO SUBJECT OTHER-HEADERS CONTINUE SWITCH-FUNCTION YANK-ACTION SEND-ACTIONS)" nil nil)
  
  (autoload 'mh-send-letter "mh-comp" "\
  Save draft and send message.
@@@ -17181,7 -17332,7 +17099,7 @@@ delete the draft message
  
  ;;;***
  \f
 -;;;### (autoloads (mh-version) "mh-e" "mh-e/mh-e.el" (19775 2029))
 +;;;### (autoloads (mh-version) "mh-e" "mh-e/mh-e.el" (19562 42953))
  ;;; Generated autoloads from mh-e/mh-e.el
  
  (put 'mh-progs 'risky-local-variable t)
@@@ -17198,7 -17349,7 +17116,7 @@@ Display version information about MH-E 
  ;;;***
  \f
  ;;;### (autoloads (mh-folder-mode mh-nmail mh-rmail) "mh-folder"
 -;;;;;;  "mh-e/mh-folder.el" (19780 4514))
 +;;;;;;  "mh-e/mh-folder.el" (19562 42953))
  ;;; Generated autoloads from mh-e/mh-folder.el
  
  (autoload 'mh-rmail "mh-folder" "\
@@@ -17280,7 -17431,7 +17198,7 @@@ perform the operation on all messages i
  ;;;***
  \f
  ;;;### (autoloads (midnight-delay-set clean-buffer-list) "midnight"
 -;;;;;;  "midnight.el" (19780 4514))
 +;;;;;;  "midnight.el" (19562 42953))
  ;;; Generated autoloads from midnight.el
  
  (autoload 'clean-buffer-list "midnight" "\
@@@ -17307,7 -17458,7 +17225,7 @@@ to its second argument TM
  ;;;***
  \f
  ;;;### (autoloads (minibuffer-electric-default-mode) "minibuf-eldef"
 -;;;;;;  "minibuf-eldef.el" (19775 2029))
 +;;;;;;  "minibuf-eldef.el" (19591 62571))
  ;;; Generated autoloads from minibuf-eldef.el
  
  (defvar minibuffer-electric-default-mode nil "\
@@@ -17334,7 -17485,7 +17252,7 @@@ Returns non-nil if the new state is ena
  
  ;;;***
  \f
 -;;;### (autoloads (butterfly) "misc" "misc.el" (19775 2029))
 +;;;### (autoloads (butterfly) "misc" "misc.el" (19714 43298))
  ;;; Generated autoloads from misc.el
  
  (autoload 'butterfly "misc" "\
@@@ -17353,7 -17504,7 +17271,7 @@@ variation of `C-x M-c M-butterfly' fro
  \f
  ;;;### (autoloads (multi-isearch-files-regexp multi-isearch-files
  ;;;;;;  multi-isearch-buffers-regexp multi-isearch-buffers multi-isearch-setup)
 -;;;;;;  "misearch" "misearch.el" (19775 2029))
 +;;;;;;  "misearch" "misearch.el" (19562 42953))
  ;;; Generated autoloads from misearch.el
   (add-hook 'isearch-mode-hook 'multi-isearch-setup)
  
@@@ -17435,7 -17586,7 +17353,7 @@@ whose file names match the specified wi
  ;;;***
  \f
  ;;;### (autoloads (mixal-mode) "mixal-mode" "progmodes/mixal-mode.el"
 -;;;;;;  (19780 4514))
 +;;;;;;  (19714 43298))
  ;;; Generated autoloads from progmodes/mixal-mode.el
  
  (autoload 'mixal-mode "mixal-mode" "\
@@@ -17446,7 -17597,7 +17364,7 @@@ Major mode for the mixal asm language
  ;;;***
  \f
  ;;;### (autoloads (mm-inline-external-body mm-extern-cache-contents)
 -;;;;;;  "mm-extern" "gnus/mm-extern.el" (19775 2028))
 +;;;;;;  "mm-extern" "gnus/mm-extern.el" (19714 43298))
  ;;; Generated autoloads from gnus/mm-extern.el
  
  (autoload 'mm-extern-cache-contents "mm-extern" "\
@@@ -17465,7 -17616,7 +17383,7 @@@ If NO-DISPLAY is nil, display it. Other
  ;;;***
  \f
  ;;;### (autoloads (mm-inline-partial) "mm-partial" "gnus/mm-partial.el"
 -;;;;;;  (19775 2028))
 +;;;;;;  (19619 52030))
  ;;; Generated autoloads from gnus/mm-partial.el
  
  (autoload 'mm-inline-partial "mm-partial" "\
@@@ -17479,7 -17630,7 +17397,7 @@@ If NO-DISPLAY is nil, display it. Other
  ;;;***
  \f
  ;;;### (autoloads (mm-url-insert-file-contents-external mm-url-insert-file-contents)
 -;;;;;;  "mm-url" "gnus/mm-url.el" (19780 4513))
 +;;;;;;  "mm-url" "gnus/mm-url.el" (19714 43298))
  ;;; Generated autoloads from gnus/mm-url.el
  
  (autoload 'mm-url-insert-file-contents "mm-url" "\
@@@ -17496,7 -17647,7 +17414,7 @@@ Insert file contents of URL using `mm-u
  ;;;***
  \f
  ;;;### (autoloads (mm-uu-dissect-text-parts mm-uu-dissect) "mm-uu"
 -;;;;;;  "gnus/mm-uu.el" (19775 2028))
 +;;;;;;  "gnus/mm-uu.el" (19714 43298))
  ;;; Generated autoloads from gnus/mm-uu.el
  
  (autoload 'mm-uu-dissect "mm-uu" "\
@@@ -17516,7 -17667,7 +17434,7 @@@ Assume text has been decoded if DECODE
  ;;;***
  \f
  ;;;### (autoloads (mml1991-sign mml1991-encrypt) "mml1991" "gnus/mml1991.el"
 -;;;;;;  (19775 2028))
 +;;;;;;  (19640 47194))
  ;;; Generated autoloads from gnus/mml1991.el
  
  (autoload 'mml1991-encrypt "mml1991" "\
@@@ -17533,7 -17684,7 +17451,7 @@@ Not documente
  \f
  ;;;### (autoloads (mml2015-self-encrypt mml2015-sign mml2015-encrypt
  ;;;;;;  mml2015-verify-test mml2015-verify mml2015-decrypt-test mml2015-decrypt)
 -;;;;;;  "mml2015" "gnus/mml2015.el" (19780 4513))
 +;;;;;;  "mml2015" "gnus/mml2015.el" (19714 43298))
  ;;; Generated autoloads from gnus/mml2015.el
  
  (autoload 'mml2015-decrypt "mml2015" "\
@@@ -17573,8 -17724,8 +17491,8 @@@ Not documente
  
  ;;;***
  \f
 -;;;### (autoloads (m2-mode) "modula2" "progmodes/modula2.el" (19763
 -;;;;;;  27287))
 +;;;### (autoloads (m2-mode) "modula2" "progmodes/modula2.el" (19714
 +;;;;;;  43298))
  ;;; Generated autoloads from progmodes/modula2.el
  
  (defalias 'modula-2-mode 'm2-mode)
@@@ -17608,7 -17759,7 +17526,7 @@@ followed by the first character of the 
  ;;;***
  \f
  ;;;### (autoloads (unmorse-region morse-region) "morse" "play/morse.el"
 -;;;;;;  (19775 2029))
 +;;;;;;  (19562 42953))
  ;;; Generated autoloads from play/morse.el
  
  (autoload 'morse-region "morse" "\
@@@ -17624,7 -17775,7 +17542,7 @@@ Convert morse coded text in region to o
  ;;;***
  \f
  ;;;### (autoloads (mouse-drag-drag mouse-drag-throw) "mouse-drag"
 -;;;;;;  "mouse-drag.el" (19775 2029))
 +;;;;;;  "mouse-drag.el" (19714 43298))
  ;;; Generated autoloads from mouse-drag.el
  
  (autoload 'mouse-drag-throw "mouse-drag" "\
@@@ -17671,8 -17822,8 +17589,8 @@@ To test this function, evaluate
  
  ;;;***
  \f
 -;;;### (autoloads (mouse-sel-mode) "mouse-sel" "mouse-sel.el" (19775
 -;;;;;;  2029))
 +;;;### (autoloads (mouse-sel-mode) "mouse-sel" "mouse-sel.el" (19714
 +;;;;;;  43298))
  ;;; Generated autoloads from mouse-sel.el
  
  (defvar mouse-sel-mode nil "\
@@@ -17724,7 -17875,7 +17642,7 @@@ primary selection and region
  
  ;;;***
  \f
 -;;;### (autoloads (mpc) "mpc" "mpc.el" (19775 2029))
 +;;;### (autoloads (mpc) "mpc" "mpc.el" (19714 43269))
  ;;; Generated autoloads from mpc.el
  
  (autoload 'mpc "mpc" "\
@@@ -17734,7 -17885,7 +17652,7 @@@ Main entry point for MPC
  
  ;;;***
  \f
 -;;;### (autoloads (mpuz) "mpuz" "play/mpuz.el" (19775 2029))
 +;;;### (autoloads (mpuz) "mpuz" "play/mpuz.el" (19640 47194))
  ;;; Generated autoloads from play/mpuz.el
  
  (autoload 'mpuz "mpuz" "\
@@@ -17744,7 -17895,7 +17662,7 @@@ Multiplication puzzle with GNU Emacs
  
  ;;;***
  \f
 -;;;### (autoloads (msb-mode) "msb" "msb.el" (19780 45051))
 +;;;### (autoloads (msb-mode) "msb" "msb.el" (19562 42953))
  ;;; Generated autoloads from msb.el
  
  (defvar msb-mode nil "\
@@@ -17764,14 -17915,14 +17682,6 @@@ different buffer menu using the functio
  
  \(fn &optional ARG)" t nil)
  
--;;;***
--\f
- ;;;### (autoloads nil "mule-cmds" "international/mule-cmds.el" (19714
- ;;;;;;  43298))
 -;;;### (autoloads nil "mule-cmds" "international/mule-cmds.el" (19775
 -;;;;;;  2028))
--;;; Generated autoloads from international/mule-cmds.el
--
--(put 'input-method-alist 'risky-local-variable t)
--
  ;;;***
  \f
  ;;;### (autoloads (font-show-log mule-diag list-input-methods list-fontsets
  ;;;;;;  describe-current-coding-system describe-current-coding-system-briefly
  ;;;;;;  describe-coding-system describe-character-set list-charset-chars
  ;;;;;;  read-charset list-character-sets) "mule-diag" "international/mule-diag.el"
 -;;;;;;  (19775 2028))
 +;;;;;;  (19619 52030))
  ;;; Generated autoloads from international/mule-diag.el
  
  (autoload 'list-character-sets "mule-diag" "\
@@@ -17916,7 -18067,7 +17826,7 @@@ The default is 20.  If LIMIT is negativ
  ;;;;;;  coding-system-translation-table-for-decode coding-system-pre-write-conversion
  ;;;;;;  coding-system-post-read-conversion lookup-nested-alist set-nested-alist
  ;;;;;;  truncate-string-to-width store-substring string-to-sequence)
 -;;;;;;  "mule-util" "international/mule-util.el" (19775 2028))
 +;;;;;;  "mule-util" "international/mule-util.el" (19562 42953))
  ;;; Generated autoloads from international/mule-util.el
  
  (autoload 'string-to-sequence "mule-util" "\
@@@ -18056,8 -18207,8 +17966,8 @@@ per-character basis, this may not be ac
  ;;;### (autoloads (network-connection network-connection-to-service
  ;;;;;;  whois-reverse-lookup whois finger ftp run-dig dns-lookup-host
  ;;;;;;  nslookup nslookup-host ping traceroute route arp netstat
 -;;;;;;  iwconfig ifconfig) "net-utils" "net/net-utils.el" (19775
 -;;;;;;  2029))
 +;;;;;;  iwconfig ifconfig) "net-utils" "net/net-utils.el" (19714
 +;;;;;;  43298))
  ;;; Generated autoloads from net/net-utils.el
  
  (autoload 'ifconfig "net-utils" "\
@@@ -18151,8 -18302,8 +18061,8 @@@ Open a network connection to HOST on PO
  
  ;;;***
  \f
 -;;;### (autoloads (netrc-credentials) "netrc" "net/netrc.el" (19775
 -;;;;;;  2029))
 +;;;### (autoloads (netrc-credentials) "netrc" "net/netrc.el" (19640
 +;;;;;;  47194))
  ;;; Generated autoloads from net/netrc.el
  
  (autoload 'netrc-credentials "netrc" "\
@@@ -18169,7 -18320,7 +18079,7 @@@ listed in the PORTS list
  ;;;;;;  uncomment-region comment-kill comment-set-column comment-indent
  ;;;;;;  comment-indent-default comment-normalize-vars comment-multi-line
  ;;;;;;  comment-padding comment-style comment-column) "newcomment"
 -;;;;;;  "newcomment.el" (19775 2029))
 +;;;;;;  "newcomment.el" (19714 43298))
  ;;; Generated autoloads from newcomment.el
  
  (defalias 'indent-for-comment 'comment-indent)
@@@ -18369,7 -18520,7 +18279,7 @@@ unless optional argument SOFT is non-ni
  ;;;***
  \f
  ;;;### (autoloads (newsticker-start newsticker-running-p) "newst-backend"
 -;;;;;;  "net/newst-backend.el" (19780 4514))
 +;;;;;;  "net/newst-backend.el" (19598 13691))
  ;;; Generated autoloads from net/newst-backend.el
  
  (autoload 'newsticker-running-p "newst-backend" "\
@@@ -18391,7 -18542,7 +18301,7 @@@ Run `newsticker-start-hook' if newstick
  ;;;***
  \f
  ;;;### (autoloads (newsticker-plainview) "newst-plainview" "net/newst-plainview.el"
 -;;;;;;  (19780 4514))
 +;;;;;;  (19598 13691))
  ;;; Generated autoloads from net/newst-plainview.el
  
  (autoload 'newsticker-plainview "newst-plainview" "\
@@@ -18402,7 -18553,7 +18312,7 @@@ Start newsticker plainview
  ;;;***
  \f
  ;;;### (autoloads (newsticker-show-news) "newst-reader" "net/newst-reader.el"
 -;;;;;;  (19780 4514))
 +;;;;;;  (19598 13691))
  ;;; Generated autoloads from net/newst-reader.el
  
  (autoload 'newsticker-show-news "newst-reader" "\
@@@ -18413,7 -18564,7 +18323,7 @@@ Start reading news.  You may want to bi
  ;;;***
  \f
  ;;;### (autoloads (newsticker-start-ticker newsticker-ticker-running-p)
 -;;;;;;  "newst-ticker" "net/newst-ticker.el" (19780 4514))
 +;;;;;;  "newst-ticker" "net/newst-ticker.el" (19598 13691))
  ;;; Generated autoloads from net/newst-ticker.el
  
  (autoload 'newsticker-ticker-running-p "newst-ticker" "\
@@@ -18434,7 -18585,7 +18344,7 @@@ running already
  ;;;***
  \f
  ;;;### (autoloads (newsticker-treeview) "newst-treeview" "net/newst-treeview.el"
 -;;;;;;  (19775 2029))
 +;;;;;;  (19598 13691))
  ;;; Generated autoloads from net/newst-treeview.el
  
  (autoload 'newsticker-treeview "newst-treeview" "\
@@@ -18445,7 -18596,7 +18355,7 @@@ Start newsticker treeview
  ;;;***
  \f
  ;;;### (autoloads (nndiary-generate-nov-databases) "nndiary" "gnus/nndiary.el"
 -;;;;;;  (19775 2028))
 +;;;;;;  (19714 43298))
  ;;; Generated autoloads from gnus/nndiary.el
  
  (autoload 'nndiary-generate-nov-databases "nndiary" "\
@@@ -18455,8 -18606,8 +18365,8 @@@ Generate NOV databases in all nndiary d
  
  ;;;***
  \f
 -;;;### (autoloads (nndoc-add-type) "nndoc" "gnus/nndoc.el" (19775
 -;;;;;;  2028))
 +;;;### (autoloads (nndoc-add-type) "nndoc" "gnus/nndoc.el" (19714
 +;;;;;;  43298))
  ;;; Generated autoloads from gnus/nndoc.el
  
  (autoload 'nndoc-add-type "nndoc" "\
@@@ -18471,7 -18622,7 +18381,7 @@@ symbol in the alist
  ;;;***
  \f
  ;;;### (autoloads (nnfolder-generate-active-file) "nnfolder" "gnus/nnfolder.el"
 -;;;;;;  (19775 2028))
 +;;;;;;  (19714 43298))
  ;;; Generated autoloads from gnus/nnfolder.el
  
  (autoload 'nnfolder-generate-active-file "nnfolder" "\
@@@ -18483,7 -18634,7 +18393,7 @@@ This command does not work if you use s
  ;;;***
  \f
  ;;;### (autoloads (nnml-generate-nov-databases) "nnml" "gnus/nnml.el"
 -;;;;;;  (19775 2028))
 +;;;;;;  (19714 43298))
  ;;; Generated autoloads from gnus/nnml.el
  
  (autoload 'nnml-generate-nov-databases "nnml" "\
@@@ -18494,7 -18645,7 +18404,7 @@@ Generate NOV databases in all nnml dire
  ;;;***
  \f
  ;;;### (autoloads (disable-command enable-command disabled-command-function)
 -;;;;;;  "novice" "novice.el" (19775 2029))
 +;;;;;;  "novice" "novice.el" (19714 43298))
  ;;; Generated autoloads from novice.el
  
  (defvar disabled-command-function 'disabled-command-function "\
@@@ -18527,7 -18678,7 +18437,7 @@@ to future sessions
  ;;;***
  \f
  ;;;### (autoloads (nroff-mode) "nroff-mode" "textmodes/nroff-mode.el"
 -;;;;;;  (19780 4514))
 +;;;;;;  (19619 52030))
  ;;; Generated autoloads from textmodes/nroff-mode.el
  
  (autoload 'nroff-mode "nroff-mode" "\
@@@ -18542,7 -18693,7 +18452,7 @@@ closing requests for requests that are 
  ;;;***
  \f
  ;;;### (autoloads (nxml-glyph-display-string) "nxml-glyph" "nxml/nxml-glyph.el"
 -;;;;;;  (19775 2029))
 +;;;;;;  (19562 42953))
  ;;; Generated autoloads from nxml/nxml-glyph.el
  
  (autoload 'nxml-glyph-display-string "nxml-glyph" "\
@@@ -18554,8 -18705,8 +18464,8 @@@ Return nil if the face cannot display 
  
  ;;;***
  \f
 -;;;### (autoloads (nxml-mode) "nxml-mode" "nxml/nxml-mode.el" (19780
 -;;;;;;  4514))
 +;;;### (autoloads (nxml-mode) "nxml-mode" "nxml/nxml-mode.el" (19714
 +;;;;;;  43298))
  ;;; Generated autoloads from nxml/nxml-mode.el
  
  (autoload 'nxml-mode "nxml-mode" "\
@@@ -18617,7 -18768,7 +18527,7 @@@ Many aspects this mode can be customize
  ;;;***
  \f
  ;;;### (autoloads (nxml-enable-unicode-char-name-sets) "nxml-uchnm"
 -;;;;;;  "nxml/nxml-uchnm.el" (19775 2029))
 +;;;;;;  "nxml/nxml-uchnm.el" (19562 42953))
  ;;; Generated autoloads from nxml/nxml-uchnm.el
  
  (autoload 'nxml-enable-unicode-char-name-sets "nxml-uchnm" "\
@@@ -18633,12 -18784,13 +18543,13 @@@ the variable `nxml-enabled-unicode-bloc
  ;;;;;;  org-babel-next-src-block org-babel-goto-named-result org-babel-goto-named-src-block
  ;;;;;;  org-babel-goto-src-block-head org-babel-hide-result-toggle-maybe
  ;;;;;;  org-babel-sha1-hash org-babel-execute-subtree org-babel-execute-buffer
- ;;;;;;  org-babel-open-src-block-result org-babel-switch-to-session-with-code
- ;;;;;;  org-babel-switch-to-session org-babel-initiate-session org-babel-load-in-session
- ;;;;;;  org-babel-expand-src-block org-babel-execute-src-block org-babel-pop-to-session-maybe
+ ;;;;;;  org-babel-map-src-blocks org-babel-open-src-block-result
+ ;;;;;;  org-babel-switch-to-session-with-code org-babel-switch-to-session
+ ;;;;;;  org-babel-initiate-session org-babel-load-in-session org-babel-expand-src-block
+ ;;;;;;  org-babel-execute-src-block org-babel-pop-to-session-maybe
  ;;;;;;  org-babel-load-in-session-maybe org-babel-expand-src-block-maybe
  ;;;;;;  org-babel-execute-maybe org-babel-execute-safely-maybe) "ob"
- ;;;;;;  "org/ob.el" (19714 43298))
 -;;;;;;  "org/ob.el" (19775 2029))
++;;;;;;  "org/ob.el" (19717 39999))
  ;;; Generated autoloads from org/ob.el
  
  (autoload 'org-babel-execute-safely-maybe "ob" "\
@@@ -18735,6 -18887,32 +18646,32 @@@ results already exist
  
  \(fn &optional RE-RUN)" t nil)
  
+ (autoload 'org-babel-map-src-blocks "ob" "\
+ Evaluate BODY forms on each source-block in FILE.
+ If FILE is nil evaluate BODY forms on source blocks in current
+ buffer.  During evaluation of BODY the following local variables
+ are set relative to the currently matched code block.
+ full-block ------- string holding the entirety of the code block
+ beg-block -------- point at the beginning of the code block
+ end-block -------- point at the end of the matched code block
+ lang ------------- string holding the language of the code block
+ beg-lang --------- point at the beginning of the lang
+ end-lang --------- point at the end of the lang
+ switches --------- string holding the switches
+ beg-switches ----- point at the beginning of the switches
+ end-switches ----- point at the end of the switches
+ header-args ------ string holding the header-args
+ beg-header-args -- point at the beginning of the header-args
+ end-header-args -- point at the end of the header-args
+ body ------------- string holding the body of the code block
+ beg-body --------- point at the beginning of the body
+ end-body --------- point at the end of the body
+ \(fn FILE &rest BODY)" nil (quote macro))
+ (put 'org-babel-map-src-blocks 'lisp-indent-function '1)
  (autoload 'org-babel-execute-buffer "ob" "\
  Execute source code blocks in a buffer.
  Call `org-babel-execute-src-block' on every source block in
@@@ -18794,7 -18972,7 +18731,7 @@@ Mark current src bloc
  ;;;***
  \f
  ;;;### (autoloads (org-babel-describe-bindings) "ob-keys" "org/ob-keys.el"
- ;;;;;;  (19714 43298))
 -;;;;;;  (19775 2029))
++;;;;;;  (19717 39999))
  ;;; Generated autoloads from org/ob-keys.el
  
  (autoload 'org-babel-describe-bindings "ob-keys" "\
@@@ -18805,7 -18983,7 +18742,7 @@@ Describe all keybindings behind `org-ba
  ;;;***
  \f
  ;;;### (autoloads (org-babel-lob-get-info org-babel-lob-execute-maybe
- ;;;;;;  org-babel-lob-ingest) "ob-lob" "org/ob-lob.el" (19714 43298))
 -;;;;;;  org-babel-lob-ingest) "ob-lob" "org/ob-lob.el" (19775 2029))
++;;;;;;  org-babel-lob-ingest) "ob-lob" "org/ob-lob.el" (19717 39999))
  ;;; Generated autoloads from org/ob-lob.el
  
  (autoload 'org-babel-lob-ingest "ob-lob" "\
@@@ -18830,7 -19008,7 +18767,7 @@@ Return a Library of Babel function cal
  \f
  ;;;### (autoloads (org-babel-tangle org-babel-tangle-file org-babel-load-file
  ;;;;;;  org-babel-tangle-lang-exts) "ob-tangle" "org/ob-tangle.el"
- ;;;;;;  (19714 43298))
 -;;;;;;  (19775 2029))
++;;;;;;  (19717 39999))
  ;;; Generated autoloads from org/ob-tangle.el
  
  (defvar org-babel-tangle-lang-exts '(("emacs-lisp" . "el")) "\
@@@ -18848,7 -19026,7 +18785,7 @@@ This function exports the source code u
  `org-babel-tangle' and then loads the resulting file using
  `load-file'.
  
- \(fn FILE)" nil nil)
+ \(fn FILE)" t nil)
  
  (autoload 'org-babel-tangle-file "ob-tangle" "\
  Extract the bodies of source code blocks in FILE.
@@@ -18872,7 -19050,7 +18809,7 @@@ exported source code blocks by language
  ;;;***
  \f
  ;;;### (autoloads (inferior-octave) "octave-inf" "progmodes/octave-inf.el"
 -;;;;;;  (19780 4514))
 +;;;;;;  (19714 43298))
  ;;; Generated autoloads from progmodes/octave-inf.el
  
  (autoload 'inferior-octave "octave-inf" "\
@@@ -18895,7 -19073,7 +18832,7 @@@ startup file, `~/.emacs-octave'
  ;;;***
  \f
  ;;;### (autoloads (octave-mode) "octave-mod" "progmodes/octave-mod.el"
 -;;;;;;  (19775 2029))
 +;;;;;;  (19714 43298))
  ;;; Generated autoloads from progmodes/octave-mod.el
  
  (autoload 'octave-mode "octave-mod" "\
@@@ -18983,7 -19161,7 +18920,7 @@@ including a reproducible test case and 
  ;;;;;;  org-insert-link-global org-store-link org-run-like-in-org-mode
  ;;;;;;  turn-on-orgstruct++ turn-on-orgstruct orgstruct-mode org-global-cycle
  ;;;;;;  org-mode org-babel-do-load-languages) "org" "org/org.el"
- ;;;;;;  (19714 43298))
 -;;;;;;  (19780 4514))
++;;;;;;  (19717 39999))
  ;;; Generated autoloads from org/org.el
  
  (autoload 'org-babel-do-load-languages "org" "\
@@@ -19206,7 -19384,7 +19143,7 @@@ Call the customize function with org a
  ;;;;;;  org-diary org-agenda-list-stuck-projects org-tags-view org-todo-list
  ;;;;;;  org-search-view org-agenda-list org-batch-store-agenda-views
  ;;;;;;  org-store-agenda-views org-batch-agenda-csv org-batch-agenda
- ;;;;;;  org-agenda) "org-agenda" "org/org-agenda.el" (19714 43298))
 -;;;;;;  org-agenda) "org-agenda" "org/org-agenda.el" (19780 4514))
++;;;;;;  org-agenda) "org-agenda" "org/org-agenda.el" (19717 39999))
  ;;; Generated autoloads from org/org-agenda.el
  
  (autoload 'org-agenda "org-agenda" "\
@@@ -19313,13 -19491,13 +19250,13 @@@ This feature is considered obsolete, pl
  agenda instead.
  
  With a numeric prefix argument in an interactive call, the agenda will
- span INCLUDE-ALL days.  Lisp programs should instead specify NDAYS to change
- the number of days.  NDAYS defaults to `org-agenda-ndays'.
+ span INCLUDE-ALL days.  Lisp programs should instead specify SPAN to change
+ the number of days.  SPAN defaults to `org-agenda-span'.
  
  START-DAY defaults to TODAY, or to the most recent match for the weekday
  given in `org-agenda-start-on-weekday'.
  
- \(fn &optional INCLUDE-ALL START-DAY NDAYS)" t nil)
+ \(fn &optional INCLUDE-ALL START-DAY SPAN)" t nil)
  
  (autoload 'org-search-view "org-agenda" "\
  Show all entries that contain a phrase or words or regular expressions.
@@@ -19456,7 -19634,7 +19393,7 @@@ belonging to the \"Work\" category
  \f
  ;;;### (autoloads (org-archive-subtree-default-with-confirmation
  ;;;;;;  org-archive-subtree-default) "org-archive" "org/org-archive.el"
- ;;;;;;  (19714 43298))
 -;;;;;;  (19780 4514))
++;;;;;;  (19717 39999))
  ;;; Generated autoloads from org/org-archive.el
  
  (autoload 'org-archive-subtree-default "org-archive" "\
@@@ -19476,8 -19654,8 +19413,8 @@@ This command is set with the variable `
  ;;;### (autoloads (org-export-as-ascii org-export-region-as-ascii
  ;;;;;;  org-replace-region-by-ascii org-export-as-ascii-to-buffer
  ;;;;;;  org-export-as-utf8-to-buffer org-export-as-utf8 org-export-as-latin1-to-buffer
- ;;;;;;  org-export-as-latin1) "org-ascii" "org/org-ascii.el" (19714
- ;;;;;;  43298))
 -;;;;;;  org-export-as-latin1) "org-ascii" "org/org-ascii.el" (19780
 -;;;;;;  4514))
++;;;;;;  org-export-as-latin1) "org-ascii" "org/org-ascii.el" (19717
++;;;;;;  39999))
  ;;; Generated autoloads from org/org-ascii.el
  
  (autoload 'org-export-as-latin1 "org-ascii" "\
@@@ -19550,8 -19728,8 +19487,8 @@@ publishing directory
  
  ;;;***
  \f
- ;;;### (autoloads (org-attach) "org-attach" "org/org-attach.el" (19714
- ;;;;;;  43298))
 -;;;### (autoloads (org-attach) "org-attach" "org/org-attach.el" (19775
 -;;;;;;  2029))
++;;;### (autoloads (org-attach) "org-attach" "org/org-attach.el" (19717
++;;;;;;  39999))
  ;;; Generated autoloads from org/org-attach.el
  
  (autoload 'org-attach "org-attach" "\
@@@ -19563,7 -19741,7 +19500,7 @@@ Shows a list of commands and prompts fo
  ;;;***
  \f
  ;;;### (autoloads (org-bbdb-anniversaries) "org-bbdb" "org/org-bbdb.el"
- ;;;;;;  (19714 43298))
 -;;;;;;  (19780 4514))
++;;;;;;  (19717 39999))
  ;;; Generated autoloads from org/org-bbdb.el
  
  (autoload 'org-bbdb-anniversaries "org-bbdb" "\
@@@ -19574,7 -19752,7 +19511,7 @@@ Extract anniversaries from BBDB for dis
  ;;;***
  \f
  ;;;### (autoloads (org-capture-import-remember-templates org-capture-insert-template-here
- ;;;;;;  org-capture) "org-capture" "org/org-capture.el" (19714 43298))
 -;;;;;;  org-capture) "org-capture" "org/org-capture.el" (19775 2029))
++;;;;;;  org-capture) "org-capture" "org/org-capture.el" (19717 39999))
  ;;; Generated autoloads from org/org-capture.el
  
  (autoload 'org-capture "org-capture" "\
@@@ -19612,7 -19790,7 +19549,7 @@@ Set org-capture-templates to be simila
  ;;;***
  \f
  ;;;### (autoloads (org-clock-persistence-insinuate org-get-clocktable)
- ;;;;;;  "org-clock" "org/org-clock.el" (19714 43298))
 -;;;;;;  "org-clock" "org/org-clock.el" (19780 4514))
++;;;;;;  "org-clock" "org/org-clock.el" (19717 39999))
  ;;; Generated autoloads from org/org-clock.el
  
  (autoload 'org-get-clocktable "org-clock" "\
@@@ -19630,7 -19808,7 +19567,7 @@@ Set up hooks for clock persistence
  ;;;***
  \f
  ;;;### (autoloads (org-datetree-find-date-create) "org-datetree"
- ;;;;;;  "org/org-datetree.el" (19714 43298))
 -;;;;;;  "org/org-datetree.el" (19775 2029))
++;;;;;;  "org/org-datetree.el" (19717 39999))
  ;;; Generated autoloads from org/org-datetree.el
  
  (autoload 'org-datetree-find-date-create "org-datetree" "\
@@@ -19646,7 -19824,7 +19583,7 @@@ tree can be found
  ;;;### (autoloads (org-export-as-docbook org-export-as-docbook-pdf-and-open
  ;;;;;;  org-export-as-docbook-pdf org-export-region-as-docbook org-replace-region-by-docbook
  ;;;;;;  org-export-as-docbook-to-buffer org-export-as-docbook-batch)
- ;;;;;;  "org-docbook" "org/org-docbook.el" (19714 43298))
 -;;;;;;  "org-docbook" "org/org-docbook.el" (19775 2029))
++;;;;;;  "org-docbook" "org/org-docbook.el" (19717 39999))
  ;;; Generated autoloads from org/org-docbook.el
  
  (autoload 'org-export-as-docbook-batch "org-docbook" "\
@@@ -19723,7 -19901,7 +19660,7 @@@ publishing directory
  \f
  ;;;### (autoloads (org-insert-export-options-template org-export-as-org
  ;;;;;;  org-export-visible org-export) "org-exp" "org/org-exp.el"
- ;;;;;;  (19714 43298))
 -;;;;;;  (19780 4514))
++;;;;;;  (19717 39999))
  ;;; Generated autoloads from org/org-exp.el
  
  (autoload 'org-export "org-exp" "\
@@@ -19780,8 -19958,8 +19717,8 @@@ Insert into the buffer a template with 
  ;;;***
  \f
  ;;;### (autoloads (org-feed-show-raw-feed org-feed-goto-inbox org-feed-update
- ;;;;;;  org-feed-update-all) "org-feed" "org/org-feed.el" (19714
- ;;;;;;  43298))
 -;;;;;;  org-feed-update-all) "org-feed" "org/org-feed.el" (19775
 -;;;;;;  2029))
++;;;;;;  org-feed-update-all) "org-feed" "org/org-feed.el" (19717
++;;;;;;  39999))
  ;;; Generated autoloads from org/org-feed.el
  
  (autoload 'org-feed-update-all "org-feed" "\
@@@ -19809,7 -19987,7 +19746,7 @@@ Show the raw feed buffer of a feed
  ;;;***
  \f
  ;;;### (autoloads (org-footnote-normalize org-footnote-action) "org-footnote"
- ;;;;;;  "org/org-footnote.el" (19714 43298))
 -;;;;;;  "org/org-footnote.el" (19775 2029))
++;;;;;;  "org/org-footnote.el" (19717 39999))
  ;;; Generated autoloads from org/org-footnote.el
  
  (autoload 'org-footnote-action "org-footnote" "\
@@@ -19836,7 -20014,7 +19773,7 @@@ referenced sequence
  ;;;### (autoloads (org-freemind-to-org-mode org-freemind-from-org-sparse-tree
  ;;;;;;  org-freemind-from-org-mode org-freemind-from-org-mode-node
  ;;;;;;  org-freemind-show org-export-as-freemind) "org-freemind"
- ;;;;;;  "org/org-freemind.el" (19714 43298))
 -;;;;;;  "org/org-freemind.el" (19775 2029))
++;;;;;;  "org/org-freemind.el" (19717 39999))
  ;;; Generated autoloads from org/org-freemind.el
  
  (autoload 'org-export-as-freemind "org-freemind" "\
@@@ -19897,7 -20075,7 +19834,7 @@@ Convert FreeMind file MM-FILE to `org-m
  ;;;### (autoloads (org-export-htmlize-generate-css org-export-as-html
  ;;;;;;  org-export-region-as-html org-replace-region-by-html org-export-as-html-to-buffer
  ;;;;;;  org-export-as-html-batch org-export-as-html-and-open) "org-html"
- ;;;;;;  "org/org-html.el" (19714 43298))
 -;;;;;;  "org/org-html.el" (19780 4514))
++;;;;;;  "org/org-html.el" (19717 39999))
  ;;; Generated autoloads from org/org-html.el
  
  (put 'org-export-html-style-include-default 'safe-local-variable 'booleanp)
@@@ -19991,7 -20169,7 +19928,7 @@@ that uses these same face definitions
  \f
  ;;;### (autoloads (org-export-icalendar-combine-agenda-files org-export-icalendar-all-agenda-files
  ;;;;;;  org-export-icalendar-this-file) "org-icalendar" "org/org-icalendar.el"
- ;;;;;;  (19714 43298))
 -;;;;;;  (19780 4514))
++;;;;;;  (19717 39999))
  ;;; Generated autoloads from org/org-icalendar.el
  
  (autoload 'org-export-icalendar-this-file "org-icalendar" "\
@@@ -20019,7 -20197,7 +19956,7 @@@ The file is stored under the name `org-
  ;;;### (autoloads (org-id-store-link org-id-find-id-file org-id-find
  ;;;;;;  org-id-goto org-id-get-with-outline-drilling org-id-get-with-outline-path-completion
  ;;;;;;  org-id-get org-id-copy org-id-get-create) "org-id" "org/org-id.el"
- ;;;;;;  (19714 43298))
 -;;;;;;  (19775 2029))
++;;;;;;  (19717 39999))
  ;;; Generated autoloads from org/org-id.el
  
  (autoload 'org-id-get-create "org-id" "\
@@@ -20088,7 -20266,7 +20025,7 @@@ Store a link to the current entry, usin
  ;;;***
  \f
  ;;;### (autoloads (org-indent-mode) "org-indent" "org/org-indent.el"
- ;;;;;;  (19714 43298))
 -;;;;;;  (19775 2029))
++;;;;;;  (19717 39999))
  ;;; Generated autoloads from org/org-indent.el
  
  (autoload 'org-indent-mode "org-indent" "\
@@@ -20103,7 -20281,7 +20040,7 @@@ FIXME:  How to update when broken
  ;;;***
  \f
  ;;;### (autoloads (org-irc-store-link) "org-irc" "org/org-irc.el"
- ;;;;;;  (19714 43298))
 -;;;;;;  (19775 2029))
++;;;;;;  (19717 39999))
  ;;; Generated autoloads from org/org-irc.el
  
  (autoload 'org-irc-store-link "org-irc" "\
@@@ -20116,7 -20294,7 +20053,7 @@@ Dispatch to the appropriate function t
  ;;;### (autoloads (org-export-as-pdf-and-open org-export-as-pdf org-export-as-latex
  ;;;;;;  org-export-region-as-latex org-replace-region-by-latex org-export-as-latex-to-buffer
  ;;;;;;  org-export-as-latex-batch) "org-latex" "org/org-latex.el"
- ;;;;;;  (19714 43298))
 -;;;;;;  (19775 2029))
++;;;;;;  (19717 39999))
  ;;; Generated autoloads from org/org-latex.el
  
  (autoload 'org-export-as-latex-batch "org-latex" "\
@@@ -20196,8 -20374,8 +20133,8 @@@ Export as LaTeX, then process through t
  ;;;***
  \f
  ;;;### (autoloads (org-mobile-create-sumo-agenda org-mobile-pull
- ;;;;;;  org-mobile-push) "org-mobile" "org/org-mobile.el" (19714
- ;;;;;;  43298))
 -;;;;;;  org-mobile-push) "org-mobile" "org/org-mobile.el" (19775
 -;;;;;;  2029))
++;;;;;;  org-mobile-push) "org-mobile" "org/org-mobile.el" (19717
++;;;;;;  39999))
  ;;; Generated autoloads from org/org-mobile.el
  
  (autoload 'org-mobile-push "org-mobile" "\
@@@ -20222,7 -20400,7 +20159,7 @@@ Create a file that contains all custom 
  ;;;***
  \f
  ;;;### (autoloads (org-plot/gnuplot) "org-plot" "org/org-plot.el"
- ;;;;;;  (19714 43298))
 -;;;;;;  (19775 2029))
++;;;;;;  (19717 39999))
  ;;; Generated autoloads from org/org-plot.el
  
  (autoload 'org-plot/gnuplot "org-plot" "\
@@@ -20236,7 -20414,7 +20173,7 @@@ line directly before or after the table
  \f
  ;;;### (autoloads (org-publish-current-project org-publish-current-file
  ;;;;;;  org-publish-all org-publish) "org-publish" "org/org-publish.el"
- ;;;;;;  (19714 43298))
 -;;;;;;  (19780 4514))
++;;;;;;  (19717 39999))
  ;;; Generated autoloads from org/org-publish.el
  
  (defalias 'org-publish-project 'org-publish)
@@@ -20270,7 -20448,7 +20207,7 @@@ the project
  \f
  ;;;### (autoloads (org-remember-handler org-remember org-remember-apply-template
  ;;;;;;  org-remember-annotation org-remember-insinuate) "org-remember"
- ;;;;;;  "org/org-remember.el" (19714 43298))
 -;;;;;;  "org/org-remember.el" (19780 4514))
++;;;;;;  "org/org-remember.el" (19717 39999))
  ;;; Generated autoloads from org/org-remember.el
  
  (autoload 'org-remember-insinuate "org-remember" "\
@@@ -20346,7 -20524,7 +20283,7 @@@ See also the variable `org-reverse-note
  ;;;***
  \f
  ;;;### (autoloads (org-table-to-lisp orgtbl-mode turn-on-orgtbl)
- ;;;;;;  "org-table" "org/org-table.el" (19714 43298))
 -;;;;;;  "org-table" "org/org-table.el" (19780 4514))
++;;;;;;  "org-table" "org/org-table.el" (19717 39999))
  ;;; Generated autoloads from org/org-table.el
  
  (autoload 'turn-on-orgtbl "org-table" "\
@@@ -20370,7 -20548,7 +20307,7 @@@ The table is taken from the parameter T
  ;;;***
  \f
  ;;;### (autoloads (org-export-as-taskjuggler-and-open org-export-as-taskjuggler)
- ;;;;;;  "org-taskjuggler" "org/org-taskjuggler.el" (19714 43298))
 -;;;;;;  "org-taskjuggler" "org/org-taskjuggler.el" (19775 2029))
++;;;;;;  "org-taskjuggler" "org/org-taskjuggler.el" (19717 39999))
  ;;; Generated autoloads from org/org-taskjuggler.el
  
  (autoload 'org-export-as-taskjuggler "org-taskjuggler" "\
@@@ -20398,7 -20576,7 +20335,7 @@@ with the TaskJuggler GUI
  \f
  ;;;### (autoloads (org-timer-set-timer org-timer-item org-timer-change-times-in-region
  ;;;;;;  org-timer org-timer-start) "org-timer" "org/org-timer.el"
- ;;;;;;  (19714 43298))
 -;;;;;;  (19775 2029))
++;;;;;;  (19717 39999))
  ;;; Generated autoloads from org/org-timer.el
  
  (autoload 'org-timer-start "org-timer" "\
@@@ -20459,7 -20637,7 +20396,7 @@@ replace any running timer
  ;;;***
  \f
  ;;;### (autoloads (org-export-as-xoxo) "org-xoxo" "org/org-xoxo.el"
- ;;;;;;  (19714 43298))
 -;;;;;;  (19780 4514))
++;;;;;;  (19717 39999))
  ;;; Generated autoloads from org/org-xoxo.el
  
  (autoload 'org-export-as-xoxo "org-xoxo" "\
@@@ -20471,7 -20649,7 +20408,7 @@@ The XOXO buffer is named *xoxo-<source 
  ;;;***
  \f
  ;;;### (autoloads (outline-minor-mode outline-mode) "outline" "outline.el"
 -;;;;;;  (19775 2029))
 +;;;;;;  (19640 47194))
  ;;; Generated autoloads from outline.el
  (put 'outline-regexp 'safe-local-variable 'string-or-null-p)
  
@@@ -20531,7 -20709,7 +20468,7 @@@ See the command `outline-mode' for mor
  ;;;### (autoloads (list-packages describe-package package-initialize
  ;;;;;;  package-install-file package-install-from-buffer package-install
  ;;;;;;  package-enable-at-startup) "package" "emacs-lisp/package.el"
 -;;;;;;  (19775 2028))
 +;;;;;;  (19714 43298))
  ;;; Generated autoloads from emacs-lisp/package.el
  
  (defvar package-enable-at-startup t "\
@@@ -20593,7 -20771,7 +20530,7 @@@ The list is displayed in a buffer name
  
  ;;;***
  \f
 -;;;### (autoloads (show-paren-mode) "paren" "paren.el" (19775 2029))
 +;;;### (autoloads (show-paren-mode) "paren" "paren.el" (19714 43298))
  ;;; Generated autoloads from paren.el
  
  (defvar show-paren-mode nil "\
@@@ -20618,7 -20796,7 +20555,7 @@@ in `show-paren-style' after `show-paren
  ;;;***
  \f
  ;;;### (autoloads (parse-time-string) "parse-time" "calendar/parse-time.el"
 -;;;;;;  (19775 2027))
 +;;;;;;  (19598 13691))
  ;;; Generated autoloads from calendar/parse-time.el
  (put 'parse-time-rules 'risky-local-variable t)
  
@@@ -20631,8 -20809,8 +20568,8 @@@ unknown are returned as nil
  
  ;;;***
  \f
 -;;;### (autoloads (pascal-mode) "pascal" "progmodes/pascal.el" (19780
 -;;;;;;  4514))
 +;;;### (autoloads (pascal-mode) "pascal" "progmodes/pascal.el" (19714
 +;;;;;;  43298))
  ;;; Generated autoloads from progmodes/pascal.el
  
  (autoload 'pascal-mode "pascal" "\
@@@ -20685,7 -20863,7 +20622,7 @@@ no args, if that value is non-nil
  ;;;***
  \f
  ;;;### (autoloads (password-cache-expiry password-cache) "password-cache"
 -;;;;;;  "password-cache.el" (19775 2029))
 +;;;;;;  "password-cache.el" (19598 13691))
  ;;; Generated autoloads from password-cache.el
  
  (defvar password-cache t "\
@@@ -20702,7 -20880,7 +20639,7 @@@ Whether passwords are cached at all is 
  ;;;***
  \f
  ;;;### (autoloads (pc-bindings-mode) "pc-mode" "emulation/pc-mode.el"
 -;;;;;;  (19775 2028))
 +;;;;;;  (19562 42953))
  ;;; Generated autoloads from emulation/pc-mode.el
  
  (autoload 'pc-bindings-mode "pc-mode" "\
@@@ -20720,7 -20898,7 +20657,7 @@@ C-Escape does list-buffers
  ;;;***
  \f
  ;;;### (autoloads (pc-selection-mode) "pc-select" "emulation/pc-select.el"
 -;;;;;;  (19775 2028))
 +;;;;;;  (19619 52030))
  ;;; Generated autoloads from emulation/pc-select.el
  
  (defvar pc-selection-mode nil "\
@@@ -20787,7 -20965,7 +20724,7 @@@ but before calling PC Selection mode)
  ;;;***
  \f
  ;;;### (autoloads (pcase-let pcase-let* pcase) "pcase" "emacs-lisp/pcase.el"
- ;;;;;;  (19714 43298))
 -;;;;;;  (19775 2028))
++;;;;;;  (19726 56598))
  ;;; Generated autoloads from emacs-lisp/pcase.el
  
  (autoload 'pcase "pcase" "\
@@@ -20801,6 -20979,6 +20738,7 @@@ UPatterns can take the following forms
    (and UPAT...)       matches if all the patterns match.
    `QPAT               matches if the QPattern QPAT matches.
    (pred PRED) matches if PRED applied to the object returns non-nil.
++  (let VAR EXP)       matches anything and set VAR to the value of EXP.
    (guard BOOLEXP)     matches if BOOLEXP evaluates to non-nil.
  
  QPatterns can take the following forms:
@@@ -20843,8 -21021,8 +20781,8 @@@ of the form (UPAT EXP)
  
  ;;;***
  \f
 -;;;### (autoloads (pcomplete/cvs) "pcmpl-cvs" "pcmpl-cvs.el" (19775
 -;;;;;;  2029))
 +;;;### (autoloads (pcomplete/cvs) "pcmpl-cvs" "pcmpl-cvs.el" (19598
 +;;;;;;  13691))
  ;;; Generated autoloads from pcmpl-cvs.el
  
  (autoload 'pcomplete/cvs "pcmpl-cvs" "\
@@@ -20855,7 -21033,7 +20793,7 @@@ Completion rules for the `cvs' command
  ;;;***
  \f
  ;;;### (autoloads (pcomplete/tar pcomplete/make pcomplete/bzip2 pcomplete/gzip)
 -;;;;;;  "pcmpl-gnu" "pcmpl-gnu.el" (19775 2029))
 +;;;;;;  "pcmpl-gnu" "pcmpl-gnu.el" (19598 13691))
  ;;; Generated autoloads from pcmpl-gnu.el
  
  (autoload 'pcomplete/gzip "pcmpl-gnu" "\
@@@ -20883,7 -21061,7 +20821,7 @@@ Completion for the GNU tar utility
  ;;;***
  \f
  ;;;### (autoloads (pcomplete/mount pcomplete/umount pcomplete/kill)
 -;;;;;;  "pcmpl-linux" "pcmpl-linux.el" (19775 2029))
 +;;;;;;  "pcmpl-linux" "pcmpl-linux.el" (19598 13691))
  ;;; Generated autoloads from pcmpl-linux.el
  
  (autoload 'pcomplete/kill "pcmpl-linux" "\
@@@ -20903,8 -21081,8 +20841,8 @@@ Completion for GNU/Linux `mount'
  
  ;;;***
  \f
 -;;;### (autoloads (pcomplete/rpm) "pcmpl-rpm" "pcmpl-rpm.el" (19775
 -;;;;;;  2029))
 +;;;### (autoloads (pcomplete/rpm) "pcmpl-rpm" "pcmpl-rpm.el" (19598
 +;;;;;;  13691))
  ;;; Generated autoloads from pcmpl-rpm.el
  
  (autoload 'pcomplete/rpm "pcmpl-rpm" "\
@@@ -20916,7 -21094,7 +20854,7 @@@ Completion for the `rpm' command
  \f
  ;;;### (autoloads (pcomplete/scp pcomplete/ssh pcomplete/chgrp pcomplete/chown
  ;;;;;;  pcomplete/which pcomplete/xargs pcomplete/rm pcomplete/rmdir
 -;;;;;;  pcomplete/cd) "pcmpl-unix" "pcmpl-unix.el" (19775 2029))
 +;;;;;;  pcomplete/cd) "pcmpl-unix" "pcmpl-unix.el" (19598 13691))
  ;;; Generated autoloads from pcmpl-unix.el
  
  (autoload 'pcomplete/cd "pcmpl-unix" "\
@@@ -20973,8 -21151,8 +20911,8 @@@ Includes files as well as host names fo
  \f
  ;;;### (autoloads (pcomplete-shell-setup pcomplete-comint-setup pcomplete-list
  ;;;;;;  pcomplete-help pcomplete-expand pcomplete-continue pcomplete-expand-and-complete
 -;;;;;;  pcomplete-reverse pcomplete) "pcomplete" "pcomplete.el" (19775
 -;;;;;;  2029))
 +;;;;;;  pcomplete-reverse pcomplete) "pcomplete" "pcomplete.el" (19591
 +;;;;;;  62571))
  ;;; Generated autoloads from pcomplete.el
  
  (autoload 'pcomplete "pcomplete" "\
@@@ -21033,7 -21211,7 +20971,7 @@@ Setup `shell-mode' to use pcomplete
  \f
  ;;;### (autoloads (cvs-dired-use-hook cvs-dired-action cvs-status
  ;;;;;;  cvs-update cvs-examine cvs-quickdir cvs-checkout) "pcvs"
 -;;;;;;  "vc/pcvs.el" (19775 2030))
 +;;;;;;  "vc/pcvs.el" (19591 62571))
  ;;; Generated autoloads from vc/pcvs.el
  
  (autoload 'cvs-checkout "pcvs" "\
@@@ -21108,7 -21286,7 +21046,7 @@@ The exact behavior is determined also b
  
  ;;;***
  \f
 -;;;### (autoloads nil "pcvs-defs" "vc/pcvs-defs.el" (19780 4514))
 +;;;### (autoloads nil "pcvs-defs" "vc/pcvs-defs.el" (19598 13691))
  ;;; Generated autoloads from vc/pcvs-defs.el
  
  (defvar cvs-global-menu (let ((m (make-sparse-keymap "PCL-CVS"))) (define-key m [status] `(menu-item ,(purecopy "Directory Status") cvs-status :help ,(purecopy "A more verbose status of a workarea"))) (define-key m [checkout] `(menu-item ,(purecopy "Checkout Module") cvs-checkout :help ,(purecopy "Check out a module from the repository"))) (define-key m [update] `(menu-item ,(purecopy "Update Directory") cvs-update :help ,(purecopy "Fetch updates from the repository"))) (define-key m [examine] `(menu-item ,(purecopy "Examine Directory") cvs-examine :help ,(purecopy "Examine the current state of a workarea"))) (fset 'cvs-global-menu m)))
  ;;;***
  \f
  ;;;### (autoloads (perl-mode) "perl-mode" "progmodes/perl-mode.el"
 -;;;;;;  (19775 2029))
 +;;;;;;  (19714 43298))
  ;;; Generated autoloads from progmodes/perl-mode.el
  (put 'perl-indent-level 'safe-local-variable 'integerp)
  (put 'perl-continued-statement-offset 'safe-local-variable 'integerp)
@@@ -21175,157 -21353,10 +21113,157 @@@ Turning on Perl mode runs the normal ho
  
  \(fn)" t nil)
  
 +;;;***
 +\f
 +;;;### (autoloads (pgg-snarf-keys pgg-snarf-keys-region pgg-insert-key
 +;;;;;;  pgg-verify pgg-verify-region pgg-sign pgg-sign-region pgg-decrypt
 +;;;;;;  pgg-decrypt-region pgg-encrypt pgg-encrypt-symmetric pgg-encrypt-symmetric-region
 +;;;;;;  pgg-encrypt-region) "pgg" "pgg.el" (19640 47194))
 +;;; Generated autoloads from pgg.el
 +
 +(autoload 'pgg-encrypt-region "pgg" "\
 +Encrypt the current region between START and END for RCPTS.
 +
 +If optional argument SIGN is non-nil, do a combined sign and encrypt.
 +
 +If optional PASSPHRASE is not specified, it will be obtained from the
 +passphrase cache or user.
 +
 +\(fn START END RCPTS &optional SIGN PASSPHRASE)" t nil)
 +
 +(autoload 'pgg-encrypt-symmetric-region "pgg" "\
 +Encrypt the current region between START and END symmetric with passphrase.
 +
 +If optional PASSPHRASE is not specified, it will be obtained from the
 +cache or user.
 +
 +\(fn START END &optional PASSPHRASE)" t nil)
 +
 +(autoload 'pgg-encrypt-symmetric "pgg" "\
 +Encrypt the current buffer using a symmetric, rather than key-pair, cipher.
 +
 +If optional arguments START and END are specified, only encrypt within
 +the region.
 +
 +If optional PASSPHRASE is not specified, it will be obtained from the
 +passphrase cache or user.
 +
 +\(fn &optional START END PASSPHRASE)" t nil)
 +
 +(autoload 'pgg-encrypt "pgg" "\
 +Encrypt the current buffer for RCPTS.
 +
 +If optional argument SIGN is non-nil, do a combined sign and encrypt.
 +
 +If optional arguments START and END are specified, only encrypt within
 +the region.
 +
 +If optional PASSPHRASE is not specified, it will be obtained from the
 +passphrase cache or user.
 +
 +\(fn RCPTS &optional SIGN START END PASSPHRASE)" t nil)
 +
 +(autoload 'pgg-decrypt-region "pgg" "\
 +Decrypt the current region between START and END.
 +
 +If optional PASSPHRASE is not specified, it will be obtained from the
 +passphrase cache or user.
 +
 +\(fn START END &optional PASSPHRASE)" t nil)
 +
 +(autoload 'pgg-decrypt "pgg" "\
 +Decrypt the current buffer.
 +
 +If optional arguments START and END are specified, only decrypt within
 +the region.
 +
 +If optional PASSPHRASE is not specified, it will be obtained from the
 +passphrase cache or user.
 +
 +\(fn &optional START END PASSPHRASE)" t nil)
 +
 +(autoload 'pgg-sign-region "pgg" "\
 +Make the signature from text between START and END.
 +
 +If the optional 3rd argument CLEARTEXT is non-nil, it does not create
 +a detached signature.
 +
 +If this function is called interactively, CLEARTEXT is enabled
 +and the output is displayed.
 +
 +If optional PASSPHRASE is not specified, it will be obtained from the
 +passphrase cache or user.
 +
 +\(fn START END &optional CLEARTEXT PASSPHRASE)" t nil)
 +
 +(autoload 'pgg-sign "pgg" "\
 +Sign the current buffer.
 +
 +If the optional argument CLEARTEXT is non-nil, it does not create a
 +detached signature.
 +
 +If optional arguments START and END are specified, only sign data
 +within the region.
 +
 +If this function is called interactively, CLEARTEXT is enabled
 +and the output is displayed.
 +
 +If optional PASSPHRASE is not specified, it will be obtained from the
 +passphrase cache or user.
 +
 +\(fn &optional CLEARTEXT START END PASSPHRASE)" t nil)
 +
 +(autoload 'pgg-verify-region "pgg" "\
 +Verify the current region between START and END.
 +If the optional 3rd argument SIGNATURE is non-nil, it is treated as
 +the detached signature of the current region.
 +
 +If the optional 4th argument FETCH is non-nil, we attempt to fetch the
 +signer's public key from `pgg-default-keyserver-address'.
 +
 +\(fn START END &optional SIGNATURE FETCH)" t nil)
 +
 +(autoload 'pgg-verify "pgg" "\
 +Verify the current buffer.
 +If the optional argument SIGNATURE is non-nil, it is treated as
 +the detached signature of the current region.
 +If the optional argument FETCH is non-nil, we attempt to fetch the
 +signer's public key from `pgg-default-keyserver-address'.
 +If optional arguments START and END are specified, only verify data
 +within the region.
 +
 +\(fn &optional SIGNATURE FETCH START END)" t nil)
 +
 +(autoload 'pgg-insert-key "pgg" "\
 +Insert the ASCII armored public key.
 +
 +\(fn)" t nil)
 +
 +(autoload 'pgg-snarf-keys-region "pgg" "\
 +Import public keys in the current region between START and END.
 +
 +\(fn START END)" t nil)
 +
 +(autoload 'pgg-snarf-keys "pgg" "\
 +Import public keys in the current buffer.
 +
 +\(fn)" t nil)
 +
 +;;;***
 +\f
 +;;;### (autoloads (pgg-gpg-symmetric-key-p) "pgg-gpg" "pgg-gpg.el"
 +;;;;;;  (19598 13691))
 +;;; Generated autoloads from pgg-gpg.el
 +
 +(autoload 'pgg-gpg-symmetric-key-p "pgg-gpg" "\
 +True if decoded armor MESSAGE-KEYS has symmetric encryption indicator.
 +
 +\(fn MESSAGE-KEYS)" nil nil)
 +
  ;;;***
  \f
  ;;;### (autoloads (picture-mode) "picture" "textmodes/picture.el"
 -;;;;;;  (19775 2030))
 +;;;;;;  (19714 43298))
  ;;; Generated autoloads from textmodes/picture.el
  
  (autoload 'picture-mode "picture" "\
@@@ -21406,7 -21437,7 +21344,7 @@@ they are not defaultly assigned to keys
  ;;;***
  \f
  ;;;### (autoloads (po-find-file-coding-system) "po" "textmodes/po.el"
 -;;;;;;  (19775 2030))
 +;;;;;;  (19562 42953))
  ;;; Generated autoloads from textmodes/po.el
  
  (autoload 'po-find-file-coding-system "po" "\
@@@ -21417,7 -21448,7 +21355,7 @@@ Called through `file-coding-system-alis
  
  ;;;***
  \f
 -;;;### (autoloads (pong) "pong" "play/pong.el" (19775 2029))
 +;;;### (autoloads (pong) "pong" "play/pong.el" (19562 42953))
  ;;; Generated autoloads from play/pong.el
  
  (autoload 'pong "pong" "\
@@@ -21433,7 -21464,7 +21371,7 @@@ pong-mode keybindings:\\<pong-mode-map
  
  ;;;***
  \f
 -;;;### (autoloads (pop3-movemail) "pop3" "gnus/pop3.el" (19775 2028))
 +;;;### (autoloads (pop3-movemail) "pop3" "gnus/pop3.el" (19714 43298))
  ;;; Generated autoloads from gnus/pop3.el
  
  (autoload 'pop3-movemail "pop3" "\
@@@ -21446,7 -21477,7 +21384,7 @@@ Use streaming commands
  \f
  ;;;### (autoloads (pp-macroexpand-last-sexp pp-eval-last-sexp pp-macroexpand-expression
  ;;;;;;  pp-eval-expression pp pp-buffer pp-to-string) "pp" "emacs-lisp/pp.el"
 -;;;;;;  (19775 2028))
 +;;;;;;  (19591 62571))
  ;;; Generated autoloads from emacs-lisp/pp.el
  
  (autoload 'pp-to-string "pp" "\
@@@ -21514,7 -21545,7 +21452,7 @@@ Ignores leading comment characters
  ;;;;;;  pr-ps-buffer-print pr-ps-buffer-using-ghostscript pr-ps-buffer-preview
  ;;;;;;  pr-ps-directory-ps-print pr-ps-directory-print pr-ps-directory-using-ghostscript
  ;;;;;;  pr-ps-directory-preview pr-interface) "printing" "printing.el"
 -;;;;;;  (19775 2029))
 +;;;;;;  (19714 43298))
  ;;; Generated autoloads from printing.el
  
  (autoload 'pr-interface "printing" "\
@@@ -22101,7 -22132,7 +22039,7 @@@ are both set to t
  
  ;;;***
  \f
 -;;;### (autoloads (proced) "proced" "proced.el" (19775 2029))
 +;;;### (autoloads (proced) "proced" "proced.el" (19598 13691))
  ;;; Generated autoloads from proced.el
  
  (autoload 'proced "proced" "\
@@@ -22116,13 -22147,21 +22054,13 @@@ See `proced-mode' for a description of 
  
  ;;;***
  \f
 -;;;### (autoloads (run-prolog mercury-mode prolog-mode) "prolog"
 -;;;;;;  "progmodes/prolog.el" (19780 4514))
 +;;;### (autoloads (switch-to-prolog prolog-mode) "prolog" "progmodes/prolog.el"
 +;;;;;;  (19714 43298))
  ;;; Generated autoloads from progmodes/prolog.el
  
  (autoload 'prolog-mode "prolog" "\
 -Major mode for editing Prolog code.
 -
 -Blank lines and `%%...' separate paragraphs.  `%'s starts a comment
 -line and comments can also be enclosed in /* ... */.
 -
 -If an optional argument SYSTEM is non-nil, set up mode for the given system.
 -
 -To find out what version of Prolog mode you are running, enter
 -`\\[prolog-mode-version]'.
 -
 +Major mode for editing Prolog code for Prologs.
 +Blank lines and `%%...' separate paragraphs.  `%'s start comments.
  Commands:
  \\{prolog-mode-map}
  Entry to this mode calls the value of `prolog-mode-hook'
@@@ -22130,18 -22169,22 +22068,18 @@@ if that value is non-nil
  
  \(fn)" t nil)
  
 -(autoload 'mercury-mode "prolog" "\
 -Major mode for editing Mercury programs.
 -Actually this is just customized `prolog-mode'.
 -
 -\(fn)" t nil)
 +(defalias 'run-prolog 'switch-to-prolog)
  
 -(autoload 'run-prolog "prolog" "\
 +(autoload 'switch-to-prolog "prolog" "\
  Run an inferior Prolog process, input and output via buffer *prolog*.
 -With prefix argument ARG, restart the Prolog process if running before.
 +With prefix argument \\[universal-prefix], prompt for the program to use.
  
 -\(fn ARG)" t nil)
 +\(fn &optional NAME)" t nil)
  
  ;;;***
  \f
  ;;;### (autoloads (open-protocol-stream) "proto-stream" "gnus/proto-stream.el"
- ;;;;;;  (19714 43298))
 -;;;;;;  (19780 4513))
++;;;;;;  (19717 39999))
  ;;; Generated autoloads from gnus/proto-stream.el
  
  (autoload 'open-protocol-stream "proto-stream" "\
@@@ -22155,10 -22198,11 +22093,11 @@@ is a string representing the capabiliti
  The PARAMETERS is a keyword list that can have the following
  values:
  
- :type -- either `network', `tls', `shell' or `starttls'.  If
- omitted, the default is `network'.  `network' will be
- opportunistically upgraded to STARTTLS if both the server and
- Emacs supports it.
+ :type -- either `network', `network-only, `tls', `shell' or
+ `starttls'.  If omitted, the default is `network'.  `network'
+ will be opportunistically upgraded to STARTTLS if both the server
+ and Emacs supports it.  If you don't want STARTTLS upgrades, use
+ `network-only'.
  
  :end-of-command -- a regexp saying what the end of a command is.
  This defaults to \"\\n\".
@@@ -22179,8 -22223,8 +22118,8 @@@ command to switch on STARTTLS otherwise
  
  ;;;***
  \f
 -;;;### (autoloads (bdf-directory-list) "ps-bdf" "ps-bdf.el" (19780
 -;;;;;;  4514))
 +;;;### (autoloads (bdf-directory-list) "ps-bdf" "ps-bdf.el" (19598
 +;;;;;;  13691))
  ;;; Generated autoloads from ps-bdf.el
  
  (defvar bdf-directory-list (if (memq system-type '(ms-dos windows-nt)) (list (expand-file-name "fonts/bdf" installation-directory)) '("/usr/local/share/emacs/fonts/bdf")) "\
@@@ -22191,8 -22235,8 +22130,8 @@@ The default value is '(\"/usr/local/sha
  
  ;;;***
  \f
 -;;;### (autoloads (ps-mode) "ps-mode" "progmodes/ps-mode.el" (19780
 -;;;;;;  4514))
 +;;;### (autoloads (ps-mode) "ps-mode" "progmodes/ps-mode.el" (19714
 +;;;;;;  43298))
  ;;; Generated autoloads from progmodes/ps-mode.el
  
  (autoload 'ps-mode "ps-mode" "\
@@@ -22243,8 -22287,8 +22182,8 @@@ Typing \\<ps-run-mode-map>\\[ps-run-got
  ;;;;;;  ps-spool-region ps-spool-buffer-with-faces ps-spool-buffer
  ;;;;;;  ps-print-region-with-faces ps-print-region ps-print-buffer-with-faces
  ;;;;;;  ps-print-buffer ps-print-customize ps-print-color-p ps-paper-type
 -;;;;;;  ps-page-dimensions-database) "ps-print" "ps-print.el" (19780
 -;;;;;;  4514))
 +;;;;;;  ps-page-dimensions-database) "ps-print" "ps-print.el" (19714
 +;;;;;;  43298))
  ;;; Generated autoloads from ps-print.el
  
  (defvar ps-page-dimensions-database (purecopy (list (list 'a4 (/ (* 72 21.0) 2.54) (/ (* 72 29.7) 2.54) "A4") (list 'a3 (/ (* 72 29.7) 2.54) (/ (* 72 42.0) 2.54) "A3") (list 'letter (* 72 8.5) (* 72 11.0) "Letter") (list 'legal (* 72 8.5) (* 72 14.0) "Legal") (list 'letter-small (* 72 7.68) (* 72 10.16) "LetterSmall") (list 'tabloid (* 72 11.0) (* 72 17.0) "Tabloid") (list 'ledger (* 72 17.0) (* 72 11.0) "Ledger") (list 'statement (* 72 5.5) (* 72 8.5) "Statement") (list 'executive (* 72 7.5) (* 72 10.0) "Executive") (list 'a4small (* 72 7.47) (* 72 10.85) "A4Small") (list 'b4 (* 72 10.125) (* 72 14.33) "B4") (list 'b5 (* 72 7.16) (* 72 10.125) "B5") '(addresslarge 236.0 99.0 "AddressLarge") '(addresssmall 236.0 68.0 "AddressSmall") '(cuthanging13 90.0 222.0 "CutHanging13") '(cuthanging15 90.0 114.0 "CutHanging15") '(diskette 181.0 136.0 "Diskette") '(eurofilefolder 139.0 112.0 "EuropeanFilefolder") '(eurofoldernarrow 526.0 107.0 "EuroFolderNarrow") '(eurofolderwide 526.0 136.0 "EuroFolderWide") '(euronamebadge 189.0 108.0 "EuroNameBadge") '(euronamebadgelarge 223.0 136.0 "EuroNameBadgeLarge") '(filefolder 230.0 37.0 "FileFolder") '(jewelry 76.0 136.0 "Jewelry") '(mediabadge 180.0 136.0 "MediaBadge") '(multipurpose 126.0 68.0 "MultiPurpose") '(retaillabel 90.0 104.0 "RetailLabel") '(shipping 271.0 136.0 "Shipping") '(slide35mm 26.0 104.0 "Slide35mm") '(spine8mm 187.0 26.0 "Spine8mm") '(topcoated 425.19685 136.0 "TopCoatedPaper") '(topcoatedpaper 396.0 136.0 "TopcoatedPaper150") '(vhsface 205.0 127.0 "VHSFace") '(vhsspine 400.0 50.0 "VHSSpine") '(zipdisk 156.0 136.0 "ZipDisk"))) "\
@@@ -22441,7 -22485,7 +22380,7 @@@ If EXTENSION is any other symbol, it i
  ;;;***
  \f
  ;;;### (autoloads (python-shell jython-mode python-mode run-python)
 -;;;;;;  "python" "progmodes/python.el" (19780 4514))
 +;;;;;;  "python" "progmodes/python.el" (19714 43298))
  ;;; Generated autoloads from progmodes/python.el
  
  (add-to-list 'interpreter-mode-alist (cons (purecopy "jython") 'jython-mode))
@@@ -22561,7 -22605,7 +22500,7 @@@ filter
  ;;;***
  \f
  ;;;### (autoloads (quoted-printable-decode-region) "qp" "gnus/qp.el"
 -;;;;;;  (19775 2028))
 +;;;;;;  (19598 13691))
  ;;; Generated autoloads from gnus/qp.el
  
  (autoload 'quoted-printable-decode-region "qp" "\
@@@ -22584,7 -22628,7 +22523,7 @@@ them into characters should be done sep
  ;;;;;;  quail-defrule quail-install-decode-map quail-install-map
  ;;;;;;  quail-define-rules quail-show-keyboard-layout quail-set-keyboard-layout
  ;;;;;;  quail-define-package quail-use-package quail-title) "quail"
 -;;;;;;  "international/quail.el" (19780 45051))
 +;;;;;;  "international/quail.el" (19591 62571))
  ;;; Generated autoloads from international/quail.el
  
  (autoload 'quail-title "quail" "\
@@@ -22815,8 -22859,8 +22754,8 @@@ of each directory
  \f
  ;;;### (autoloads (quickurl-list quickurl-list-mode quickurl-edit-urls
  ;;;;;;  quickurl-browse-url-ask quickurl-browse-url quickurl-add-url
 -;;;;;;  quickurl-ask quickurl) "quickurl" "net/quickurl.el" (19775
 -;;;;;;  2029))
 +;;;;;;  quickurl-ask quickurl) "quickurl" "net/quickurl.el" (19714
 +;;;;;;  43298))
  ;;; Generated autoloads from net/quickurl.el
  
  (defconst quickurl-reread-hook-postfix "\n;; Local Variables:\n;; eval: (progn (require 'quickurl) (add-hook 'local-write-file-hooks (lambda () (quickurl-read) nil)))\n;; End:\n" "\
@@@ -22888,7 -22932,7 +22827,7 @@@ Display `quickurl-list' as a formatted 
  ;;;***
  \f
  ;;;### (autoloads (rcirc-track-minor-mode rcirc-connect rcirc) "rcirc"
 -;;;;;;  "net/rcirc.el" (19780 4514))
 +;;;;;;  "net/rcirc.el" (19598 13691))
  ;;; Generated autoloads from net/rcirc.el
  
  (autoload 'rcirc "rcirc" "\
@@@ -22923,8 -22967,8 +22862,8 @@@ Global minor mode for tracking activit
  
  ;;;***
  \f
 -;;;### (autoloads (remote-compile) "rcompile" "net/rcompile.el" (19775
 -;;;;;;  2029))
 +;;;### (autoloads (remote-compile) "rcompile" "net/rcompile.el" (19619
 +;;;;;;  52030))
  ;;; Generated autoloads from net/rcompile.el
  
  (autoload 'remote-compile "rcompile" "\
@@@ -22936,7 -22980,7 +22875,7 @@@ See \\[compile]
  ;;;***
  \f
  ;;;### (autoloads (re-builder) "re-builder" "emacs-lisp/re-builder.el"
 -;;;;;;  (19775 2028))
 +;;;;;;  (19591 62571))
  ;;; Generated autoloads from emacs-lisp/re-builder.el
  
  (defalias 'regexp-builder 're-builder)
@@@ -22948,7 -22992,7 +22887,7 @@@ Construct a regexp interactively
  
  ;;;***
  \f
 -;;;### (autoloads (recentf-mode) "recentf" "recentf.el" (19775 2029))
 +;;;### (autoloads (recentf-mode) "recentf" "recentf.el" (19562 42953))
  ;;; Generated autoloads from recentf.el
  
  (defvar recentf-mode nil "\
@@@ -22972,11 -23016,11 +22911,11 @@@ that were operated on recently
  
  ;;;***
  \f
 -;;;### (autoloads (rectangle-number-lines clear-rectangle string-insert-rectangle
 -;;;;;;  string-rectangle delete-whitespace-rectangle open-rectangle
 -;;;;;;  insert-rectangle yank-rectangle kill-rectangle extract-rectangle
 -;;;;;;  delete-extract-rectangle delete-rectangle) "rect" "rect.el"
 -;;;;;;  (19775 2029))
 +;;;### (autoloads (clear-rectangle string-insert-rectangle string-rectangle
 +;;;;;;  delete-whitespace-rectangle open-rectangle insert-rectangle
 +;;;;;;  yank-rectangle kill-rectangle extract-rectangle delete-extract-rectangle
 +;;;;;;  delete-rectangle move-to-column-force) "rect" "rect.el" (19598
 +;;;;;;  13691))
  ;;; Generated autoloads from rect.el
   (define-key ctl-x-r-map "c" 'clear-rectangle)
   (define-key ctl-x-r-map "k" 'kill-rectangle)
   (define-key ctl-x-r-map "y" 'yank-rectangle)
   (define-key ctl-x-r-map "o" 'open-rectangle)
   (define-key ctl-x-r-map "t" 'string-rectangle)
 - (define-key ctl-x-r-map "N" 'rectangle-number-lines)
 +
 +(autoload 'move-to-column-force "rect" "\
 +If COLUMN is within a multi-column character, replace it by spaces and tab.
 +As for `move-to-column', passing anything but nil or t in FLAG will move to
 +the desired column only if the line is long enough.
 +
 +\(fn COLUMN &optional FLAG)" nil nil)
 +
 +(make-obsolete 'move-to-column-force 'move-to-column "21.2")
  
  (autoload 'delete-rectangle "rect" "\
  Delete (don't save) text in the region-rectangle.
@@@ -23108,10 -23144,20 +23047,10 @@@ rectangle which were empty
  
  \(fn START END &optional FILL)" t nil)
  
 -(autoload 'rectangle-number-lines "rect" "\
 -Insert numbers in front of the region-rectangle.
 -
 -START-AT, if non-nil, should be a number from which to begin
 -counting.  FORMAT, if non-nil, should be a format string to pass
 -to `format' along with the line count.  When called interactively
 -with a prefix argument, prompt for START-AT and FORMAT.
 -
 -\(fn START END START-AT &optional FORMAT)" t nil)
 -
  ;;;***
  \f
 -;;;### (autoloads (refill-mode) "refill" "textmodes/refill.el" (19775
 -;;;;;;  2030))
 +;;;### (autoloads (refill-mode) "refill" "textmodes/refill.el" (19591
 +;;;;;;  62571))
  ;;; Generated autoloads from textmodes/refill.el
  
  (autoload 'refill-mode "refill" "\
@@@ -23127,7 -23173,7 +23066,7 @@@ refilling if they would cause auto-fill
  ;;;***
  \f
  ;;;### (autoloads (reftex-reset-scanning-information reftex-mode
 -;;;;;;  turn-on-reftex) "reftex" "textmodes/reftex.el" (19775 2030))
 +;;;;;;  turn-on-reftex) "reftex" "textmodes/reftex.el" (19598 13691))
  ;;; Generated autoloads from textmodes/reftex.el
  
  (autoload 'turn-on-reftex "reftex" "\
@@@ -23177,7 -23223,7 +23116,7 @@@ This enforces rescanning the buffer on 
  ;;;***
  \f
  ;;;### (autoloads (reftex-citation) "reftex-cite" "textmodes/reftex-cite.el"
 -;;;;;;  (19775 2030))
 +;;;;;;  (19714 43298))
  ;;; Generated autoloads from textmodes/reftex-cite.el
  
  (autoload 'reftex-citation "reftex-cite" "\
@@@ -23207,7 -23253,7 +23146,7 @@@ While entering the regexp, completion o
  ;;;***
  \f
  ;;;### (autoloads (reftex-isearch-minor-mode) "reftex-global" "textmodes/reftex-global.el"
 -;;;;;;  (19775 2030))
 +;;;;;;  (19598 13691))
  ;;; Generated autoloads from textmodes/reftex-global.el
  
  (autoload 'reftex-isearch-minor-mode "reftex-global" "\
@@@ -23224,7 -23270,7 +23163,7 @@@ With no argument, this command toggle
  ;;;***
  \f
  ;;;### (autoloads (reftex-index-phrases-mode) "reftex-index" "textmodes/reftex-index.el"
 -;;;;;;  (19775 2030))
 +;;;;;;  (19714 43298))
  ;;; Generated autoloads from textmodes/reftex-index.el
  
  (autoload 'reftex-index-phrases-mode "reftex-index" "\
@@@ -23250,14 -23296,14 +23189,14 @@@ For more information see the RefTeX Use
  
  Here are all local bindings.
  
 -\\{reftex-index-phrases-mode-map}
 +\\{reftex-index-phrases-map}
  
  \(fn)" t nil)
  
  ;;;***
  \f
  ;;;### (autoloads (reftex-all-document-files) "reftex-parse" "textmodes/reftex-parse.el"
 -;;;;;;  (19775 2030))
 +;;;;;;  (19619 52030))
  ;;; Generated autoloads from textmodes/reftex-parse.el
  
  (autoload 'reftex-all-document-files "reftex-parse" "\
@@@ -23269,8 -23315,8 +23208,8 @@@ of master file
  
  ;;;***
  \f
 -;;;### (autoloads nil "reftex-vars" "textmodes/reftex-vars.el" (19775
 -;;;;;;  2030))
 +;;;### (autoloads nil "reftex-vars" "textmodes/reftex-vars.el" (19598
 +;;;;;;  13691))
  ;;; Generated autoloads from textmodes/reftex-vars.el
  (put 'reftex-vref-is-default 'safe-local-variable (lambda (x) (or (stringp x) (symbolp x))))
  (put 'reftex-fref-is-default 'safe-local-variable (lambda (x) (or (stringp x) (symbolp x))))
  ;;;***
  \f
  ;;;### (autoloads (regexp-opt-depth regexp-opt) "regexp-opt" "emacs-lisp/regexp-opt.el"
 -;;;;;;  (19775 2028))
 +;;;;;;  (19714 43298))
  ;;; Generated autoloads from emacs-lisp/regexp-opt.el
  
  (autoload 'regexp-opt "regexp-opt" "\
@@@ -23311,7 -23357,7 +23250,7 @@@ This means the number of non-shy regex
  \f
  ;;;### (autoloads (remember-diary-extract-entries remember-clipboard
  ;;;;;;  remember-other-frame remember) "remember" "textmodes/remember.el"
 -;;;;;;  (19775 2030))
 +;;;;;;  (19714 43298))
  ;;; Generated autoloads from textmodes/remember.el
  
  (autoload 'remember "remember" "\
@@@ -23342,7 -23388,7 +23281,7 @@@ Extract diary entries from the region
  
  ;;;***
  \f
 -;;;### (autoloads (repeat) "repeat" "repeat.el" (19775 2029))
 +;;;### (autoloads (repeat) "repeat" "repeat.el" (19714 43298))
  ;;; Generated autoloads from repeat.el
  
  (autoload 'repeat "repeat" "\
@@@ -23365,7 -23411,7 +23304,7 @@@ recently executed command not bound to 
  ;;;***
  \f
  ;;;### (autoloads (reporter-submit-bug-report) "reporter" "mail/reporter.el"
 -;;;;;;  (19775 2028))
 +;;;;;;  (19562 42953))
  ;;; Generated autoloads from mail/reporter.el
  
  (autoload 'reporter-submit-bug-report "reporter" "\
@@@ -23397,7 -23443,7 +23336,7 @@@ mail-sending package is used for editin
  ;;;***
  \f
  ;;;### (autoloads (reposition-window) "reposition" "reposition.el"
 -;;;;;;  (19775 2029))
 +;;;;;;  (19714 43298))
  ;;; Generated autoloads from reposition.el
  
  (autoload 'reposition-window "reposition" "\
@@@ -23424,7 -23470,7 +23363,7 @@@ first comment line visible (if point i
  ;;;***
  \f
  ;;;### (autoloads (global-reveal-mode reveal-mode) "reveal" "reveal.el"
 -;;;;;;  (19775 2029))
 +;;;;;;  (19591 62571))
  ;;; Generated autoloads from reveal.el
  
  (autoload 'reveal-mode "reveal" "\
@@@ -23459,7 -23505,7 +23398,7 @@@ With zero or negative ARG turn mode off
  ;;;***
  \f
  ;;;### (autoloads (make-ring ring-p) "ring" "emacs-lisp/ring.el"
 -;;;;;;  (19775 2028))
 +;;;;;;  (19562 42953))
  ;;; Generated autoloads from emacs-lisp/ring.el
  
  (autoload 'ring-p "ring" "\
@@@ -23474,7 -23520,7 +23413,7 @@@ Make a ring that can contain SIZE eleme
  
  ;;;***
  \f
 -;;;### (autoloads (rlogin) "rlogin" "net/rlogin.el" (19775 2029))
 +;;;### (autoloads (rlogin) "rlogin" "net/rlogin.el" (19619 52030))
  ;;; Generated autoloads from net/rlogin.el
   (add-hook 'same-window-regexps (purecopy "^\\*rlogin-.*\\*\\(\\|<[0-9]+>\\)"))
  
@@@ -23524,8 -23570,8 +23463,8 @@@ variable
  ;;;;;;  rmail-secondary-file-directory rmail-primary-inbox-list rmail-highlighted-headers
  ;;;;;;  rmail-retry-ignored-headers rmail-displayed-headers rmail-ignored-headers
  ;;;;;;  rmail-dont-reply-to-names rmail-user-mail-address-regexp
 -;;;;;;  rmail-movemail-variant-p) "rmail" "mail/rmail.el" (19780
 -;;;;;;  4513))
 +;;;;;;  rmail-movemail-variant-p) "rmail" "mail/rmail.el" (19714
 +;;;;;;  43298))
  ;;; Generated autoloads from mail/rmail.el
  
  (autoload 'rmail-movemail-variant-p "rmail" "\
@@@ -23719,7 -23765,7 +23658,7 @@@ Set PASSWORD to be used for retrieving 
  ;;;***
  \f
  ;;;### (autoloads (rmail-output-body-to-file rmail-output-as-seen
 -;;;;;;  rmail-output) "rmailout" "mail/rmailout.el" (19780 4513))
 +;;;;;;  rmail-output) "rmailout" "mail/rmailout.el" (19598 13691))
  ;;; Generated autoloads from mail/rmailout.el
  (put 'rmail-output-file-alist 'risky-local-variable t)
  
@@@ -23784,7 -23830,7 +23723,7 @@@ than appending to it.  Deletes the mess
  ;;;***
  \f
  ;;;### (autoloads (rng-c-load-schema) "rng-cmpct" "nxml/rng-cmpct.el"
 -;;;;;;  (19775 2029))
 +;;;;;;  (19562 42953))
  ;;; Generated autoloads from nxml/rng-cmpct.el
  
  (autoload 'rng-c-load-schema "rng-cmpct" "\
@@@ -23796,7 -23842,7 +23735,7 @@@ Return a pattern
  ;;;***
  \f
  ;;;### (autoloads (rng-nxml-mode-init) "rng-nxml" "nxml/rng-nxml.el"
 -;;;;;;  (19780 4514))
 +;;;;;;  (19714 43298))
  ;;; Generated autoloads from nxml/rng-nxml.el
  
  (autoload 'rng-nxml-mode-init "rng-nxml" "\
@@@ -23809,7 -23855,7 +23748,7 @@@ Validation will be enabled if `rng-nxml
  ;;;***
  \f
  ;;;### (autoloads (rng-validate-mode) "rng-valid" "nxml/rng-valid.el"
 -;;;;;;  (19780 4514))
 +;;;;;;  (19714 43298))
  ;;; Generated autoloads from nxml/rng-valid.el
  
  (autoload 'rng-validate-mode "rng-valid" "\
@@@ -23839,8 -23885,8 +23778,8 @@@ to use for finding the schema
  
  ;;;***
  \f
 -;;;### (autoloads (rng-xsd-compile) "rng-xsd" "nxml/rng-xsd.el" (19775
 -;;;;;;  2029))
 +;;;### (autoloads (rng-xsd-compile) "rng-xsd" "nxml/rng-xsd.el" (19562
 +;;;;;;  42953))
  ;;; Generated autoloads from nxml/rng-xsd.el
  
  (put 'http://www\.w3\.org/2001/XMLSchema-datatypes 'rng-dt-compile 'rng-xsd-compile)
@@@ -23868,7 -23914,7 +23807,7 @@@ must be equal
  ;;;***
  \f
  ;;;### (autoloads (robin-use-package robin-modify-package robin-define-package)
 -;;;;;;  "robin" "international/robin.el" (19763 27286))
 +;;;;;;  "robin" "international/robin.el" (19562 42953))
  ;;; Generated autoloads from international/robin.el
  
  (autoload 'robin-define-package "robin" "\
@@@ -23901,7 -23947,7 +23840,7 @@@ Start using robin package NAME, which i
  ;;;***
  \f
  ;;;### (autoloads (toggle-rot13-mode rot13-other-window rot13-region
 -;;;;;;  rot13-string rot13) "rot13" "rot13.el" (19775 2029))
 +;;;;;;  rot13-string rot13) "rot13" "rot13.el" (19591 62571))
  ;;; Generated autoloads from rot13.el
  
  (autoload 'rot13 "rot13" "\
@@@ -23939,7 -23985,7 +23878,7 @@@ Toggle the use of ROT13 encoding for th
  ;;;***
  \f
  ;;;### (autoloads (rst-minor-mode rst-mode) "rst" "textmodes/rst.el"
 -;;;;;;  (19780 4514))
 +;;;;;;  (19714 43298))
  ;;; Generated autoloads from textmodes/rst.el
   (add-to-list 'auto-mode-alist (purecopy '("\\.re?st\\'" . rst-mode)))
  
@@@ -23977,7 -24023,7 +23916,7 @@@ for modes derived from Text mode, like 
  ;;;***
  \f
  ;;;### (autoloads (ruby-mode) "ruby-mode" "progmodes/ruby-mode.el"
 -;;;;;;  (19780 4514))
 +;;;;;;  (19714 43298))
  ;;; Generated autoloads from progmodes/ruby-mode.el
  
  (autoload 'ruby-mode "ruby-mode" "\
@@@ -23998,8 -24044,8 +23937,8 @@@ The variable `ruby-indent-level' contro
  
  ;;;***
  \f
 -;;;### (autoloads (ruler-mode) "ruler-mode" "ruler-mode.el" (19775
 -;;;;;;  2029))
 +;;;### (autoloads (ruler-mode) "ruler-mode" "ruler-mode.el" (19562
 +;;;;;;  42953))
  ;;; Generated autoloads from ruler-mode.el
  
  (defvar ruler-mode nil "\
@@@ -24014,8 -24060,8 +23953,8 @@@ In Ruler mode, Emacs displays a ruler i
  
  ;;;***
  \f
 -;;;### (autoloads (rx rx-to-string) "rx" "emacs-lisp/rx.el" (19775
 -;;;;;;  2028))
 +;;;### (autoloads (rx rx-to-string) "rx" "emacs-lisp/rx.el" (19598
 +;;;;;;  13691))
  ;;; Generated autoloads from emacs-lisp/rx.el
  
  (autoload 'rx-to-string "rx" "\
@@@ -24321,8 -24367,8 +24260,8 @@@ enclosed in `(and ...)'
  
  ;;;***
  \f
 -;;;### (autoloads (savehist-mode) "savehist" "savehist.el" (19780
 -;;;;;;  4514))
 +;;;### (autoloads (savehist-mode) "savehist" "savehist.el" (19591
 +;;;;;;  62571))
  ;;; Generated autoloads from savehist.el
  
  (defvar savehist-mode nil "\
@@@ -24350,7 -24396,7 +24289,7 @@@ which is probably undesirable
  ;;;***
  \f
  ;;;### (autoloads (dsssl-mode scheme-mode) "scheme" "progmodes/scheme.el"
 -;;;;;;  (19780 4514))
 +;;;;;;  (19714 43298))
  ;;; Generated autoloads from progmodes/scheme.el
  
  (autoload 'scheme-mode "scheme" "\
@@@ -24392,7 -24438,7 +24331,7 @@@ that variable's value is a string
  ;;;***
  \f
  ;;;### (autoloads (gnus-score-mode) "score-mode" "gnus/score-mode.el"
 -;;;;;;  (19775 2028))
 +;;;;;;  (19598 13691))
  ;;; Generated autoloads from gnus/score-mode.el
  
  (autoload 'gnus-score-mode "score-mode" "\
@@@ -24406,7 -24452,7 +24345,7 @@@ This mode is an extended emacs-lisp mod
  ;;;***
  \f
  ;;;### (autoloads (scroll-all-mode) "scroll-all" "scroll-all.el"
 -;;;;;;  (19775 2029))
 +;;;;;;  (19562 42953))
  ;;; Generated autoloads from scroll-all.el
  
  (defvar scroll-all-mode nil "\
@@@ -24429,7 -24475,7 +24368,7 @@@ apply to all visible windows in the sam
  ;;;***
  \f
  ;;;### (autoloads (scroll-lock-mode) "scroll-lock" "scroll-lock.el"
 -;;;;;;  (19775 2029))
 +;;;;;;  (19591 62571))
  ;;; Generated autoloads from scroll-lock.el
  
  (autoload 'scroll-lock-mode "scroll-lock" "\
@@@ -24443,7 -24489,7 +24382,7 @@@ during scrolling
  
  ;;;***
  \f
 -;;;### (autoloads nil "secrets" "net/secrets.el" (19775 2029))
 +;;;### (autoloads nil "secrets" "net/secrets.el" (19562 42953))
  ;;; Generated autoloads from net/secrets.el
  (when (featurep 'dbusbind)
   (autoload 'secrets-show-secrets "secrets" nil t))
  ;;;***
  \f
  ;;;### (autoloads (semantic-mode semantic-default-submodes) "semantic"
 -;;;;;;  "cedet/semantic.el" (19775 2027))
 +;;;;;;  "cedet/semantic.el" (19619 52030))
  ;;; Generated autoloads from cedet/semantic.el
  
  (defvar semantic-default-submodes '(global-semantic-idle-scheduler-mode global-semanticdb-minor-mode) "\
@@@ -24496,14 -24542,13 +24435,14 @@@ Semantic mode
  ;;;***
  \f
  ;;;### (autoloads (mail-other-frame mail-other-window mail mail-mailing-lists
 -;;;;;;  mail-mode sendmail-user-agent-compose mail-default-headers
 +;;;;;;  mail-mode mail-send-nonascii mail-bury-selects-summary mail-default-headers
  ;;;;;;  mail-default-directory mail-signature-file mail-signature
  ;;;;;;  mail-citation-prefix-regexp mail-citation-hook mail-indentation-spaces
  ;;;;;;  mail-yank-prefix mail-setup-hook mail-personal-alias-file
 -;;;;;;  mail-default-reply-to mail-archive-file-name mail-header-separator
 -;;;;;;  send-mail-function mail-interactive mail-self-blind mail-specify-envelope-from
 -;;;;;;  mail-from-style) "sendmail" "mail/sendmail.el" (19775 2029))
 +;;;;;;  mail-alias-file mail-default-reply-to mail-archive-file-name
 +;;;;;;  mail-header-separator send-mail-function mail-interactive
 +;;;;;;  mail-self-blind mail-specify-envelope-from mail-from-style)
 +;;;;;;  "sendmail" "mail/sendmail.el" (19714 43298))
  ;;; Generated autoloads from mail/sendmail.el
  
  (defvar mail-from-style 'default "\
@@@ -24578,14 -24623,6 +24517,14 @@@ when you first send mail."
  
  (custom-autoload 'mail-default-reply-to "sendmail" t)
  
 +(defvar mail-alias-file nil "\
 +If non-nil, the name of a file to use instead of `/usr/lib/aliases'.
 +This file defines aliases to be expanded by the mailer; this is a different
 +feature from that of defining aliases in `.mailrc' to be expanded in Emacs.
 +This variable has no effect unless your system uses sendmail as its mailer.")
 +
 +(custom-autoload 'mail-alias-file "sendmail" t)
 +
  (defvar mail-personal-alias-file (purecopy "~/.mailrc") "\
  If non-nil, the name of the user's personal mail alias file.
  This file typically should be in same format as the `.mailrc' file used by
@@@ -24672,24 -24709,12 +24611,24 @@@ before you edit the message, so you ca
  
  (custom-autoload 'mail-default-headers "sendmail" t)
  
 -(define-mail-user-agent 'sendmail-user-agent 'sendmail-user-agent-compose 'mail-send-and-exit)
 +(defvar mail-bury-selects-summary t "\
 +If non-nil, try to show Rmail summary buffer after returning from mail.
 +The functions \\[mail-send-on-exit] or \\[mail-dont-send] select
 +the Rmail summary buffer before returning, if it exists and this variable
 +is non-nil.")
  
 -(autoload 'sendmail-user-agent-compose "sendmail" "\
 -Not documented
 +(custom-autoload 'mail-bury-selects-summary "sendmail" t)
 +
 +(defvar mail-send-nonascii 'mime "\
 +Specify whether to allow sending non-ASCII characters in mail.
 +If t, that means do allow it.  nil means don't allow it.
 +`query' means ask the user each time.
 +`mime' means add an appropriate MIME header if none already present.
 +The default is `mime'.
 +Including non-ASCII characters in a mail message can be problematical
 +for the recipient, who may not know how to decode them properly.")
  
 -\(fn &optional TO SUBJECT OTHER-HEADERS CONTINUE SWITCH-FUNCTION YANK-ACTION SEND-ACTIONS RETURN-ACTION &rest IGNORED)" nil nil)
 +(custom-autoload 'mail-send-nonascii "sendmail" t)
  
  (autoload 'mail-mode "sendmail" "\
  Major mode for editing mail to be sent.
@@@ -24788,7 -24813,7 +24727,7 @@@ The seventh argument ACTIONS is a list 
   when the message is sent, we apply FUNCTION to ARGS.
   This is how Rmail arranges to mark messages `answered'.
  
 -\(fn &optional NOERASE TO SUBJECT IN-REPLY-TO CC REPLYBUFFER ACTIONS RETURN-ACTION)" t nil)
 +\(fn &optional NOERASE TO SUBJECT IN-REPLY-TO CC REPLYBUFFER ACTIONS)" t nil)
  
  (autoload 'mail-other-window "sendmail" "\
  Like `mail' command, but display mail buffer in another window.
@@@ -24803,8 -24828,8 +24742,8 @@@ Like `mail' command, but display mail b
  ;;;***
  \f
  ;;;### (autoloads (server-save-buffers-kill-terminal server-mode
 -;;;;;;  server-force-delete server-start) "server" "server.el" (19780
 -;;;;;;  4514))
 +;;;;;;  server-force-delete server-start) "server" "server.el" (19714
 +;;;;;;  43298))
  ;;; Generated autoloads from server.el
  
  (put 'server-host 'risky-local-variable t)
@@@ -24867,7 -24892,7 +24806,7 @@@ only these files will be asked to be sa
  
  ;;;***
  \f
 -;;;### (autoloads (ses-mode) "ses" "ses.el" (19780 4514))
 +;;;### (autoloads (ses-mode) "ses" "ses.el" (19591 62571))
  ;;; Generated autoloads from ses.el
  
  (autoload 'ses-mode "ses" "\
@@@ -24886,7 -24911,7 +24825,7 @@@ These are active only in the minibuffer
  ;;;***
  \f
  ;;;### (autoloads (html-mode sgml-mode) "sgml-mode" "textmodes/sgml-mode.el"
- ;;;;;;  (19714 43298))
 -;;;;;;  (19780 4514))
++;;;;;;  (19717 39999))
  ;;; Generated autoloads from textmodes/sgml-mode.el
  
  (autoload 'sgml-mode "sgml-mode" "\
@@@ -24952,7 -24977,7 +24891,7 @@@ To work around that, do
  ;;;***
  \f
  ;;;### (autoloads (sh-mode) "sh-script" "progmodes/sh-script.el"
 -;;;;;;  (19780 4514))
 +;;;;;;  (19714 43298))
  ;;; Generated autoloads from progmodes/sh-script.el
  (put 'sh-shell 'safe-local-variable 'symbolp)
  
@@@ -25016,7 -25041,7 +24955,7 @@@ with your script for an edit-interpret-
  
  ;;;***
  \f
 -;;;### (autoloads (sha1) "sha1" "sha1.el" (19775 2029))
 +;;;### (autoloads (sha1) "sha1" "sha1.el" (19598 13691))
  ;;; Generated autoloads from sha1.el
  
  (autoload 'sha1 "sha1" "\
@@@ -25031,7 -25056,7 +24970,7 @@@ If BINARY is non-nil, return a string i
  ;;;***
  \f
  ;;;### (autoloads (list-load-path-shadows) "shadow" "emacs-lisp/shadow.el"
 -;;;;;;  (19781 20658))
 +;;;;;;  (19640 47194))
  ;;; Generated autoloads from emacs-lisp/shadow.el
  
  (autoload 'list-load-path-shadows "shadow" "\
@@@ -25081,8 -25106,8 +25020,8 @@@ function, `load-path-shadows-find'
  ;;;***
  \f
  ;;;### (autoloads (shadow-initialize shadow-define-regexp-group shadow-define-literal-group
 -;;;;;;  shadow-define-cluster) "shadowfile" "shadowfile.el" (19775
 -;;;;;;  2029))
 +;;;;;;  shadow-define-cluster) "shadowfile" "shadowfile.el" (19562
 +;;;;;;  42953))
  ;;; Generated autoloads from shadowfile.el
  
  (autoload 'shadow-define-cluster "shadowfile" "\
@@@ -25121,7 -25146,7 +25060,7 @@@ Set up file shadowing
  ;;;***
  \f
  ;;;### (autoloads (shell shell-dumb-shell-regexp) "shell" "shell.el"
 -;;;;;;  (19780 4514))
 +;;;;;;  (19714 43298))
  ;;; Generated autoloads from shell.el
  
  (defvar shell-dumb-shell-regexp (purecopy "cmd\\(proxy\\)?\\.exe") "\
@@@ -25170,8 -25195,8 +25109,8 @@@ Otherwise, one argument `-i' is passed 
  
  ;;;***
  \f
 -;;;### (autoloads (shr-insert-document) "shr" "gnus/shr.el" (19780
 -;;;;;;  4513))
 +;;;### (autoloads (shr-insert-document) "shr" "gnus/shr.el" (19714
 +;;;;;;  43298))
  ;;; Generated autoloads from gnus/shr.el
  
  (autoload 'shr-insert-document "shr" "\
@@@ -25182,7 -25207,7 +25121,7 @@@ Not documente
  ;;;***
  \f
  ;;;### (autoloads (sieve-upload-and-bury sieve-upload sieve-manage)
 -;;;;;;  "sieve" "gnus/sieve.el" (19775 2028))
 +;;;;;;  "sieve" "gnus/sieve.el" (19640 47194))
  ;;; Generated autoloads from gnus/sieve.el
  
  (autoload 'sieve-manage "sieve" "\
@@@ -25203,7 -25228,7 +25142,7 @@@ Not documente
  ;;;***
  \f
  ;;;### (autoloads (sieve-mode) "sieve-mode" "gnus/sieve-mode.el"
 -;;;;;;  (19775 2028))
 +;;;;;;  (19598 13691))
  ;;; Generated autoloads from gnus/sieve-mode.el
  
  (autoload 'sieve-mode "sieve-mode" "\
@@@ -25218,8 -25243,8 +25157,8 @@@ Turning on Sieve mode runs `sieve-mode-
  
  ;;;***
  \f
 -;;;### (autoloads (simula-mode) "simula" "progmodes/simula.el" (19775
 -;;;;;;  2029))
 +;;;### (autoloads (simula-mode) "simula" "progmodes/simula.el" (19714
 +;;;;;;  43298))
  ;;; Generated autoloads from progmodes/simula.el
  
  (autoload 'simula-mode "simula" "\
@@@ -25268,7 -25293,7 +25207,7 @@@ with no arguments, if that value is non
  ;;;***
  \f
  ;;;### (autoloads (skeleton-pair-insert-maybe skeleton-insert skeleton-proxy-new
 -;;;;;;  define-skeleton) "skeleton" "skeleton.el" (19775 2030))
 +;;;;;;  define-skeleton) "skeleton" "skeleton.el" (19714 43298))
  ;;; Generated autoloads from skeleton.el
  
  (defvar skeleton-filter-function 'identity "\
@@@ -25378,7 -25403,7 +25317,7 @@@ symmetrical ones, and the same characte
  ;;;***
  \f
  ;;;### (autoloads (smerge-start-session smerge-mode smerge-ediff)
 -;;;;;;  "smerge-mode" "vc/smerge-mode.el" (19775 2030))
 +;;;;;;  "smerge-mode" "vc/smerge-mode.el" (19714 43298))
  ;;; Generated autoloads from vc/smerge-mode.el
  
  (autoload 'smerge-ediff "smerge-mode" "\
@@@ -25403,7 -25428,7 +25342,7 @@@ If no conflict maker is found, turn of
  ;;;***
  \f
  ;;;### (autoloads (smiley-buffer smiley-region) "smiley" "gnus/smiley.el"
 -;;;;;;  (19775 2028))
 +;;;;;;  (19598 13691))
  ;;; Generated autoloads from gnus/smiley.el
  
  (autoload 'smiley-region "smiley" "\
@@@ -25421,7 -25446,7 +25360,7 @@@ interactively.  If there's no argument
  ;;;***
  \f
  ;;;### (autoloads (smtpmail-send-queued-mail smtpmail-send-it) "smtpmail"
 -;;;;;;  "mail/smtpmail.el" (19775 2029))
 +;;;;;;  "mail/smtpmail.el" (19562 42953))
  ;;; Generated autoloads from mail/smtpmail.el
  
  (autoload 'smtpmail-send-it "smtpmail" "\
@@@ -25436,7 -25461,7 +25375,7 @@@ Send mail that was queued as a result o
  
  ;;;***
  \f
 -;;;### (autoloads (snake) "snake" "play/snake.el" (19775 2029))
 +;;;### (autoloads (snake) "snake" "play/snake.el" (19562 42953))
  ;;; Generated autoloads from play/snake.el
  
  (autoload 'snake "snake" "\
@@@ -25460,7 -25485,7 +25399,7 @@@ Snake mode keybindings
  ;;;***
  \f
  ;;;### (autoloads (snmpv2-mode snmp-mode) "snmp-mode" "net/snmp-mode.el"
 -;;;;;;  (19775 2029))
 +;;;;;;  (19562 42953))
  ;;; Generated autoloads from net/snmp-mode.el
  
  (autoload 'snmp-mode "snmp-mode" "\
@@@ -25489,8 -25514,8 +25428,8 @@@ then `snmpv2-mode-hook'
  
  ;;;***
  \f
 -;;;### (autoloads (sunrise-sunset) "solar" "calendar/solar.el" (19780
 -;;;;;;  4513))
 +;;;### (autoloads (sunrise-sunset) "solar" "calendar/solar.el" (19619
 +;;;;;;  52030))
  ;;; Generated autoloads from calendar/solar.el
  
  (autoload 'sunrise-sunset "solar" "\
@@@ -25505,8 -25530,8 +25444,8 @@@ This function is suitable for executio
  
  ;;;***
  \f
 -;;;### (autoloads (solitaire) "solitaire" "play/solitaire.el" (19775
 -;;;;;;  2029))
 +;;;### (autoloads (solitaire) "solitaire" "play/solitaire.el" (19562
 +;;;;;;  42953))
  ;;; Generated autoloads from play/solitaire.el
  
  (autoload 'solitaire "solitaire" "\
@@@ -25583,7 -25608,7 +25522,7 @@@ Pick your favourite shortcuts
  \f
  ;;;### (autoloads (reverse-region sort-columns sort-regexp-fields
  ;;;;;;  sort-fields sort-numeric-fields sort-pages sort-paragraphs
 -;;;;;;  sort-lines sort-subr) "sort" "sort.el" (19780 4514))
 +;;;;;;  sort-lines sort-subr) "sort" "sort.el" (19714 43298))
  ;;; Generated autoloads from sort.el
  (put 'sort-fold-case 'safe-local-variable 'booleanp)
  
@@@ -25727,8 -25752,8 +25666,8 @@@ From a program takes two point or marke
  
  ;;;***
  \f
 -;;;### (autoloads (spam-initialize) "spam" "gnus/spam.el" (19780
 -;;;;;;  4513))
 +;;;### (autoloads (spam-initialize) "spam" "gnus/spam.el" (19714
 +;;;;;;  43298))
  ;;; Generated autoloads from gnus/spam.el
  
  (autoload 'spam-initialize "spam" "\
@@@ -25744,7 -25769,7 +25683,7 @@@ installed through `spam-necessary-extra
  \f
  ;;;### (autoloads (spam-report-deagentize spam-report-agentize spam-report-url-to-file
  ;;;;;;  spam-report-url-ping-mm-url spam-report-process-queue) "spam-report"
 -;;;;;;  "gnus/spam-report.el" (19780 4513))
 +;;;;;;  "gnus/spam-report.el" (19640 47194))
  ;;; Generated autoloads from gnus/spam-report.el
  
  (autoload 'spam-report-process-queue "spam-report" "\
@@@ -25787,7 -25812,7 +25726,7 @@@ Spam reports will be queued with the me
  ;;;***
  \f
  ;;;### (autoloads (speedbar-get-focus speedbar-frame-mode) "speedbar"
 -;;;;;;  "speedbar.el" (19780 4514))
 +;;;;;;  "speedbar.el" (19714 43298))
  ;;; Generated autoloads from speedbar.el
  
  (defalias 'speedbar 'speedbar-frame-mode)
@@@ -25811,53 -25836,8 +25750,53 @@@ selected.  If the speedbar frame is act
  
  ;;;***
  \f
 -;;;### (autoloads (snarf-spooks spook) "spook" "play/spook.el" (19775
 -;;;;;;  2029))
 +;;;### (autoloads (spell-string spell-region spell-word spell-buffer)
 +;;;;;;  "spell" "textmodes/spell.el" (19619 52030))
 +;;; Generated autoloads from textmodes/spell.el
 +
 +(put 'spell-filter 'risky-local-variable t)
 +
 +(autoload 'spell-buffer "spell" "\
 +Check spelling of every word in the buffer.
 +For each incorrect word, you are asked for the correct spelling
 +and then put into a query-replace to fix some or all occurrences.
 +If you do not want to change a word, just give the same word
 +as its \"correct\" spelling; then the query replace is skipped.
 +
 +\(fn)" t nil)
 +
 +(make-obsolete 'spell-buffer 'ispell-buffer "23.1")
 +
 +(autoload 'spell-word "spell" "\
 +Check spelling of word at or before point.
 +If it is not correct, ask user for the correct spelling
 +and `query-replace' the entire buffer to substitute it.
 +
 +\(fn)" t nil)
 +
 +(make-obsolete 'spell-word 'ispell-word "23.1")
 +
 +(autoload 'spell-region "spell" "\
 +Like `spell-buffer' but applies only to region.
 +Used in a program, applies from START to END.
 +DESCRIPTION is an optional string naming the unit being checked:
 +for example, \"word\".
 +
 +\(fn START END &optional DESCRIPTION)" t nil)
 +
 +(make-obsolete 'spell-region 'ispell-region "23.1")
 +
 +(autoload 'spell-string "spell" "\
 +Check spelling of string supplied as argument.
 +
 +\(fn STRING)" t nil)
 +
 +(make-obsolete 'spell-string "The `spell' package is obsolete - use `ispell'." "23.1")
 +
 +;;;***
 +\f
 +;;;### (autoloads (snarf-spooks spook) "spook" "play/spook.el" (19562
 +;;;;;;  42953))
  ;;; Generated autoloads from play/spook.el
  
  (autoload 'spook "spook" "\
@@@ -25876,7 -25856,7 +25815,7 @@@ Return a vector containing the lines fr
  ;;;;;;  sql-ms sql-ingres sql-solid sql-mysql sql-sqlite sql-informix
  ;;;;;;  sql-sybase sql-oracle sql-product-interactive sql-connect
  ;;;;;;  sql-mode sql-help sql-add-product-keywords) "sql" "progmodes/sql.el"
 -;;;;;;  (19775 2029))
 +;;;;;;  (19714 43298))
  ;;; Generated autoloads from progmodes/sql.el
  
  (autoload 'sql-add-product-keywords "sql" "\
@@@ -26372,7 -26352,7 +26311,7 @@@ buffer
  ;;;***
  \f
  ;;;### (autoloads (srecode-template-mode) "srecode/srt-mode" "cedet/srecode/srt-mode.el"
 -;;;;;;  (19775 2027))
 +;;;;;;  (19562 42953))
  ;;; Generated autoloads from cedet/srecode/srt-mode.el
  
  (autoload 'srecode-template-mode "srecode/srt-mode" "\
@@@ -26385,7 -26365,7 +26324,7 @@@ Major-mode for writing SRecode macros
  ;;;***
  \f
  ;;;### (autoloads (starttls-open-stream) "starttls" "gnus/starttls.el"
 -;;;;;;  (19775 2028))
 +;;;;;;  (19619 52030))
  ;;; Generated autoloads from gnus/starttls.el
  
  (autoload 'starttls-open-stream "starttls" "\
@@@ -26412,8 -26392,8 +26351,8 @@@ GNUTLS requires a port number
  ;;;;;;  strokes-mode strokes-list-strokes strokes-load-user-strokes
  ;;;;;;  strokes-help strokes-describe-stroke strokes-do-complex-stroke
  ;;;;;;  strokes-do-stroke strokes-read-complex-stroke strokes-read-stroke
 -;;;;;;  strokes-global-set-stroke) "strokes" "strokes.el" (19775
 -;;;;;;  2030))
 +;;;;;;  strokes-global-set-stroke) "strokes" "strokes.el" (19562
 +;;;;;;  42953))
  ;;; Generated autoloads from strokes.el
  
  (autoload 'strokes-global-set-stroke "strokes" "\
@@@ -26523,7 -26503,7 +26462,7 @@@ Read a complex stroke and insert its gl
  ;;;***
  \f
  ;;;### (autoloads (studlify-buffer studlify-word studlify-region)
 -;;;;;;  "studly" "play/studly.el" (19763 27287))
 +;;;;;;  "studly" "play/studly.el" (19562 42953))
  ;;; Generated autoloads from play/studly.el
  
  (autoload 'studlify-region "studly" "\
@@@ -26544,7 -26524,7 +26483,7 @@@ Studlify-case the current buffer
  ;;;***
  \f
  ;;;### (autoloads (global-subword-mode subword-mode) "subword" "progmodes/subword.el"
 -;;;;;;  (19775 2029))
 +;;;;;;  (19562 42953))
  ;;; Generated autoloads from progmodes/subword.el
  
  (autoload 'subword-mode "subword" "\
@@@ -26592,7 -26572,7 +26531,7 @@@ See `subword-mode' for more informatio
  ;;;***
  \f
  ;;;### (autoloads (sc-cite-original) "supercite" "mail/supercite.el"
 -;;;;;;  (19775 2029))
 +;;;;;;  (19562 42953))
  ;;; Generated autoloads from mail/supercite.el
  
  (autoload 'sc-cite-original "supercite" "\
@@@ -26624,8 -26604,8 +26563,8 @@@ and `sc-post-hook' is run after the gut
  
  ;;;***
  \f
 -;;;### (autoloads (gpm-mouse-mode) "t-mouse" "t-mouse.el" (19780
 -;;;;;;  4514))
 +;;;### (autoloads (gpm-mouse-mode) "t-mouse" "t-mouse.el" (19562
 +;;;;;;  42953))
  ;;; Generated autoloads from t-mouse.el
  
  (define-obsolete-function-alias 't-mouse-mode 'gpm-mouse-mode "23.1")
@@@ -26652,7 -26632,7 +26591,7 @@@ It relies on the `gpm' daemon being act
  
  ;;;***
  \f
 -;;;### (autoloads (tabify untabify) "tabify" "tabify.el" (19775 2030))
 +;;;### (autoloads (tabify untabify) "tabify" "tabify.el" (19598 13691))
  ;;; Generated autoloads from tabify.el
  
  (autoload 'untabify "tabify" "\
@@@ -26687,7 -26667,7 +26626,7 @@@ The variable `tab-width' controls the s
  ;;;;;;  table-recognize table-insert-row-column table-insert-column
  ;;;;;;  table-insert-row table-insert table-point-left-cell-hook
  ;;;;;;  table-point-entered-cell-hook table-load-hook table-cell-map-hook)
 -;;;;;;  "table" "textmodes/table.el" (19775 2030))
 +;;;;;;  "table" "textmodes/table.el" (19714 43298))
  ;;; Generated autoloads from textmodes/table.el
  
  (defvar table-cell-map-hook nil "\
@@@ -27275,7 -27255,7 +27214,7 @@@ converts a table into plain text withou
  
  ;;;***
  \f
 -;;;### (autoloads (talk talk-connect) "talk" "talk.el" (19775 2030))
 +;;;### (autoloads (talk talk-connect) "talk" "talk.el" (19562 42953))
  ;;; Generated autoloads from talk.el
  
  (autoload 'talk-connect "talk" "\
@@@ -27290,7 -27270,7 +27229,7 @@@ Connect to the Emacs talk group from th
  
  ;;;***
  \f
 -;;;### (autoloads (tar-mode) "tar-mode" "tar-mode.el" (19780 4514))
 +;;;### (autoloads (tar-mode) "tar-mode" "tar-mode.el" (19619 52030))
  ;;; Generated autoloads from tar-mode.el
  
  (autoload 'tar-mode "tar-mode" "\
@@@ -27314,7 -27294,7 +27253,7 @@@ See also: variables `tar-update-datesta
  ;;;***
  \f
  ;;;### (autoloads (tcl-help-on-word inferior-tcl tcl-mode) "tcl"
 -;;;;;;  "progmodes/tcl.el" (19775 2029))
 +;;;;;;  "progmodes/tcl.el" (19714 43298))
  ;;; Generated autoloads from progmodes/tcl.el
  
  (autoload 'tcl-mode "tcl" "\
@@@ -27362,7 -27342,7 +27301,7 @@@ Prefix argument means invert sense of `
  
  ;;;***
  \f
 -;;;### (autoloads (rsh telnet) "telnet" "net/telnet.el" (19780 4514))
 +;;;### (autoloads (rsh telnet) "telnet" "net/telnet.el" (19640 47194))
  ;;; Generated autoloads from net/telnet.el
   (add-hook 'same-window-regexps (purecopy "\\*telnet-.*\\*\\(\\|<[0-9]+>\\)"))
  
@@@ -27390,7 -27370,7 +27329,7 @@@ Normally input is edited in Emacs and s
  ;;;***
  \f
  ;;;### (autoloads (serial-term ansi-term term make-term) "term" "term.el"
 -;;;;;;  (19775 2030))
 +;;;;;;  (19714 43298))
  ;;; Generated autoloads from term.el
  
  (autoload 'make-term "term" "\
@@@ -27432,8 -27412,8 +27371,8 @@@ use in that buffer
  
  ;;;***
  \f
 -;;;### (autoloads (terminal-emulator) "terminal" "terminal.el" (19780
 -;;;;;;  4514))
 +;;;### (autoloads (terminal-emulator) "terminal" "terminal.el" (19591
 +;;;;;;  62571))
  ;;; Generated autoloads from terminal.el
  
  (autoload 'terminal-emulator "terminal" "\
@@@ -27470,7 -27450,7 +27409,7 @@@ subprocess started
  ;;;***
  \f
  ;;;### (autoloads (testcover-this-defun) "testcover" "emacs-lisp/testcover.el"
 -;;;;;;  (19775 2028))
 +;;;;;;  (19591 62571))
  ;;; Generated autoloads from emacs-lisp/testcover.el
  
  (autoload 'testcover-this-defun "testcover" "\
@@@ -27480,7 -27460,7 +27419,7 @@@ Start coverage on function under point
  
  ;;;***
  \f
 -;;;### (autoloads (tetris) "tetris" "play/tetris.el" (19775 2029))
 +;;;### (autoloads (tetris) "tetris" "play/tetris.el" (19562 42953))
  ;;; Generated autoloads from play/tetris.el
  
  (autoload 'tetris "tetris" "\
@@@ -27511,7 -27491,7 +27450,7 @@@ tetris-mode keybindings
  ;;;;;;  tex-start-commands tex-start-options slitex-run-command latex-run-command
  ;;;;;;  tex-run-command tex-offer-save tex-main-file tex-first-line-header-regexp
  ;;;;;;  tex-directory tex-shell-file-name) "tex-mode" "textmodes/tex-mode.el"
 -;;;;;;  (19780 4514))
 +;;;;;;  (19714 43298))
  ;;; Generated autoloads from textmodes/tex-mode.el
  
  (defvar tex-shell-file-name nil "\
@@@ -27813,7 -27793,7 +27752,7 @@@ Major mode to edit DocTeX files
  ;;;***
  \f
  ;;;### (autoloads (texi2info texinfo-format-region texinfo-format-buffer)
 -;;;;;;  "texinfmt" "textmodes/texinfmt.el" (19780 4514))
 +;;;;;;  "texinfmt" "textmodes/texinfmt.el" (19714 43298))
  ;;; Generated autoloads from textmodes/texinfmt.el
  
  (autoload 'texinfo-format-buffer "texinfmt" "\
@@@ -27853,7 -27833,7 +27792,7 @@@ if large.  You can use `Info-split' to 
  ;;;***
  \f
  ;;;### (autoloads (texinfo-mode texinfo-close-quote texinfo-open-quote)
 -;;;;;;  "texinfo" "textmodes/texinfo.el" (19775 2030))
 +;;;;;;  "texinfo" "textmodes/texinfo.el" (19714 43298))
  ;;; Generated autoloads from textmodes/texinfo.el
  
  (defvar texinfo-open-quote (purecopy "``") "\
@@@ -27939,7 -27919,7 +27878,7 @@@ value of `texinfo-mode-hook'
  \f
  ;;;### (autoloads (thai-composition-function thai-compose-buffer
  ;;;;;;  thai-compose-string thai-compose-region) "thai-util" "language/thai-util.el"
 -;;;;;;  (19775 2028))
 +;;;;;;  (19562 42953))
  ;;; Generated autoloads from language/thai-util.el
  
  (autoload 'thai-compose-region "thai-util" "\
@@@ -27968,7 -27948,7 +27907,7 @@@ Not documente
  \f
  ;;;### (autoloads (list-at-point number-at-point symbol-at-point
  ;;;;;;  sexp-at-point thing-at-point bounds-of-thing-at-point forward-thing)
 -;;;;;;  "thingatpt" "thingatpt.el" (19780 4514))
 +;;;;;;  "thingatpt" "thingatpt.el" (19562 42953))
  ;;; Generated autoloads from thingatpt.el
  
  (autoload 'forward-thing "thingatpt" "\
@@@ -28025,7 -28005,7 +27964,7 @@@ Return the Lisp list at point, or nil i
  \f
  ;;;### (autoloads (thumbs-dired-setroot thumbs-dired-show thumbs-dired-show-marked
  ;;;;;;  thumbs-show-from-dir thumbs-find-thumb) "thumbs" "thumbs.el"
 -;;;;;;  (19775 2030))
 +;;;;;;  (19562 42953))
  ;;; Generated autoloads from thumbs.el
  
  (autoload 'thumbs-find-thumb "thumbs" "\
@@@ -28063,8 -28043,8 +28002,8 @@@ In dired, call the setroot program on t
  ;;;;;;  tibetan-post-read-conversion tibetan-compose-buffer tibetan-decompose-buffer
  ;;;;;;  tibetan-decompose-string tibetan-decompose-region tibetan-compose-region
  ;;;;;;  tibetan-compose-string tibetan-transcription-to-tibetan tibetan-tibetan-to-transcription
 -;;;;;;  tibetan-char-p) "tibet-util" "language/tibet-util.el" (19780
 -;;;;;;  4513))
 +;;;;;;  tibetan-char-p) "tibet-util" "language/tibet-util.el" (19562
 +;;;;;;  42953))
  ;;; Generated autoloads from language/tibet-util.el
  
  (autoload 'tibetan-char-p "tibet-util" "\
@@@ -28138,7 -28118,7 +28077,7 @@@ Not documente
  ;;;***
  \f
  ;;;### (autoloads (tildify-buffer tildify-region) "tildify" "textmodes/tildify.el"
 -;;;;;;  (19775 2030))
 +;;;;;;  (19562 42953))
  ;;; Generated autoloads from textmodes/tildify.el
  
  (autoload 'tildify-region "tildify" "\
@@@ -28163,7 -28143,7 +28102,7 @@@ This function performs no refilling of 
  \f
  ;;;### (autoloads (emacs-init-time emacs-uptime display-time-world
  ;;;;;;  display-time-mode display-time display-time-day-and-date)
 -;;;;;;  "time" "time.el" (19780 4514))
 +;;;;;;  "time" "time.el" (19640 47194))
  ;;; Generated autoloads from time.el
  
  (defvar display-time-day-and-date nil "\
@@@ -28194,7 -28174,9 +28133,7 @@@ or call the function `display-time-mode
  Toggle display of time, load level, and mail flag in mode lines.
  With a numeric arg, enable this display if arg is positive.
  
 -When this display is enabled, it updates automatically every minute
 -\(you can control the number of seconds between updates by
 -customizing `display-time-interval').
 +When this display is enabled, it updates automatically every minute.
  If `display-time-day-and-date' is non-nil, the current day and date
  are displayed as well.
  This runs the normal hook `display-time-hook' after each update.
@@@ -28226,7 -28208,7 +28165,7 @@@ Return a string giving the duration of 
  ;;;;;;  time-to-day-in-year date-leap-year-p days-between date-to-day
  ;;;;;;  time-add time-subtract time-since days-to-time time-less-p
  ;;;;;;  seconds-to-time date-to-time) "time-date" "calendar/time-date.el"
 -;;;;;;  (19775 2027))
 +;;;;;;  (19714 43298))
  ;;; Generated autoloads from calendar/time-date.el
  
  (autoload 'date-to-time "time-date" "\
@@@ -28340,7 -28322,7 +28279,7 @@@ This function does not work for SECOND
  ;;;***
  \f
  ;;;### (autoloads (time-stamp-toggle-active time-stamp) "time-stamp"
 -;;;;;;  "time-stamp.el" (19780 4514))
 +;;;;;;  "time-stamp.el" (19562 42953))
  ;;; Generated autoloads from time-stamp.el
  (put 'time-stamp-format 'safe-local-variable 'stringp)
  (put 'time-stamp-time-zone 'safe-local-variable 'string-or-null-p)
@@@ -28384,7 -28366,7 +28323,7 @@@ With ARG, turn time stamping on if and 
  ;;;;;;  timeclock-workday-remaining-string timeclock-reread-log timeclock-query-out
  ;;;;;;  timeclock-change timeclock-status-string timeclock-out timeclock-in
  ;;;;;;  timeclock-modeline-display) "timeclock" "calendar/timeclock.el"
 -;;;;;;  (19775 2027))
 +;;;;;;  (19714 43298))
  ;;; Generated autoloads from calendar/timeclock.el
  
  (autoload 'timeclock-modeline-display "timeclock" "\
@@@ -28484,7 -28466,7 +28423,7 @@@ relative only to the time worked today
  ;;;***
  \f
  ;;;### (autoloads (batch-titdic-convert titdic-convert) "titdic-cnv"
 -;;;;;;  "international/titdic-cnv.el" (19775 2028))
 +;;;;;;  "international/titdic-cnv.el" (19640 47194))
  ;;; Generated autoloads from international/titdic-cnv.el
  
  (autoload 'titdic-convert "titdic-cnv" "\
@@@ -28507,7 -28489,7 +28446,7 @@@ To get complete usage, invoke \"emacs -
  ;;;***
  \f
  ;;;### (autoloads (tmm-prompt tmm-menubar-mouse tmm-menubar) "tmm"
 -;;;;;;  "tmm.el" (19775 2030))
 +;;;;;;  "tmm.el" (19562 42953))
  ;;; Generated autoloads from tmm.el
   (define-key global-map "\M-`" 'tmm-menubar)
   (define-key global-map [menu-bar mouse-1] 'tmm-menubar-mouse)
@@@ -28547,7 -28529,7 +28486,7 @@@ Its value should be an event that has 
  \f
  ;;;### (autoloads (todo-show todo-cp todo-mode todo-print todo-top-priorities
  ;;;;;;  todo-insert-item todo-add-item-non-interactively todo-add-category)
 -;;;;;;  "todo-mode" "calendar/todo-mode.el" (19775 2027))
 +;;;;;;  "todo-mode" "calendar/todo-mode.el" (19562 42953))
  ;;; Generated autoloads from calendar/todo-mode.el
  
  (autoload 'todo-add-category "todo-mode" "\
@@@ -28607,7 -28589,7 +28546,7 @@@ Show TODO list
  \f
  ;;;### (autoloads (tool-bar-local-item-from-menu tool-bar-add-item-from-menu
  ;;;;;;  tool-bar-local-item tool-bar-add-item toggle-tool-bar-mode-from-frame)
 -;;;;;;  "tool-bar" "tool-bar.el" (19775 2030))
 +;;;;;;  "tool-bar" "tool-bar.el" (19714 43298))
  ;;; Generated autoloads from tool-bar.el
  
  (autoload 'toggle-tool-bar-mode-from-frame "tool-bar" "\
@@@ -28678,7 -28660,7 +28617,7 @@@ holds a keymap
  ;;;***
  \f
  ;;;### (autoloads (tpu-edt-on tpu-edt-mode) "tpu-edt" "emulation/tpu-edt.el"
 -;;;;;;  (19780 4513))
 +;;;;;;  (19714 43298))
  ;;; Generated autoloads from emulation/tpu-edt.el
  
  (defvar tpu-edt-mode nil "\
@@@ -28705,7 -28687,7 +28644,7 @@@ Turn on TPU/edt emulation
  ;;;***
  \f
  ;;;### (autoloads (tpu-mapper) "tpu-mapper" "emulation/tpu-mapper.el"
 -;;;;;;  (19775 2028))
 +;;;;;;  (19598 13691))
  ;;; Generated autoloads from emulation/tpu-mapper.el
  
  (autoload 'tpu-mapper "tpu-mapper" "\
@@@ -28739,7 -28721,7 +28678,7 @@@ your local X guru can try to figure ou
  
  ;;;***
  \f
 -;;;### (autoloads (tq-create) "tq" "emacs-lisp/tq.el" (19775 2028))
 +;;;### (autoloads (tq-create) "tq" "emacs-lisp/tq.el" (19562 42953))
  ;;; Generated autoloads from emacs-lisp/tq.el
  
  (autoload 'tq-create "tq" "\
@@@ -28753,7 -28735,7 +28692,7 @@@ to a tcp server on another machine
  ;;;***
  \f
  ;;;### (autoloads (trace-function-background trace-function trace-buffer)
 -;;;;;;  "trace" "emacs-lisp/trace.el" (19775 2028))
 +;;;;;;  "trace" "emacs-lisp/trace.el" (19591 62571))
  ;;; Generated autoloads from emacs-lisp/trace.el
  
  (defvar trace-buffer (purecopy "*trace-output*") "\
@@@ -28790,7 -28772,7 +28729,7 @@@ BUFFER defaults to `trace-buffer'
  ;;;### (autoloads (tramp-unload-tramp tramp-completion-handle-file-name-completion
  ;;;;;;  tramp-completion-handle-file-name-all-completions tramp-unload-file-name-handlers
  ;;;;;;  tramp-file-name-handler tramp-syntax tramp-mode) "tramp"
 -;;;;;;  "net/tramp.el" (19775 2029))
 +;;;;;;  "net/tramp.el" (19714 43298))
  ;;; Generated autoloads from net/tramp.el
  
  (defvar tramp-mode t "\
@@@ -28928,7 -28910,7 +28867,7 @@@ Discard Tramp from loading remote files
  ;;;***
  \f
  ;;;### (autoloads (tramp-ftp-enable-ange-ftp) "tramp-ftp" "net/tramp-ftp.el"
 -;;;;;;  (19775 2029))
 +;;;;;;  (19714 43298))
  ;;; Generated autoloads from net/tramp-ftp.el
  
  (autoload 'tramp-ftp-enable-ange-ftp "tramp-ftp" "\
@@@ -28938,8 -28920,8 +28877,8 @@@ Not documente
  
  ;;;***
  \f
 -;;;### (autoloads (help-with-tutorial) "tutorial" "tutorial.el" (19775
 -;;;;;;  2030))
 +;;;### (autoloads (help-with-tutorial) "tutorial" "tutorial.el" (19598
 +;;;;;;  13691))
  ;;; Generated autoloads from tutorial.el
  
  (autoload 'help-with-tutorial "tutorial" "\
@@@ -28964,7 -28946,7 +28903,7 @@@ resumed later
  ;;;***
  \f
  ;;;### (autoloads (tai-viet-composition-function) "tv-util" "language/tv-util.el"
 -;;;;;;  (19763 27286))
 +;;;;;;  (19562 42953))
  ;;; Generated autoloads from language/tv-util.el
  
  (autoload 'tai-viet-composition-function "tv-util" "\
@@@ -28975,7 -28957,7 +28914,7 @@@ Not documente
  ;;;***
  \f
  ;;;### (autoloads (2C-split 2C-associate-buffer 2C-two-columns) "two-column"
 -;;;;;;  "textmodes/two-column.el" (19775 2030))
 +;;;;;;  "textmodes/two-column.el" (19619 52030))
  ;;; Generated autoloads from textmodes/two-column.el
   (autoload '2C-command "two-column" () t 'keymap)
   (global-set-key "\C-x6" '2C-command)
@@@ -29026,7 -29008,7 +28965,7 @@@ First column's text    sSs  Second colu
  ;;;;;;  type-break type-break-mode type-break-keystroke-threshold
  ;;;;;;  type-break-good-break-interval type-break-good-rest-interval
  ;;;;;;  type-break-interval type-break-mode) "type-break" "type-break.el"
 -;;;;;;  (19775 2030))
 +;;;;;;  (19714 43298))
  ;;; Generated autoloads from type-break.el
  
  (defvar type-break-mode nil "\
@@@ -29208,7 -29190,7 +29147,7 @@@ FRAC should be the inverse of the fract
  
  ;;;***
  \f
 -;;;### (autoloads (uce-reply-to-uce) "uce" "mail/uce.el" (19775 2029))
 +;;;### (autoloads (uce-reply-to-uce) "uce" "mail/uce.el" (19562 42953))
  ;;; Generated autoloads from mail/uce.el
  
  (autoload 'uce-reply-to-uce "uce" "\
@@@ -29226,7 -29208,7 +29165,7 @@@ You might need to set `uce-mail-reader
  ;;;;;;  ucs-normalize-NFKC-string ucs-normalize-NFKC-region ucs-normalize-NFKD-string
  ;;;;;;  ucs-normalize-NFKD-region ucs-normalize-NFC-string ucs-normalize-NFC-region
  ;;;;;;  ucs-normalize-NFD-string ucs-normalize-NFD-region) "ucs-normalize"
 -;;;;;;  "international/ucs-normalize.el" (19780 4513))
 +;;;;;;  "international/ucs-normalize.el" (19619 52030))
  ;;; Generated autoloads from international/ucs-normalize.el
  
  (autoload 'ucs-normalize-NFD-region "ucs-normalize" "\
@@@ -29292,7 -29274,7 +29231,7 @@@ Normalize the string STR by the Unicod
  ;;;***
  \f
  ;;;### (autoloads (ununderline-region underline-region) "underline"
 -;;;;;;  "textmodes/underline.el" (19775 2030))
 +;;;;;;  "textmodes/underline.el" (19562 42953))
  ;;; Generated autoloads from textmodes/underline.el
  
  (autoload 'underline-region "underline" "\
@@@ -29313,7 -29295,7 +29252,7 @@@ which specify the range to operate on
  ;;;***
  \f
  ;;;### (autoloads (unrmail batch-unrmail) "unrmail" "mail/unrmail.el"
 -;;;;;;  (19775 2029))
 +;;;;;;  (19562 42953))
  ;;; Generated autoloads from mail/unrmail.el
  
  (autoload 'batch-unrmail "unrmail" "\
@@@ -29332,8 -29314,8 +29271,8 @@@ Convert old-style Rmail Babyl file FIL
  
  ;;;***
  \f
 -;;;### (autoloads (unsafep) "unsafep" "emacs-lisp/unsafep.el" (19775
 -;;;;;;  2028))
 +;;;### (autoloads (unsafep) "unsafep" "emacs-lisp/unsafep.el" (19714
 +;;;;;;  43298))
  ;;; Generated autoloads from emacs-lisp/unsafep.el
  
  (autoload 'unsafep "unsafep" "\
@@@ -29346,7 -29328,7 +29285,7 @@@ UNSAFEP-VARS is a list of symbols with 
  ;;;***
  \f
  ;;;### (autoloads (url-retrieve-synchronously url-retrieve) "url"
 -;;;;;;  "url/url.el" (19775 2030))
 +;;;;;;  "url/url.el" (19640 47194))
  ;;; Generated autoloads from url/url.el
  
  (autoload 'url-retrieve "url" "\
@@@ -29388,7 -29370,7 +29327,7 @@@ no further processing).  URL is either 
  ;;;***
  \f
  ;;;### (autoloads (url-register-auth-scheme url-get-authentication)
 -;;;;;;  "url-auth" "url/url-auth.el" (19775 2030))
 +;;;;;;  "url-auth" "url/url-auth.el" (19562 42953))
  ;;; Generated autoloads from url/url-auth.el
  
  (autoload 'url-get-authentication "url-auth" "\
@@@ -29430,7 -29412,7 +29369,7 @@@ RATING   a rating between 1 and 10 of t
  ;;;***
  \f
  ;;;### (autoloads (url-cache-extract url-is-cached url-store-in-cache)
 -;;;;;;  "url-cache" "url/url-cache.el" (19775 2030))
 +;;;;;;  "url-cache" "url/url-cache.el" (19640 47194))
  ;;; Generated autoloads from url/url-cache.el
  
  (autoload 'url-store-in-cache "url-cache" "\
@@@ -29451,7 -29433,7 +29390,7 @@@ Extract FNAM from the local disk cache
  
  ;;;***
  \f
 -;;;### (autoloads (url-cid) "url-cid" "url/url-cid.el" (19780 4514))
 +;;;### (autoloads (url-cid) "url-cid" "url/url-cid.el" (19562 42953))
  ;;; Generated autoloads from url/url-cid.el
  
  (autoload 'url-cid "url-cid" "\
@@@ -29462,7 -29444,7 +29401,7 @@@ Not documente
  ;;;***
  \f
  ;;;### (autoloads (url-dav-vc-registered url-dav-supported-p) "url-dav"
 -;;;;;;  "url/url-dav.el" (19780 4514))
 +;;;;;;  "url/url-dav.el" (19591 62571))
  ;;; Generated autoloads from url/url-dav.el
  
  (autoload 'url-dav-supported-p "url-dav" "\
@@@ -29477,8 -29459,8 +29416,8 @@@ Not documente
  
  ;;;***
  \f
 -;;;### (autoloads (url-file) "url-file" "url/url-file.el" (19775
 -;;;;;;  2030))
 +;;;### (autoloads (url-file) "url-file" "url/url-file.el" (19714
 +;;;;;;  43298))
  ;;; Generated autoloads from url/url-file.el
  
  (autoload 'url-file "url-file" "\
@@@ -29489,7 -29471,7 +29428,7 @@@ Handle file: and ftp: URLs
  ;;;***
  \f
  ;;;### (autoloads (url-open-stream url-gateway-nslookup-host) "url-gw"
 -;;;;;;  "url/url-gw.el" (19780 4514))
 +;;;;;;  "url/url-gw.el" (19640 47194))
  ;;; Generated autoloads from url/url-gw.el
  
  (autoload 'url-gateway-nslookup-host "url-gw" "\
@@@ -29509,7 -29491,7 +29448,7 @@@ Might do a non-blocking connection; us
  \f
  ;;;### (autoloads (url-insert-file-contents url-file-local-copy url-copy-file
  ;;;;;;  url-file-handler url-handler-mode) "url-handlers" "url/url-handlers.el"
 -;;;;;;  (19775 2030))
 +;;;;;;  (19591 62571))
  ;;; Generated autoloads from url/url-handlers.el
  
  (defvar url-handler-mode nil "\
@@@ -29561,7 -29543,7 +29500,7 @@@ Not documente
  ;;;***
  \f
  ;;;### (autoloads (url-http-options url-http-file-attributes url-http-file-exists-p
 -;;;;;;  url-http) "url-http" "url/url-http.el" (19775 2030))
 +;;;;;;  url-http) "url-http" "url/url-http.el" (19640 47194))
  ;;; Generated autoloads from url/url-http.el
  
  (autoload 'url-http "url-http" "\
@@@ -29627,7 -29609,7 +29566,7 @@@ HTTPS retrievals are asynchronous."
  
  ;;;***
  \f
 -;;;### (autoloads (url-irc) "url-irc" "url/url-irc.el" (19775 2030))
 +;;;### (autoloads (url-irc) "url-irc" "url/url-irc.el" (19598 13691))
  ;;; Generated autoloads from url/url-irc.el
  
  (autoload 'url-irc "url-irc" "\
@@@ -29637,8 -29619,8 +29576,8 @@@ Not documente
  
  ;;;***
  \f
 -;;;### (autoloads (url-ldap) "url-ldap" "url/url-ldap.el" (19775
 -;;;;;;  2030))
 +;;;### (autoloads (url-ldap) "url-ldap" "url/url-ldap.el" (19562
 +;;;;;;  42953))
  ;;; Generated autoloads from url/url-ldap.el
  
  (autoload 'url-ldap "url-ldap" "\
@@@ -29652,7 -29634,7 +29591,7 @@@ URL can be a URL string, or a URL vecto
  ;;;***
  \f
  ;;;### (autoloads (url-mailto url-mail) "url-mailto" "url/url-mailto.el"
 -;;;;;;  (19775 2030))
 +;;;;;;  (19562 42953))
  ;;; Generated autoloads from url/url-mailto.el
  
  (autoload 'url-mail "url-mailto" "\
@@@ -29668,7 -29650,7 +29607,7 @@@ Handle the mailto: URL syntax
  ;;;***
  \f
  ;;;### (autoloads (url-data url-generic-emulator-loader url-info
 -;;;;;;  url-man) "url-misc" "url/url-misc.el" (19775 2030))
 +;;;;;;  url-man) "url-misc" "url/url-misc.el" (19562 42953))
  ;;; Generated autoloads from url/url-misc.el
  
  (autoload 'url-man "url-misc" "\
@@@ -29700,7 -29682,7 +29639,7 @@@ Fetch a data URL (RFC 2397)
  ;;;***
  \f
  ;;;### (autoloads (url-snews url-news) "url-news" "url/url-news.el"
 -;;;;;;  (19775 2030))
 +;;;;;;  (19562 42953))
  ;;; Generated autoloads from url/url-news.el
  
  (autoload 'url-news "url-news" "\
@@@ -29717,7 -29699,7 +29656,7 @@@ Not documente
  \f
  ;;;### (autoloads (url-ns-user-pref url-ns-prefs isInNet isResolvable
  ;;;;;;  dnsResolve dnsDomainIs isPlainHostName) "url-ns" "url/url-ns.el"
 -;;;;;;  (19775 2030))
 +;;;;;;  (19562 42953))
  ;;; Generated autoloads from url/url-ns.el
  
  (autoload 'isPlainHostName "url-ns" "\
@@@ -29758,7 -29740,7 +29697,7 @@@ Not documente
  ;;;***
  \f
  ;;;### (autoloads (url-generic-parse-url url-recreate-url) "url-parse"
 -;;;;;;  "url/url-parse.el" (19775 2030))
 +;;;;;;  "url/url-parse.el" (19640 47194))
  ;;; Generated autoloads from url/url-parse.el
  
  (autoload 'url-recreate-url "url-parse" "\
@@@ -29776,7 -29758,7 +29715,7 @@@ TYPE USER PASSWORD HOST PORTSPEC FILENA
  ;;;***
  \f
  ;;;### (autoloads (url-setup-privacy-info) "url-privacy" "url/url-privacy.el"
 -;;;;;;  (19775 2030))
 +;;;;;;  (19562 42953))
  ;;; Generated autoloads from url/url-privacy.el
  
  (autoload 'url-setup-privacy-info "url-privacy" "\
@@@ -29792,7 -29774,7 +29731,7 @@@ Setup variables that expose info about 
  ;;;;;;  url-pretty-length url-strip-leading-spaces url-eat-trailing-space
  ;;;;;;  url-get-normalized-date url-lazy-message url-normalize-url
  ;;;;;;  url-insert-entities-in-string url-parse-args url-debug url-debug)
 -;;;;;;  "url-util" "url/url-util.el" (19775 2030))
 +;;;;;;  "url-util" "url/url-util.el" (19640 47194))
  ;;; Generated autoloads from url/url-util.el
  
  (defvar url-debug nil "\
@@@ -29928,7 -29910,7 +29867,7 @@@ This uses `url-current-object', set loc
  ;;;***
  \f
  ;;;### (autoloads (ask-user-about-supersession-threat ask-user-about-lock)
 -;;;;;;  "userlock" "userlock.el" (19775 2030))
 +;;;;;;  "userlock" "userlock.el" (19562 42953))
  ;;; Generated autoloads from userlock.el
  
  (autoload 'ask-user-about-lock "userlock" "\
@@@ -29958,7 -29940,7 +29897,7 @@@ The buffer in question is current when 
  \f
  ;;;### (autoloads (utf-7-imap-pre-write-conversion utf-7-pre-write-conversion
  ;;;;;;  utf-7-imap-post-read-conversion utf-7-post-read-conversion)
 -;;;;;;  "utf-7" "international/utf-7.el" (19780 4513))
 +;;;;;;  "utf-7" "international/utf-7.el" (19562 42953))
  ;;; Generated autoloads from international/utf-7.el
  
  (autoload 'utf-7-post-read-conversion "utf-7" "\
@@@ -29983,7 -29965,7 +29922,7 @@@ Not documente
  
  ;;;***
  \f
 -;;;### (autoloads (utf7-encode) "utf7" "gnus/utf7.el" (19775 2028))
 +;;;### (autoloads (utf7-encode) "utf7" "gnus/utf7.el" (19619 52030))
  ;;; Generated autoloads from gnus/utf7.el
  
  (autoload 'utf7-encode "utf7" "\
@@@ -29995,7 -29977,7 +29934,7 @@@ Encode UTF-7 STRING.  Use IMAP modifica
  \f
  ;;;### (autoloads (uudecode-decode-region uudecode-decode-region-internal
  ;;;;;;  uudecode-decode-region-external) "uudecode" "mail/uudecode.el"
 -;;;;;;  (19775 2029))
 +;;;;;;  (19598 13691))
  ;;; Generated autoloads from mail/uudecode.el
  
  (autoload 'uudecode-decode-region-external "uudecode" "\
@@@ -30020,12 -30002,12 +29959,12 @@@ If FILE-NAME is non-nil, save the resul
  ;;;***
  \f
  ;;;### (autoloads (vc-branch-part vc-update-change-log vc-rename-file
 -;;;;;;  vc-delete-file vc-transfer-file vc-switch-backend vc-pull
 +;;;;;;  vc-delete-file vc-transfer-file vc-switch-backend vc-update
  ;;;;;;  vc-rollback vc-revert vc-log-outgoing vc-log-incoming vc-print-root-log
  ;;;;;;  vc-print-log vc-retrieve-tag vc-create-tag vc-merge vc-insert-headers
  ;;;;;;  vc-revision-other-window vc-root-diff vc-diff vc-version-diff
  ;;;;;;  vc-register vc-next-action vc-before-checkin-hook vc-checkin-hook
 -;;;;;;  vc-checkout-hook) "vc" "vc/vc.el" (19780 4515))
 +;;;;;;  vc-checkout-hook) "vc" "vc/vc.el" (19714 43298))
  ;;; Generated autoloads from vc/vc.el
  
  (defvar vc-checkout-hook nil "\
@@@ -30219,7 -30201,7 +30158,7 @@@ depending on the underlying version-con
  
  (define-obsolete-function-alias 'vc-revert-buffer 'vc-revert "23.1")
  
 -(autoload 'vc-pull "vc" "\
 +(autoload 'vc-update "vc" "\
  Update the current fileset or branch.
  On a distributed version control system, this runs a \"pull\"
  operation to update the current branch, prompting for an argument
@@@ -30233,7 -30215,7 +30172,7 @@@ tip revision are merged into the workin
  
  \(fn &optional ARG)" t nil)
  
 -(defalias 'vc-update 'vc-pull)
 +(defalias 'vc-pull 'vc-update)
  
  (autoload 'vc-switch-backend "vc" "\
  Make BACKEND the current version control system for FILE.
@@@ -30291,7 -30273,7 +30230,7 @@@ Return the branch part of a revision nu
  ;;;***
  \f
  ;;;### (autoloads (vc-annotate) "vc-annotate" "vc/vc-annotate.el"
 -;;;;;;  (19775 2030))
 +;;;;;;  (19598 13691))
  ;;; Generated autoloads from vc/vc-annotate.el
  
  (autoload 'vc-annotate "vc-annotate" "\
@@@ -30328,7 -30310,7 +30267,7 @@@ mode-specific menu.  `vc-annotate-color
  
  ;;;***
  \f
 -;;;### (autoloads nil "vc-arch" "vc/vc-arch.el" (19780 4514))
 +;;;### (autoloads nil "vc-arch" "vc/vc-arch.el" (19714 43298))
  ;;; Generated autoloads from vc/vc-arch.el
   (defun vc-arch-registered (file)
    (if (vc-find-root file "{arch}/=tagging-method")
  
  ;;;***
  \f
- ;;;### (autoloads nil "vc-bzr" "vc/vc-bzr.el" (19714 43298))
 -;;;### (autoloads nil "vc-bzr" "vc/vc-bzr.el" (19780 36416))
++;;;### (autoloads nil "vc-bzr" "vc/vc-bzr.el" (19717 39999))
  ;;; Generated autoloads from vc/vc-bzr.el
  
  (defconst vc-bzr-admin-dirname ".bzr" "\
@@@ -30353,7 -30335,7 +30292,7 @@@ Name of the directory containing Bzr re
  
  ;;;***
  \f
 -;;;### (autoloads nil "vc-cvs" "vc/vc-cvs.el" (19775 2030))
 +;;;### (autoloads nil "vc-cvs" "vc/vc-cvs.el" (19714 43298))
  ;;; Generated autoloads from vc/vc-cvs.el
   (defun vc-cvs-registered (f)
    (when (file-readable-p (expand-file-name
  
  ;;;***
  \f
 -;;;### (autoloads (vc-dir) "vc-dir" "vc/vc-dir.el" (19780 4514))
 +;;;### (autoloads (vc-dir) "vc-dir" "vc/vc-dir.el" (19714 43298))
  ;;; Generated autoloads from vc/vc-dir.el
  
  (autoload 'vc-dir "vc-dir" "\
@@@ -30388,7 -30370,7 +30327,7 @@@ These are the commands available for us
  ;;;***
  \f
  ;;;### (autoloads (vc-do-command) "vc-dispatcher" "vc/vc-dispatcher.el"
 -;;;;;;  (19780 36416))
 +;;;;;;  (19598 13691))
  ;;; Generated autoloads from vc/vc-dispatcher.el
  
  (autoload 'vc-do-command "vc-dispatcher" "\
@@@ -30411,7 -30393,7 +30350,7 @@@ case, and the process object in the asy
  
  ;;;***
  \f
 -;;;### (autoloads nil "vc-git" "vc/vc-git.el" (19780 36416))
 +;;;### (autoloads nil "vc-git" "vc/vc-git.el" (19598 13691))
  ;;; Generated autoloads from vc/vc-git.el
   (defun vc-git-registered (file)
    "Return non-nil if FILE is registered with git."
  
  ;;;***
  \f
 -;;;### (autoloads nil "vc-hg" "vc/vc-hg.el" (19780 36416))
 +;;;### (autoloads nil "vc-hg" "vc/vc-hg.el" (19714 43298))
  ;;; Generated autoloads from vc/vc-hg.el
   (defun vc-hg-registered (file)
    "Return non-nil if FILE is registered with hg."
          (load "vc-hg")
          (vc-hg-registered file))))
  
- ;;;***
\f
- ;;;### (autoloads nil "vc-hooks" "vc/vc-hooks.el" (19640 47194))
- ;;; Generated autoloads from vc/vc-hooks.el
- (put 'vc-mode 'risky-local-variable t)
  ;;;***
  \f
 -;;;### (autoloads nil "vc-hooks" "vc/vc-hooks.el" (19780 4514))
 -;;; Generated autoloads from vc/vc-hooks.el
 -
 -(put 'vc-mode 'risky-local-variable t)
 -
 -;;;***
 -\f
 -;;;### (autoloads nil "vc-mtn" "vc/vc-mtn.el" (19775 2030))
 +;;;### (autoloads nil "vc-mtn" "vc/vc-mtn.el" (19714 43298))
  ;;; Generated autoloads from vc/vc-mtn.el
  
  (defconst vc-mtn-admin-dir "_MTN")
  ;;;***
  \f
  ;;;### (autoloads (vc-rcs-master-templates) "vc-rcs" "vc/vc-rcs.el"
 -;;;;;;  (19780 4515))
 +;;;;;;  (19714 43298))
  ;;; Generated autoloads from vc/vc-rcs.el
  
  (defvar vc-rcs-master-templates (purecopy '("%sRCS/%s,v" "%s%s,v" "%sRCS/%s")) "\
@@@ -30469,7 -30451,7 +30401,7 @@@ For a description of possible values, s
  ;;;***
  \f
  ;;;### (autoloads (vc-sccs-master-templates) "vc-sccs" "vc/vc-sccs.el"
 -;;;;;;  (19780 4515))
 +;;;;;;  (19714 43298))
  ;;; Generated autoloads from vc/vc-sccs.el
  
  (defvar vc-sccs-master-templates (purecopy '("%sSCCS/s.%s" "%ss.%s" vc-sccs-search-project-dir)) "\
@@@ -30486,7 -30468,7 +30418,7 @@@ find any project directory." (let ((pro
  
  ;;;***
  \f
 -;;;### (autoloads nil "vc-svn" "vc/vc-svn.el" (19780 4515))
 +;;;### (autoloads nil "vc-svn" "vc/vc-svn.el" (19640 47194))
  ;;; Generated autoloads from vc/vc-svn.el
   (defun vc-svn-registered (f)
    (let ((admin-dir (cond ((and (eq system-type 'windows-nt)
  ;;;***
  \f
  ;;;### (autoloads (vera-mode) "vera-mode" "progmodes/vera-mode.el"
 -;;;;;;  (19775 2029))
 +;;;;;;  (19714 43298))
  ;;; Generated autoloads from progmodes/vera-mode.el
   (add-to-list 'auto-mode-alist (cons (purecopy "\\.vr[hi]?\\'")  'vera-mode))
  
@@@ -30560,7 -30542,7 +30492,7 @@@ Key bindings
  ;;;***
  \f
  ;;;### (autoloads (verilog-mode) "verilog-mode" "progmodes/verilog-mode.el"
 -;;;;;;  (19775 2029))
 +;;;;;;  (19714 43298))
  ;;; Generated autoloads from progmodes/verilog-mode.el
  
  (autoload 'verilog-mode "verilog-mode" "\
@@@ -30697,7 -30679,7 +30629,7 @@@ Key bindings specific to `verilog-mode-
  ;;;***
  \f
  ;;;### (autoloads (vhdl-mode) "vhdl-mode" "progmodes/vhdl-mode.el"
 -;;;;;;  (19780 4514))
 +;;;;;;  (19714 43298))
  ;;; Generated autoloads from progmodes/vhdl-mode.el
  
  (autoload 'vhdl-mode "vhdl-mode" "\
@@@ -31238,7 -31220,7 +31170,7 @@@ Key bindings
  
  ;;;***
  \f
 -;;;### (autoloads (vi-mode) "vi" "emulation/vi.el" (19763 27286))
 +;;;### (autoloads (vi-mode) "vi" "emulation/vi.el" (19562 42953))
  ;;; Generated autoloads from emulation/vi.el
  
  (autoload 'vi-mode "vi" "\
@@@ -31293,7 -31275,7 +31225,7 @@@ Syntax table and abbrevs while in vi mo
  ;;;### (autoloads (viqr-pre-write-conversion viqr-post-read-conversion
  ;;;;;;  viet-encode-viqr-buffer viet-encode-viqr-region viet-decode-viqr-buffer
  ;;;;;;  viet-decode-viqr-region viet-encode-viscii-char) "viet-util"
 -;;;;;;  "language/viet-util.el" (19780 4513))
 +;;;;;;  "language/viet-util.el" (19562 42953))
  ;;; Generated autoloads from language/viet-util.el
  
  (autoload 'viet-encode-viscii-char "viet-util" "\
@@@ -31341,7 -31323,7 +31273,7 @@@ Not documente
  ;;;;;;  view-mode view-buffer-other-frame view-buffer-other-window
  ;;;;;;  view-buffer view-file-other-frame view-file-other-window
  ;;;;;;  view-file kill-buffer-if-not-modified view-remove-frame-by-deleting)
 -;;;;;;  "view" "view.el" (19780 4515))
 +;;;;;;  "view" "view.el" (19562 42953))
  ;;; Generated autoloads from view.el
  
  (defvar view-remove-frame-by-deleting t "\
@@@ -31587,8 -31569,8 +31519,8 @@@ Exit View mode and make the current buf
  
  ;;;***
  \f
 -;;;### (autoloads (vip-mode vip-setup) "vip" "emulation/vip.el" (19780
 -;;;;;;  4513))
 +;;;### (autoloads (vip-mode vip-setup) "vip" "emulation/vip.el" (19619
 +;;;;;;  52030))
  ;;; Generated autoloads from emulation/vip.el
  
  (autoload 'vip-setup "vip" "\
@@@ -31604,7 -31586,7 +31536,7 @@@ Turn on VIP emulation of VI
  ;;;***
  \f
  ;;;### (autoloads (viper-mode toggle-viper-mode) "viper" "emulation/viper.el"
 -;;;;;;  (19775 2028))
 +;;;;;;  (19598 13691))
  ;;; Generated autoloads from emulation/viper.el
  
  (autoload 'toggle-viper-mode "viper" "\
@@@ -31621,7 -31603,7 +31553,7 @@@ Turn on Viper emulation of Vi in Emacs
  ;;;***
  \f
  ;;;### (autoloads (warn lwarn display-warning) "warnings" "emacs-lisp/warnings.el"
 -;;;;;;  (19775 2028))
 +;;;;;;  (19619 52030))
  ;;; Generated autoloads from emacs-lisp/warnings.el
  
  (defvar warning-prefix-function nil "\
@@@ -31711,7 -31693,7 +31643,7 @@@ this is equivalent to `display-warning'
  ;;;***
  \f
  ;;;### (autoloads (wdired-change-to-wdired-mode) "wdired" "wdired.el"
 -;;;;;;  (19780 4515))
 +;;;;;;  (19562 42953))
  ;;; Generated autoloads from wdired.el
  
  (autoload 'wdired-change-to-wdired-mode "wdired" "\
@@@ -31727,7 -31709,7 +31659,7 @@@ See `wdired-mode'
  
  ;;;***
  \f
 -;;;### (autoloads (webjump) "webjump" "net/webjump.el" (19775 2029))
 +;;;### (autoloads (webjump) "webjump" "net/webjump.el" (19562 42953))
  ;;; Generated autoloads from net/webjump.el
  
  (autoload 'webjump "webjump" "\
@@@ -31744,7 -31726,7 +31676,7 @@@ Please submit bug reports and other fee
  ;;;***
  \f
  ;;;### (autoloads (which-function-mode) "which-func" "progmodes/which-func.el"
 -;;;;;;  (19775 2029))
 +;;;;;;  (19714 43298))
  ;;; Generated autoloads from progmodes/which-func.el
   (put 'which-func-format 'risky-local-variable t)
   (put 'which-func-current 'risky-local-variable t)
@@@ -31775,7 -31757,7 +31707,7 @@@ and off otherwise
  ;;;### (autoloads (whitespace-report-region whitespace-report whitespace-cleanup-region
  ;;;;;;  whitespace-cleanup global-whitespace-toggle-options whitespace-toggle-options
  ;;;;;;  global-whitespace-newline-mode global-whitespace-mode whitespace-newline-mode
 -;;;;;;  whitespace-mode) "whitespace" "whitespace.el" (19780 4515))
 +;;;;;;  whitespace-mode) "whitespace" "whitespace.el" (19714 43298))
  ;;; Generated autoloads from whitespace.el
  
  (autoload 'whitespace-mode "whitespace" "\
@@@ -32178,7 -32160,7 +32110,7 @@@ cleaning up these problems
  ;;;***
  \f
  ;;;### (autoloads (widget-minor-mode widget-browse-other-window widget-browse
 -;;;;;;  widget-browse-at) "wid-browse" "wid-browse.el" (19775 2030))
 +;;;;;;  widget-browse-at) "wid-browse" "wid-browse.el" (19598 13691))
  ;;; Generated autoloads from wid-browse.el
  
  (autoload 'widget-browse-at "wid-browse" "\
@@@ -32205,8 -32187,8 +32137,8 @@@ With arg, turn widget mode on if and on
  ;;;***
  \f
  ;;;### (autoloads (widget-setup widget-insert widget-delete widget-create
 -;;;;;;  widget-prompt-value widgetp) "wid-edit" "wid-edit.el" (19775
 -;;;;;;  2030))
 +;;;;;;  widget-prompt-value widgetp) "wid-edit" "wid-edit.el" (19714
 +;;;;;;  43298))
  ;;; Generated autoloads from wid-edit.el
  
  (autoload 'widgetp "wid-edit" "\
@@@ -32249,8 -32231,8 +32181,8 @@@ Setup current buffer so editing string 
  ;;;***
  \f
  ;;;### (autoloads (windmove-default-keybindings windmove-down windmove-right
 -;;;;;;  windmove-up windmove-left) "windmove" "windmove.el" (19775
 -;;;;;;  2030))
 +;;;;;;  windmove-up windmove-left) "windmove" "windmove.el" (19562
 +;;;;;;  42953))
  ;;; Generated autoloads from windmove.el
  
  (autoload 'windmove-left "windmove" "\
@@@ -32300,17 -32282,17 +32232,10 @@@ Default MODIFIER is 'shift
  
  \(fn &optional MODIFIER)" t nil)
  
--;;;***
--\f
- ;;;### (autoloads nil "window" "window.el" (19619 52030))
 -;;;### (autoloads nil "window" "window.el" (19775 2030))
--;;; Generated autoloads from window.el
--
--(put 'special-display-buffer-names 'risky-local-variable t)
--
  ;;;***
  \f
  ;;;### (autoloads (winner-mode winner-mode) "winner" "winner.el"
 -;;;;;;  (19775 2030))
 +;;;;;;  (19591 62571))
  ;;; Generated autoloads from winner.el
  
  (defvar winner-mode nil "\
@@@ -32329,7 -32311,7 +32254,7 @@@ With arg, turn Winner mode on if and on
  ;;;***
  \f
  ;;;### (autoloads (woman-bookmark-jump woman-find-file woman-dired-find-file
 -;;;;;;  woman woman-locale) "woman" "woman.el" (19780 4515))
 +;;;;;;  woman woman-locale) "woman" "woman.el" (19714 43298))
  ;;; Generated autoloads from woman.el
  
  (defvar woman-locale nil "\
@@@ -32378,7 -32360,7 +32303,7 @@@ Default bookmark handler for Woman buff
  ;;;***
  \f
  ;;;### (autoloads (wordstar-mode) "ws-mode" "emulation/ws-mode.el"
 -;;;;;;  (19775 2028))
 +;;;;;;  (19640 47194))
  ;;; Generated autoloads from emulation/ws-mode.el
  
  (autoload 'wordstar-mode "ws-mode" "\
@@@ -32490,7 -32472,7 +32415,7 @@@ The key bindings are
  
  ;;;***
  \f
 -;;;### (autoloads (xesam-search) "xesam" "net/xesam.el" (19775 2029))
 +;;;### (autoloads (xesam-search) "xesam" "net/xesam.el" (19562 42953))
  ;;; Generated autoloads from net/xesam.el
  
  (autoload 'xesam-search "xesam" "\
@@@ -32510,7 -32492,7 +32435,7 @@@ Example
  ;;;***
  \f
  ;;;### (autoloads (xml-parse-region xml-parse-file) "xml" "xml.el"
 -;;;;;;  (19775 2030))
 +;;;;;;  (19591 62571))
  ;;; Generated autoloads from xml.el
  
  (autoload 'xml-parse-file "xml" "\
@@@ -32536,7 -32518,7 +32461,7 @@@ If PARSE-NS is non-nil, then QNAMES ar
  ;;;***
  \f
  ;;;### (autoloads (xmltok-get-declared-encoding-position) "xmltok"
 -;;;;;;  "nxml/xmltok.el" (19775 2029))
 +;;;;;;  "nxml/xmltok.el" (19562 42953))
  ;;; Generated autoloads from nxml/xmltok.el
  
  (autoload 'xmltok-get-declared-encoding-position "xmltok" "\
@@@ -32554,8 -32536,8 +32479,8 @@@ If LIMIT is non-nil, then do not consid
  
  ;;;***
  \f
 -;;;### (autoloads (xterm-mouse-mode) "xt-mouse" "xt-mouse.el" (19775
 -;;;;;;  2030))
 +;;;### (autoloads (xterm-mouse-mode) "xt-mouse" "xt-mouse.el" (19562
 +;;;;;;  42953))
  ;;; Generated autoloads from xt-mouse.el
  
  (defvar xterm-mouse-mode nil "\
@@@ -32584,7 -32566,7 +32509,7 @@@ down the SHIFT key while pressing the m
  ;;;***
  \f
  ;;;### (autoloads (yenc-extract-filename yenc-decode-region) "yenc"
 -;;;;;;  "gnus/yenc.el" (19775 2028))
 +;;;;;;  "gnus/yenc.el" (19598 13691))
  ;;; Generated autoloads from gnus/yenc.el
  
  (autoload 'yenc-decode-region "yenc" "\
@@@ -32600,7 -32582,7 +32525,7 @@@ Extract file name from an yenc header
  ;;;***
  \f
  ;;;### (autoloads (psychoanalyze-pinhead apropos-zippy insert-zippyism
 -;;;;;;  yow) "yow" "play/yow.el" (19775 2029))
 +;;;;;;  yow) "yow" "play/yow.el" (19562 42953))
  ;;; Generated autoloads from play/yow.el
  
  (autoload 'yow "yow" "\
@@@ -32626,7 -32608,7 +32551,7 @@@ Zippy goes to the analyst
  
  ;;;***
  \f
 -;;;### (autoloads (zone) "zone" "play/zone.el" (19775 2029))
 +;;;### (autoloads (zone) "zone" "play/zone.el" (19562 42953))
  ;;; Generated autoloads from play/zone.el
  
  (autoload 'zone "zone" "\
@@@ -32636,42 -32618,42 +32561,41 @@@ Zone out, completely
  
  ;;;***
  \f
--;;;### (autoloads nil nil ("abbrev.el" "bindings.el" "button.el"
--;;;;;;  "calc/calc-aent.el" "calc/calc-alg.el" "calc/calc-arith.el"
--;;;;;;  "calc/calc-bin.el" "calc/calc-comb.el" "calc/calc-cplx.el"
--;;;;;;  "calc/calc-embed.el" "calc/calc-ext.el" "calc/calc-fin.el"
--;;;;;;  "calc/calc-forms.el" "calc/calc-frac.el" "calc/calc-funcs.el"
--;;;;;;  "calc/calc-graph.el" "calc/calc-help.el" "calc/calc-incom.el"
--;;;;;;  "calc/calc-keypd.el" "calc/calc-lang.el" "calc/calc-loaddefs.el"
--;;;;;;  "calc/calc-macs.el" "calc/calc-map.el" "calc/calc-math.el"
--;;;;;;  "calc/calc-menu.el" "calc/calc-misc.el" "calc/calc-mode.el"
--;;;;;;  "calc/calc-mtx.el" "calc/calc-nlfit.el" "calc/calc-poly.el"
--;;;;;;  "calc/calc-prog.el" "calc/calc-rewr.el" "calc/calc-rules.el"
--;;;;;;  "calc/calc-sel.el" "calc/calc-stat.el" "calc/calc-store.el"
- ;;;;;;  "calc/calc-stuff.el" "calc/calc-trail.el" "calc/calc-undo.el"
- ;;;;;;  "calc/calc-units.el" "calc/calc-vec.el" "calc/calc-yank.el"
- ;;;;;;  "calc/calcalg2.el" "calc/calcalg3.el" "calc/calccomp.el"
- ;;;;;;  "calc/calcsel2.el" "calendar/cal-bahai.el" "calendar/cal-coptic.el"
- ;;;;;;  "calendar/cal-french.el" "calendar/cal-html.el" "calendar/cal-islam.el"
- ;;;;;;  "calendar/cal-iso.el" "calendar/cal-julian.el" "calendar/cal-loaddefs.el"
- ;;;;;;  "calendar/cal-mayan.el" "calendar/cal-menu.el" "calendar/cal-move.el"
- ;;;;;;  "calendar/cal-persia.el" "calendar/cal-tex.el" "calendar/cal-x.el"
- ;;;;;;  "calendar/diary-loaddefs.el" "calendar/hol-loaddefs.el" "case-table.el"
 -;;;;;;  "calc/calc-stuff.el" "calc/calc-trail.el" "calc/calc-units.el"
 -;;;;;;  "calc/calc-vec.el" "calc/calc-yank.el" "calc/calcalg2.el"
 -;;;;;;  "calc/calcalg3.el" "calc/calccomp.el" "calc/calcsel2.el"
 -;;;;;;  "calendar/cal-bahai.el" "calendar/cal-coptic.el" "calendar/cal-french.el"
 -;;;;;;  "calendar/cal-html.el" "calendar/cal-islam.el" "calendar/cal-iso.el"
 -;;;;;;  "calendar/cal-julian.el" "calendar/cal-loaddefs.el" "calendar/cal-mayan.el"
 -;;;;;;  "calendar/cal-menu.el" "calendar/cal-move.el" "calendar/cal-persia.el"
 -;;;;;;  "calendar/cal-tex.el" "calendar/cal-x.el" "calendar/diary-loaddefs.el"
 -;;;;;;  "calendar/hol-loaddefs.el" "case-table.el" "cdl.el" "cedet/cedet-cscope.el"
 -;;;;;;  "cedet/cedet-files.el" "cedet/cedet-global.el" "cedet/cedet-idutils.el"
 -;;;;;;  "cedet/cedet.el" "cedet/ede/auto.el" "cedet/ede/autoconf-edit.el"
 -;;;;;;  "cedet/ede/base.el" "cedet/ede/cpp-root.el" "cedet/ede/custom.el"
 -;;;;;;  "cedet/ede/dired.el" "cedet/ede/emacs.el" "cedet/ede/files.el"
 -;;;;;;  "cedet/ede/generic.el" "cedet/ede/linux.el" "cedet/ede/loaddefs.el"
 -;;;;;;  "cedet/ede/locate.el" "cedet/ede/make.el" "cedet/ede/makefile-edit.el"
 -;;;;;;  "cedet/ede/pconf.el" "cedet/ede/pmake.el" "cedet/ede/proj-archive.el"
 -;;;;;;  "cedet/ede/proj-aux.el" "cedet/ede/proj-comp.el" "cedet/ede/proj-elisp.el"
 -;;;;;;  "cedet/ede/proj-info.el" "cedet/ede/proj-misc.el" "cedet/ede/proj-obj.el"
 -;;;;;;  "cedet/ede/proj-prog.el" "cedet/ede/proj-scheme.el" "cedet/ede/proj-shared.el"
 -;;;;;;  "cedet/ede/proj.el" "cedet/ede/project-am.el" "cedet/ede/shell.el"
 -;;;;;;  "cedet/ede/simple.el" "cedet/ede/source.el" "cedet/ede/speedbar.el"
 -;;;;;;  "cedet/ede/srecode.el" "cedet/ede/system.el" "cedet/ede/util.el"
 -;;;;;;  "cedet/inversion.el" "cedet/mode-local.el" "cedet/pulse.el"
 -;;;;;;  "cedet/semantic/analyze.el" "cedet/semantic/analyze/complete.el"
++;;;### (autoloads nil nil ("calc/calc-aent.el" "calc/calc-alg.el"
++;;;;;;  "calc/calc-arith.el" "calc/calc-bin.el" "calc/calc-comb.el"
++;;;;;;  "calc/calc-cplx.el" "calc/calc-embed.el" "calc/calc-ext.el"
++;;;;;;  "calc/calc-fin.el" "calc/calc-forms.el" "calc/calc-frac.el"
++;;;;;;  "calc/calc-funcs.el" "calc/calc-graph.el" "calc/calc-help.el"
++;;;;;;  "calc/calc-incom.el" "calc/calc-keypd.el" "calc/calc-lang.el"
++;;;;;;  "calc/calc-loaddefs.el" "calc/calc-macs.el" "calc/calc-map.el"
++;;;;;;  "calc/calc-math.el" "calc/calc-menu.el" "calc/calc-misc.el"
++;;;;;;  "calc/calc-mode.el" "calc/calc-mtx.el" "calc/calc-nlfit.el"
++;;;;;;  "calc/calc-poly.el" "calc/calc-prog.el" "calc/calc-rewr.el"
++;;;;;;  "calc/calc-rules.el" "calc/calc-sel.el" "calc/calc-stat.el"
++;;;;;;  "calc/calc-store.el" "calc/calc-stuff.el" "calc/calc-trail.el"
++;;;;;;  "calc/calc-undo.el" "calc/calc-units.el" "calc/calc-vec.el"
++;;;;;;  "calc/calc-yank.el" "calc/calcalg2.el" "calc/calcalg3.el"
++;;;;;;  "calc/calccomp.el" "calc/calcsel2.el" "calendar/cal-bahai.el"
++;;;;;;  "calendar/cal-coptic.el" "calendar/cal-french.el" "calendar/cal-html.el"
++;;;;;;  "calendar/cal-islam.el" "calendar/cal-iso.el" "calendar/cal-julian.el"
++;;;;;;  "calendar/cal-loaddefs.el" "calendar/cal-mayan.el" "calendar/cal-menu.el"
++;;;;;;  "calendar/cal-move.el" "calendar/cal-persia.el" "calendar/cal-tex.el"
++;;;;;;  "calendar/cal-x.el" "calendar/diary-loaddefs.el" "calendar/hol-loaddefs.el"
 +;;;;;;  "cdl.el" "cedet/cedet-cscope.el" "cedet/cedet-files.el" "cedet/cedet-global.el"
 +;;;;;;  "cedet/cedet-idutils.el" "cedet/cedet.el" "cedet/ede/auto.el"
 +;;;;;;  "cedet/ede/autoconf-edit.el" "cedet/ede/base.el" "cedet/ede/cpp-root.el"
 +;;;;;;  "cedet/ede/custom.el" "cedet/ede/dired.el" "cedet/ede/emacs.el"
 +;;;;;;  "cedet/ede/files.el" "cedet/ede/generic.el" "cedet/ede/linux.el"
 +;;;;;;  "cedet/ede/loaddefs.el" "cedet/ede/locate.el" "cedet/ede/make.el"
 +;;;;;;  "cedet/ede/makefile-edit.el" "cedet/ede/pconf.el" "cedet/ede/pmake.el"
 +;;;;;;  "cedet/ede/proj-archive.el" "cedet/ede/proj-aux.el" "cedet/ede/proj-comp.el"
 +;;;;;;  "cedet/ede/proj-elisp.el" "cedet/ede/proj-info.el" "cedet/ede/proj-misc.el"
 +;;;;;;  "cedet/ede/proj-obj.el" "cedet/ede/proj-prog.el" "cedet/ede/proj-scheme.el"
 +;;;;;;  "cedet/ede/proj-shared.el" "cedet/ede/proj.el" "cedet/ede/project-am.el"
 +;;;;;;  "cedet/ede/shell.el" "cedet/ede/simple.el" "cedet/ede/source.el"
 +;;;;;;  "cedet/ede/speedbar.el" "cedet/ede/srecode.el" "cedet/ede/system.el"
 +;;;;;;  "cedet/ede/util.el" "cedet/inversion.el" "cedet/mode-local.el"
 +;;;;;;  "cedet/pulse.el" "cedet/semantic/analyze.el" "cedet/semantic/analyze/complete.el"
  ;;;;;;  "cedet/semantic/analyze/debug.el" "cedet/semantic/analyze/fcn.el"
  ;;;;;;  "cedet/semantic/analyze/refs.el" "cedet/semantic/bovine.el"
  ;;;;;;  "cedet/semantic/bovine/c-by.el" "cedet/semantic/bovine/c.el"
  ;;;;;;  "cedet/srecode/loaddefs.el" "cedet/srecode/map.el" "cedet/srecode/mode.el"
  ;;;;;;  "cedet/srecode/semantic.el" "cedet/srecode/srt-wy.el" "cedet/srecode/srt.el"
  ;;;;;;  "cedet/srecode/table.el" "cedet/srecode/template.el" "cedet/srecode/texi.el"
- ;;;;;;  "cus-dep.el" "cus-face.el" "cus-load.el" "cus-start.el" "custom.el"
- ;;;;;;  "dframe.el" "dired-aux.el" "dired-x.el" "dos-fns.el" "dos-vars.el"
- ;;;;;;  "dos-w32.el" "dynamic-setting.el" "emacs-lisp/assoc.el" "emacs-lisp/authors.el"
- ;;;;;;  "emacs-lisp/avl-tree.el" "emacs-lisp/backquote.el" "emacs-lisp/bindat.el"
- ;;;;;;  "emacs-lisp/byte-lexbind.el" "emacs-lisp/byte-opt.el" "emacs-lisp/byte-run.el"
- ;;;;;;  "emacs-lisp/chart.el" "emacs-lisp/cl-extra.el" "emacs-lisp/cl-loaddefs.el"
- ;;;;;;  "emacs-lisp/cl-macs.el" "emacs-lisp/cl-seq.el" "emacs-lisp/cl-specs.el"
- ;;;;;;  "emacs-lisp/cust-print.el" "emacs-lisp/eieio-base.el" "emacs-lisp/eieio-comp.el"
- ;;;;;;  "emacs-lisp/eieio-custom.el" "emacs-lisp/eieio-datadebug.el"
- ;;;;;;  "emacs-lisp/eieio-opt.el" "emacs-lisp/eieio-speedbar.el"
- ;;;;;;  "emacs-lisp/eieio.el" "emacs-lisp/find-gc.el" "emacs-lisp/float-sup.el"
- ;;;;;;  "emacs-lisp/gulp.el" "emacs-lisp/lisp-mnt.el" "emacs-lisp/lisp-mode.el"
- ;;;;;;  "emacs-lisp/lisp.el" "emacs-lisp/map-ynp.el" "emacs-lisp/package-x.el"
 -;;;;;;  "color.el" "cus-dep.el" "cus-face.el" "cus-load.el" "cus-start.el"
 -;;;;;;  "custom.el" "dframe.el" "dired-aux.el" "dired-x.el" "dos-fns.el"
++;;;;;;  "cus-dep.el" "dframe.el" "dired-aux.el" "dired-x.el" "dos-fns.el"
+ ;;;;;;  "dos-vars.el" "dos-w32.el" "dynamic-setting.el" "emacs-lisp/assoc.el"
 -;;;;;;  "emacs-lisp/authors.el" "emacs-lisp/avl-tree.el" "emacs-lisp/backquote.el"
 -;;;;;;  "emacs-lisp/bindat.el" "emacs-lisp/byte-opt.el" "emacs-lisp/byte-run.el"
 -;;;;;;  "emacs-lisp/chart.el" "emacs-lisp/cl-extra.el" "emacs-lisp/cl-loaddefs.el"
 -;;;;;;  "emacs-lisp/cl-macs.el" "emacs-lisp/cl-seq.el" "emacs-lisp/cl-specs.el"
 -;;;;;;  "emacs-lisp/cust-print.el" "emacs-lisp/eieio-base.el" "emacs-lisp/eieio-comp.el"
 -;;;;;;  "emacs-lisp/eieio-custom.el" "emacs-lisp/eieio-datadebug.el"
 -;;;;;;  "emacs-lisp/eieio-opt.el" "emacs-lisp/eieio-speedbar.el"
 -;;;;;;  "emacs-lisp/eieio.el" "emacs-lisp/find-gc.el" "emacs-lisp/float-sup.el"
 -;;;;;;  "emacs-lisp/gulp.el" "emacs-lisp/lisp-mnt.el" "emacs-lisp/lisp-mode.el"
 -;;;;;;  "emacs-lisp/lisp.el" "emacs-lisp/map-ynp.el" "emacs-lisp/package-x.el"
 -;;;;;;  "emacs-lisp/regi.el" "emacs-lisp/smie.el" "emacs-lisp/syntax.el"
++;;;;;;  "emacs-lisp/authors.el" "emacs-lisp/avl-tree.el" "emacs-lisp/bindat.el"
++;;;;;;  "emacs-lisp/byte-lexbind.el" "emacs-lisp/byte-opt.el" "emacs-lisp/chart.el"
++;;;;;;  "emacs-lisp/cl-extra.el" "emacs-lisp/cl-loaddefs.el" "emacs-lisp/cl-macs.el"
++;;;;;;  "emacs-lisp/cl-seq.el" "emacs-lisp/cl-specs.el" "emacs-lisp/cust-print.el"
++;;;;;;  "emacs-lisp/eieio-base.el" "emacs-lisp/eieio-comp.el" "emacs-lisp/eieio-custom.el"
++;;;;;;  "emacs-lisp/eieio-datadebug.el" "emacs-lisp/eieio-opt.el"
++;;;;;;  "emacs-lisp/eieio-speedbar.el" "emacs-lisp/eieio.el" "emacs-lisp/find-gc.el"
++;;;;;;  "emacs-lisp/gulp.el" "emacs-lisp/lisp-mnt.el" "emacs-lisp/package-x.el"
 +;;;;;;  "emacs-lisp/regi.el" "emacs-lisp/smie.el" "emacs-lisp/sregex.el"
- ;;;;;;  "emacs-lisp/syntax.el" "emacs-lisp/tcover-ses.el" "emacs-lisp/tcover-unsafep.el"
- ;;;;;;  "emacs-lisp/timer.el" "emacs-lock.el" "emulation/cua-gmrk.el"
- ;;;;;;  "emulation/cua-rect.el" "emulation/edt-lk201.el" "emulation/edt-mapper.el"
- ;;;;;;  "emulation/edt-pc.el" "emulation/edt-vt100.el" "emulation/tpu-extras.el"
- ;;;;;;  "emulation/viper-cmd.el" "emulation/viper-ex.el" "emulation/viper-init.el"
- ;;;;;;  "emulation/viper-keym.el" "emulation/viper-macs.el" "emulation/viper-mous.el"
- ;;;;;;  "emulation/viper-util.el" "env.el" "epa-hook.el" "erc/erc-backend.el"
- ;;;;;;  "erc/erc-goodies.el" "erc/erc-ibuffer.el" "erc/erc-lang.el"
- ;;;;;;  "eshell/em-alias.el" "eshell/em-banner.el" "eshell/em-basic.el"
- ;;;;;;  "eshell/em-cmpl.el" "eshell/em-dirs.el" "eshell/em-glob.el"
- ;;;;;;  "eshell/em-hist.el" "eshell/em-ls.el" "eshell/em-pred.el"
- ;;;;;;  "eshell/em-prompt.el" "eshell/em-rebind.el" "eshell/em-script.el"
- ;;;;;;  "eshell/em-smart.el" "eshell/em-term.el" "eshell/em-unix.el"
- ;;;;;;  "eshell/em-xtra.el" "eshell/esh-arg.el" "eshell/esh-cmd.el"
- ;;;;;;  "eshell/esh-ext.el" "eshell/esh-groups.el" "eshell/esh-io.el"
- ;;;;;;  "eshell/esh-module.el" "eshell/esh-opt.el" "eshell/esh-proc.el"
- ;;;;;;  "eshell/esh-util.el" "eshell/esh-var.el" "ezimage.el" "facemenu.el"
- ;;;;;;  "faces.el" "files.el" "finder-inf.el" "foldout.el" "font-lock.el"
- ;;;;;;  "format-spec.el" "forms-d2.el" "forms-pass.el" "frame.el"
- ;;;;;;  "fringe.el" "generic-x.el" "gnus/auth-source.el" "gnus/color.el"
- ;;;;;;  "gnus/compface.el" "gnus/gnus-async.el" "gnus/gnus-bcklg.el"
+ ;;;;;;  "emacs-lisp/tcover-ses.el" "emacs-lisp/tcover-unsafep.el"
 -;;;;;;  "emacs-lisp/timer.el" "emacs-lock.el" "emulation/cua-gmrk.el"
 -;;;;;;  "emulation/cua-rect.el" "emulation/edt-lk201.el" "emulation/edt-mapper.el"
 -;;;;;;  "emulation/edt-pc.el" "emulation/edt-vt100.el" "emulation/tpu-extras.el"
 -;;;;;;  "emulation/viper-cmd.el" "emulation/viper-ex.el" "emulation/viper-init.el"
 -;;;;;;  "emulation/viper-keym.el" "emulation/viper-macs.el" "emulation/viper-mous.el"
 -;;;;;;  "emulation/viper-util.el" "env.el" "epa-hook.el" "erc/erc-backend.el"
 -;;;;;;  "erc/erc-goodies.el" "erc/erc-ibuffer.el" "erc/erc-lang.el"
 -;;;;;;  "eshell/em-alias.el" "eshell/em-banner.el" "eshell/em-basic.el"
 -;;;;;;  "eshell/em-cmpl.el" "eshell/em-dirs.el" "eshell/em-glob.el"
 -;;;;;;  "eshell/em-hist.el" "eshell/em-ls.el" "eshell/em-pred.el"
 -;;;;;;  "eshell/em-prompt.el" "eshell/em-rebind.el" "eshell/em-script.el"
 -;;;;;;  "eshell/em-smart.el" "eshell/em-term.el" "eshell/em-unix.el"
 -;;;;;;  "eshell/em-xtra.el" "eshell/esh-arg.el" "eshell/esh-cmd.el"
 -;;;;;;  "eshell/esh-ext.el" "eshell/esh-groups.el" "eshell/esh-io.el"
 -;;;;;;  "eshell/esh-module.el" "eshell/esh-opt.el" "eshell/esh-proc.el"
 -;;;;;;  "eshell/esh-util.el" "eshell/esh-var.el" "ezimage.el" "facemenu.el"
 -;;;;;;  "faces.el" "files.el" "finder-inf.el" "foldout.el" "font-lock.el"
 -;;;;;;  "format-spec.el" "forms-d2.el" "forms-pass.el" "frame.el"
 -;;;;;;  "fringe.el" "generic-x.el" "gnus/auth-source.el" "gnus/compface.el"
 -;;;;;;  "gnus/gnus-async.el" "gnus/gnus-bcklg.el" "gnus/gnus-cite.el"
 -;;;;;;  "gnus/gnus-cus.el" "gnus/gnus-demon.el" "gnus/gnus-dup.el"
 -;;;;;;  "gnus/gnus-eform.el" "gnus/gnus-ems.el" "gnus/gnus-int.el"
 -;;;;;;  "gnus/gnus-logic.el" "gnus/gnus-mh.el" "gnus/gnus-salt.el"
 -;;;;;;  "gnus/gnus-score.el" "gnus/gnus-setup.el" "gnus/gnus-srvr.el"
 -;;;;;;  "gnus/gnus-topic.el" "gnus/gnus-undo.el" "gnus/gnus-util.el"
 -;;;;;;  "gnus/gnus-uu.el" "gnus/gnus-vm.el" "gnus/ietf-drums.el"
++;;;;;;  "emacs-lock.el" "emulation/cua-gmrk.el" "emulation/cua-rect.el"
++;;;;;;  "emulation/edt-lk201.el" "emulation/edt-mapper.el" "emulation/edt-pc.el"
++;;;;;;  "emulation/edt-vt100.el" "emulation/tpu-extras.el" "emulation/viper-cmd.el"
++;;;;;;  "emulation/viper-ex.el" "emulation/viper-init.el" "emulation/viper-keym.el"
++;;;;;;  "emulation/viper-macs.el" "emulation/viper-mous.el" "emulation/viper-util.el"
++;;;;;;  "erc/erc-backend.el" "erc/erc-goodies.el" "erc/erc-ibuffer.el"
++;;;;;;  "erc/erc-lang.el" "eshell/em-alias.el" "eshell/em-banner.el"
++;;;;;;  "eshell/em-basic.el" "eshell/em-cmpl.el" "eshell/em-dirs.el"
++;;;;;;  "eshell/em-glob.el" "eshell/em-hist.el" "eshell/em-ls.el"
++;;;;;;  "eshell/em-pred.el" "eshell/em-prompt.el" "eshell/em-rebind.el"
++;;;;;;  "eshell/em-script.el" "eshell/em-smart.el" "eshell/em-term.el"
++;;;;;;  "eshell/em-unix.el" "eshell/em-xtra.el" "eshell/esh-arg.el"
++;;;;;;  "eshell/esh-cmd.el" "eshell/esh-ext.el" "eshell/esh-groups.el"
++;;;;;;  "eshell/esh-io.el" "eshell/esh-module.el" "eshell/esh-opt.el"
++;;;;;;  "eshell/esh-proc.el" "eshell/esh-util.el" "eshell/esh-var.el"
++;;;;;;  "ezimage.el" "foldout.el" "format-spec.el" "forms-d2.el"
++;;;;;;  "forms-pass.el" "fringe.el" "generic-x.el" "gnus/auth-source.el"
++;;;;;;  "gnus/color.el" "gnus/compface.el" "gnus/gnus-async.el" "gnus/gnus-bcklg.el"
 +;;;;;;  "gnus/gnus-cite.el" "gnus/gnus-cus.el" "gnus/gnus-demon.el"
 +;;;;;;  "gnus/gnus-dup.el" "gnus/gnus-eform.el" "gnus/gnus-ems.el"
 +;;;;;;  "gnus/gnus-int.el" "gnus/gnus-logic.el" "gnus/gnus-mh.el"
 +;;;;;;  "gnus/gnus-salt.el" "gnus/gnus-score.el" "gnus/gnus-setup.el"
 +;;;;;;  "gnus/gnus-srvr.el" "gnus/gnus-topic.el" "gnus/gnus-undo.el"
 +;;;;;;  "gnus/gnus-util.el" "gnus/gnus-uu.el" "gnus/gnus-vm.el" "gnus/ietf-drums.el"
  ;;;;;;  "gnus/legacy-gnus-agent.el" "gnus/mail-parse.el" "gnus/mail-prsvr.el"
  ;;;;;;  "gnus/mail-source.el" "gnus/mailcap.el" "gnus/messcompat.el"
  ;;;;;;  "gnus/mm-bodies.el" "gnus/mm-decode.el" "gnus/mm-encode.el"
  ;;;;;;  "gnus/nnspool.el" "gnus/nntp.el" "gnus/nnvirtual.el" "gnus/nnweb.el"
  ;;;;;;  "gnus/rfc1843.el" "gnus/rfc2045.el" "gnus/rfc2047.el" "gnus/rfc2104.el"
  ;;;;;;  "gnus/rfc2231.el" "gnus/rtree.el" "gnus/shr-color.el" "gnus/sieve-manage.el"
--;;;;;;  "gnus/smime.el" "gnus/spam-stat.el" "gnus/spam-wash.el" "help.el"
--;;;;;;  "hex-util.el" "hfy-cmap.el" "ibuf-ext.el" "indent.el" "international/characters.el"
--;;;;;;  "international/charprop.el" "international/cp51932.el" "international/eucjp-ms.el"
--;;;;;;  "international/fontset.el" "international/iso-ascii.el" "international/ja-dic-cnv.el"
--;;;;;;  "international/ja-dic-utl.el" "international/mule-conf.el"
--;;;;;;  "international/mule.el" "international/ogonek.el" "international/uni-bidi.el"
--;;;;;;  "international/uni-category.el" "international/uni-combining.el"
--;;;;;;  "international/uni-comment.el" "international/uni-decimal.el"
--;;;;;;  "international/uni-decomposition.el" "international/uni-digit.el"
--;;;;;;  "international/uni-lowercase.el" "international/uni-mirrored.el"
--;;;;;;  "international/uni-name.el" "international/uni-numeric.el"
--;;;;;;  "international/uni-old-name.el" "international/uni-titlecase.el"
--;;;;;;  "international/uni-uppercase.el" "isearch.el" "jit-lock.el"
--;;;;;;  "jka-cmpr-hook.el" "json.el" "kermit.el" "language/burmese.el"
--;;;;;;  "language/cham.el" "language/chinese.el" "language/cyrillic.el"
--;;;;;;  "language/czech.el" "language/english.el" "language/ethiopic.el"
--;;;;;;  "language/european.el" "language/georgian.el" "language/greek.el"
--;;;;;;  "language/hanja-util.el" "language/hebrew.el" "language/indian.el"
--;;;;;;  "language/japanese.el" "language/khmer.el" "language/korean.el"
--;;;;;;  "language/lao.el" "language/misc-lang.el" "language/romanian.el"
--;;;;;;  "language/sinhala.el" "language/slovak.el" "language/tai-viet.el"
--;;;;;;  "language/thai-word.el" "language/thai.el" "language/tibetan.el"
--;;;;;;  "language/utf-8-lang.el" "language/vietnamese.el" "ldefs-boot.el"
--;;;;;;  "loadup.el" "mail/blessmail.el" "mail/mailheader.el" "mail/mailpost.el"
--;;;;;;  "mail/mspools.el" "mail/rfc2368.el" "mail/rfc822.el" "mail/rmail-spam-filter.el"
--;;;;;;  "mail/rmailedit.el" "mail/rmailkwd.el" "mail/rmailmm.el"
--;;;;;;  "mail/rmailmsc.el" "mail/rmailsort.el" "mail/rmailsum.el"
--;;;;;;  "mail/undigest.el" "md4.el" "mh-e/mh-acros.el" "mh-e/mh-alias.el"
--;;;;;;  "mh-e/mh-buffers.el" "mh-e/mh-compat.el" "mh-e/mh-funcs.el"
--;;;;;;  "mh-e/mh-gnus.el" "mh-e/mh-identity.el" "mh-e/mh-inc.el"
--;;;;;;  "mh-e/mh-junk.el" "mh-e/mh-letter.el" "mh-e/mh-limit.el"
++;;;;;;  "gnus/smime.el" "gnus/spam-stat.el" "gnus/spam-wash.el" "hex-util.el"
++;;;;;;  "hfy-cmap.el" "ibuf-ext.el" "international/charprop.el" "international/cp51932.el"
++;;;;;;  "international/eucjp-ms.el" "international/fontset.el" "international/iso-ascii.el"
++;;;;;;  "international/ja-dic-cnv.el" "international/ja-dic-utl.el"
++;;;;;;  "international/ogonek.el" "international/uni-bidi.el" "international/uni-category.el"
++;;;;;;  "international/uni-combining.el" "international/uni-comment.el"
++;;;;;;  "international/uni-decimal.el" "international/uni-decomposition.el"
++;;;;;;  "international/uni-digit.el" "international/uni-lowercase.el"
++;;;;;;  "international/uni-mirrored.el" "international/uni-name.el"
++;;;;;;  "international/uni-numeric.el" "international/uni-old-name.el"
++;;;;;;  "international/uni-titlecase.el" "international/uni-uppercase.el"
++;;;;;;  "json.el" "kermit.el" "language/hanja-util.el" "language/thai-word.el"
++;;;;;;  "ldefs-boot.el" "mail/blessmail.el" "mail/mailheader.el"
++;;;;;;  "mail/mailpost.el" "mail/mspools.el" "mail/rfc2368.el" "mail/rfc822.el"
++;;;;;;  "mail/rmail-spam-filter.el" "mail/rmailedit.el" "mail/rmailkwd.el"
++;;;;;;  "mail/rmailmm.el" "mail/rmailmsc.el" "mail/rmailsort.el"
++;;;;;;  "mail/rmailsum.el" "mail/undigest.el" "md4.el" "mh-e/mh-acros.el"
++;;;;;;  "mh-e/mh-alias.el" "mh-e/mh-buffers.el" "mh-e/mh-compat.el"
++;;;;;;  "mh-e/mh-funcs.el" "mh-e/mh-gnus.el" "mh-e/mh-identity.el"
++;;;;;;  "mh-e/mh-inc.el" "mh-e/mh-junk.el" "mh-e/mh-letter.el" "mh-e/mh-limit.el"
  ;;;;;;  "mh-e/mh-loaddefs.el" "mh-e/mh-mime.el" "mh-e/mh-print.el"
  ;;;;;;  "mh-e/mh-scan.el" "mh-e/mh-search.el" "mh-e/mh-seq.el" "mh-e/mh-show.el"
  ;;;;;;  "mh-e/mh-speed.el" "mh-e/mh-thread.el" "mh-e/mh-tool-bar.el"
--;;;;;;  "mh-e/mh-utils.el" "mh-e/mh-xface.el" "minibuffer.el" "mouse-copy.el"
--;;;;;;  "mouse.el" "mwheel.el" "net/dns.el" "net/eudc-vars.el" "net/eudcb-bbdb.el"
++;;;;;;  "mh-e/mh-utils.el" "mh-e/mh-xface.el" "mouse-copy.el" "mouse.el"
++;;;;;;  "mwheel.el" "net/dns.el" "net/eudc-vars.el" "net/eudcb-bbdb.el"
  ;;;;;;  "net/eudcb-ldap.el" "net/eudcb-mab.el" "net/eudcb-ph.el"
  ;;;;;;  "net/gnutls.el" "net/hmac-def.el" "net/hmac-md5.el" "net/imap-hash.el"
  ;;;;;;  "net/imap.el" "net/ldap.el" "net/mairix.el" "net/newsticker.el"
  ;;;;;;  "org/ob-ref.el" "org/ob-ruby.el" "org/ob-sass.el" "org/ob-scheme.el"
  ;;;;;;  "org/ob-screen.el" "org/ob-sh.el" "org/ob-sql.el" "org/ob-sqlite.el"
  ;;;;;;  "org/ob-table.el" "org/org-beamer.el" "org/org-bibtex.el"
- ;;;;;;  "org/org-colview.el" "org/org-compat.el" "org/org-crypt.el"
- ;;;;;;  "org/org-ctags.el" "org/org-docview.el" "org/org-entities.el"
- ;;;;;;  "org/org-exp-blocks.el" "org/org-faces.el" "org/org-gnus.el"
- ;;;;;;  "org/org-habit.el" "org/org-info.el" "org/org-inlinetask.el"
+ ;;;;;;  "org/org-colview.el" "org/org-compat.el" "org/org-complete.el"
+ ;;;;;;  "org/org-crypt.el" "org/org-ctags.el" "org/org-docview.el"
+ ;;;;;;  "org/org-entities.el" "org/org-exp-blocks.el" "org/org-faces.el"
+ ;;;;;;  "org/org-gnus.el" "org/org-habit.el" "org/org-info.el" "org/org-inlinetask.el"
  ;;;;;;  "org/org-install.el" "org/org-jsinfo.el" "org/org-list.el"
  ;;;;;;  "org/org-mac-message.el" "org/org-macs.el" "org/org-mew.el"
  ;;;;;;  "org/org-mhe.el" "org/org-mks.el" "org/org-mouse.el" "org/org-protocol.el"
  ;;;;;;  "org/org-rmail.el" "org/org-src.el" "org/org-vm.el" "org/org-w3m.el"
- ;;;;;;  "org/org-wl.el" "patcomp.el" "paths.el" "pgg-def.el" "pgg-parse.el"
 -;;;;;;  "org/org-wl.el" "patcomp.el" "paths.el" "play/gamegrid.el"
 -;;;;;;  "play/gametree.el" "play/meese.el" "progmodes/ada-prj.el"
 -;;;;;;  "progmodes/cc-align.el" "progmodes/cc-awk.el" "progmodes/cc-bytecomp.el"
 -;;;;;;  "progmodes/cc-cmds.el" "progmodes/cc-defs.el" "progmodes/cc-fonts.el"
 -;;;;;;  "progmodes/cc-langs.el" "progmodes/cc-menus.el" "progmodes/ebnf-abn.el"
 -;;;;;;  "progmodes/ebnf-bnf.el" "progmodes/ebnf-dtd.el" "progmodes/ebnf-ebx.el"
 -;;;;;;  "progmodes/ebnf-iso.el" "progmodes/ebnf-otz.el" "progmodes/ebnf-yac.el"
 -;;;;;;  "progmodes/idlw-complete-structtag.el" "progmodes/idlw-help.el"
 -;;;;;;  "progmodes/idlw-toolbar.el" "progmodes/mantemp.el" "progmodes/xscheme.el"
 -;;;;;;  "ps-def.el" "ps-mule.el" "ps-samp.el" "register.el" "replace.el"
 -;;;;;;  "rfn-eshadow.el" "saveplace.el" "sb-image.el" "scroll-bar.el"
 -;;;;;;  "select.el" "simple.el" "soundex.el" "startup.el" "subdirs.el"
 -;;;;;;  "subr.el" "tempo.el" "textmodes/bib-mode.el" "textmodes/fill.el"
 -;;;;;;  "textmodes/makeinfo.el" "textmodes/page-ext.el" "textmodes/page.el"
 -;;;;;;  "textmodes/paragraphs.el" "textmodes/refbib.el" "textmodes/refer.el"
 -;;;;;;  "textmodes/reftex-auc.el" "textmodes/reftex-dcr.el" "textmodes/reftex-ref.el"
 -;;;;;;  "textmodes/reftex-sel.el" "textmodes/reftex-toc.el" "textmodes/texnfo-upd.el"
 -;;;;;;  "textmodes/text-mode.el" "timezone.el" "tooltip.el" "tree-widget.el"
++;;;;;;  "org/org-wl.el" "patcomp.el" "pgg-def.el" "pgg-parse.el"
 +;;;;;;  "pgg-pgp.el" "pgg-pgp5.el" "play/gamegrid.el" "play/gametree.el"
 +;;;;;;  "play/meese.el" "progmodes/ada-prj.el" "progmodes/cc-align.el"
 +;;;;;;  "progmodes/cc-awk.el" "progmodes/cc-bytecomp.el" "progmodes/cc-cmds.el"
 +;;;;;;  "progmodes/cc-defs.el" "progmodes/cc-fonts.el" "progmodes/cc-langs.el"
 +;;;;;;  "progmodes/cc-menus.el" "progmodes/ebnf-abn.el" "progmodes/ebnf-bnf.el"
 +;;;;;;  "progmodes/ebnf-dtd.el" "progmodes/ebnf-ebx.el" "progmodes/ebnf-iso.el"
 +;;;;;;  "progmodes/ebnf-otz.el" "progmodes/ebnf-yac.el" "progmodes/idlw-complete-structtag.el"
 +;;;;;;  "progmodes/idlw-help.el" "progmodes/idlw-toolbar.el" "progmodes/mantemp.el"
 +;;;;;;  "progmodes/xscheme.el" "ps-def.el" "ps-mule.el" "ps-samp.el"
- ;;;;;;  "register.el" "replace.el" "rfn-eshadow.el" "saveplace.el"
- ;;;;;;  "sb-image.el" "scroll-bar.el" "select.el" "simple.el" "soundex.el"
- ;;;;;;  "startup.el" "subdirs.el" "subr.el" "tempo.el" "textmodes/bib-mode.el"
- ;;;;;;  "textmodes/fill.el" "textmodes/makeinfo.el" "textmodes/page-ext.el"
- ;;;;;;  "textmodes/page.el" "textmodes/paragraphs.el" "textmodes/refbib.el"
++;;;;;;  "saveplace.el" "sb-image.el" "scroll-bar.el" "select.el"
++;;;;;;  "soundex.el" "subdirs.el" "tempo.el" "textmodes/bib-mode.el"
++;;;;;;  "textmodes/makeinfo.el" "textmodes/page-ext.el" "textmodes/refbib.el"
 +;;;;;;  "textmodes/refer.el" "textmodes/reftex-auc.el" "textmodes/reftex-dcr.el"
 +;;;;;;  "textmodes/reftex-ref.el" "textmodes/reftex-sel.el" "textmodes/reftex-toc.el"
- ;;;;;;  "textmodes/texnfo-upd.el" "textmodes/text-mode.el" "timezone.el"
- ;;;;;;  "tooltip.el" "tree-widget.el" "uniquify.el" "url/url-about.el"
- ;;;;;;  "url/url-cookie.el" "url/url-dired.el" "url/url-expand.el"
- ;;;;;;  "url/url-ftp.el" "url/url-history.el" "url/url-imap.el" "url/url-methods.el"
- ;;;;;;  "url/url-nfs.el" "url/url-proxy.el" "url/url-vars.el" "vc/ediff-diff.el"
- ;;;;;;  "vc/ediff-init.el" "vc/ediff-merg.el" "vc/ediff-ptch.el"
- ;;;;;;  "vc/ediff-vers.el" "vc/ediff-wind.el" "vc/pcvs-info.el" "vc/pcvs-parse.el"
- ;;;;;;  "vc/pcvs-util.el" "vc/vc-dav.el" "vcursor.el" "version.el"
- ;;;;;;  "vt-control.el" "vt100-led.el" "w32-fns.el" "w32-vars.el"
- ;;;;;;  "widget.el" "x-dnd.el") (19714 43806 445397))
++;;;;;;  "textmodes/texnfo-upd.el" "timezone.el" "tooltip.el" "tree-widget.el"
+ ;;;;;;  "uniquify.el" "url/url-about.el" "url/url-cookie.el" "url/url-dired.el"
+ ;;;;;;  "url/url-expand.el" "url/url-ftp.el" "url/url-history.el"
+ ;;;;;;  "url/url-imap.el" "url/url-methods.el" "url/url-nfs.el" "url/url-proxy.el"
+ ;;;;;;  "url/url-vars.el" "vc/ediff-diff.el" "vc/ediff-init.el" "vc/ediff-merg.el"
+ ;;;;;;  "vc/ediff-ptch.el" "vc/ediff-vers.el" "vc/ediff-wind.el"
+ ;;;;;;  "vc/pcvs-info.el" "vc/pcvs-parse.el" "vc/pcvs-util.el" "vc/vc-dav.el"
 -;;;;;;  "vcursor.el" "version.el" "vt-control.el" "vt100-led.el"
 -;;;;;;  "w32-fns.el" "w32-vars.el" "widget.el" "x-dnd.el") (19781
 -;;;;;;  20793 754803))
++;;;;;;  "vcursor.el" "vt-control.el" "vt100-led.el" "w32-fns.el"
++;;;;;;  "w32-vars.el" "x-dnd.el") (19737 18184 637096))
  
  ;;;***
  \f
diff --combined lisp/simple.el
index a977be7cf8e7e45beffc1fd419e694cb3e710527,51c33e5c5f36e53b94346cea74ee043be348e427..77d096fd7967a45833d910d9bd2677dd1f0d4201
@@@ -1,8 -1,6 +1,6 @@@
  ;;; simple.el --- basic editing commands for Emacs
  
- ;; Copyright (C) 1985, 1986, 1987, 1993, 1994, 1995, 1996, 1997, 1998,
- ;;   1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009,
- ;;   2010  Free Software Foundation, Inc.
+ ;; Copyright (C) 1985-1987, 1993-2011  Free Software Foundation, Inc.
  
  ;; Maintainer: FSF
  ;; Keywords: internal
@@@ -762,7 -760,7 +760,7 @@@ If BACKWARD-ONLY is non-nil, only delet
  
  (defun just-one-space (&optional n)
    "Delete all spaces and tabs around point, leaving one space (or N spaces).
- If N is negative, deletes carriage return and linefeed characters as well."
+ If N is negative, delete newlines as well."
    (interactive "*p")
    (unless n (setq n 1))
    (let ((orig-pos (point))
@@@ -1142,8 -1140,6 +1140,6 @@@ in *Help* buffer.  See also the comman
    (set-keymap-parent m minibuffer-local-map)
    (setq read-expression-map m))
  
- (defvar read-expression-history nil)
  (defvar minibuffer-completing-symbol nil
    "Non-nil means completing a Lisp symbol in the minibuffer.")
  
@@@ -1212,12 -1208,12 +1208,12 @@@ this command arranges for all errors t
         current-prefix-arg))
  
    (if (null eval-expression-debug-on-error)
 -      (setq values (cons (eval eval-expression-arg) values))
 +      (push (eval eval-expression-arg lexical-binding) values)
      (let ((old-value (make-symbol "t")) new-value)
        ;; Bind debug-on-error to something unique so that we can
        ;; detect when evaled code changes it.
        (let ((debug-on-error old-value))
 -      (setq values (cons (eval eval-expression-arg) values))
 +      (push (eval eval-expression-arg lexical-binding) values)
        (setq new-value debug-on-error))
        ;; If evaled code has changed the value of debug-on-error,
        ;; propagate that change to the global binding.
@@@ -2341,7 -2337,11 +2337,11 @@@ the use of a shell (with its need to qu
                      (error "Shell command in progress")))
                (with-current-buffer buffer
                  (setq buffer-read-only nil)
-                 (erase-buffer)
+                 ;; Setting buffer-read-only to nil doesn't suffice
+                 ;; if some text has a non-nil read-only property,
+                 ;; which comint sometimes adds for prompts.
+                 (let ((inhibit-read-only t))
+                   (erase-buffer))
                  (display-buffer buffer)
                  (setq default-directory directory)
                  (setq proc (start-process "Shell" buffer shell-file-name
@@@ -4219,9 -4219,11 +4219,11 @@@ Outline mode sets this.
    "When non-nil, `line-move' moves point by visual lines.
  This movement is based on where the cursor is displayed on the
  screen, instead of relying on buffer contents alone.  It takes
- into account variable-width characters and line continuation."
+ into account variable-width characters and line continuation.
+ If nil, `line-move' moves point by logical lines."
    :type 'boolean
-   :group 'editing-basics)
+   :group 'editing-basics
+   :version "23.1")
  
  ;; Returns non-nil if partial move was done.
  (defun line-move-partial (arg noerror to-end)
@@@ -5100,12 -5102,10 +5102,10 @@@ If optional arg REALLY-WORD is non-nil
                 regexp)
    :group 'fill)
  
- ;; This function is used as the auto-fill-function of a buffer
- ;; when Auto-Fill mode is enabled.
- ;; It returns t if it really did any work.
- ;; (Actually some major modes use a different auto-fill function,
- ;; but this one is the default one.)
  (defun do-auto-fill ()
+   "The default value for `normal-auto-fill-function'.
+ This is the default auto-fill function, some major modes use a different one.
+ Returns t if it really did any work."
    (let (fc justify give-up
           (fill-prefix fill-prefix))
      (if (or (not (setq justify (current-justification)))
@@@ -5712,10 -5712,6 +5712,6 @@@ appears to have customizations applyin
    :version "23.2"
    :group 'mail)
  
- (define-mail-user-agent 'sendmail-user-agent
-   'sendmail-user-agent-compose
-   'mail-send-and-exit)
  (defun rfc822-goto-eoh ()
    ;; Go to header delimiter line in a mail message, following RFC822 rules
    (goto-char (point-min))
         "^\\([:\n]\\|[^: \t\n]+[ \t\n]\\)" nil 'move)
      (goto-char (match-beginning 0))))
  
- (defun sendmail-user-agent-compose (&optional to subject other-headers continue
-                                             switch-function yank-action
-                                             send-actions)
-   (if switch-function
-       (let ((special-display-buffer-names nil)
-           (special-display-regexps nil)
-           (same-window-buffer-names nil)
-           (same-window-regexps nil))
-       (funcall switch-function "*mail*")))
-   (let ((cc (cdr (assoc-string "cc" other-headers t)))
-       (in-reply-to (cdr (assoc-string "in-reply-to" other-headers t)))
-       (body (cdr (assoc-string "body" other-headers t))))
-     (or (mail continue to subject in-reply-to cc yank-action send-actions)
-       continue
-       (error "Message aborted"))
-     (save-excursion
-       (rfc822-goto-eoh)
-       (while other-headers
-       (unless (member-ignore-case (car (car other-headers))
-                                   '("in-reply-to" "cc" "body"))
-           (insert (car (car other-headers)) ": "
-                   (cdr (car other-headers))
-                   (if use-hard-newlines hard-newline "\n")))
-       (setq other-headers (cdr other-headers)))
-       (when body
-       (forward-line 1)
-       (insert body))
-       t)))
  (defun compose-mail (&optional to subject other-headers continue
-                              switch-function yank-action send-actions)
+                    switch-function yank-action send-actions
+                    return-action)
    "Start composing a mail message to send.
  This uses the user's chosen mail composition package
  as selected with the variable `mail-user-agent'.
@@@ -5778,7 -5746,12 +5746,12 @@@ FUNCTION to ARGS, to insert the raw tex
  original text has been inserted in this way.)
  
  SEND-ACTIONS is a list of actions to call when the message is sent.
- Each action has the form (FUNCTION . ARGS)."
+ Each action has the form (FUNCTION . ARGS).
+ RETURN-ACTION, if non-nil, is an action for returning to the
+ caller.  It has the form (FUNCTION . ARGS).  The function is
+ called after the mail has been sent or put aside, and the mail
+ buffer buried."
    (interactive
     (list nil nil nil current-prefix-arg))
  
@@@ -5808,25 -5781,27 +5781,27 @@@ To disable this warning, set `compose-m
                                               warn-vars " "))))))
  
    (let ((function (get mail-user-agent 'composefunc)))
-     (funcall function to subject other-headers continue
-            switch-function yank-action send-actions)))
+     (funcall function to subject other-headers continue switch-function
+            yank-action send-actions return-action)))
  
  (defun compose-mail-other-window (&optional to subject other-headers continue
-                                           yank-action send-actions)
+                                           yank-action send-actions
+                                           return-action)
    "Like \\[compose-mail], but edit the outgoing message in another window."
-   (interactive
-    (list nil nil nil current-prefix-arg))
+   (interactive (list nil nil nil current-prefix-arg))
    (compose-mail to subject other-headers continue
-               'switch-to-buffer-other-window yank-action send-actions))
+               'switch-to-buffer-other-window yank-action send-actions
+               return-action))
  
  (defun compose-mail-other-frame (&optional to subject other-headers continue
-                                           yank-action send-actions)
+                                           yank-action send-actions
+                                           return-action)
    "Like \\[compose-mail], but edit the outgoing message in another frame."
-   (interactive
-    (list nil nil nil current-prefix-arg))
+   (interactive (list nil nil nil current-prefix-arg))
    (compose-mail to subject other-headers continue
-               'switch-to-buffer-other-frame yank-action send-actions))
+               'switch-to-buffer-other-frame yank-action send-actions
+               return-action))
  \f
  (defvar set-variable-value-history nil
    "History of values entered with `set-variable'.
diff --combined lisp/subr.el
index 99f632fb586bc349f8e8b4da5ae67b9e519d3b09,3330fa20379a7b327e881122306f46bd5e3e017e..c72752eb8f23c9c7dffc468d48444c821b86e2f8
@@@ -1,7 -1,6 +1,6 @@@
  ;;; subr.el --- basic lisp subroutines for Emacs
  
- ;; Copyright (C) 1985, 1986, 1992, 1994, 1995, 1999, 2000, 2001, 2002, 2003,
- ;;   2004, 2005, 2006, 2007, 2008, 2009, 2010
+ ;; Copyright (C) 1985-1986, 1992, 1994-1995, 1999-2011
  ;;   Free Software Foundation, Inc.
  
  ;; Maintainer: FSF
@@@ -60,7 -59,7 +59,7 @@@ function-definitions that `check-declar
  `defstruct'.
  
  To specify a value for FILEONLY without passing an argument list,
- set ARGLIST to `t'.  This is necessary because `nil' means an
+ set ARGLIST to t.  This is necessary because nil means an
  empty argument list, rather than an unspecified one.
  
  Note that for the purposes of `check-declare', this statement
@@@ -417,7 -416,7 +416,7 @@@ Unibyte strings are converted to multib
    (assoc-string key alist nil))
  
  (defun member-ignore-case (elt list)
-   "Like `member', but ignores differences in case and text representation.
+   "Like `member', but ignore differences in case and text representation.
  ELT must be a string.  Upper-case and lower-case letters are treated as equal.
  Unibyte strings are converted to multibyte for comparison.
  Non-strings in LIST are ignored."
      (setq list (cdr list)))
    list)
  
 +;; Remove this since we don't know how to handle it in the byte-compiler yet.
 +;; (defmacro with-lexical-binding (&rest body)
 +;;   "Execute the statements in BODY using lexical binding."
 +;;   `(let ((internal-interpreter-environment '(t)))
 +;;      ,@body))
 +
  (defun assq-delete-all (key alist)
    "Delete from ALIST all elements whose car is `eq' to KEY.
  Return the modified alist.
@@@ -489,6 -482,7 +488,7 @@@ saving keyboard macros (see `edmacro-mo
    (read-kbd-macro keys))
  
  (defun undefined ()
+   "Beep to tell the user this binding is undefined."
    (interactive)
    (ding))
  
@@@ -858,24 -852,37 +858,37 @@@ in the current Emacs session, then thi
  
  (defsubst event-start (event)
    "Return the starting position of EVENT.
- If EVENT is a mouse or key press or a mouse click, this returns the location
- of the event.
- If EVENT is a drag, this returns the drag's starting position.
The return value is of the form
+ EVENT should be a click, drag, or key press event.
+ If it is a key press event, the return value has the form
+     (WINDOW POS (0 . 0) 0)
If it is a click or drag event, it has the form
     (WINDOW AREA-OR-POS (X . Y) TIMESTAMP OBJECT POS (COL . ROW)
      IMAGE (DX . DY) (WIDTH . HEIGHT))
- The `posn-' functions access elements of such lists."
+ The `posn-' functions access elements of such lists.
+ For more information, see Info node `(elisp)Click Events'.
+ If EVENT is a mouse or key press or a mouse click, this is the
+ position of the event.  If EVENT is a drag, this is the starting
+ position of the drag."
    (if (consp event) (nth 1 event)
      (list (selected-window) (point) '(0 . 0) 0)))
  
  (defsubst event-end (event)
    "Return the ending location of EVENT.
  EVENT should be a click, drag, or key press event.
- If EVENT is a click event, this function is the same as `event-start'.
- The return value is of the form
+ If EVENT is a key press event, the return value has the form
+     (WINDOW POS (0 . 0) 0)
+ If EVENT is a click event, this function is the same as
+ `event-start'.  For click and drag events, the return value has
+ the form
     (WINDOW AREA-OR-POS (X . Y) TIMESTAMP OBJECT POS (COL . ROW)
      IMAGE (DX . DY) (WIDTH . HEIGHT))
- The `posn-' functions access elements of such lists."
+ The `posn-' functions access elements of such lists.
+ For more information, see Info node `(elisp)Click Events'.
+ If EVENT is a mouse or key press or a mouse click, this is the
+ position of the event.  If EVENT is a drag, this is the starting
+ position of the drag."
    (if (consp event) (nth (if (consp (nth 2 event)) 2 1) event)
      (list (selected-window) (point) '(0 . 0) 0)))
  
@@@ -921,8 -928,9 +934,9 @@@ Select the corresponding window as well
  
  (defsubst posn-x-y (position)
    "Return the x and y coordinates in POSITION.
- POSITION should be a list of the form returned by the `event-start'
- and `event-end' functions."
+ The return value has the form (X . Y), where X and Y are given in
+ pixels.  POSITION should be a list of the form returned by
+ `event-start' and `event-end'."
    (nth 2 position))
  
  (declare-function scroll-bar-scale "scroll-bar" (num-denom whole))
@@@ -961,7 -969,9 +975,9 @@@ and `event-end' functions.
               (setq spacing 0)))
        (cons (/ (car pair) (frame-char-width frame))
              (- (/ (cdr pair) (+ (frame-char-height frame) spacing))
-                (if (null header-line-format) 0 1))))))))
+                (if (null (with-current-buffer (window-buffer window)
+                            header-line-format))
+                    0 1))))))))
  
  (defun posn-actual-col-row (position)
    "Return the actual column and row in POSITION, measured in characters.
@@@ -1002,14 -1012,15 +1018,15 @@@ and `event-end' functions.
  
  (defsubst posn-object-x-y (position)
    "Return the x and y coordinates relative to the object of POSITION.
- POSITION should be a list of the form returned by the `event-start'
- and `event-end' functions."
+ The return value has the form (DX . DY), where DX and DY are
+ given in pixels.  POSITION should be a list of the form returned
+ by `event-start' and `event-end'."
    (nth 8 position))
  
  (defsubst posn-object-width-height (position)
    "Return the pixel width and height of the object of POSITION.
- POSITION should be a list of the form returned by the `event-start'
and `event-end' functions."
+ The return value has the form (WIDTH . HEIGHT).  POSITION should
be a list of the form returned by `event-start' and `event-end'."
    (nth 9 position))
  
  \f
@@@ -1361,9 -1372,8 +1378,8 @@@ if it is empty or a duplicate.
  
  (defun run-mode-hooks (&rest hooks)
    "Run mode hooks `delayed-mode-hooks' and HOOKS, or delay HOOKS.
- Execution is delayed if `delay-mode-hooks' is non-nil.
- If `delay-mode-hooks' is nil, run `after-change-major-mode-hook'
- after running the mode hooks.
+ Execution is delayed if the variable `delay-mode-hooks' is non-nil.
+ Otherwise, runs the mode hooks and then `after-change-major-mode-hook'.
  Major mode functions should use this instead of `run-hooks' when running their
  FOO-mode-hook."
    (if delay-mode-hooks
@@@ -1485,26 -1495,6 +1501,6 @@@ If TOGGLE has a `:menu-tag', that is us
  \f
  ;;; Load history
  
- ;; (defvar symbol-file-load-history-loaded nil
- ;;   "Non-nil means we have loaded the file `fns-VERSION.el' in `exec-directory'.
- ;; That file records the part of `load-history' for preloaded files,
- ;; which is cleared out before dumping to make Emacs smaller.")
- ;; (defun load-symbol-file-load-history ()
- ;;   "Load the file `fns-VERSION.el' in `exec-directory' if not already done.
- ;; That file records the part of `load-history' for preloaded files,
- ;; which is cleared out before dumping to make Emacs smaller."
- ;;   (unless symbol-file-load-history-loaded
- ;;     (load (expand-file-name
- ;;       ;; fns-XX.YY.ZZ.el does not work on DOS filesystem.
- ;;       (if (eq system-type 'ms-dos)
- ;;           "fns.el"
- ;;         (format "fns-%s.el" emacs-version))
- ;;       exec-directory)
- ;;      ;; The file name fns-%s.el already has a .el extension.
- ;;      nil nil t)
- ;;     (setq symbol-file-load-history-loaded t)))
  (defun symbol-file (symbol &optional type)
    "Return the name of the file that defined SYMBOL.
  The value is normally an absolute file name.  It can also be nil,
@@@ -1622,11 -1612,7 +1618,7 @@@ extension for a compressed format \(e.g
  this name matching.
  
  Alternatively, FILE can be a feature (i.e. a symbol), in which case FORM
- is evaluated whenever that feature is `provide'd.  Note that although
- provide statements are usually at the end of files, this is not always
- the case (e.g., sometimes they are at the start to avoid a recursive
- load error).  If your FORM should not be evaluated until the code in
- FILE has been, do not use the symbol form for FILE in such cases.
+ is evaluated at the end of any file that `provide's this feature.
  
  Usually FILE is just a library name like \"font-lock\" or a feature name
  like 'font-lock.
@@@ -1635,11 -1621,27 +1627,27 @@@ This function makes or adds to an entr
    ;; Add this FORM into after-load-alist (regardless of whether we'll be
    ;; evaluating it now).
    (let* ((regexp-or-feature
-         (if (stringp file) (setq file (purecopy (load-history-regexp file))) file))
+         (if (stringp file)
+               (setq file (purecopy (load-history-regexp file)))
+             file))
         (elt (assoc regexp-or-feature after-load-alist)))
      (unless elt
        (setq elt (list regexp-or-feature))
        (push elt after-load-alist))
+     (when (symbolp regexp-or-feature)
+       ;; For features, the after-load-alist elements get run when `provide' is
+       ;; called rather than at the end of the file.  So add an indirection to
+       ;; make sure that `form' is really run "after-load" in case the provide
+       ;; call happens early.
+       (setq form
+             `(when load-file-name
+                (let ((fun (make-symbol "eval-after-load-helper")))
+                  (fset fun `(lambda (file)
+                               (if (not (equal file ',load-file-name))
+                                   nil
+                                 (remove-hook 'after-load-functions ',fun)
+                                 ,',form)))
+                  (add-hook 'after-load-functions fun)))))
      ;; Add FORM to the element unless it's already there.
      (unless (member form (cdr elt))
        (nconc elt (purecopy (list form))))
@@@ -1895,7 -1897,7 +1903,7 @@@ This function echoes `.' for each chara
  The user ends with RET, LFD, or ESC.  DEL or C-h rubs out.
  C-y yanks the current kill.  C-u kills line.
  C-g quits; if `inhibit-quit' was non-nil around this function,
- then it returns nil if the user types C-g, but quit-flag remains set.
+ then it returns nil if the user types C-g, but `quit-flag' remains set.
  
  Once the caller uses the password, it can erase the password
  by doing (clear-string STRING)."
@@@ -1993,6 -1995,35 +2001,35 @@@ The value of DEFAULT is inserted into P
            t)))
      n))
  
+ (defun read-char-choice (prompt chars &optional inhibit-keyboard-quit)
+   "Read and return one of CHARS, prompting for PROMPT.
+ Any input that is not one of CHARS is ignored.
+ If optional argument INHIBIT-KEYBOARD-QUIT is non-nil, ignore
+ keyboard-quit events while waiting for a valid input."
+   (unless (consp chars)
+     (error "Called `read-char-choice' without valid char choices"))
+   (let ((cursor-in-echo-area t)
+       (executing-kbd-macro executing-kbd-macro)
+       char done)
+     (while (not done)
+       (unless (get-text-property 0 'face prompt)
+       (setq prompt (propertize prompt 'face 'minibuffer-prompt)))
+       (setq char (let ((inhibit-quit inhibit-keyboard-quit))
+                  (read-key prompt)))
+       (cond
+        ((not (numberp char)))
+        ((memq char chars)
+       (setq done t))
+        ((and executing-kbd-macro (= char -1))
+       ;; read-event returns -1 if we are in a kbd macro and
+       ;; there are no more events in the macro.  Attempt to
+       ;; get an event interactively.
+       (setq executing-kbd-macro nil))))
+     ;; Display the question with the answer.
+     (message "%s%s" prompt (char-to-string char))
+     char))
  (defun sit-for (seconds &optional nodisp obsolete)
    "Perform redisplay, then wait for SECONDS seconds or until input is available.
  SECONDS may be a floating-point value.
@@@ -2034,6 -2065,56 +2071,56 @@@ floating point support.
            (push read unread-command-events)
            nil))))))
  (set-advertised-calling-convention 'sit-for '(seconds &optional nodisp) "22.1")
+ (defun y-or-n-p (prompt)
+   "Ask user a \"y or n\" question.  Return t if answer is \"y\".
+ PROMPT is the string to display to ask the question.  It should
+ end in a space; `y-or-n-p' adds \"(y or n) \" to it.
+ No confirmation of the answer is requested; a single character is enough.
+ Also accepts Space to mean yes, or Delete to mean no.  \(Actually, it uses
+ the bindings in `query-replace-map'; see the documentation of that variable
+ for more information.  In this case, the useful bindings are `act', `skip',
+ `recenter', and `quit'.\)
+ Under a windowing system a dialog box will be used if `last-nonmenu-event'
+ is nil and `use-dialog-box' is non-nil."
+   ;; ¡Beware! when I tried to edebug this code, Emacs got into a weird state
+   ;; where all the keys were unbound (i.e. it somehow got triggered
+   ;; within read-key, apparently).  I had to kill it.
+   (let ((answer 'recenter))
+     (if (and (display-popup-menus-p)
+              (listp last-nonmenu-event)
+              use-dialog-box)
+         (setq answer
+               (x-popup-dialog t `(,prompt ("yes" . act) ("No" . skip))))
+       (setq prompt (concat prompt
+                            (if (eq ?\s (aref prompt (1- (length prompt))))
+                                "" " ")
+                            "(y or n) "))
+       (while
+           (let* ((key
+                   (let ((cursor-in-echo-area t))
+                     (when minibuffer-auto-raise
+                       (raise-frame (window-frame (minibuffer-window))))
+                     (read-key (propertize (if (eq answer 'recenter)
+                                               prompt
+                                             (concat "Please answer y or n.  "
+                                                     prompt))
+                                           'face 'minibuffer-prompt)))))
+             (setq answer (lookup-key query-replace-map (vector key) t))
+             (cond
+              ((memq answer '(skip act)) nil)
+              ((eq answer 'recenter) (recenter) t)
+              ((memq answer '(exit-prefix quit)) (signal 'quit nil) t)
+              (t t)))
+         (ding)
+         (discard-input)))
+     (let ((ret (eq answer 'act)))
+       (unless noninteractive
+         (message "%s %s" prompt (if ret "y" "n")))
+       ret)))
  \f
  ;;; Atomic change groups.
  
@@@ -2293,11 -2374,16 +2380,16 @@@ directory if it does not exist.
         ;; unless we're in batch mode or dumping Emacs
         (or noninteractive
           purify-flag
-          (file-accessible-directory-p (directory-file-name user-emacs-directory))
-          (make-directory user-emacs-directory))
+          (file-accessible-directory-p
+           (directory-file-name user-emacs-directory))
+          (let ((umask (default-file-modes)))
+            (unwind-protect
+                (progn
+                  (set-default-file-modes ?\700)
+                  (make-directory user-emacs-directory))
+              (set-default-file-modes umask))))
         (abbreviate-file-name
          (expand-file-name new-name user-emacs-directory))))))
  \f
  ;;;; Misc. useful functions.
  
@@@ -2374,13 -2460,8 +2466,8 @@@ Note: :data and :device are currently n
          "''"
        ;; Quote everything except POSIX filename characters.
        ;; This should be safe enough even for really weird shells.
-       (let ((result "") (start 0) end)
-         (while (string-match "[^-0-9a-zA-Z_./]" argument start)
-           (setq end (match-beginning 0)
-                 result (concat result (substring argument start end)
-                                "\\" (substring argument end (1+ end)))
-                 start (1+ end)))
-         (concat result (substring argument start))))))
+       (replace-regexp-in-string "\n" "'\n'"
+        (replace-regexp-in-string "[^-0-9a-zA-Z_./\n]" "\\\\\\&" argument)))))
  
  (defun string-or-null-p (object)
    "Return t if OBJECT is a string or nil.
@@@ -2438,7 -2519,7 +2525,7 @@@ Replaces `category' properties with the
  (defvar yank-undo-function)
  
  (defun insert-for-yank (string)
-   "Calls `insert-for-yank-1' repetitively for each `yank-handler' segment.
+   "Call `insert-for-yank-1' repetitively for each `yank-handler' segment.
  
  See `insert-for-yank-1' for more details."
    (let (to)
@@@ -2464,7 -2545,7 +2551,7 @@@ If PARAM is present and non-nil, it rep
   `yank-rectangle', PARAM may be a list of strings to insert as a
   rectangle.
  If NOEXCLUDE is present and non-nil, the normal removal of the
-  yank-excluded-properties is not performed; instead FUNCTION is
+  `yank-excluded-properties' is not performed; instead FUNCTION is
   responsible for removing those properties.  This may be necessary
   if FUNCTION adjusts point before or after inserting the object.
  If UNDO is present and non-nil, it is a function that will be called
@@@ -3122,7 -3203,7 +3209,7 @@@ is non-nil, start replacements at that 
  REP is either a string used as the NEWTEXT arg of `replace-match' or a
  function.  If it is a function, it is called with the actual text of each
  match, and its value is used as the replacement text.  When REP is called,
- the match-data are the result of matching REGEXP against a substring
+ the match data are the result of matching REGEXP against a substring
  of STRING.
  
  To replace only the first match (if any), make REGEXP match up to \\'
@@@ -3328,56 -3409,6 +3415,6 @@@ clone should be incorporated in the clo
      (overlay-put ol2 'evaporate t)
      (overlay-put ol2 'text-clones dups)))
  \f
- ;;;; Misc functions moved over from the C side.
- (defun y-or-n-p (prompt)
-   "Ask user a \"y or n\" question.  Return t if answer is \"y\".
- The argument PROMPT is the string to display to ask the question.
- It should end in a space; `y-or-n-p' adds `(y or n) ' to it.
- No confirmation of the answer is requested; a single character is enough.
- Also accepts Space to mean yes, or Delete to mean no.  \(Actually, it uses
- the bindings in `query-replace-map'; see the documentation of that variable
- for more information.  In this case, the useful bindings are `act', `skip',
- `recenter', and `quit'.\)
- Under a windowing system a dialog box will be used if `last-nonmenu-event'
- is nil and `use-dialog-box' is non-nil."
-   ;; ¡Beware! when I tried to edebug this code, Emacs got into a weird state
-   ;; where all the keys were unbound (i.e. it somehow got triggered
-   ;; within read-key, apparently).  I had to kill it.
-   (let ((answer 'recenter))
-     (if (and (display-popup-menus-p)
-              (listp last-nonmenu-event)
-              use-dialog-box)
-         (setq answer
-               (x-popup-dialog t `(,prompt ("yes" . act) ("No" . skip))))
-       (setq prompt (concat prompt
-                            (if (eq ?\s (aref prompt (1- (length prompt))))
-                                "" " ")
-                            "(y or n) "))
-       (while
-           (let* ((key
-                   (let ((cursor-in-echo-area t))
-                     (when minibuffer-auto-raise
-                       (raise-frame (window-frame (minibuffer-window))))
-                     (read-key (propertize (if (eq answer 'recenter)
-                                               prompt
-                                             (concat "Please answer y or n.  "
-                                                     prompt))
-                                           'face 'minibuffer-prompt)))))
-             (setq answer (lookup-key query-replace-map (vector key) t))
-             (cond
-              ((memq answer '(skip act)) nil)
-              ((eq answer 'recenter) (recenter) t)
-              ((memq answer '(exit-prefix quit)) (signal 'quit nil) t)
-              (t t)))
-         (ding)
-         (discard-input)))
-     (let ((ret (eq answer 'act)))
-       (unless noninteractive
-         (message "%s %s" prompt (if ret "y" "n")))
-       ret)))
  ;;;; Mail user agents.
  
  ;; Here we include just enough for other packages to be able
@@@ -3824,9 -3855,9 +3861,9 @@@ which is higher than \"1alpha\".
  
  ;; The following statement ought to be in print.c, but `provide' can't
  ;; be used there.
+ ;; http://lists.gnu.org/archive/html/emacs-devel/2009-08/msg00236.html
  (when (hash-table-p (car (read-from-string
                          (prin1-to-string (make-hash-table)))))
    (provide 'hashtable-print-readable))
  
- ;; arch-tag: f7e0e6e5-70aa-4897-ae72-7a3511ec40bc
  ;;; subr.el ends here
diff --combined src/ChangeLog.trunk
index 18c482c2e925dffb0aa5a8c8389ae8938a65a9df,0000000000000000000000000000000000000000..f96fe5eb2f8f8e1dfbeb2c8859efd0705fbdd46f
mode 100644,000000..100644
--- /dev/null
@@@ -1,29155 -1,0 +1,30359 @@@
-       previous-single-property-change with last argument nil.  Clear
-       mouse highlight when mouse pointer is in a R2L row on the stretch
++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-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.
++
++2011-01-10  Michael Albinus  <michael.albinus@gmx.de>
++
++      * dbusbind.c (Fdbus_register_service): Raise an error in case of
++      unexpected return values.
++      (Fdbus_register_method): Remove connection initialization.
++
++2011-01-10  Jan Moringen  <jan.moringen@uni-bielefeld.de>
++
++      * dbusbind.c (QCdbus_request_name_allow_replacement): New symbol;
++      used by Fdbus_register_service.
++      (QCdbus_request_name_replace_existing): Likewise.
++      (QCdbus_request_name_do_not_queue): Likewise.
++      (QCdbus_request_name_reply_primary_owner): Likewise.
++      (QCdbus_request_name_reply_in_queue): Likewise.
++      (QCdbus_request_name_reply_exists): Likewise.
++      (QCdbus_request_name_reply_already_owner): Likewise.
++      (Fdbus_register_service): New function.
++      (Fdbus_register_method): Use Fdbus_register_service to do the name
++      registration.
++      (syms_of_dbusbind): Add symbols dbus-register-service,
++      :allow-replacement, :replace-existing, :do-not-queue,
++      :primary-owner, :existing, :in-queue and :already-owner.
++
++2011-01-09  Chong Yidong  <cyd@stupidchicken.com>
++
++      * gtkutil.c (update_frame_tool_bar): Don't advance tool-bar index
++      when removing extra buttons.
++
++2011-01-08  Chong Yidong  <cyd@stupidchicken.com>
++
++      * fns.c (Fyes_or_no_p): Doc fix.
++
++2011-01-08  Andreas Schwab  <schwab@linux-m68k.org>
++
++      * fns.c (Fyes_or_no_p): Add usage.
++
++2011-01-08  Glenn Morris  <rgm@gnu.org>
++
++      * makefile.w32-in ($(EMACS)):
++      * Makefile.in (emacs$(EXEEXT)): -batch implies -q.
++
++      * xdisp.c (syms_of_xdisp) <Qrisky_local_variable>: Move from here...
++      * emacs.c (syms_of_emacs) <Qrisky_local_variable>: ...to here.
++
++2011-01-07  Andreas Schwab  <schwab@linux-m68k.org>
++
++      * image.c (imagemagick_load_image): Fix some resource leaks and
++      error handling.
++
++2011-01-07  Chong Yidong  <cyd@stupidchicken.com>
++
++      * fns.c (Fyes_or_no_p): Accept format string args.
++
++2011-01-07  Glenn Morris  <rgm@gnu.org>
++
++      * emacs.c (no_site_lisp): New int.
++      (USAGE1): Add --no-site-lisp, mention -Q uses it.
++      (main): Set no_site_lisp.
++      (standard_args): Add --no-site-lisp.
++      * lisp.h (no_site_lisp): New int.
++      * lread.c (init_lread): If no_site_lisp, don't re-add site-lisp
++      directories to Vload_path.
++
++2011-01-05  Andreas Schwab  <schwab@linux-m68k.org>
++
++      * alloc.c (mark_stack): Use __builtin_unwind_init if available.
++
++2011-01-04  Jan Moringen  <jan.moringen@uni-bielefeld.de>
++
++      * dbusbind.c (Fdbus_register_method): Add optional parameter
++      dont_register_service.  Updated docstring accordingly.
++
++2011-01-04  Glenn Morris  <rgm@gnu.org>
++
++      * emacs.c (emacs_copyright): Update short copyright year to 2011.
++
++2011-01-03  Eli Zaretskii  <eliz@gnu.org>
++
++      * image.c (png_jmpbuf): Remove definition.
++      (my_png_error, png_load): Don't use png_jmpbuf.
++
++2011-01-02  Eli Zaretskii  <eliz@gnu.org>
++
++      * keyboard.c (Vselect_active_regions): Doc fix.  (Bug#7702)
++
++2011-01-02  Eli Zaretskii  <eliz@gnu.org>
++
++      * image.c <Qlibpng_version>: New variable.
++      (syms_of_image): Intern and staticpro it.  Set its value to the
++      version of PNG library we were compiled with.
++      (my_png_error, png_load): Avoid GCC warnings about direct access
++      to png_ptr->jmpbuf.  (Bug#7716)
++      (png_jmpbuf): New macro.
++      (my_png_error, png_load): Use it instead of #ifdef'ing according
++      to PNG_LIBPNG_VER_MAJOR and PNG_LIBPNG_VER_MINOR.
++
++2011-01-02  Stefan Monnier  <monnier@iro.umontreal.ca>
++
++      * .gdbinit (xgetptr): Fix the union+lsb case.
++      (xbacktrace): Fix the union case.
++
++2011-01-02  Stefan Monnier  <monnier@iro.umontreal.ca>
++
++      * window.c (Fmove_to_window_line): Avoid abort when called in a buffer
++      different from selected-window's.
++
++2011-01-02  Eli Zaretskii  <eliz@gnu.org>
++
++      * keyboard.c (parse_menu_item): Prepend "  " to the key sequence
++      equivalent of a menu item when the key sequence is given by the
++      `:keys' attribute.  (Bug#7662)
++
++      * xdisp.c (Fformat_mode_line): Doc fix: no need to state that only
++      the basic faces are supported.
++
++2011-01-02  Jan Djärv  <jan.h.d@swipnet.se>
++
++      * xterm.c (x_check_fullscreen): Fix pixel/character mixup.
++
++2011-01-02  Eli Zaretskii  <eliz@gnu.org>
++
++      * xdisp.c (Fformat_mode_line): Fix last change.
++
++2011-01-02  Chong Yidong  <cyd@stupidchicken.com>
++
++      * xdisp.c (Fformat_mode_line): Restrict the FACE argument to basic
++      faces (Bug#7587).
++
++2011-01-02  Eli Zaretskii  <eliz@gnu.org>
++
++      * fileio.c (Fexpand_file_name): One more doc fix.
++
++2011-01-01  Chong Yidong  <cyd@stupidchicken.com>
++
++      * gtkutil.c (xg_get_tool_bar_widgets): Use NULL for a missing
++      image or label in the container.
++      (xg_make_tool_item): Replace VERT_ONLY arg with HORIZ, TEXT_IMAGE.
++      (xg_show_toolbar_item): Function deleted.
++      (xg_tool_item_stale_p): New function.
++      (update_frame_tool_bar): Calculate tool-bar style once per call.
++      Instead of hiding text labels, omit them.  Don't use
++      xg_show_toolbar_item; create new GtkToolItems from scratch if
++      necessary, instead of trying to re-use them.  This avoids an
++      annoying animation when changing tool-bars.
++
++2010-12-31  Jan Djärv  <jan.h.d@swipnet.se>
++
++      * nsfns.m (ns_set_name_as_filename): Always use buffer name for
++      title and buffer filename only for RepresentedFilename.
++      Handle bad UTF-8 in buffer name (Bug#7517).
++
++2010-12-30  Jan Djärv  <jan.h.d@swipnet.se>
++
++      * coding.h (ENCODE_UTF_8): Remove "Used by ..." comment.
++
++      * nsfns.m (ns_set_name_iconic): Remove.
++      (ns_set_name_internal): New function (Bug#7517).
++      (Vicon_title_format): Extern declare.
++      (ns_set_name): Call ns_set_name_internal.
++      (x_explicitly_set_name): Remove call to ns_set_name_iconic.
++      (x_implicitly_set_name): Ditto.
++      (x_set_title): Remove commet about EXPLICIT.  Call ns_set_name_internal.
++      (ns_set_name_as_filename): Encode name with ENCODE_UTF_8 (Bug#7517).
++
++2010-12-29  Štěpán Němec  <stepnem@gmail.com>  (tiny change)
++
++      * window.c (syms_of_window): Add missing defsubr for
++      window-use-time.
++
++2010-12-28  Andreas Schwab  <schwab@linux-m68k.org>
++
++      * xterm.h (x_alloc_lighter_color_for_widget): Restore declaration.
++      * xterm.c (x_alloc_lighter_color_for_widget): Restore.
++
++2010-12-27  Andreas Schwab  <schwab@linux-m68k.org>
++
++      * buffer.c: Remove unused declarations.
++      * buffer.h: Likewise.
++      * charset.h: Likewise.
++      * composite.h: Likewise.
++      * dispextern.h: Likewise.
++      * dispnew.c: Likewise.
++      * font.h: Likewise.
++      * fontset.c: Likewise.
++      * fontset.h: Likewise.
++      * intervals.h: Likewise.
++      * keymap.h: Likewise.
++      * lisp.h: Likewise.
++      * syntax.c: Likewise.
++      * syntax.h: Likewise.
++      * termhooks.h: Likewise.
++      * window.h: Likewise.
++      * xsettings.h: Likewise.
++      * xterm.c: Likewise.
++      * xterm.h: Likewise.
++
++      * chartab.c (sub_char_table_ref): Make static.
++      * dispnew.c (line_hash_code, required_matrix_height)
++      (required_matrix_width): Likewise.
++      * eval.c (interactive_p, apply_lambda): Likewise.
++      * fns.c (string_make_multibyte, copy_hash_table, hash_clear):
++      Likewise.
++      * font.c (QCadstyle, QCregistry, font_make_spec)
++      (font_parse_fcname, font_encode_char, font_at): Likewise.
++      * frame.c (x_frame_get_arg): Likewise.
++      * keymap.c (get_keyelt): Likewise.
++      * lread.c (read_filtered_event): Likewise.
++      * print.c (write_string_1): Likewise.
++      * window.c (delete_window, window_height, window_width)
++      (foreach_window): Likewise.
++      * xrdb.c (x_get_customization_string, x_get_resource): Likewise.
++      * xterm.c (x_scroll_bar_clear, xembed_set_info)
++      (xembed_send_message): Likewise.
++
++      * eval.c (run_hook_list_with_args): Delete.
++      * font.c (font_unparse_gtkname, font_update_lface): Likewise.
++      * terminal.c (get_terminal_param): Likewise.
++      * xterm.c (x_alloc_lighter_color_for_widget): Likewise.
++
++      * scroll.c: Fix comment.
++
++      * dispnew.c (add_window_display_history)
++      (add_frame_display_history, glyph_row_slice_p)
++      (find_glyph_row_slice, flush_stdout)
++      (check_matrix_pointer_lossage, matrix_row)
++      (check_matrix_invariants, check_window_matrix_pointers)
++      (check_matrix_pointers, window_to_frame_vpos)
++      (window_to_frame_hpos): Prototize.
++      * textprop.c (erase_properties): Likewise.
++
++2010-12-22  Stefan Monnier  <monnier@iro.umontreal.ca>
++
++      * print.c (PRINT_NUMBER_OBJECT, PRINT_NUMBER_STATUS): Remove.
++      (print_preprocess): Fix handling of uninterned symbols in last change.
++
++      * print.c (print, print_preprocess, print_object): Use a hash table
++      rather than a linear table for Vprint_number_table.
++
++2010-12-20  Chong Yidong  <cyd@stupidchicken.com>
++
++      * frame.c (focus_follows_mouse): Default to 0 (Bug#7269).
++
++2010-12-20  Chong Yidong  <cyd@stupidchicken.com>
++
++      * keyboard.c (Vtool_bar_separator_image_expression): New variable.
++      (parse_tool_bar_item): Use it to obtain image separators for
++      displays not using native tool-bar separators.
++
++      * xdisp.c (build_desired_tool_bar_string): Don't handle separators
++      specially, since this is now done in parse_tool_bar_item.
++
++2010-12-19  Stefan Monnier  <monnier@iro.umontreal.ca>
++
++      Minor clean up to silence some gcc warnings.
++      * window.c (Fset_window_buffer):
++      * xterm.c (x_set_frame_alpha): Restructure code to silence
++      compiler warning.
++      (handle_one_xevent): Remove unused var `p'.
++      (do_ewmh_fullscreen): Remove unused var `lval'.
++      (xembed_set_info): Remove unused var `atom'.
++      * textprop.c (Fremove_list_of_text_properties): Add braces to silence
++      compiler warning.
++      * fontset.c (fontset_id_valid_p, dump_fontset):
++      * ftfont.c (ftfont_drive_otf): Modernize k&r declaration.
++      * eval.c (Feval, Ffuncall): Avoid unneeded gotos.
++      * dispnew.c (update_frame, update_frame_1): Compile the `do_pause'
++      label only when it's used.
++      * image.c (x_create_bitmap_from_xpm_data):
++      * dispextern.h (x_create_bitmap_from_xpm_data): Use const char** like
++      its callers.
++      * coding.c (detect_coding_utf_16): Remove unused vars `src_base' and
++      `consumed_chars'.
++      (DECODE_EMACS_MULE_21_COMPOSITION): Remove unused var `charbuf_base'.
++      (decode_coding_emacs_mule): Remove unused label `retry'.
++      (detect_eol): Add parens to silence compiler warning.
++      * alloc.c (bytes_used_when_reconsidered): Move to the #ifdef where
++      it's used to silence the compiler.
++      (make_number): Modernize k&r declaration.
++      (mark_char_table): Add parens to silence compiler warning.
++
++2010-12-17  Chong Yidong  <cyd@stupidchicken.com>
++
++      * keyboard.c (parse_tool_bar_item): Allow menu separators in
++      tool-bar maps.
++      (menu_separator_name_p): New function, from gtkutil.c.
++      (separator_names): Move from gtkutil.c.
++
++      * keyboard.h (menu_separator_name_p): Add prototype.
++
++      * gtkutil.c (XG_BIN_CHILD): New macro.
++      (xg_get_menu_item_label, xg_update_menubar)
++      (xg_update_menu_item, xg_tool_bar_menu_proxy)
++      (xg_show_toolbar_item, update_frame_tool_bar): Use it.
++      (separator_names, xg_separator_p): Move to keyboard.c.
++      (create_menus, xg_update_submenu, update_frame_tool_bar):
++      Use menu_separator_name_p.
++
++      * nsmenu.m (name_is_separator): Function deleted.
++      (addItemWithWidgetValue): Use menu_separator_name_p.
++
++      * w32menu.c (name_is_separator): Function deleted.
++      (add_menu_item): Use menu_separator_name_p.
++
++2010-12-16  Jan Djärv  <jan.h.d@swipnet.se>
++
++      * nsterm.m (ns_draw_window_cursor): If the cursor color is the
++      same as the background, use the face forground as cursor.
++
++2010-12-13  Eli Zaretskii  <eliz@gnu.org>
++
++      * fileio.c (Fexpand_file_name): Doc fix.  (Bug#7617)
++
++2010-12-13  Eli Zaretskii  <eliz@gnu.org>
++
++      * xdisp.c (string_pos_nchars_ahead, c_string_pos)
++      (face_before_or_after_it_pos, next_element_from_string)
++      (next_element_from_c_string, produce_stretch_glyph): Remove unused
++      calculations of maximum string length before calling
++      string_char_and_length and STRING_CHAR_AND_LENGTH.
++      (string_char_and_length): Update commentary: MAXLEN is no longer
++      needed.
++
++2010-12-13  Jan Djärv  <jan.h.d@swipnet.se>
++
++      * keyboard.c (kbd_buffer_get_event): Construct SAVE_SESSION_EVENT
++      as (Qsave_session arg).
++
++      * xsmfns.c (smc_interact_CB): Set arg to Qnil.
++      (smc_die_CB): Make an event with arg Qt.
++      (Fhandle_save_session): If event has Qt as argument,
++      call Fkill_emacs (Bug#7552).
++
++2010-12-13  Chong Yidong  <cyd@stupidchicken.com>
++
++      * buffer.c (transient-mark-mode): Doc fix (Bug#7465).
++
++2010-12-13  Jan Djärv  <jan.h.d@swipnet.se>
++
++      * xsmfns.c (smc_die_CB): Call Fkill_emacs (Bug#7552).
++
++2010-12-13  Chong Yidong  <cyd@stupidchicken.com>
++
++      * dispextern.h (struct it): New member overlay_strings_charpos.
++
++      * xdisp.c (next_overlay_string, load_overlay_strings): Record the
++      charpos where we computed n_overlay_strings.
++      (next_overlay_string): Load overlay strings at recorded position,
++      which may not be the same as the iterator's charpos (Bug#7016).
++
++2010-12-13  Chong Yidong  <cyd@stupidchicken.com>
++
++      * xdisp.c (try_scrolling): Avoid infloop if the first line is
++      obscured due to a vscroll (Bug#7537).
++
++2010-12-13  Jan Djärv  <jhd@zeplinf.localdomain>
++
++      * nsterm.h (FRAME_NS_TOOLBAR_HEIGHT): Rename to FRAME_TOOLBAR_HEIGHT.
++
++      * nsterm.m (x_set_window_size, windowWillResize, initFrameFromEmacs):
++      Use FRAME_TOOLBAR_HEIGHT.
++      (x_set_offset): Handle XNegative and YNegative in
++      f->size_hint_flags (Bug#7510).
++
 +2010-12-11  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * w32fns.c (Fx_show_tip): Call try_window with last argument
 +      TRY_WINDOW_IGNORE_FONTS_CHANGE.  Delete the TODO ifdef: problem
 +      solved.  Round up the tip height to an integral multiple of the
 +      frame's line height.  Add FRAME_COLUMN_WIDTH to the tip width.
 +      (Bug#7398)
 +
 +2010-12-08  Glenn Morris  <rgm@gnu.org>
 +
 +      * fileio.c (Fverify_visited_file_modtime): Default to current buffer.
 +
 +2010-12-06  Lars Magne Ingebrigtsen  <larsi@gnus.org>
 +
 +      * xml.c (parse_region): Ignore blank HTML nodes.
 +      (make_dom): Return CDATA sections (like <style>foo</style>) as
 +      text nodes.
 +
 +2010-12-06  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * lread.c (read1): Allow newstyle unquote outside of backquote.
 +      Disallow old-style backquotes inside new-style backquotes.
 +      Don't count unquotes to figure out when we're "syntactically inside
 +      but semantically outside of a backquote" any more.
 +      Extend the restriction no-unescaped-commas-and-backquotes-in-symbols
 +      to all contexts.
 +
 +2010-12-05  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * process.c: Remove checks for HAVE_SYS_IOCTL_H (Bug#7484).
 +
 +2010-12-04  Andreas Schwab  <schwab@linux-m68k.org>
 +
 +      * Makefile.in (M_FILE): Substitute @M_FILE@ instead of @machfile@.
 +      (S_FILE): Substitute @S_FILE@ instead of @opsysfile@.
 +      * m/arm.h, m/sh3.h, m/xtensa.h: Remove files.
 +
 +2010-12-03  Andreas Schwab  <schwab@linux-m68k.org>
 +
 +      * lisp.h (union Lisp_Object): Explicitly declare signedness of
 +      bit-field.
 +      (XINT): Remove variant for EXPLICIT_SIGN_EXTEND.
 +      * m/alpha.h (EXPLICIT_SIGN_EXTEND): Don't define.
 +      * m/amdx86-64.h (EXPLICIT_SIGN_EXTEND): Likewise.
 +      * m/ia64.h (EXPLICIT_SIGN_EXTEND): Likewise.
 +      * m/ibms390.h (EXPLICIT_SIGN_EXTEND): Likewise.
 +      * m/ibms390x.h (EXPLICIT_SIGN_EXTEND): Likewise.
 +      * m/iris4d.h (EXPLICIT_SIGN_EXTEND): Likewise.
 +      * m/m68k.h (EXPLICIT_SIGN_EXTEND): Likewise.
 +      * m/sparc.h (EXPLICIT_SIGN_EXTEND): Likewise.
 +      * m/template.h (EXPLICIT_SIGN_EXTEND): Likewise.
 +      * m/hp800.h: Remove file.
 +      * m/mips.h: Remove file.
 +
 +2010-12-03  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * nsterm.m (ns_dumpglyphs_image): If drawing cursor, fill background
 +      with cursor color and draw a rectangle around the image (Bug#7412).
 +
 +2010-12-03  Andreas Schwab  <schwab@linux-m68k.org>
 +
 +      * frame.c (x_set_font): Remove unused variable.
 +
 +2010-12-02  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * nsmenu.m (update_frame_tool_bar): Remove NSLog on invalid image.
 +
 +      * nsterm.m (ns_draw_glyph_string): Switch fore- and background if
 +      drawing text under filled box cursor (Bug#7479).
 +
 +2010-11-27  Kenichi Handa  <handa@m17n.org>
 +
 +      * charset.c (emacs_mule_charset): Make it an array of charset ID;
 +      i.e. integer.
 +      (Fdefine_charset_internal): Adjust for the above change.
 +      (init_charset_once): Likewise.
 +
 +      * charset.h (emacs_mule_charset): Adjust the prototype.
 +      Delete duplicated extern.
 +
 +      * coding.c (emacs_mule_char): Adjust for the change of
 +      emacs_mule_charset.
 +
 +      * lread.c (read_emacs_mule_char): Adjust for the change of
 +      emacs_mule_charset.
 +
 +2010-11-27  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * w32.c (_PROCESS_MEMORY_COUNTERS_EX): Don't define with versions
 +      of w32api >= 3.15.  (Bug#6989)  (Bug#7452)
 +
 +2010-11-27  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
 +
 +      * alloc.c (mark_terminals): Ensure that the image cache is marked
 +      even if the terminal object was marked earlier (Bug#6301).
 +
 +2010-11-21  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * editfns.c (Fbyte_to_string): Signal an error arg is not a byte.
 +
 +2010-11-27  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * gtkutil.c (menubar_map_cb): New function (Bug#7425).
 +      (xg_update_frame_menubar): Connect signal map to menubar_map_cb.
 +      Use 23 as menubar height if 0. (Bug#7425).
 +
 +2010-11-26  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * xdisp.c (set_message_1): Force paragraph direction in echo area
 +      be left-to-right.
 +
 +      * keyboard.c (make_lispy_position): Put a meaningful value in yret
 +      when the click is on the header or mode line.
 +
 +2010-11-25  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * xdisp.c (set_cursor_from_row): Don't forget to consider the
 +      `cursor' property of the first character in overlay strings.
 +      (Bug#7474)  (Bug#7481)
 +
 +2010-11-24  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * nsterm.m (NSLeftControlKeyMask, NSLeftCommandKeyMask)
 +      (NSLeftAlternateKeyMask): New defines.
 +      (keyDown): Parse left and right keys separately (Bug#7458).
 +      Compare Left key masks exactly (Bug#7458).
 +
 +2010-11-23  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * intervals.c (temp_set_point_both): Define before calling, to
 +      avoid GCC warnings.
 +
 +2010-11-23  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * nsmenu.m: Use #include <config.h> instead of "config.h".
 +
 +      * term.c (Qglyphless_char,last_glyphless_glyph_frame)
 +      (last_glyphless_glyph_face_id. last_glyphless_glyph_merged_face_id):
 +      Move declarations ...
 +      * lisp.h (Qglyphless_char,last_glyphless_glyph_frame)
 +      (last_glyphless_glyph_face_id. last_glyphless_glyph_merged_face_id):
 +      ... here.
 +
 +      * emacs.c (gdb_use_union, gdb_valbits,gdb_gctypebits)
 +      (gdb_data_seg_bits, gdb_array_mark_flag, PVEC_FLAG)
 +      (gdb_pvec_type):
 +      * print.c (print_output_debug_flag):
 +      * lisp.h (debug_print): Mark as EXTERNALLY_VISIBLE.
 +      (safe_debug_print): New declaration.
 +
 +      * xterm.c:
 +      * systty.h:
 +      * sound.c: Include <sys/ioctl.h> unconditionally.
 +
 +2010-11-22  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
 +
 +      * alloc.c (mark_maybe_object): Return early if given a Lisp
 +      integer (Bug#6301).
 +
 +2010-11-21  Ken Brown  <kbrown@cornell.edu>
 +
 +      * sheap.c (STATIC_HEAP_SIZE): Revert previous change.
 +
 +2010-11-21  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * nsterm.m (ns_right_command_modifier, ns_right_control_modifier):
 +      Define (Bug#7458).
 +      (NSRightCommandKeyMask, NSRightControlKeyMask): Define (Bug#7458).
 +      (EV_MODIFIERS): Check for NSRightCommandKeyMask and
 +      NSRightControlKeyMask also (Bug#7458).
 +      (keyDown): Ditto (Bug#7458).
 +      (syms_of_nsterm): Defvar ns-right-command-modifier and
 +      ns-right-control-modifier (Bug#7458).
 +
 +2010-11-21  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * sysdep.c (sys_subshell): Remove SET_EMACS_PRIORITY.
 +      * emacs.c (emacs_priority, syms_of_emacs): Remove emacs_priority.
 +
 +      * intervals.h (temp_set_point, temp_set_point_both):
 +      * buffer.h (offset_intervals, copy_intervals): Remove INLINE.
 +
 +2010-11-20  Ken Brown  <kbrown@cornell.edu>
 +
 +      * sheap.c (STATIC_HEAP_SIZE): Increase to 13MB.
 +
 +2010-11-20  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * term.c (produce_glyphless_glyph): Use \uNNNN, \UNNNNNN, or
 +      \xNNNNNN for hex-code display of glyphless characters.
 +
 +2010-11-20  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * gtkutil.c (xg_make_tool_item): Take vert_only as argument.
 +      Set important to ! vert_only.
 +      (xg_show_toolbar_item): Don't show label horizontally if
 +      tool item isn't important.
 +      (update_frame_tool_bar): Get TOOL_BAR_ITEM_VERT_ONLY and pass it to
 +      xg_make_tool_item, or update important on existing tool item.
 +
 +      * keyboard.c (QCvert_only): New variable.
 +      (parse_tool_bar_item): Check for QCvert_only.
 +      (syms_of_keyboard): Initialize QCvert_only.
 +
 +      * dispextern.h (tool_bar_item_idx): Add TOOL_BAR_ITEM_VERT_ONLY.
 +
 +2010-11-20  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * msdos.c (dos_rawgetc): Use gen_help_event, instead of doing the
 +      same in-line.
 +
 +2010-11-20  Andreas Schwab  <schwab@linux-m68k.org>
 +
 +      * xfaces.c (lookup_face): Make static.
 +      * dispnew.c (copy_row_except_pointers): Likewise.
 +      * syntax.c (dec_bytepos): Likewise.
 +      (inc_bytepos): Remove.
 +      * dispextern.h (lookup_face): Remove declaration.
 +
 +2010-11-19  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * xdisp.c (set_cursor_from_row): Display cursor after all the
 +      glyphs that come from an overlay.  Don't overstep the last glyph
 +      when skipping glyphs from an overlay.  (Bug#6687)
 +
 +2010-11-18  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * alloc.c (refill_memory_reserve): Move declaration ...
 +      * lisp.h (refill_memory_reserve): ... here.
 +
 +      * strftime.c (_strftime_copytm): Add declaration.
 +
 +      * callproc.c (syms_of_callproc): Use intern_c_string.
 +
 +      Move declarations from .c files to .h files.
 +      * process.c (timers_run):
 +      * minibuf.c (quit_char):
 +      * lread.c (read_emacs_mule_char):
 +      * keyboard.c (minibuf_level, message_enable_multibyte)
 +      (pending_malloc_warning):
 +      * insdel.c (Vselect_active_regions, Vsaved_region_selection)
 +      (Qonly): Remove declarations.
 +      * lisp.h (pending_malloc_warning, Vsaved_region_selection)
 +      (Vselect_active_regions):
 +      * keyboard.h (timers_run):  Add declarations.
 +
 +      * strftime.c (my_strftime_gmtime_r, my_strftime_localtime_r)
 +      (tm_diff): Convert definitions to standard C.
 +      (extra_args_spec_iso): Remove, unused.
 +
 +2010-11-18  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * xsettings.c (init_gconf): Check HAVE_G_TYPE_INIT.
 +
 +      * config.in (HAVE_G_TYPE_INIT): New symbol.
 +
 +2010-11-18  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * lread.c (Fload): Mention `load-in-progress' and
 +      `load-file-name'.  (Bug#7346)
 +
 +      * keyboard.c (kbd_buffer_nr_stored): Define only ifdef subprocesses.
 +      (kbd_buffer_store_event_hold, kbd_buffer_get_event)
 +      (tty_read_avail_input): Call kbd_buffer_nr_stored only ifdef
 +      subprocesses.  Use buffer_free only ifdef subprocesses.
 +
 +      * process.c (init_process) [subprocesses]: Init kbd_is_on_hold in
 +      the subprocesses version, not in the non-subprocesses one.
 +
 +      * Makefile.in: Don't use ## comment, it breaks the MSDOS build.
 +
 +2010-11-17  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * xdisp.c (set_cursor_from_row): Fix cursor positioning in empty
 +      lines on text-mode terminals.  (bug#7417)
 +
 +2010-11-17  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * xterm.c (get_current_wm_state): Rename from get_current_vm_state.
 +      (do_ewmh_fullscreen, x_handle_net_wm_state): Update callers.
 +
 +2010-11-17  Kenichi Handa  <handa@m17n.org>
 +
 +      * coding.c (Fset_terminal_coding_system_internal): Fix previous
 +      change (set charset-ID list instead of charset-symbol list).
 +
 +2010-11-16  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * keyboard.c (make_lispy_position): For text area clicks, record Y
 +      pixel position relative to the text area, excluding header line.
 +      Also change X and Y to Lisp_Objects, not pointers; don't return
 +      coordinate values via pointers.  Pass ON_TEXT_AREA coordinate to
 +      buffer_posn_from_coords counting from the start of the text area.
 +      (Fposn_at_x_y, make_lispy_event): Callers changed.
 +
 +      * window.c (coordinates_in_window): Change X and Y to ints rather
 +      than pointers; don't return coordinates via pointers.
 +      (struct check_window_data): Change X and Y from pointers to ints.
 +      (window_from_coordinates): Remove args WX and WY; don't return
 +      coordinates via pointers.
 +      (Fcoordinates_in_window_p, window_from_coordinates):
 +      (check_window_containing, Fwindow_at): Callers changed.
 +      (window_relative_x_coord): New function.
 +
 +      * window.h (window_from_coordinates, window_relative_x_coord):
 +      Update prototypes.
 +
 +      * dispnew.c (buffer_posn_from_coords): Assume that X counts from
 +      the start of the text area.
 +
 +      * xdisp.c (remember_mouse_glyph): Change window_from_coordinates
 +      call.  Use window_relative_x_coord.
 +      (note_mouse_highlight): Change window_from_coordinates call.
 +
 +      * w32term.c (w32_read_socket):
 +      * msdos.c (dos_rawgetc):
 +      * xterm.c (handle_one_xevent): Likewise.
 +
 +2010-11-16  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * strftime.c (LOCALE_PARAM_DECL): Update for standard C.
 +      (LOCALE_PARAM, LOCALE_PARAM_PROTO): Remove, unused.
 +      (memcpy_lowcase, so_week_days, extra_args_spec, emacs_strftimeu):
 +      Convert definitions to standard C.
 +      * regex.c: Do not include <stdlib.h>, config.h does it.
 +      Include unistd.h.
 +      (xrealloc, init_syntax_once, re_match, regcomp, regexec)
 +      (regerror, regfree): Convert definitions to standard C.
 +      * mktime.c (my_mktime_localtime_r, ydhms_tm_diff, ranged_convert)
 +      (__mktime_internal): Convert definitions to standard C.
 +
 +2010-11-15  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * w32proc.c:
 +      * w32inevt.c:
 +      * w32heap.c:
 +      * w32.c: Remove config.h include guards.
 +
 +      * callproc.c (child_setup): Reorder code to simplify #ifdefs.
 +      No code changes.
 +
 +      * process.c: Include <sys/ioctl.h> unconditionally,
 +      keyboard.c already does it.
 +
 +      * keyboard.c (pending_malloc_warning): Add const to match
 +      definition in alloc.c.
 +      (Fset_input_interrupt_mode): Simplify #ifdefs.
 +
 +2010-11-15  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      Clean up systty.h macros.
 +      * systty.h (EMACS_GET_TTY_PGRP, EMACS_SET_TTY_PGRP, EMACS_GET_TTY)
 +      (EMACS_SET_TTY): Remove unneeded abstraction, instead inline the
 +      definition in all uses.
 +      (EMACS_TTY_TABS_OK): Remove, it has a single user.
 +      * sysdep.c (discard_tty_input, child_setup_tty)
 +      (init_sys_modes, tabs_safe_p, reset_sys_modes):
 +      * emacs.c (shut_down_emacs):
 +      * callproc.c (child_setup):
 +      * term.c (dissociate_if_controlling_tty): Inline removed macros.
 +
 +      * data.c (sign_extend_temp, sign_extend_lisp_int): Remove, unused.
 +
 +2010-11-14  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * w32fns.c (Fx_create_frame):
 +      * nsfns.m (Fx_create_frame): Don't check for the cursorColor
 +      resource here; it's now done at startup.
 +
 +2010-11-14  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * xterm.c (set_wm_state): Add Qnil to final cons.
 +
 +      * xselect.c (x_send_client_event): Remove unused variables cons and
 +      size.
 +
 +2010-11-14  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
 +
 +      * keyboard.c (modify_event_symbol) : Add const to array elements of
 +      arg NAME_TABLE.
 +      (lispy_accent_keys, lispy_function_keys, lispy_multimedia_keys)
 +      (lispy_kana_keys, iso_lispy_function_keys, lispy_wheel_names)
 +      (lispy_wheel_names, lispy_drag_n_drop_names, modifier_names):
 +      Add const to array elements.
 +      (scroll_bar_parts): Make static.  Fix position of const.
 +
 +      * w32fns.c (lispy_function_keys): Add const to extern.
 +
 +      * w32inevt.c (lispy_function_keys): Likewise.
 +
 +2010-11-14  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * xfns.c (Fx_create_frame): Don't check for the cursorColor
 +      resource here; it's now done at startup.
 +
 +2010-11-13  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * xmenu.c: Make it clear that ../lwlib/lwlib.h is only needed for Motif.
 +
 +      Fix compilation on Solaris.
 +      * sysdep.c: Do not #include <term.h>.
 +      (tputs): Add declaration, similar to what cm.c does.  (Bug#7178)
 +
 +      * s/ms-w32.h (HAVE_TERMIOS_H): Do not undef, not used anymore.
 +
 +2010-11-13  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * xterm.c (set_wm_state): Don't put Atom in cons, call
 +      make_fixnum_or_float on them first.
 +      (x_term_init): Initialize Xatom_net_supporting_wm_check and
 +      Xatom_net_supported correctly.
 +
 +      * xselect.c (x_send_client_event): Move CHECK_STRING ...
 +      (Fx_send_client_event): to here.
 +
 +2010-11-13  Martin Rudalics  <rudalics@gmx.at>
 +
 +      * window.c (Fwindow_use_time): New function.
 +
 +2010-11-13  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * xdisp.c (set_cursor_from_row): Fix cursor positioning on
 +      zero-width characters.
 +
 +      * .gdbinit (pgx): Adapt to latest changes in `struct glyph'.
 +
 +      * w32term.c (x_draw_glyphless_glyph_string_foreground): Draw the
 +      box before drawing the glyphs inside it.
 +
 +      * xdisp.c (syms_of_xdisp) <glyphless-char-display>: Doc fix.
 +
 +      * dispextern.h (enum glyphless_display_method):
 +      Rename GLYPHLESS_DISPLAY_HEXA_CODE to GLYPHLESS_DISPLAY_HEX_CODE.
 +      All users changed.
 +
 +      * term.c (append_glyphless_glyph, produce_glyphless_glyph):
 +      Fix comments.
 +      (produce_glyphless_glyph): Enclose "U+nnnn" and "empty box"
 +      whitespace in "[]", to simulate a box.  Don't use uninitialized
 +      variable `width'.
 +
 +2010-11-11  Julien Danjou  <julien@danjou.info>
 +
 +      * xsettings.c (init_xsettings): Use already fetch atoms.
 +
 +      * xsmfns.c (create_client_leader_window): Use SM_CLIENT_ID atom
 +      from dpyinfo.
 +
 +      * xselect.c (Fx_send_client_event): Split and create
 +      x_send_client_event.
 +
 +      * lisp.h: Do not EXFUN Fx_send_client_event.
 +
 +      * xterm.c (x_set_frame_alpha): Use _NET_WM_WINDOW_OPACITY atom
 +      from dpyinfo.
 +      (wm_supports): Use atoms from dpyinfo.
 +      (do_ewmh_fullscreen): Use atoms from dpyinfo.
 +      (x_ewmh_activate_frame): Use atoms from dpyinfo.
 +      (xembed_set_info): Use atoms from dpyinfo.
 +      (x_term_init): Fetch _XEMBED_INFO, _NET_SUPPORTED,
 +      _NET_SUPPORTING_WM_CHECK, _NET_WM_WINDOW_OPACITY and
 +      _NET_ACTIVE_WINDOW, XSETTINGS  atoms.
 +      Get all atoms in one round-trip.
 +      (set_wm_state): Use x_send_client_event rather than
 +      Fx_send_client_event, using Atom directly.
 +      (x_ewmh_activate_frame): Ditto.
 +      (x_set_sticky): Pass atoms to set_wm_state.
 +      (do_ewmh_fullscreen): Ditto.
 +
 +
 +      * xterm.h (x_display_info): Add Xatom_net_supported,
 +      Xatom_net_supporting_wm_check, Xatom_net_active_window,
 +      Xatom_net_wm_window_opacity, Xatom_XEMBED_INFO, SM_CLIENT_ID.
 +
 +      * xfns.c (Fx_show_tip): Fix typo in docstring.
 +
 +2010-11-11  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * cmds.c (Fself_insert_command): Don't call XFASTINT without checking
 +      it's not negative.
 +
 +2010-11-10  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
 +
 +      * font.c (font_filter_properties): Add const to array elements of
 +      properties args.
 +
 +      * font.h (font_filter_properties): Likewise.
 +
 +      * ftfont.c (ftfont_booleans, ftfont_non_booleans): Add const to array
 +      elements.
 +
 +      * w32font.c (w32font_booleans, w32font_non_booleans): Likewise.
 +
 +2010-11-10  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * dbusbind.c (QCdbus_type_unix_fd): New Lisp object.
 +      (XD_BASIC_DBUS_TYPE, xd_symbol_to_dbus_type, xd_signature)
 +      (xd_append_arg, xd_retrieve_arg): Support DBUS_TYPE_UNIX_FD.
 +      (Fdbus_call_method): Add DBUS_TYPE_UNIX_FD type mapping to doc string.
 +      (syms_of_dbusbind): Initialize QCdbus_type_unix_fd).
 +
 +2010-11-10  Glenn Morris  <rgm@gnu.org>
 +
 +      * emacs.c (syms_of_emacs) <system-type>: Doc fix.
 +
 +2010-11-09  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * xfns.c (x_real_positions): Fix declaration-after-statement problem.
 +
 +2010-11-09  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * image.c (free_image): Don't garbage the frame here, since this
 +      function can be called while redisplaying (Bug#7210).
 +      (uncache_image): Garbage the frame here (Bug#6426).
 +
 +2010-11-09  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * xfns.c (x_real_positions): Only use _NET_FRAME_EXTENTS if our
 +      parent is the root window.  Check this after traversing window tree.
 +
 +      * xterm.c (x_term_init): Initialize Xatom_net_frame_extents.
 +
 +      * xterm.h (struct x_display_info): Xatom_net_frame_extents is new.
 +
 +      * xfns.c (x_real_positions): Try to get _NET_FRAME_EXTENTS first
 +      before traversing window tree (Bug#5721).
 +
 +2010-11-07  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * xfns.c (set_machine_and_pid_properties): Let X set WM_CLIENT_MACHINE.
 +
 +      * xdisp.c (note_mode_line_or_margin_highlight):
 +      Initialize Cursor to No_Cursor for HAVE_WINDOW_SYSTEM also.
 +
 +2010-11-06  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * xfns.c (Fx_show_tip): If any of the tool-tip text lines is R2L,
 +      adjust width of tool-tip frame to the width of text, excluding the
 +      stretch glyph at the beginning of R2L glyph rows.
 +
 +      * w32fns.c (Fx_show_tip): Likewise.
 +
 +2010-11-06  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * nsfont.m: Include termchar for new mouse-highlight.
 +      (nsfont_draw): Use MOUSE_HL_INFO.
 +
 +2010-11-05  Eli Zaretskii  <eliz@gnu.org>
 +
 +      Unify mouse-highlight code for all GUI and TTY sessions.
 +
 +      * term.c: Remove static mouse_face_* variables.  All users
 +      changed.
 +      (term_show_mouse_face, term_clear_mouse_face)
 +      (fast_find_position, term_mouse_highlight): Functions deleted.
 +      (tty_draw_row_with_mouse_face): New function.
 +      (term_mouse_movement): Call note_mouse_highlight instead of
 +      term_mouse_highlight.
 +
 +      * nsterm.m (ns_update_window_begin, ns_update_window_end)
 +      (ns_update_end, x_destroy_window, ns_frame_up_to_date)
 +      (ns_dumpglyphs_box_or_relief, ns_maybe_dumpglyphs_background)
 +      (ns_dumpglyphs_image, ns_dumpglyphs_stretch)
 +      (ns_initialize_display_info, keyDown, mouseMoved, mouseExited):
 +      Replace Display_Info with Mouse_HLInfo everywhere where
 +      mouse_face_* members were accessed for mouse highlight purposes.
 +
 +      * xterm.c (x_update_window_begin, x_update_window_end)
 +      (x_update_end, XTframe_up_to_date, x_set_mouse_face_gc)
 +      (handle_one_xevent, x_free_frame_resources, x_term_init):
 +      Replace Display_Info with Mouse_HLInfo everywhere where mouse_face_*
 +      members were accessed for mouse highlight purposes.
 +
 +      * w32term.c (x_update_window_begin, x_update_window_end)
 +      (x_update_end, w32_read_socket, x_free_frame_resources)
 +      (w32_initialize_display_info): Replace Display_Info with
 +      Mouse_HLInfo everywhere where mouse_face_* members were accessed
 +      for mouse highlight purposes.
 +
 +      * xdisp.c (show_mouse_face, note_mode_line_or_margin_highlight)
 +      (note_mouse_highlight) [HAVE_WINDOW_SYSTEM]: Don't run GUI code
 +      unless the frame is on a window-system.
 +      (get_tool_bar_item, handle_tool_bar_click)
 +      (note_tool_bar_highlight, draw_glyphs, erase_phys_cursor)
 +      (show_mouse_face, clear_mouse_face, coords_in_mouse_face_p)
 +      (note_mode_line_or_margin_highlight, note_mouse_highlight)
 +      (x_clear_window_mouse_face, cancel_mouse_face, expose_frame):
 +      Replace Display_Info with Mouse_HLInfo everywhere where
 +      mouse_face_* members were accessed for mouse highlight purposes.
 +      (coords_in_mouse_face_p): Move prototype out of the
 +      HAVE_WINDOW_SYSTEM conditional.
 +      (x_y_to_hpos_vpos, frame_to_window_pixel_xy): Move out of the
 +      HAVE_WINDOW_SYSTEM block.
 +      (try_window_id) [HAVE_GPM || MSDOS]:
 +      Call x_clear_window_mouse_face.
 +      (draw_row_with_mouse_face): Implementation for HAVE_WINDOW_SYSTEM
 +      systems.  Call tty_draw_row_with_mouse_face for TTY systems.
 +      (show_mouse_face): Call draw_row_with_mouse_face, instead of
 +      calling draw_glyphs directly.
 +      (show_mouse_face, clear_mouse_face, coords_in_mouse_face_p)
 +      (cursor_in_mouse_face_p, rows_from_pos_range)
 +      (mouse_face_from_buffer_pos, mouse_face_from_string_pos)
 +      (note_mode_line_or_margin_highlight, note_mouse_highlight)
 +      (x_clear_window_mouse_face, cancel_mouse_face): Move out of the
 +      HAVE_WINDOW_SYSTEM block.  Ifdef away window-system specific
 +      fragments.
 +      (note_mouse_highlight): Call popup_activated for MSDOS as well.
 +      Clear mouse highlight if pointer is over glyphs whose OBJECT is an
 +      integer.
 +      (mouse_face_from_buffer_pos): Add parentheses around && within ||.
 +      (x_consider_frame_title, tool_bar_lines_needed):
 +      Move prototypes to HAVE_WINDOW_SYSTEM-only part.
 +      (get_window_cursor_type): Move inside a HAVE_WINDOW_SYSTEM-only
 +      part.  Remove "#ifdef HAVE_WINDOW_SYSTEM" from body of function.
 +      (null_glyph_slice): Move declaration into HAVE_WINDOW_SYSTEM-only
 +      part.
 +
 +      * dispnew.c (mirror_make_current): Set Y coordinate of the
 +      mode-line and header-line rows.
 +      (init_display): Setup initial frame's output_data for text
 +      terminal frames.
 +
 +      * xmenu.c (popup_activated): Don't define on MSDOS, which now has
 +      its own definition on msdos.c.
 +
 +      * msdos.c (show_mouse_face, clear_mouse_face)
 +      (fast_find_position, IT_note_mode_line_highlight)
 +      (IT_note_mouse_highlight): Functions deleted.
 +      (IT_frame_up_to_date, dos_rawgetc): Call note_mouse_highlight
 +      instead of IT_note_mouse_highlight.
 +      (draw_row_with_mouse_face, popup_activated): New functions.
 +      (dos_set_window_size, draw_row_with_mouse_face, IT_update_begin)
 +      (IT_update_end, IT_frame_up_to_date, internal_terminal_init)
 +      (dos_rawgetc): Replace Display_Info with Mouse_HLInfo everywhere
 +      where mouse_face_* members were accessed for mouse highlight
 +      purposes.
 +
 +      * msdos.h (initialize_msdos_display): Add prototype.
 +
 +      * frame.h (MOUSE_HL_INFO): New macro.
 +
 +      * lisp.h (Mouse_HLInfo): New data type.
 +
 +      * xterm.h (struct x_display_info):
 +      * w32term.h (struct w32_display_info):
 +      * nsterm.h (struct ns_display_info):
 +      * termchar.h (struct tty_display_info): Use it instead of
 +      mouse_face_* members.
 +
 +      * dispextern.h (show_mouse_face, clear_mouse_face): Update type of
 +      1st argument.
 +      (frame_to_window_pixel_xy, note_mouse_highlight)
 +      (x_clear_window_mouse_face, cancel_mouse_face, clear_mouse_face)
 +      (show_mouse_face, cursor_in_mouse_face_p): Move prototypes out of
 +      HAVE_WINDOW_SYSTEM conditional.
 +      (draw_row_with_mouse_face): Declare prototype.
 +      (tty_draw_row_with_mouse_face): Declare prototype.
 +
 +2010-11-05  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * term.c (append_glyphless_glyph, produce_glyphless_glyph):
 +      Remove unused variables.
 +
 +2010-11-05  Adrian Robert  <Adrian.B.Robert@gmail.com>
 +
 +      * nsterm.m (EmacsView-mouseExited:): Correct error in conditional
 +      logic pointed out by Eli Zaretskii.
 +
 +2010-11-04  Lars Magne Ingebrigtsen  <larsi@gnus.org>
 +
 +      * coding.c (coding-category-list): Refer to set-coding-system-priority
 +      instead of the obsolete set-coding-priority in the doc string.
 +
 +
 +2010-11-04  Adrian Robert  <Adrian.B.Robert@gmail.com>
 +
 +      * nsfont.m (nsfont_draw):  Correct previous patch to return
 +      correct value.
 +      * nsimage.m (EmacsImage-setXBMColor:): Correct previous patch:
 +      don't change the method signature, change the return.
 +
 +2010-11-04  Ismail Donmez  <ismail@namtrac.org>  (tiny change)
 +
 +      * nsfont.m (nsfont_draw)
 +      * nsimage.m (EmacsImage-setXBMColor:)
 +      * nsterm.m (EmacsView-performDragOperation:): Correct empty return.
 +
 +2010-11-03  Julien Danjou  <julien@danjou.info>
 +
 +      * image.c (gif_load): Add support for transparency and specified
 +      :background.
 +
 +2010-11-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * dispextern.h (lookup_glyphless_char_display): Extern it.
 +
 +      * termhooks.h (struct terminal): New member charset_list.
 +
 +      * coding.c (Fset_terminal_coding_system_internal): Set the
 +      `charset_list' member of struct terminal.
 +
 +      * term.c (produce_glyphs): Handle the case it->what == IT_GLYPHLESS.
 +      (append_glyphless_glyph, produce_glyphless_glyph): New functions.
 +
 +      * xdisp.c (lookup_glyphless_char_display): Make it non-static.
 +      (lookup_glyphless_char_display): Set it->what at the end.
 +      (last_glyphless_glyph_frame, last_glyphless_glyph_face_id)
 +      (last_glyphless_glyph_merged_face_id): Make them non-static.
 +
 +      * w32term.c (x_draw_glyphless_glyph_string_foreground):
 +      Fix the arg with_background for font->driver->draw.
 +
 +2010-11-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * w32gui.h (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2):
 +      Surround chp by parentheses.
 +
 +2010-11-01  Kenichi Handa  <handa@m17n.org>
 +
 +      Implement various display methods for glyphless characters.
 +
 +      * xdisp.c (Qglyphless_char, Vglyphless_char_display)
 +      (Qglyphless_char_display, Qhexa_code, Qempty_box, Qthin_space)
 +      (Qzero_width): New variables.
 +      (THIN_SPACE_WIDTH): New macro.
 +      (lookup_glyphless_char_display): New funciton.
 +      (last_glyphless_glyph_frame, last_glyphless_glyph_face_id)
 +      (last_glyphless_glyph_merged_face_id): New variables.
 +      (get_next_display_element): Check glyphless characters.
 +      (redisplay_internal): Initialize last_glyphless_glyph_frame and
 +      last_glyphless_glyph_face_id.
 +      (fill_glyphless_glyph_string): New function.
 +      (BUILD_GLYPHLESS_GLYPH_STRING): New macro.
 +      (BUILD_GLYPH_STRINGS): Handle the case GLYPHLESS_GLYPH.
 +      (append_glyphless_glyph, produce_glyphless_glyph): New functions.
 +      (x_produce_glyphs): If a suitable font is not found, produce a
 +      glyphless glyph.  Handle the case it->what == IT_GLYPHLESS.
 +      (syms_of_xdisp): Intern and staticpro Qglyphless_char,
 +      Qglyphless_char_display, Qhexa_code, Qempty_box, Qthin_space, and
 +      Qzero_width.
 +      (Vglyphless_char_display): Declare it as a Lisp variable.
 +
 +      * dispextern.h (enum glyph_type): Add GLYPHLESS_GLYPH.
 +      (struct glyph): Change the size of the member "type" to 3.
 +      Add glyphless to the union slice and u.
 +      (enum display_element_type): Add IT_GLYPHLESS.
 +      (enum glyphless_display_method): New enum.
 +      (struct it): New member glyphless_method.
 +      (Vglyphless_char_display): Extern it.
 +
 +      * xterm.c (x_draw_glyphless_glyph_string_foreground): New function.
 +      (x_draw_glyph_string): Handle the case GLYPHLESS_GLYPH.
 +
 +      * w32term.c (x_draw_glyphless_glyph_string_foreground): New function.
 +      (x_draw_glyph_string): Handle the case GLYPHLESS_GLYPH.
 +
 +      * nsterm.m (ns_draw_glyph_string): Handle the case
 +      GLYPHLESS_GLYPH (the detail is not yet implemented).
 +
 +2010-10-31  Glenn Morris  <rgm@gnu.org>
 +
 +      * xterm.c (x_connection_closed) [USE_X_TOOLKIT]: Fix merge, maybe.
 +
 +      * frame.c (syms_of_frame) <tool-bar-mode>:
 +      Default to nil if !HAVE_WINDOW_SYSTEM.  (Bug#7299)
 +
 +2010-10-31  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * xterm.c (x_connection_closed): Print informative error message
 +      when aborting on GTK.  This requires using shut_down_emacs
 +      directly instead of Fkill_emacs.
 +
 +2010-10-29  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * emacs.c (main): Call syms_of_filelock unconditionally.
 +
 +      * filelock.c (syms_of_filelock): Move out of #ifdef CLASH_DETECTION
 +      clause, but keep part of it conditioned on CLASH_DETECTION.
 +
 +2010-10-29  Glenn Morris  <rgm@gnu.org>
 +
 +      * nsfns.m (Fx-display-save-under, Fx-open-connection)
 +      (Fxw-color-defined-p, Fxw-display-color-p, Fx-show-tip):
 +      * w32fns.c (Fxw_color_defined_p, Fx_open_connection):
 +      * xfns.c (Fxw_color_defined_p, Fx_open_connection):
 +      Sync docs between X, W32, NS.
 +
 +      * buffer.c (syms_of_buffer) <abbrev-mode, transient-mark-mode>:
 +      * frame.c (syms_of_frame) <tool-bar-mode>: Move doc here from Lisp.
 +
 +2010-10-26  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * eval.c (init_eval_once): Set max_lisp_eval_depth to 600;
 +      otherwise, bootstrapping on Windows fails to compile macroexp.el.
 +
 +2010-10-26  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * cmds.c (internal_self_insert): Don't insert if argument N is
 +      zero or negative.  (Bug#7281)
 +
 +2010-10-26  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * gtkutil.c (qttip_cb): Set title to empty for ATK (Bug#7278).
 +
 +2010-10-25  Glenn Morris  <rgm@gnu.org>
 +
 +      * Makefile.in (SOME_MACHINE_LISP): Remove easymenu.elc.
 +
 +2010-10-24  Glenn Morris  <rgm@gnu.org>
 +
 +      * w32fns.c (Fx_synchronize, Fx_change_window_property)
 +      (Fx_window_property, Fx_file_dialog):
 +      * xfns.c (Fx_synchronize, Fx_change_window_property)
 +      (Fx_window_property, Fx_file_dialog): Sync docs between w32 and X.
 +
 +2010-10-24  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * xterm.c (x_connection_closed): Kill Emacs unconditionally.
 +
 +2010-10-24  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * frame.c (Fframep, Fwindow_system): Deprecate use as a predicate.
 +
 +      * dispnew.c (syms_of_display) <initial-window-system, window-system>:
 +      Deprecate use as a boolean flag.
 +
 +2010-10-24  Jim Meyering  <jim@meyering.net>
 +
 +      * emacs.c (argmatch): Don't treat "--" as "--chdir".
 +
 +2010-10-24  Glenn Morris  <rgm@gnu.org>
 +
 +      * w16select.c (syms_of_win16select) <selection-coding-system>:
 +      <next-selection-coding-system>:
 +      * w32select.c (syms_of_w32select) <selection-coding-system>:
 +      <next-selection-coding-system>:
 +      Sync docs with select.el.
 +
 +      * xfaces.c (syms_of_xfaces) <tty-defined-color-alist>: Sync doc with
 +      Lisp version.
 +
 +      * w32term.c (syms_of_w32term) <x-use-underline-position-properties>:
 +      Sync doc with the xterm.c version.
 +
 +      * w32term.c (syms_of_w32term) <x-toolkit-scroll-bars>:
 +      * xterm.c (syms_of_xterm) <x-toolkit-scroll-bars>: Sync docs.
 +
 +2010-10-23  Glenn Morris  <rgm@gnu.org>
 +
 +      * buffer.c (syms_of_buffer) <cursor-in-non-selected-windows>:
 +      * frame.c (syms_of_frame) <menu-bar-mode>:
 +      * xdisp.c (syms_of_xdisp) <auto-hscroll-mode, display-hourglass>:
 +      <hourglass-delay>: Sync docs with Lisp.
 +
 +2010-10-23  Eli Zaretskii  <eliz@gnu.org>
 +
 +      Implement mouse highlight for bidi-reordered lines.
 +
 +      * xdisp.c (fast_find_string_pos): #ifdef away, not used anymore.
 +      (mouse_face_from_string_pos): New function, replaces
 +      fast_find_string_pos.
 +      (note_mouse_highlight): Call it instead of fast_find_string_pos.
 +      (note_mode_line_or_margin_highlight): Support bidi-reordered
 +      strings and R2L glyph rows.  Fix comments.
 +      (note_mouse_highlight): When bidi reordering is turned on in a
 +      buffer, call next-single-property-change and
-       * eval.c (Fbacktrace): Don't overwrite print-level on exit.  Also
-       only override Vprint_level if it isn't already bound, and increase
++      previous-single-property-change with last argument nil.
++      Clear mouse highlight when mouse pointer is in a R2L row on the stretch
 +      glyph that stands for no text beyond the line end.
 +      (row_containing_pos): Don't return too early when CHARPOS is in a
 +      bidi-reordered continued line.  Return immediately when the first
 +      hit is found in a line that is not continued, or when an exact
 +      match for CHARPOS is found.
 +      (rows_from_pos_range): New function.
 +      (mouse_face_from_buffer_pos): Use it instead of calling
 +      row_containing_pos for START_CHARPOS and END_CHARPOS.  Rewrite the
 +      function to support mouse highlight in bidi-reordered lines and
 +      not to assume that START_CHARPOS is always in mouse_face_beg_row.
 +      If necessary, swap mouse_face_beg_row and mouse_face_end_row so
 +      that the former is always above the latter or identical to it.
 +      (show_mouse_face): Support drawing highlighted R2L lines.
 +      (coords_in_mouse_face_p): New function, bidi-aware.
 +      (cursor_in_mouse_face_p, note_mouse_highlight, erase_phys_cursor):
 +      Call it instead of comparing with mouse-face members of dpyinfo.
 +      (note_mode_line_or_margin_highlight): Fix confusingly swapped
 +      usage of hpos and vpos.
 +
 +2010-10-22  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * xrdb.c: Include keyboard.h for MOTIF.
 +
 +      * xmenu.c: Revert 2010-07-27 change: lwlib.h is needed for
 +      MOTIF (Bug#7263).
 +
 +      * xfns.c: Include Xm/TextF and Xm/List.
 +      (file_dialog_cb, file_dialog_unmap_cb, clean_up_file_dialog):
 +      Make ANSI prototypes.
 +
 +2010-10-22  Glenn Morris  <rgm@gnu.org>
 +
 +      * Makefile.in (SOME_MACHINE_LISP): Add w32-vars.
 +      Remove ccl and duplicate mouse.
 +
 +2010-10-21  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * insdel.c (prepare_to_modify_buffer): Don't set
 +      saved-region-selection if modification hooks are disabled.
 +
 +2010-10-19  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * cmds.c (Fdelete_char): Doc fix.
 +
 +2010-10-19  Ken Brown  <kbrown@cornell.edu>
 +
 +      * s/cygwin.h (SIGNALS_VIA_CHARACTERS): New define (bug#7225).
 +
 +2010-10-19  Kenichi Handa  <handa@m17n.org>
 +
 +      Fix incorrect font metrics when the same font is opened with
 +      different pixelsizes.
 +
 +      * xftfont.c: Include composite.h.
 +      (xftfont_shape): New function.
 +      (syms_of_xftfont): Set xftfont_driver.shape.
 +
 +2010-10-18  Julien Danjou  <julien@danjou.info>
 +
 +      * frame.c (Fframe_pointer_visible_p):
 +      Add `frame-pointer-visible-p' to get the pointer visibility.
 +
 +2010-10-18  Lars Magne Ingebrigtsen  <larsi@gnus.org>
 +
 +      * gnutls.c (emacs_gnutls_read): Return 0 if we get a
 +      non-"EAGAIN"-like error to signal to Emacs that the socket should
 +      be closed.
 +
 +2010-10-15  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * unexcoff.c (make_hdr): Fix prototype according to changes in
 +      2010-10-03T13:59:56Z!dann@ics.uci.edu.
 +
 +      * image.c (tiff_load): Cast 3rd argument to avoid compiler warning.
 +
 +2010-10-15  Tassilo Horn  <tassilo@member.fsf.org>
 +
 +      * Makefile.in (really-oldXMenu): Fix typo in variable name that
 +      made building the X menu fail.
 +      (really-oldXMenu): Fix my previous fix.
 +
 +2010-10-14  Damyan Pepper  <damyanp@gmail.com>
 +
 +      Fix handling of font properties on Windows (bug#6303).
 +      * font.c (font_filter_properties): New function, refactored from
 +      ftfont_filter_properties.
 +      * font.h (font_filter_properties): Declare.
 +      * ftfont.c (ftfont_filter_properties): Use font_filter_properties.
 +      * w32font.c (w32font_booleans, w32font_non_booleans): New variables.
 +      (w32font_filter_properties): New function.
 +      (w32font_driver): Add w32font_filter_properties.
 +
 +2010-10-14  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * font.c (Ffont_variation_glyphs):
 +      * ccl.c (Fccl_execute_on_string): Fix typo in docstring.
 +
 +2010-10-14  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * w32fns.c (w32_wnd_proc, file_dialog_callback):
 +      * w32font.c (w32_generic_family):
 +      * w32inevt.c (key_event):
 +      * w32menu.c (fill_in_menu):
 +      * w32proc.c (reader_thread, w32_executable_type, compare_env)
 +      (merge_and_sort_env, int_from_hex, enum_locale_fn, enum_codepage_fn):
 +      * w32term.c (w32_read_socket): Make static.
 +
 +2010-10-13  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * image.c (DEF_IMGLIB_FN): Add argument to adapt to strict
 +      prototypes; all callers changed.
 +
 +2010-10-13  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * makefile.w32-in (TLIB2): Rename from TLIBW32.
 +      (OBJ2): New macro.
 +      (WIN32OBJ, FONTOBJ): Remove.
 +      (OBJ1): Redistribute object files with OBJ2.
 +      (LIBS, $(TEMACS)): Use TLIB2.
 +      (make-buildobj-CMD, make-buildobj-SH): Use OBJ2.
 +      ($(TLIB2), TAGS, TAGS-LISP, TAGS-gmake): Depend on OBJ2.
 +
 +2010-10-13  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * emacs.c (Vdynamic_library_alist)
 +      (syms_of_emacs) <dynamic-library-alist>: Move from image.c and rename.
 +      Doc fix.
 +
 +      * lisp.h (Vdynamic_library_alist): Declare extern.
 +
 +      * image.c (Vimage_library_alist)
 +      (syms_of_image) <image-library-alist>: Move to emacs.c and rename.
 +      (lookup_image_type): Use Vdynamic_library_alist.
 +      (Finit_image_library): Doc fix.
 +
 +2010-10-12  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * Makefile.in (lispsource, libsrc, etc, oldxmenudir, lwlibdir)
 +      (lispdir): Remove trailing /, update all uses.
 +
 +2010-10-12  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * nsterm.m (Qleft): Declare.
 +      (ns_right_alternate_modifier): New variable
 +      (NSRightAlternateKeyMask): New define.
 +      (EV_MODIFIERS): Parse NSRightAlternateKeyMask if
 +      ns_right_alternate_modifier isn't Qleft.
 +      (keyDown): If ns_right_alternate_modifier isn't Qleft, use it
 +      as emacs modifier for NSRightAlternateKeyMask.
 +      (syms_of_nsterm): DEFVAR_LISP ns-right-alternate-modifier.
 +
 +2010-10-10  Lars Magne Ingebrigtsen  <larsi@gnus.org>
 +
 +      * gnutls.c (emacs_gnutls_write): If we're trying to write before
 +      gnutls is ready, return EAGAIN as the errno.
 +
 +2010-10-10  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * vm-limit.c:
 +      * unexhp9k800.c:
 +      * unexelf.c:
 +      * unexaix.c:
 +      * termcap.c: Remove #ifdef emacs / #ifndef emacs code, unused.
 +
 +      * Makefile.in (temacs): Use $(ALL_CFLAGS) on the link line.
 +      (PROFILING_LDFLAGS): Remove, not needed anymore.
 +
 +      * Makefile.in: Use $(...) everywhere instead of ${...}
 +      (CRT_DIR): Move near potential user.
 +      (START_FILE): Move near CRT_DIR, it might use it.
 +
 +      * sysdep.c (LPASS8): Remove, unused.
 +      (emacs_ospeed): Change from being a global to a local in the only
 +      user: init_baud_rate.
 +
 +2010-10-09  Lars Magne Ingebrigtsen  <larsi@gnus.org>
 +
 +      * gnutls.c (syms_of_gnutls): All the bootprops are keywords.
 +      (emacs_gnutls_write): Remove the debuggin fsync call.
 +      (emacs_gnutls_read): Return -1 if we got an error from
 +      gnutls_read.  This allows us to actually read lots of data from
 +      the GnuTLS stream.
 +      (emacs_gnutls_write): Check for GNUTLS_E_AGAIN and not EINTR.
 +      According to the documentation, this is correct, and it seems to
 +      make things work.
 +
 +2010-10-09  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * xterm.c (x_draw_relief_rect): Clear corner pixels.
 +
 +2010-10-08  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * keyboard.c: Revert last change; it was not intended to be
 +      synchronized with the trunk.
 +
 +2010-10-08  Kenichi Handa  <handa@m17n.org>
 +
 +      * coding.c (complement_process_encoding_system): Fix previous change.
 +
 +2010-10-08  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * dbusbind.c (syms_of_dbusbind): Move putenv call ...
 +      (Fdbus_init_bus): ... here.  (Bug#7113)
 +
 +2010-10-08  Glenn Morris  <rgm@gnu.org>
 +
 +      * buffer.c (before-change-functions, after-change-functions):
 +      Three-year overdue doc fix following 2007-08-13 change.
 +
 +2010-10-08  Kenichi Handa  <handa@m17n.org>
 +
 +      * coding.c (coding_inherit_eol_type): If parent doesn't specify
 +      eol-format, inherit from the system's default.
 +      (complement_process_encoding_system): Make a new coding system
 +      inherit the original eol-format.
 +
 +2010-10-08  Kenichi Handa  <handa@m17n.org>
 +
 +      * coding.c (complement_process_encoding_system): New function.
 +
 +      * coding.h (complement_process_encoding_system): Extern it.
 +
 +      * callproc.c (Fcall_process): Complement the coding system for
 +      encoding arguments.
 +      (Fcall_process_region): Complement the coding system for encoding
 +      the input to the process.
 +
 +      * process.c (Fstart_process): Complement the coding system for
 +      encoding arguments.
 +      (send_process): Complement the coding system for encoding what
 +      sent to the process.
 +
 +2010-10-08  Kenichi Handa  <handa@m17n.org>
 +
 +      * xfont.c (xfont_open): Fix setting of font->average_width from
 +      :avgwidth property (Bug#7123).
 +
 +2010-10-08  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * dbusbind.c (syms_of_dbusbind): Use putenv instead of setenv, it
 +      is more portable.
 +
 +      * keyboard.c (gobble_input): Move call of xd_read_queued_messages ...
 +      (kbd_buffer_get_event): ... here. This is needed for cygwin, which
 +      has not defined SIGIO.
 +
 +2010-10-08  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * xterm.c (x_draw_relief_rect): If box width is larger than 1,
 +      draw the outermost line using the black relief, for legibility.
 +      Omit drawing the four corner pixels.
 +
 +2010-10-04  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * keyboard.c (echo_prompt): Function moved into read_key_sequence.
 +      (read_key_sequence): Inline echo_prompt.
 +      (echo_dash): Add a dash only if key is continued (Bug#7137).
 +
 +2010-10-04  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      Remove O_RDONLY, O_WRONLY definitions, not needed.
 +      * unexcoff.c:
 +      * lread.c:
 +      * fileio.c:
 +      * doc.c:
 +      * callproc.c:
 +      * alloc.c:
 +      * termcap.c: Remove O_RDONLY O_WRONLY definitions.
 +
 +2010-10-03  Teodor Zlatanov  <tzz@lifelogs.com>
 +
 +      * gnutls.h (GNUTLS_LOG2): Convenience macro.
 +
 +      * gnutls.c: Add property list symbol holders.
 +      (emacs_gnutls_handshake): Clarify how sockets are passed to
 +      GnuTLS.
 +      (gnutls_log_function2): Convenience function using GNUTLS_LOG2.
 +      (Fgnutls_boot): Get all parameters from a plist.  Require trustfiles
 +      and keyfiles to be a list of file names.  Default to "NORMAL" for
 +      the priority string.  Improve logging.
 +
 +2010-10-03  Glenn Morris  <rgm@gnu.org>
 +
 +      * fileio.c (Vdirectory_sep_char): Remove.
 +
 +2010-10-03  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * termhooks.h: Remove #ifdef CONSP.
 +
 +      * xterm.c (NO_INLINE, noinline): Move definitions to ../configure.in.
 +
 +      Include <fcntl.h> unconditionally.
 +      * termcap.c:
 +      * sysdep.c:
 +      * lread.c:
 +      * keyboard.c:
 +      * filelock.c:
 +      * fileio.c:
 +      * doc.c:
 +      * callproc.c:
 +      * alloc.c: Remove include guards for <fcntl.h>, process.c already
 +      does it.
 +
 +      * process.c: Do not include <sys/wait.h>, syswait.h does it.
 +
 +      * sysdep.c (flush_pending_output): Remove code, does not do
 +      anything on any platform.
 +
 +      Remove unused code.
 +      * sysdep.c (select_alarm, sys_select, read_input_waiting):
 +      Remove select emulation, all systems support select.
 +      (set_exclusive_use): Remove, the only user is in an #if 0 block.
 +      * process.c (create_process): Remove #if 0 code.
 +
 +      Remove unused arguments for unexec.
 +      The third one is never used, and the last two are always passed as zero.
 +      * emacs.c (unexec): Add declaration.
 +      (Fdump_emacs): Only pass the first two arguments to unexec.
 +      Simplify #ifdef.
 +      * unexw32.c (unexec):
 +      * unexsol.c (unexec):
 +      * unexhp9k800.c (unexec):
 +      * unexcw.c (unexec): Remove the last 3 arguments, unused.
 +      * unexelf.c (unexec): Remove the last 3 arguments, unused.
 +      (find_section): Use const.
 +      * unexmacosx.c (unexec): Remove the last 3 arguments, unused.
 +      (unexec_error): Declare it NO_RETURN.
 +      * unexcoff.c (make_hdr): Assume bss_start is always zero, remove
 +      it as an argument, remove data_start and entry_address arguments, unused.
 +      (unexec): Remove bss_start, data_start and
 +      entry_address arguments.
 +      * unexaix.c (make_hdr): Assume bss_start is always zero, remove
 +      it as an argument, remove data_start and entry_address arguments, unused.
 +      (unexec): Remove bss_start, data_start and
 +      entry_address arguments.
 +
 +2010-10-03  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * makefile.w32-in (TAGS, TAGS-LISP, TAGS-gmake): Add $(FONTOBJ).
 +
 +      * gnutls.c (emacs_gnutls_handshake, gnutls_make_error)
 +      (gnutls_emacs_global_init, gnutls_emacs_global_deinit): Make static.
 +      (Fgnutls_get_initstage, Fgnutls_deinit, Fgnutls_boot, Fgnutls_bye):
 +      Fix typos in docstrings.
 +      (Fgnutls_error_fatalp, Fgnutls_error_string): Doc fixes.
 +      (Fgnutls_errorp): Doc fix; use ERR for the argument name.
 +
 +2010-10-03  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * keyboard.c (command_loop_1): Make sure the mark is really alive
 +      before using it (Bug#7044).
 +
 +2010-10-02  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * makefile.w32-in (tags): Rename target to full-tags.
 +
 +2010-10-02  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * emacs.c (main): Remove !WINDOWSNT conditional.
 +      (Fkill_emacs): Don't mention exemption on MS-Windows.
 +
 +2010-10-02  Glenn Morris  <rgm@gnu.org>
 +
 +      * character.c (Fchar_bytes): Remove obsolete function.
 +      (syms_of_character): Remove Schar_bytes.
 +
 +      * emacs.c (fatal_error_signal): Also run Fkill_emacs on SIGINT.
 +      (main) [!WINDOWSNT]: Handle SIGINT with fatal_error_signal
 +      in batch-mode.
 +      (Fkill_emacs): Doc fix.  Also run the hook in batch mode.
 +      (kill-emacs-hook): Doc fix.
 +
 +2010-10-02  Lars Magne Ingebrigtsen  <larsi@gnus.org>
 +
 +      * xml.c (Flibxml_parse_xml_region, Flibxml_parse_html_region)
 +      (parse_region): Rework to take regions instead of strings, and
 +      renamed to reflect that these are the libxml functions.
 +
 +2010-10-01  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * term.c (init_tty) [DOS_NT]: Don't call Wcm_clear after setting
 +      screen dimensions in tty->Wcm.
 +
 +      * xdisp.c (set_cursor_from_row): When the row is truncated and
 +      point is outside the range of displayed characters, position the
 +      cursor inside the scroll margin.  (Bug#6349)
 +
 +2010-10-01  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      Do not include stdlib.h and string.h, config.h does it.
 +      * xfont.c:
 +      * w32term.c:
 +      * w32reg.c:
 +      * w32inevt.c:
 +      * w32heap.c:
 +      * w32console.c:
 +      * w16select.c:
 +      * unexsol.c:
 +      * term.c:
 +      * sound.c:
 +      * scroll.c (m):
 +      * gtkutil.c:
 +      * font.c:
 +      * filelock.c:
 +      * fileio.c:
 +      * dosfns.c:
 +      * dbusbind.c:
 +      * bidi.c:
 +      * callproc.c:
 +      * process.c:
 +      * msdos.c:
 +      * charset.c: Do not include stdlib.h and string.h, config.h does it.
 +
 +      * callproc.c (SIGCHLD): Remove conditional definition, syssignal.h
 +      defines it.
 +
 +      * process.c: Move #include <pty.h> earlier.
 +      (SIGCHLD): Remove conditional definition, syssignal.h defines it.
 +      (pty_name): Move definition later.
 +
 +      * nsselect.m (syms_of_nsselect):
 +      * nsmenu.m (syms_of_nsmenu):
 +      * nsfns.m (syms_of_nsfns):
 +      * msdos.c (syms_of_msdos):
 +
 +      * image.c (syms_of_image):
 +      * charset.c (syms_of_charset): Use intern_c_string instead of intern.
 +
 +      * point.h: Remove, unused.
 +
 +2010-10-01  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * makefile.w32-in (TAGS, frc, TAGS-LISP, ../nt/TAGS, tags)
 +      (TAGS-gmake, TAGS-nmake, TAGS-LISP-gmake, TAGS-LISP-nmake)
 +      (nt-TAGS-gmake, nt-TAGS-nmake): New targets.
 +
 +2010-09-30  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * xml.c (parse_string): Use const.
 +
 +2010-09-30  Lars Magne Ingebrigtsen  <larsi@gnus.org>
 +
-       * gnutls.c (gnutls_log_function): Added more debugging.
++      * eval.c (Fbacktrace): Don't overwrite print-level on exit.
++      Also only override Vprint_level if it isn't already bound, and increase
 +      the level to 8 to produce more useful backtraces for bug reports.
 +
 +2010-09-30  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * Makefile.in: ecrt0.c does not exist anymore, do not mention it.
 +
 +2010-09-30  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * w32console.c (vga_stdcolor_name): Remove unused function;
 +      presumed dead after 2007-11-30T13:57:21Z!jasonr@gnu.org.
 +
 +2010-09-29  Lars Magne Ingebrigtsen  <larsi@gnus.org>
 +
 +      * gnutls.c (emacs_gnutls_handshake): Made into internal function.
 +      (Fgnutls_boot): Start the handshake.
 +      (emacs_gnutls_read): Perform the handshake from the reader loop.
 +      (Fgnutls_boot): Remove some debugging messages.
 +      Change indentation throughout to use the Emacs style.
 +      (emacs_gnutls_handshake): Cast the fds to something that's
 +      possibly the expected length.
 +      (emacs_gnutls_write): Return -1 if we try to write before handshake.
 +
 +      * process.h (Lisp_Process): Add a gnutls_p field to Lisp_Process.
 +
 +      * process.c (make_process): Set the gnutls_p field to zero by
 +      default.
 +      (read_process_output): Always call the gnutls_read function if the
 +      stream is a gnutls stream.
 +      (send_process): Ditto for writes.
 +
 +      * gnutls.c (emacs_gnutls_write, emacs_gnutls_read): Refuse to read
 +      or write anything until the state is GNUTLS_STAGE_READY.
 +      (Fgnutls_boot): Mark the stream as being a gnutls stream.
 +
 +2010-09-29  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * xdisp.c (reseat_1): Initialize bidi_it.paragraph_dir to
 +      NEUTRAL_DIR.
 +      (handle_invisible_prop, iterate_out_of_display_property)
 +      (next_element_from_buffer): If bidi_it.first_elt is set, call
 +      bidi_paragraph_init with NO_DEFAULT_P argument non-zero.
 +      (Bug#7128)
 +
 +      * print.c (print_object): Fix format string and argument types for
 +      printing a Lisp_Misc_Marker.
 +
 +      * xdisp.c (pos_visible_p, c_string_pos, number_of_chars)
 +      (load_overlay_strings, get_overlay_strings_1)
 +      (get_overlay_strings, forward_to_next_line_start)
 +      (back_to_previous_visible_line_start, reseat, reseat_to_string)
 +      (get_next_display_element, next_element_from_string)
 +      (next_element_from_c_string, next_element_from_buffer)
 +      (move_it_vertically_backward, move_it_by_lines, add_to_log)
 +      (message_dolog, message_log_check_duplicate, message2_nolog)
 +      (message3, message3_nolog, vmessage, set_message, set_message_1)
 +      (hscroll_window_tree, text_outside_line_unchanged_p)
 +      (set_cursor_from_row, set_vertical_scroll_bar, redisplay_window)
 +      (find_last_unchanged_at_beg_row)
 +      (find_first_unchanged_at_end_row, row_containing_pos)
 +      (trailing_whitespace_p, display_mode_element, decode_mode_spec)
 +      (display_count_lines, x_produce_glyphs, note_mouse_highlight):
 +      Use EMACS_INT for buffer and string positions.
 +
 +      * dispextern.h (struct it) <string_nchars>: Declare EMACS_INT.
 +      (row_containing_pos): Adjust prototype.
 +
 +      * lisp.h (pos_visible_p, message2, message2_nolog, message3)
 +      (message2_nolog, set_message): Adjust prototypes.
 +
 +2010-09-28  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * gnutls.c (Fgnutls_boot): Remove unused vars `data' and `srp_cred'.
 +      (Fgnutls_boot): Use SDATA.
 +      (Fgnutls_handshake): Remove unused var `max_log_level'.
 +
 +2010-09-27  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * dbusbind.c (syms_of_dbusbind): Set $DBUS_FATAL_WARNINGS to "0".
 +      (Bug#7113)
 +
 +2010-09-27  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * xgselect.c (xg_select): Clear file descriptors not set from
 +      rfds and wfds.
 +
 +      * process.c (wait_reading_process_output): Add missing FD_CLR
 +      for write_mask (must mirror connect_wait_mask).
 +
 +2010-09-27  Teodor Zlatanov  <tzz@lifelogs.com>
 +
 +      * gnutls.c (gnutls_log_function): Show level and "gnutls.c"
 +      prefix.
 +      (Fgnutls_boot): Use changed process members.  Use log level with a
 +      function parameter to set it.  Bring back Emacs-level debugging
 +      messages at log level 1 and 2.
 +
 +      * process.c (make_process): Initialize gnutls_log_level.
 +
 +      * process.h: Add gnutls_log_level and rename x509_cred and
 +      anon_cred to have the gnutls_ prefix for consistency.
 +
 +      * gnutls.h (GNUTLS_LOG): Add convenience macro.
 +
 +2010-09-27  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * w32.c (g_b_init_get_sid_identifier_authority)
 +      (GetSidIdentifierAuthority_Proc, get_sid_identifier_authority):
 +      Remove, not used.
 +      (globals_of_w32): Don't set g_b_init_get_sid_identifier_authority.
 +      (init_winsock): Remove useless assignment.
 +      (open_process_token, get_token_information, lookup_account_sid)
 +      (get_sid_sub_authority, get_sid_sub_authority_count, get_file_security)
 +      (get_security_descriptor_owner, get_security_descriptor_group)
 +      (is_valid_sid, equal_sid, get_length_sid, copy_sid)
 +      (get_native_system_info, get_system_times, init_user_info, crlf_to_lf)
 +      (is_unc_volume, GetCachedVolumeInformation, get_volume_info)
 +      (is_fat_volume, open_unc_volume, read_unc_volume, close_unc_volume)
 +      (unc_volume_file_attributes, convert_from_time_t)
 +      (create_toolhelp32_snapshot, process32_first, process32_next)
 +      (open_thread_token, impersonate_self, revert_to_self)
 +      (get_process_memory_info, get_process_working_set_size)
 +      (global_memory_status, global_memory_status_ex, socket_to_fd)
 +      (shutdown_handler): Make static.
 +
 +2010-09-27  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * dbusbind.c (dbus_fd_cb, xd_get_dispatch_status)
 +      (xd_pending_messages): Functions removed.
 +      (xd_read_queued_messages): Add parameters fd, *data, for_read in
 +      order to be compatible with add_read_fd.  Determine bus from data,
 +      and call xd_read_message just for this bus.
 +      (xd_add_watch): Use xd_read_queued_messages as callback function.
 +      Add data.
 +
 +      * lisp.h (xd_pending_messages, xd_read_queued_messages): Remove.
 +
 +2010-09-27  Lars Magne Ingebrigtsen  <larsi@gnus.org>
 +
-       (max_input_desc): Renamed from max_keyboard_desc.
++      * gnutls.c (gnutls_log_function): Add more debugging.
 +      (emacs_gnutls_read): Don't infloop while reading.
 +
 +2010-09-27  Kenichi Handa  <handa@m17n.org>
 +
 +      These changes are to remove restriction on the number of glyphs in
 +      one composition.
 +
 +      * dispextern.h (struct glyph): Change the member "slice" to union.
 +      Remove u.cmp.from and u.cmp.to.  Give more bits to u.cmp.id.
 +      (GLYPH_SLICE_EQUAL_P): Adjust for the above change.
 +
 +      * dispnew.c (buffer_posn_from_coords): Use glyph->slice.img
 +      instead of glyph->slice.
 +      (marginal_area_string): Likewise.
 +
 +      * term.c (encode_terminal_code): Use glyph->slice.cmp instead of
 +      glyph->u.cmp.
 +      (append_composite_glyph): Likewise.
 +
 +      * xdisp.c (dump_glyph): Use glyph->slice.cmp instead of
 +      glyph->u.cmp.
 +      (fill_gstring_glyph_string, x_get_glyph_overhangs)
 +      (append_composite_glyph): Likewise.
 +      (fill_image_glyph_string): Use glyph->slice.img instead of
 +      glyph->slice.
 +      (append_glyph, produce_image_glyph, append_stretch_glyph)
 +      (note_mouse_highlight): Likewise.
 +
 +2010-09-26  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * process.c (add_keyboard_wait_descriptor)
 +      (delete_keyboard_wait_descriptor): Reinstate ifdef subprocesses.
 +      (wait_reading_process_output): Don't pass write_mask to select
 +      if SELECT_CANT_DO_WRITE_MASK is defined.
 +      (SELECT_CANT_DO_WRITE_MASK): Define if SELECT_CANT_DO_WRITE_MASK.
 +
 +      * process.h (add_read_fd, delete_read_fd, add_write_fd)
 +      (delete_write_fd): Declare.
 +
 +      * process.c (gpm_wait_mask, max_gpm_desc): Remove.
 +      (write_mask): New variable.
-       * xml.c (parse_buffer): Renamed to parse_string(), since that's
++      (max_input_desc): Rename from max_keyboard_desc.
 +      (fd_callback_info): New variable.
 +      (add_read_fd, delete_read_fd, add_write_fd, delete_write_fd):
 +      New functions.
 +      (Fmake_network_process): FD_SET write_mask.
 +      (deactivate_process): FD_CLR write_mask.
 +      (wait_reading_process_output): Connecting renamed to Writeok.
 +      check_connect removed.  check_write is new.  Remove references to gpm.
 +      Use Writeok/check_write unconditionally (i.e. no #ifdef
 +      NON_BLOCKING_CONNECT) instead of Connecting.
 +      Loop over file descriptors and call callbacks in fd_callback_info
 +      if file descriptor is ready for I/O.
 +      (add_gpm_wait_descriptor): Just call add_keyboard_wait_descriptor.
 +      (delete_gpm_wait_descriptor): Just call delete_keyboard_wait_descriptor.
 +      (keyboard_bit_set): Use max_input_desc.
 +      (add_keyboard_wait_descriptor, delete_keyboard_wait_descriptor):
 +      Remove #ifdef subprocesses.  Use max_input_desc.
 +      (init_process): Initialize write_mask and fd_callback_info.
 +
 +      * keyboard.c (readable_events, gobble_input): Remove DBUS code.
 +
 +      * dbusbind.c: Include process.h.
 +      (dbus_fd_cb, xd_find_watch_fd, xd_toggle_watch)
 +      (xd_read_message_1): New functions.
 +      (xd_add_watch, xd_remove_watch): Call xd_find_watch_fd.
 +      Handle watch for both read and write.
 +      (Fdbus_init_bus): Also register xd_toggle_watch.
 +      (Fdbus_call_method_asynchronously, Fdbus_method_return_internal)
 +      (Fdbus_method_error_internal, Fdbus_send_signal): Remove call
 +      to dbus_connection_flush.
 +      (xd_read_message): Move most of the code to xd_read_message_1.
 +      Call xd_read_message_1 until status is COMPLETE.
 +
 +2010-09-26  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * term.c: Do not include sys/ioctl.h, not needed.
 +      (init_tty): Reorder code to reduce the number of #ifdefs.
 +      No code changes.
 +
 +2010-09-26  Teodor Zlatanov  <tzz@lifelogs.com>
 +
 +      * process.h: Set up GnuTLS support.
 +
 +      * process.c (make_process, Fstart_process)
 +      (read_process_output, send_process): Set up GnuTLS support for
 +      process input/output file descriptors.
 +
 +      * gnutls.h: The GnuTLS glue for Emacs, macros and enums.
 +
 +      * gnutls.c: The source code for GnuTLS support in Emacs.
 +
 +      * emacs.c: Set up GnuTLS support and call syms_of_gnutls.
 +
 +      * config.in: Set up GnuTLS support.
 +
 +      * Makefile.in (LIBGNUTLS_LIBS, LIBGNUTLS_CFLAGS, ALL_CFLAGS)
 +      (obj, LIBES): Set up GnuTLS support.
 +
 +2010-09-26  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * w32.c (get_emacs_configuration_options): Fix previous change.
 +
 +2010-09-25  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * insdel.c (prepare_to_modify_buffer): Ensure the mark marker is
 +      alive before using it (Bug#6977).
 +
 +2010-09-25  Lars Magne Ingebrigtsen  <larsi@gnus.org>
 +
 +      * xdisp.c (face_before_or_after_it_pos): EMACS_INT/int fixup.
 +
 +      * dispextern.h: EMACS_INT/int fixup.
 +
 +      * xdisp.c (string_pos_nchars_ahead, init_iterator): EMACS_INT/int
 +      fixup.
 +
 +      * xrdb.c (magic_file_p): EMACS_INT/int fixup.
 +
 +2010-09-25  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * window.c (Fpos_visible_in_window_p, Fdelete_other_windows)
 +      (Fselect_window, window_scroll_pixel_based)
 +      (window_scroll_line_based, Frecenter, Fset_window_configuration):
 +      Use EMACS_INT for buffer positions.
 +
 +      * textprop.c (validate_interval_range, interval_of)
 +      (property_change_between_p, Fadd_text_properties)
 +      (set_text_properties_1, Fremove_text_properties)
 +      (Fremove_list_of_text_properties, Ftext_property_any)
 +      (Ftext_property_not_all, copy_text_properties)
 +      (text_property_list, extend_property_ranges)
 +      (verify_interval_modification): Use EMACS_INT for buffer
 +      positions.
 +
 +      * term.c (fast_find_position, term_mouse_highlight): Use EMACS_INT
 +      for buffer positions.
 +
 +      * process.c (read_process_output, send_process)
 +      (Fprocess_send_region, status_notify): Use EMACS_INT for buffer
 +      and string positions and size.
 +
 +      * print.c (print_object, print_string, strout): Use EMACS_INT for
 +      string indices.
 +
 +      * minibuf.c (string_to_object): Use EMACS_INT for string position
 +      and size.
 +
 +      * marker.c (verify_bytepos): Use EMACS_INT for buffer positions.
 +
 +      * lread.c <read_from_string_index, read_from_string_index_byte>
 +      <read_from_string_limit, readchar_count>: Define EMACS_INT.
 +      (readchar, unreadchar, read_internal_start): Use EMACS_INT for
 +      buffer positions and string length.
 +
 +      * keyboard.c <last_point_position, last_non_minibuf_size>: Declare
 +      EMACS_INT.
 +      (echo_truncate, adjust_point_for_property, read_char)
 +      (gen_help_event, make_lispy_event, modify_event_symbol)
 +      (Fexecute_extended_command, stuff_buffered_input): Use EMACS_INT
 +      for buffer positions and string length.
 +
 +      * keyboard.h (gen_help_event): Adjust prototype.
 +
 +      * termhooks.h <struct input_event>: Make `code' member EMACS_INT.
 +
 +      * commands.h <last_point_position>: Declare EMACS_INT.
 +
 +      * xdisp.c <help_echo_pos>: Define as EMACS_INT.
 +      (truncate_echo_area): Accept EMACS_INT argument.
 +
 +      * dispextern.h <help_echo_pos>: Declare EMACS_INT.
 +
 +      * lisp.h (truncate_echo_area): Adjust prototype.
 +
 +      * composite.c (composition_adjust_point): Return EMACS_INT.
 +
 +      * composite.h (composition_adjust_point): Adjust prototype.
 +
 +2010-09-25  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * process.c (Fmake_network_process): When arg :host is 'local,
 +      use address 127.0.0.1, not name "localhost".  (Bug#6781)
 +
 +2010-09-24  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * indent.c (Fcurrent_indentation, indented_beyond_p)
 +      (compute_motion): Use EMACS_INT for buffer position variables.
 +
 +      * lisp.h (indented_beyond_p): Adjust prototype.
 +
 +      * buffer.c (overlay_strings): Return EMACS_INT.
 +
 +      * buffer.h (overlay_strings): Adjust prototype.
 +
 +      * region-cache.c (pp_cache): Adjust format to arguments.
 +
 +      * eval.c <specpdl_size, lisp_eval_depth>: Declare EMACS_INT.
 +      (call_debugger): Use EMACS_INT for specpdl_size related variables.
 +      (verror): Use EMACS_INT for size of allocated buffer.
 +
 +      * keyboard.c (make_lispy_position): Use EMACS_INT for buffer
 +      positions.
 +
 +      * xdisp.c (redisplay_internal, try_window_id)
 +      (set_cursor_from_row, find_first_unchanged_at_end_row):
 +      Use EMACS_INT for buffer positions.
 +
 +      * dispextern.h (set_cursor_from_row): Adjust prototype.
 +
 +      * dispnew.c (increment_matrix_positions)
 +      (increment_row_positions, copy_glyph_row_contents)
 +      (mode_line_string, marginal_area_string): Use EMACS_INT for buffer
 +      positions.
 +
 +      * dispextern.h (mode_line_string, marginal_area_string)
 +      (increment_matrix_positions, increment_row_positions):
 +      Adjust prototypes.
 +
 +      * data.c (Faref, Faset): Use EMACS_INT for string length and
 +      positions.
 +
 +      * cmds.c (internal_self_insert): Use EMACS_INT for the count of
 +      characters to insert.
 +
 +      * ccl.c (Fccl_execute_on_string): Use EMACS_INT for string
 +      position and size.
 +
 +      * syntax.c (scan_words, update_syntax_table)
 +      (prev_char_comend_first, back_comment, skip_chars)
 +      (skip_syntaxes, Fforward_comment, Fbackward_prefix_chars):
 +      Use EMACS_INT for buffer and string positions.
 +
 +      * syntax.h (scan_words, update_syntax_table): Adjust prototypes.
 +
 +      * casefiddle.c (operate_on_word): Use EMACS_INT for buffer
 +      positions.
 +
 +2010-09-24  Lars Magne Ingebrigtsen  <larsi@gnus.org>
 +
 +      * scroll.c (calculate_scrolling, line_ins_del)
 +      (calculate_direct_scrolling, scroll_cost): Fix EMACS_INT/int
 +      conversion.
 +
 +      * region-cache.c (move_cache_gap, set_cache_region, pp_cache)
 +      (region_cache_backward, region_cache_forward)
 +      (revalidate_region_cache, set_cache_region): FIX EMACS_INT/int
 +      conversion.
 +
 +      * xdisp.c (message_dolog): Fix EMACS_INT/int conversion.
 +
 +      * eval.c (verror): Fix EMACS_INT/int conversion.
 +
 +      * print.c (PRINTDECLARE, PRINTPREPARE, strout, print_string)
 +      (print_preprocess, print_check_string_charset_prop)
 +      (print_object): Fix EMACS_INT/int conversion.
 +
 +      * xdisp.c (message_dolog): Fix EMACS_INT/int conversion.
 +
 +2010-09-24  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * callproc.c (Fcall_process): Use EMACS_INT for count of
 +      characters read from the subprocess.
 +
 +      * bidi.c (struct bidi_paragraph_info): Use EMACS_INT for buffer
 +      positions.
 +      (bidi_cache_search, bidi_cache_find): Use EMACS_INT for buffer
 +      positions.
 +
 +      * buffer.c (struct sortvec): Use EMACS_INT for buffer positions.
 +      (struct sortstrlist, overlay_str_len): Use EMACS_INT for string
 +      length.
 +      (advance_to_char_boundary, Fset_buffer_multibyte)
 +      (overlays_at, overlays_in, mouse_face_overlay_overlaps)
 +      (overlay_touches_p, record_overlay_string, overlay_strings)
 +      (recenter_overlay_lists, fix_start_end_in_overlays)
 +      (modify_overlay, Fmove_overlay, report_overlay_modification)
 +      (evaporate_overlays): Use EMACS_INT for buffer positions.
 +
 +      * lisp.h (fix_start_end_in_overlays, overlay_touches_p):
 +      Adjust prototypes.
 +
 +      * dispextern.h (struct bidi_saved_info): Use EMACS_INT for buffer
 +      positions.
 +
 +      * fns.c (Fcompare_strings, Fstring_lessp, concat)
 +      (string_make_unibyte, Fstring_as_unibyte, Fsubstring)
 +      (Fsubstring_no_properties, substring_both, Ffillarray)
 +      (Fclear_string, mapcar1, Fmapconcat, Fmapcar, Fmapc)
 +      (Fbase64_encode_region, Fbase64_encode_string, base64_encode_1)
 +      (Fbase64_decode_region, Fbase64_decode_string, base64_decode_1)
 +      (Fmd5): Use EMACS_INT for buffer and string positions and length
 +      variables and arguments.
 +
 +      * lisp.h (substring_both): Adjust prototype.
 +
 +2010-09-24  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      Remove W32 API function pointer unused since 2005-02-15 (revno 2005-02-15T23:19:26Z!jasonr@gnu.org).
 +      * w32fns.c (clipboard_sequence_fn): Don't declare.
 +      (globals_of_w32fns): Don't initialize it.
 +
 +2010-09-23  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * syntax.c (back_comment): Detect the case where a 1-char comment
 +      starter is also the 2nd char of a 2-char comment ender.
 +
 +2010-09-23  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * gtkutil.c (xg_tool_bar_menu_proxy): Set gtk-menu-items to TRUE.
 +
 +2010-09-23  Lars Magne Ingebrigtsen  <larsi@gnus.org>
 +
 +      * eval.c (verror): EMACS_INT/int cleanup.
 +
 +      * lisp.h (SPECPDL_INDEX): Cast to int, since we're not going to
 +      unwind_protect more than 2GB worth of functions.
 +
 +      * editfns.c (Finsert_char): EMACS_INT/int cleanup.
 +
 +      * lisp.h: Have oblookup take EMACS_INT to allow interning big
 +      string and avoid compiler warnings.
 +      (USE_SAFE_ALLOCA): Cast to int to avoid compilation warnings in
 +      all users.
 +
 +      * lread.c (oblookup): EMACS_INT/int cleanup.
 +
 +      * cmds.c (Fforward_line, Fdelete_char): EMACS_INT/int cleanup.
 +
 +2010-09-23  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * editfns.c (clip_to_bounds): Return an EMACS_INT value.
 +
 +      * lisp.h (clip_to_bounds): Adjust prototype.
 +
 +      * intervals.c (adjust_for_invis_intang): Return EMACS_INT value.
 +
 +2010-09-23  Lars Magne Ingebrigtsen  <larsi@gnus.org>
 +
 +      * lisp.h: doprnt.c EMACS_INT/int cleanup.
 +
 +      * doprnt.c (doprnt): EMACS_INT/int cleanup.
 +
 +      * doc.c (Fsnarf_documentation, get_doc_string): EMACS_INT/int
 +      cleanup.
 +
 +      * lisp.h: Change the definition of all marker.c functions that
 +      take and return buffer stuff to be EMACS_INT instead of int.
 +
 +      * marker.c (buf_charpos_to_bytepos, CONSIDER, set_marker_both)
 +      (buf_charpos_to_bytepos, bytepos_to_charpos)
 +      (buf_bytepos_to_charpos, Fbuffer_has_markers_at)
 +      (set_marker_restricted, set_marker_both): Convert int to EMACS_INT
 +      for all buffer positions.
 +
 +2010-09-23  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * intervals.c (traverse_intervals, rotate_right, rotate_left)
 +      (split_interval_right, find_interval, next_interval)
 +      (delete_node, delete_interval, interval_deletion_adjustment)
 +      (adjust_intervals_for_deletion, merge_interval_right)
 +      (merge_interval_left, graft_intervals_into_buffer)
 +      (copy_intervals): Convert EMACS_UINTs to EMACS_INT.
 +
 +      * intervals.h (traverse_intervals): Update prototype.
 +
 +2010-09-23  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * indent.c (compute_motion): Use EMACS_INT for arguments to
 +      region_cache_forward.
 +
 +      * region-cache.c (struct boundary, struct region_cache):
 +      Use EMACS_INT for positions.
 +      (find_cache_boundary, move_cache_gap, insert_cache_boundary)
 +      (delete_cache_boundaries, set_cache_region)
 +      (invalidate_region_cache, know_region_cache)
 +      (region_cache_forward, region_cache_backward, pp_cache):
 +      Use EMACS_INT for buffer positions.
 +
 +      * region-cache.h (know_region_cache, invalidate_region_cache)
 +      (region_cache_forward, region_cache_backward): Adjust prototypes.
 +
 +      * search.c (string_match_1, fast_c_string_match_ignore_case)
 +      (looking_at_1, scan_buffer, scan_newline)
 +      (find_next_newline_no_quit, find_before_next_newline)
 +      (search_command, trivial_regexp_p, search_buffer, simple_search)
 +      (boyer_moore, wordify, Freplace_match): Use EMACS_INT for buffer
 +      and string positions and length.
 +
 +      * lisp.h (scan_buffer, scan_newline, find_next_newline_no_quit)
 +      (find_before_next_newline): Adjust prototypes.
 +
 +      * editfns.c (transpose_markers, update_buffer_properties)
 +      (buildmark, clip_to_bounds, Fgoto_char, overlays_around)
 +      (get_pos_property, Fconstrain_to_field)
 +      (Fline_beginning_position, Fline_end_position, Fprevious_char)
 +      (Fchar_after, Fchar_before, Finsert_char)
 +      (Finsert_buffer_substring, Fcompare_buffer_substrings)
 +      (Fsubst_char_in_region, Fformat, Ftranspose_regions):
 +      Use EMACS_INT for buffer and string position variables.
 +      (Finsert_char): Protect against too large insertions.
 +
 +      * lisp.h (clip_to_bounds): Adjust prototype.
 +
 +      * intervals.c (traverse_intervals, rotate_right, rotate_left)
 +      (balance_an_interval, split_interval_right, split_interval_left)
 +      (find_interval, next_interval, update_interval)
 +      (adjust_intervals_for_insertion, delete_node, delete_interval)
 +      (interval_deletion_adjustment, adjust_intervals_for_deletion)
 +      (offset_intervals, merge_interval_right, merge_interval_left)
 +      (graft_intervals_into_buffer, adjust_for_invis_intang)
 +      (move_if_not_intangible, get_local_map, copy_intervals)
 +      (copy_intervals_to_string, compare_string_intervals)
 +      (set_intervals_multibyte_1): Use EMACS_INT for buffer positions
 +      and for interval tree size.
 +
 +      * intervals.h (traverse_intervals, split_interval_right)
 +      (split_interval_left, find_interval, offset_intervals)
 +      (graft_intervals_into_buffer, copy_intervals)
 +      (copy_intervals_to_string, move_if_not_intangible, get_local_map)
 +      (update_interval): Adjust prototypes.
 +
 +      * xdisp.c (check_point_in_composition, reconsider_clip_changes):
 +      Use EMACS_INT for buffer position variables and arguments.
 +
 +      * composite.c (get_composition_id, find_composition)
 +      (run_composition_function, compose_text)
 +      (composition_gstring_width, autocmp_chars)
 +      (composition_update_it, Ffind_composition_internal): Use EMACS_INT
 +      for buffer positions and string length variables and arguments.
 +
 +      * composite.h (get_composition_id, find_composition, compose_text)
 +      (composition_gstring_width): Adjust prototypes.
 +
 +      * editfns.c (Fformat): Use EMACS_INT for string size variables.
 +
 +      * xdisp.c (store_mode_line_noprop, display_mode_element):
 +      Use EMACS_INT for string positions.
 +
 +      * intervals.c (get_property_and_range): Use EMACS_INT for buffer
 +      position arguments.
 +
 +      * intervals.h (get_property_and_range): Adjust prototype.
 +
 +      * character.c (parse_str_as_multibyte, str_as_multibyte)
 +      (parse_str_to_multibyte, str_to_multibyte, str_as_unibyte)
 +      (string_count_byte8, string_escape_byte8, c_string_width)
 +      (strwidth, lisp_string_width, multibyte_chars_in_text):
 +      Use EMACS_INT for string length variables and arguments.
 +
 +      * character.h (parse_str_as_multibyte, str_as_multibyte)
 +      (parse_str_to_multibyte, str_to_multibyte, str_as_unibyte)
 +      (c_string_width, strwidth, lisp_string_width):
 +      Adjust prototypes.
 +
 +      * font.c (font_intern_prop): Use EMACS_INT for string length
 +      variables.
 +
 +      * font.c (font_intern_prop): Use EMACS_INT for string length
 +      variables.
 +
 +      * fns.c (Fstring_as_multibyte): Use EMACS_INT for string length
 +      variables.
 +
 +      * alloc.c <total_string_size>: Declare as EMACS_INT, not int.
 +      (Fmake_string): Protect against too large strings.
 +      (live_string_p, live_cons_p, live_symbol_p, live_float_p)
 +      (live_misc_p): Use ptrdiff_t instead of int for pointer
 +      differences.
 +      (string_bytes, check_sblock, check_string_free_list)
 +      (allocate_string_data, compact_small_strings, Fmake_string)
 +      (Fmake_bool_vector, make_string, make_unibyte_string)
 +      (make_multibyte_string, make_string_from_bytes)
 +      (make_specified_string_string, Fmake_list, Fmake_vector):
 +      Use EMACS_INT for string length variables and arguments.
 +      (find_string_data_in_pure, make_pure_string, make_pure_c_string)
 +      (Fpurecopy): Use EMACS_INT for string size.
 +      (mark_vectorlike, mark_char_table, mark_object): Use EMACS_UINT
 +      for vector size.
 +
 +      * lisp.h (make_string, make_unibyte_string, make_multibyte_string)
 +      (make_string_from_bytes, make_specified_string_string)
 +      (make_pure_string, string_bytes, check_point_in_composition):
 +      Adjust prototypes.
 +
 +2010-09-22  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * editfns.c (Fsubst_char_in_region, Ftranslate_region_internal)
 +      (check_translation): Use EMACS_INT for buffer positions and
 +      length.
 +
 +      * undo.c (record_marker_adjustment, record_delete)
 +      (record_change, record_point, record_insert)
 +      (record_property_change, Fprimitive_undo): Use EMACS_INT for
 +      buffer positions.
 +
 +      * lisp.h (record_marker_adjustment, record_delete)
 +      (record_change, record_point, record_insert)
 +      (record_property_change, Fprimitive_undo): Adjust prototypes.
 +
 +2010-09-22  Juanma Barranquero  <lekktu@gmail.com>
 +            Eli Zaretskii  <eliz@gnu.org>
 +
 +      * w32.c (get_emacs_configuration_options): Fix buffer overrun.
 +
 +2010-09-22  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * minibuf.c (Fminibuffer_contents)
 +      (Fminibuffer_contents_no_properties)
 +      (Fminibuffer_completion_contents): Use EMACS_INT for minibuffer
 +      positions.
 +
 +      * keyboard.c (command_loop_1): Use EMACS_INT to compare point with
 +      mark.
 +
 +      * alloc.c (make_uninit_string, make_uninit_multibyte_string)
 +      (allocate_string_data): Accept EMACS_INT for string length.
 +
 +      * editfns.c (Ffield_string, Ffield_string_no_properties)
 +      (make_buffer_string, make_buffer_string_both, Fbuffer_substring)
 +      (Fbuffer_substring_no_properties, find_field, Fdelete_field)
 +      (Ffield_string, Ffield_string_no_properties, Ffield_beginning)
 +      (Ffield_end): Use EMACS_INT for buffer positions.
 +
 +      * insdel.c (prepare_to_modify_buffer): Use EMACS_INT to compare
 +      point with mark.
 +
 +      * lisp.h (allocate_string_data, make_uninit_string)
 +      (make_uninit_multibyte_string, make_buffer_string)
 +      (make_buffer_string_both): Adjust prototypes.
 +
 +2010-09-22  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * xml.c: Switch to GNU indentation.
 +      (make_dom): Change parse tree format to match xml.el.
 +      (Fxml_parse_html_string_internal): Rename from html-parse-string.
 +      (Fxml_parse_string_internal): Rename from xml-parse-string.
 +
 +2010-09-22  Kenichi Handa  <handa@m17n.org>
 +
 +      * xdisp.c (compute_stop_pos): Call composition_compute_stop_pos
 +      only if we are not at a composition.
 +      (set_iterator_to_next): Give it->end_charpos to
 +      composition_compute_stop_pos.
 +      (set_iterator_to_next, next_element_from_buffer): Likewise.
 +
 +      * dispnew.c (buffer_posn_from_coords): Fix position when the
 +      current display element is a grapheme cluster in bidi-reordered
 +      region.
 +
 +2010-09-21  Ari Roponen  <ari.roponen@gmail.com>  (tiny change)
 +
 +      * doc.c (Fsnarf_documentation): Use memmove instead of memcpy as
 +      the regions may overlap.
 +
 +2010-09-21  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * makefile.w32-in ($(BLD)/sysdep.$(O)): Update dependencies.
 +
 +2010-09-21  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * emacs.c: Do not include sys/ioctl.h, not needed.
 +
 +      * doprnt.c: Do not include stdlib.h, config.h does it.
 +      Move #include before macro definition.
 +
 +2010-09-20  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * Makefile.in (temacs): Link using $(CC) not $(LD).
 +      (LD_FIRSTFLAG): Define using autoconf.
 +      (LD): Remove.
 +
 +      Remove HAVE_TERMIOS definitions.
 +      * s/usg5-4-common.h (HAVE_TERMIOS):
 +      * s/template.h (HAVE_TERMIOS):
 +      * s/gnu-linux.h (HAVE_TERMIOS):
 +      * s/darwin.h (HAVE_TERMIOS):
 +      * s/cygwin.h (HAVE_TERMIOS):
 +      * s/bsd-common.h (HAVE_TERMIOS):
 +      * s/aix4-2.h (HAVE_TERMIOS):
 +      * s/hpux10-20.h (HAVE_TERMIOS): Do not define, it is assumed
 +      defined on all non-MS platforms.
 +      (HAVE_PSTAT_GETDYNAMIC): Do not define, autoconf does it.
 +
 +      * xterm.c (xt_action_hook): Use const.
 +
 +2010-09-20  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      Don't make W32 code conditional on HAVE_SOCKETS, it's always defined.
 +      * w32.c: Remove top-level uses of #ifdef HAVE_SOCKETS.
 +      (gethostname) [!HAVE_SOCKETS]: Remove.
 +      (SOCK_REPLACE_HANDLE): Remove macro.
 +      (socket_to_fd, sys_close, _sys_read_ahead, sys_read, sys_write)
 +      (term_ntproc, init_ntproc): Don't conditionalize on HAVE_SOCKETS.
 +      * w32proc.c: Remove top-level uses of #ifdef HAVE_SOCKETS.
 +      (syms_of_ntproc): Don't conditionalize on HAVE_SOCKETS.
 +
 +2010-09-18  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * deps.mk (xml.o): Add dependencies.
 +
 +      * xdisp.c (Fcurrent_bidi_paragraph_direction):
 +      Call bidi_paragraph_init with NO_DEFAULT_P non-zero.  (Bug#7038)
 +
 +      * bidi.c (bidi_paragraph_init): Accept an additional argument
 +      NO_DEFAULT_P; all callers changed.  If NO_DEFAULT_P is non-zero,
 +      search back until a paragraph with a strong directional character
 +      is found, and use that to determine paragraph's base direction.
 +
 +      * dispextern.h (bidi_paragraph_init): Update prototype.
 +
 +2010-09-17  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * w32.c (_PROCESS_MEMORY_COUNTERS_EX): Don't define with versions
 +      of w32api >= 3.15.  (Bug#6989)
 +
 +2010-09-17  Lars Magne Ingebrigtsen  <larsi@gnus.org>
 +
 +      * process.c (wait_reading_process_output): Don't message about
 +      accept-process-output unless the time limit really is zero.
 +
 +2010-09-17  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * frame.c (Ftool_bar_pixel_width): YAILOM (Yet another
 +      int/Lisp_Object mixup).
 +
 +2010-09-17  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * keyboard.c (parse_tool_bar_item): For QClabel, set TOOL_BAR_ITEM_LABEL
 +      not HELP.
 +
 +2010-09-17  Stephen Berman  <stephen.berman@gmx.net>
 +
 +      * frame.c (Ftool_bar_pixel_width): New function to expose tool
 +      bar's pixel width to Lisp (Bug#7048).
 +
 +2010-09-14  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * cmds.c (syms_of_cmds) <post-self-insert-hook>: Fix typos in docstring.
 +
 +2010-09-17  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * gtkutil.c (xg_pack_tool_bar): Call gtk_handle_box_set_handle_position
 +      with argument top/left if tool bar is vertical/horizontal (Bug#7051).
 +
 +2010-09-17  Kenichi Handa  <handa@m17n.org>
 +
 +      * ftfont.c (ftfont_check_otf): Fix previous change.
 +
 +2010-09-14  Kenichi Handa  <handa@m17n.org>
 +
 +      * ftfont.c (ftfont_check_otf): Fix the case of checking just
 +      existence of GSUB or GPOS.
 +
 +2010-09-14  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * cmds.c (syms_of_cmds) <post-self-insert-hook>: Fix typos in docstring.
 +
 +2010-09-14  Lars Magne Ingebrigtsen  <larsi@gnus.org>
 +
-       (xg_height_or_width_changed): Renamed from xg_height_changed.
++      * xml.c (parse_buffer): Rename to parse_string(), since that's
 +      what it does.
 +      (parse_string): Return nil when the document can't be parsed.
 +
 +2010-09-14  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * xterm.c (get_current_vm_state): New function.
 +      (do_ewmh_fullscreen): Call get_current_vm_state and compare with
 +      want_fullscreen so set_wm_state calls are few (Bug#7013).
 +      (x_handle_net_wm_state): Move code to get_current_vm_state and
 +      call that function.
 +
 +2010-09-14  Courtney Bane  <emacs-bugs-7626@cbane.org>  (tiny change)
 +
 +      * term.c (tty_set_terminal_modes): Don't initialize twice (bug#7002).
 +
 +2010-09-14  Kenichi Handa  <handa@m17n.org>
 +
 +      * coding.c (encode_coding_iso_2022): Don't optimize for ASCII if
 +      we may use designation or locking-shift.
 +
 +2010-09-14  Kenichi Handa  <handa@m17n.org>
 +
 +      * coding.c (detect_coding_emacs_mule): Fix checking of multibyte
 +      sequence when the source is multibyte.
 +
 +2010-09-14  Andreas Schwab  <schwab@linux-m68k.org>
 +
 +      * xml.c (Fxml_parse_string, Fxml_parse_string): Revert last change.
 +      Don't make first argument optional.  Doc fix.
 +
 +2010-09-14  Leo  <sdl.web@gmail.com>  (tiny change)
 +
 +      * xml.c (Fxml_parse_string, Fhtml_parse_string): Fix up the
 +      parameters for the doc string.
 +
 +2010-09-12  Lars Magne Ingebrigtsen  <larsi@gnus.org>
 +
 +      * xml.c (Fhtml_parse_string, Fxml_parse_string): Mention BASE-URL.
 +
 +2010-09-12  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * fns.c (Fy_or_n_p): Move to lisp/subr.el.
 +      (syms_of_fns): Don't defsubr Sy_or_n_p.
 +      * lisp.h: Don't declare Fy_or_n_p.
 +      * fileio.c (barf_or_query_if_file_exists): Fy_or_n_p -> y-or-n-p.
 +
 +2010-09-09  Lars Magne Ingebrigtsen  <larsi@gnus.org>
 +
 +      * xml.c (Fxml_parse_buffer): New function to parse XML files.
 +
 +2010-09-08  Lars Magne Ingebrigtsen  <larsi@gnus.org>
 +
 +      * xml.c: New file.
 +      (Fhtml_parse_buffer): New function to interface to the libxml2
 +      html parsing function.
 +
 +2010-09-05  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * biditype.h: Regenerate.
 +
 +2010-09-04  Andreas Schwab  <schwab@linux-m68k.org>
 +
 +      * nsimage.m (ns_load_image): Check argument types.
 +
 +      * image.c: Remove all uses of gcpro.
 +      (xpm_load): Check all lisp types.
 +      (pbm_load): Likewise.
 +      (png_load): Likewise.
 +      (jpeg_load): Likewise.
 +      (tiff_load): Likewise.
 +      (gif_load): Likewise.
 +      (imagemagick_load_image): Likewise.
 +      (imagemagick_load): Likewise.
 +      (svg_load): Likewise.
 +      (gs_load): Likewise.
 +
 +2010-09-04  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * w32uniscribe.c (uniscribe_shape): Update commentary.
 +      Don't try to reorder grapheme clusters, since LGSTRING should always
 +      hold them in the logical order.
 +      (uniscribe_encode_char, uniscribe_shape): Force ScriptShape to
 +      return glyph codes in the logical order.
 +
 +2010-09-04  Andreas Schwab  <schwab@linux-m68k.org>
 +
 +      * image.c (imagemagick_image_p): Replace bcopy by memcpy.
 +      (imagemagick_load_image): Fix type mismatch.
 +      (Fimagemagick_types): Likewise.  Doc fix.
 +
 +2010-09-02  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * xterm.h (struct dpyinfo): Remove cut_buffers_initialized.
 +
 +      * xterm.c (x_term_init): Don't set dpyinfo->cut_buffers_initialized.
 +
 +      * xselect.c: Remove declaration of cut-buffer objects and functions.
 +      (symbol_to_x_atom): Remove mapping to XA_CUT_BUFFERn.
 +      (x_atom_to_symbol): Remove mapping to QCUT_BUFFERn.
 +      (Fx_get_cut_buffer_internal, Fx_store_cut_buffer_internal)
 +      (Fx_rotate_cut_buffers_internal): Remove.
 +      (syms_of_xselect): Remove defsubr of above.
 +      Remove intern of QCUT_BUFFERn.
 +
 +2010-09-01  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * cmds.c (Vblink_paren_function): Remove.
 +      (internal_self_insert): Make it insert N chars at a time.
 +      Don't call blink-paren-function.
 +      (Fself_insert_command): Adjust accordingly.
 +      (syms_of_cmds): Don't declare blink-paren-function.
 +
 +2010-08-31  Kenichi Handa  <handa@m17n.org>
 +
 +      * dispextern.h (FACE_FOR_CHAR): Use an ASCII face for 8-bit
 +      characters.
 +
 +      * term.c (encode_terminal_code): Fix the previous change.
 +      (produce_glyphs): Don't set it->char_to_display here.
 +      Don't handle unibyte-display-via-language-environment here.
 +      (produce_special_glyphs): Set temp_it.char_to_display before
 +      calling produce_glyphs.
 +
 +      * xdisp.c (get_next_display_element): Set it->char_to_display
 +      here.  Convert all 8-bit bytes from unibyte buffer/string to 8-bit
 +      characters.
 +      (get_overlay_arrow_glyph_row): Set it.char_to_display too before
 +      calling PRODUCE_GLYPHS.
 +      (append_space_for_newline): Save and store it->char_to_display.
 +      Set it->char_to_display before calling PRODUCE_GLYPHS.
 +      (extend_face_to_end_of_line): Set it->char_to_display before
 +      calling PRODUCE_GLYPHS.
 +      (get_glyph_face_and_encoding): Set the glyph code an 8-bit
 +      character to its byte value.
 +      (get_char_glyph_code): New function.
 +      (produce_stretch_glyph): Set it2.char_to_display too before
 +      calling x_produce_glyphs.
 +      (x_produce_glyphs): Simplify by using the same code for ASCII and
 +      non-ASCII characters.  Don't set it->char_to_display here.
 +      Don't handle unibyte-display-via-language-environment here.  For a
 +      character of no glyph, use font->space_width instead of FONT_WIDTH.
 +
 +2010-08-31  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * keyboard.c (Fwindow_system): Fix compilation for USE_LISP_UNION_TYPE.
 +
 +2010-08-31  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * keyboard.c (command_loop_1): Don't call x-set-selection on tty.
 +
 +2010-08-30  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * marker.c (Fcopy_marker): Make the first arg optional.
 +
 +2010-08-30  Kenichi Handa  <handa@m17n.org>
 +
 +      * composite.c (composition_update_it): Fix computing of
 +      cmp_it->width.
 +
 +2010-08-29  Kenichi Handa  <handa@m17n.org>
 +
 +      * term.c (encode_terminal_code): Encode byte chars to the
 +      corresponding bytes.
 +
 +2010-08-29  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * nsterm.m (ns_draw_window_cursor): Draw BAR_CURSOR correct for R2L.
 +
 +2010-08-26  Kenichi Handa  <handa@m17n.org>
 +
 +      * xdisp.c (compute_stop_pos): Pay attention to bidi scan direction
 +      on calling composition_compute_stop_pos.
 +
 +2010-08-25  Kenichi Handa  <handa@m17n.org>
 +
 +      * fontset.c (reorder_font_vector): Prefer a font-spec specifying
 +      :otf.
 +
 +      * composite.c (composition_compute_stop_pos): Don't break
 +      composition at PT.
 +      (composition_reseat_it): Likewise.  Fix calculation of character
 +      position starting a composition.
 +      (Fcomposition_get_gstring): Don't limit the number of components
 +      for automatic composition.
 +
 +2010-08-25  Kenichi Handa  <handa@m17n.org>
 +
 +      * composite.c (composition_compute_stop_pos): In forward search,
 +      pay attention to the possibility that some character after ENDPOS
 +      will be composed with charactrs before ENDPOS.
 +
 +2010-08-24  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * keyboard.c (command_loop_1): Don't clobber primary selection
 +      during handle-switch-frame (Bug#6872).
 +
 +2010-08-23  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * dbusbind.c: Accept UNIX domain sockets as bus address.
 +      (Fdbus_close_bus): New function.
 +      (Vdbus_registered_buses): New variable.
 +      (xd_initialize): Implement string as bus address.
 +      (Fdbus_init_bus): Add bus to Vdbus_registered_buses).
 +      (Fdbus_get_unique_name, Fdbus_call_method)
 +      (Fdbus_call_method_asynchronously, Fdbus_method_return_internal)
 +      (Fdbus_method_error_internal, Fdbus_send_signal)
 +      (Fdbus_register_signal, Fdbus_register_method): Remove bus type
 +      check.  This is done in xd_initialize_bus.  Adapt doc string, if
 +      necessary.
 +      (xd_pending_messages, xd_read_queued_messages): Loop over buses in
 +      Vdbus_registered_buses.
 +      (Vdbus_registered_objects_table): Create hash.
 +
 +2010-08-22  Juri Linkov  <juri@jurta.org>
 +
 +      * keyboard.c (Fexecute_extended_command): Move reading a command name
 +      with `completing-read' to a new Elisp function `read-extended-command'.
 +      Call it to read a command to `function'  (bug#5364, bug#5214).
 +
 +2010-08-22  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * emacs.c (main): Remove handling of --unibyte arg (Bug#6886).
 +
 +2010-08-22  Andreas Schwab  <schwab@linux-m68k.org>
 +
 +      * eval.c (Flet, Feval, Fapply, apply_lambda): Use SAFE_ALLOCA_LISP
 +      instead of SAFE_ALLOCA.
 +
 +2010-08-22  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * eval.c (Flet, Feval, Fapply, apply_lambda): Use SAFE_ALLOCA
 +      (Bug#6214).
 +
 +2010-08-22  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * doc.c (Fsnarf_documentation): Set skip_file only if p[1] is S.
 +
 +2010-08-22  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * doc.c (Fsnarf_documentation): Initialize skip_file before
 +      build-files test.
 +
 +2010-08-22  Peter O'Gorman  <pogma@thewrittenword.com>  (tiny change)
 +
 +      * s/hpux10-20.h (HAVE_TERMIOS, NO_TERMIO, ORDINARY_LINK):
 +      New definitions.
 +      (HAVE_TERMIO): Remove.
 +
 +2010-08-22  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * deps.mk (sysdep.o, msdos.o): Depend on sysselect.h.
 +
 +      * sysselect.h [WINDOWSNT]: Don't define the FD_* and select stuff
 +      for w32.
 +
 +      * s/ms-w32.h (HAVE_SYS_TIMEB_H): Don't #undef HAVE_SYS_SELECT_H,
 +      it's done in nt/config.nt.
 +
 +      * makefile.w32-in ($(BLD)/sysdep.$(O)): Depend on sysselect.h.
 +
 +      * unexcoff.c (report_error, make_hdr, write_segment)
 +      (copy_text_and_data, copy_sym, mark_x, adjust_lnnoptrs, unexec):
 +      Convert argument lists and prototypes to ANSI C.
 +      (make_hdr, write_segment): Remove unused variables.
 +      (unexec): Remove commented-out line.  Initialize `new' to shut up
 +      compiler warnings.
 +
 +2010-08-22  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      Simplify termio code.
 +      All non-MSDOS non-WINDOWSNT platforms define HAVE_TERMIOS, so
 +      HAVE_TERMIO code is obsolete.
 +      Replace HAVE_TERMIOS conditionals with !DOS_NT.
 +      * systty.h: Do not define HAVE_TCATTR.
 +      Remove HAVE_TERMIO, HAVE_LTCHARS and HAVE_TCHARS code.
 +      Do not define EMACS_HAVE_TTY_PGRP.  Only define
 +      EMACS_GET_TTY_PGRP for !DOS_NT.
 +      * sysdep.c: Include sysselect.h unconditionally.  Do not include
 +      sys/ioctl.h and termios.h, systty.h does it.
 +      Use HAVE_SYS_UTSNAME_H instead of USG as an include guard.
 +      (init_baud_rate): Remove HAVE_TERMIO code.
 +      (child_setup_tty): Remove HAVE_TERMIO code.
 +      (emacs_get_tty, emacs_set_tty): Remove HAVE_TERMIO, HAVE_TCHARS
 +      and HAVE_LTCHARS code.  Use !DOS_NT instead of HAVE_TCATTR.
 +      (new_ltchars, new_tchars): Remove, unused.
 +      (init_sys_modes): Remove HAVE_TERMIO, HAVE_TCHARS and HAVE_LTCHARS
 +      code.  Remove special casing for __mips__, it was a no-op.
 +      Remove HAVE_TCATTR conditional, it is implied by HAVE_TERMIOS.
 +      (init_sys_modes): Remove HPUX special case.
 +      * process.c: Include stdlib.h unconditionally.  Do not include
 +      fcntl.h, systty.h does it.  Remove conditional code for
 +      HAVE_SERIAL, it is always true.
 +      (process_send_signal): Remove HAVE_TERMIOS conditional, it's
 +      always true when SIGNALS_VIA_CHARACTERS is true.
 +      (Fcontinue_process, Fprocess_send_eof): Simplify conditionals:
 +      !WINDOWSNT means HAVE_TERMIOS.
 +      (create_process): Remove HAVE_TERMIOS, it's inside a HAVE_PTYS
 +      conditional, which is true for all HAVE_TERMIOS systems.
 +      * keyboard.c (init_keyboard): Do not use HAVE_TERMIO, use !DOS_NT
 +      instead of HAVE_TERMIOS.
 +      * emacs.c (shut_down_emacs): Use !defined DOS_NT instead of
 +      EMACS_HAVE_TTY_PGRP.
 +      * callproc.c (child_setup): Move EMACS_SET_TTY_PGRP use to the
 +      non-MSDOS, non-WINDOWSNT code, it's only defined for such systems
 +      anyway.
 +
 +2010-08-21  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * dispnew.c (buffer_posn_from_coords): Fix off-by-one error in
 +      mirroring pixel positions.
 +
 +2010-08-20  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * alloc.c (malloc_sbrk_used, malloc_sbrk_unused): Remove,
 +      write only.
 +      (init_alloc_once): Remove writes to malloc_sbrk_unused, and
 +      malloc_sbrk_used, nothing uses them.
 +
 +      * puresize.h: Remove code assuming PNTR_COMPARISON_TYPE is not
 +      defined, unconditionally defined in lisp.h.
 +
 +      * term.c: Do not include <termios.h>, systty.h does it.
 +
 +      * s/unixware.h (HAVE_TCATTR):
 +      * s/aix4-2.h (HAVE_TCATTR): Remove definitions, not needed.
 +      systty.h defines it when HAVE_TERMIOS is defined.
 +
 +2010-08-20  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * dispnew.c (buffer_posn_from_coords): Fix last change for text
 +      terminals: add one-character offset for R2L lines.
 +
 +      * emacs.c <emacs_version>: Add a comment regarding
 +      msdos/mainmake.v2's dependency on the syntax of this declaration.
 +
 +2010-08-20  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * dispnew.c (buffer_posn_from_coords): Fix calculation of buffer
 +      position for R2L lines by mirroring the pixel position wrt the
 +      text are box.  Improve commentary.
 +
 +2010-08-20  Andreas Schwab  <schwab@linux-m68k.org>
 +
 +      * image.c (imagemagick_clear_image): Remove debugging output.
 +
 +2010-08-19  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * cmds.c (Vself_insert_face, Vself_insert_face_command): Remove.
 +      (Qpost_self_insert_hook, Vpost_self_insert_hook): New vars.
 +      (internal_self_insert): Run Qpost_self_insert_hook rather than handle
 +      self-insert-face.
 +      (syms_of_cmds): Initialize the new vars.
 +
 +2010-08-19  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32menu.c (set_frame_menubar): Remove call to undefined function.
 +
 +      * w32fns.c (w32_wnd_proc): Don't check context before initializing.
 +
 +2010-08-19  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * nsselect.m (nxatoms_of_nsselect): Use "Selection" and "Secondary".
 +
 +2010-08-18  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * xterm.c (x_draw_bar_cursor):
 +      * w32term.c (x_draw_bar_cursor): If the character under cursor is
 +      R2L, draw the bar cursor on its right rather than on its left.
 +
 +2010-08-18  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * eval.c (Fdefmacro): Only obey one declaration.
 +
 +      * casefiddle.c (casify_region): Setup gl_state.
 +
 +2010-08-18  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * nsterm.m (ns_define_frame_cursor): Call x_update_cursor (Bug#6868).
 +
 +2010-08-18  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * gtkutil.c (update_frame_tool_bar): Literal strings are const char*.
 +
 +2010-08-18  David De La Harpe Golden  <david@harpegolden.net>
 +
 +      * nsselect.m (QCLIPBOARD, NXPrimaryPboard): Define.
 +      (symbol_to_nsstring): Map QCLIPBOARD => NSGeneralPboard,
 +      QPRIMARY => NXPrimaryPboard.
 +      (ns_string_to_symbol): NSGeneralPboard => QCLIPBOARD,
 +      NXPrimaryPboard => QPRIMARY.
 +      (nxatoms_of_nsselect): NXPrimaryPboard = PrimarySelection,
 +      NXSecondaryPboard = SecondarySelection.
 +      (syms_of_nsselect): Intern QCLIPBOARD (Bug#6677).
 +
 +2010-08-18  Joakim Verona  <joakim@verona.se>
 +
 +      * image.c: Add support for ImageMagick.  When HAVE_IMAGEMAGICK is
 +      defined:
 +      (imagemagick_image_p): New function to test for ImageMagic image.
 +      (imagemagick_load): New function to load ImageMagick image.
 +      (imagemagick_load_image): New function, helper for imagemagick_load.
 +      (imagemagick-types): New function.
 +      (Qimagemagick): New Lisp_object.
 +      (imagemagick-render-type): New variable, decides which renderer to use.
 +
 +2010-08-17  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * gtkutil.c (update_frame_tool_bar): Don't assume TOOL_BAR_ITEM_LABEL
 +      is a string.
 +
 +2010-08-17  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * nsfns.m (ns_frame_parm_handlers): Add a slot for the
 +      x_set_tool_bar_position handler.
 +
 +2010-08-17  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * w32fns.c <w32_frame_parm_handlers>: Add a slot for the
 +      x_set_tool_bar_position handler, needed to support changes from
 +      2010-07-29T16:49:59Z!jan.h.d@swipnet.se for positioning the tool bar.  (Bug#6796)
 +
 +2010-08-16  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * nsselect.m: include keyboard.h for QPRIMARY, remove its
 +      declaration (Bug#6863).
 +      (syms_of_nsselect): Don't intern QPRIMARY.
 +
 +      * xselect.c: Remove declaration of QPRIMARY (Bug#6864).
 +
 +      * keyboard.h (QPRIMARY): Declare (Bug#6864).
 +
 +2010-08-16  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * keyboard.c (command_loop_1): Avoid setting selection twice,
 +      since it's done in deactivate-mark as well.
 +      (Vselect_active_regions): Change default to t.  Replace `lazy'
 +      with non-default value `only', meaning only set PRIMARY for
 +      temporarily active regions.
 +
 +      * insdel.c (prepare_to_modify_buffer): Handle `only' value of
 +      select-active-regions.
 +
 +2010-08-15  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * keyboard.c (parse_tool_bar_item): Put in a bad label if :label
 +      isn't a string.
 +
 +2010-08-15  Andreas Schwab  <schwab@linux-m68k.org>
 +
 +      * keyboard.c (parse_tool_bar_item): Avoid excessive use of strlen.
 +
 +2010-08-15  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * keyboard.c (parse_tool_bar_item): malloc buf.
 +      Set TOOL_BAR_ITEM_LABEL to empty string if not set to
 +      new_lbl (Bug#6855).
 +
 +2010-08-14  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * xterm.c (x_draw_stretch_glyph_string):
 +      * w32term.c (x_draw_stretch_glyph_string): In R2L rows, display
 +      the cursor on the right edge of the stretch glyph.
 +
 +      * xdisp.c (window_box_right_offset, window_box_right):
 +      Fix commentary.
 +
 +      * xdisp.c (Fcurrent_bidi_paragraph_direction): Fix paragraph
 +      direction when point is inside a run of whitespace characters.
 +
 +      * bidi.c (bidi_at_paragraph_end): Remove obsolete comment.
 +
 +2010-08-14  Jason Rumney  <jasonr@gnu.org>
 +
 +      * keyboard.c (lispy_function_keys): Do not define VK_PACKET (bug#4836)
 +
 +2010-08-14  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * fns.c (Fmake_hash_table): Doc fix (Bug#6851).
 +
 +2010-08-13  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32menu.c (simple_dialog_show): Use unicode message box if available.
 +      (MessageBoxW_Proc): New function typedef.
 +      (unicode-message-box): New function pointer.
 +      (globals_of_w32menu): Import it from user32.dll. (Bug#5629)
 +
 +2010-08-13  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * frame.h (Qtool_bar_position): Declare.
 +
 +      * xfns.c (Fx_create_frame): Call x_default_parameter for
 +      Qtool_bar_position.
 +
 +2010-08-13  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * unexcoff.c: Remove the parts used when "emacs" is not defined.
 +      (report_error, report_error_1): Ditto.
 +      (write_segment): Remove "#if 0" unused code.
 +      (make_hdr): Remove code that was "#ifndef NO_REMAP" before
 +      NO_REMAP was removed (in 2010-07-29T03:25:08Z!dann@ics.uci.edu).
 +      (start_of_text): Remove unused function (was used only if NO_REMAP
 +      was NOT defined).
 +
 +      * msdos.c (IT_set_face): Fix format string to match argument
 +      types.
 +      (IT_write_glyphs, IT_note_mode_line_highlight)
 +      (IT_set_frame_parameters): Remove unused variables.
 +      (x_set_menu_bar_lines): Declare set_menu_bar_lines.
 +      (IT_set_terminal_modes): Disambiguate expression in if clause.
 +      (Fmsdos_remember_default_colors): Return Qnil.
 +      (IT_set_frame_parameters): Add parens to disambiguate boolean
 +      expression for logging the cursor type to termscript.
 +      (keyboard_layout_list, keypad_translate_map)
 +      (grey_key_translate_map): Add braces in inner initializers.
 +      (dos_rawgetc): Add parens in condition for mouse-3 button-press.
 +      (dos_rawgetc): Remove unused label.
 +      (XMenuActivate): Add braces to remove ambiguous `else'.
 +      (dos_ttraw): Always return a value.
 +      (spawnve): Declare.
 +      (run_msdos_command): Cast 3rd arg of spawnve to "char **".
 +
 +      * dosfns.h (x_set_title): Declare.
 +
 +      * w16select.c (Fw16_set_clipboard_data, Fw16_get_clipboard_data):
 +      Remove unused variables.
 +
 +      * dosfns.c (Fint86, Fdos_memget, Fdos_memput): Remove unused
 +      variables.
 +      (init_dosfns): Declare get_lim_data.
 +      (system_process_attributes): Declare Fget_internal_run_time.
 +
 +      * xmenu.c (xmenu_show) [!USE_X_TOOLKIT && !USE_GTK]: Fix argument
 +      list to be consistent with menu.h.
 +
 +      * w32menu.c (add_menu_item, name_is_separator): Shut up compiler
 +      warnings due to mixing of "char *" and "const char *".
 +
 +2010-08-12  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      Introduce a new comment style "c" flag.
 +      * syntax.c (SYNTAX_FLAGS_COMMENT_STYLEB)
 +      (SYNTAX_FLAGS_COMMENT_STYLEC): New macros.
 +      (SYNTAX_FLAGS_COMMENT_STYLE): Use them, add an argument.
 +      (syntax_prefix_flag_p): New function.
 +      (Fstring_to_syntax): Understand new "c" flag.
 +      (Finternal_describe_syntax_value): Recognize new flag; use the
 +      SYNTAX_FLAGS_* macros.
 +      (scan_sexps_forward, Fparse_partial_sexp): Change representation of
 +      comment style to accomodate the new styles.
 +      (back_comment, forw_comment, Fforward_comment, scan_lists)
 +      (scan_sexps_forward): Update code to obey the new comment style flag.
 +
 +      * syntax.h: Move SYNTAX_FLAGS_FOO() macros to syntax.c.
 +
 +      * casefiddle.c (casify_region): Use the new syntax_prefix_flag_p.
 +
 +2010-08-11  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * xfns.c (x_defined_color): If USE_GTK, call xg_check_special_colors
 +      first.
 +      (Fx_hide_tip): Check FRAME_LIVE_P (f) before calling xg_hide_tooltip.
 +
 +      * gtkutil.h (xg_check_special_colors): Declare.
 +
 +      * gtkutil.c (xg_check_special_colors, style_changed_cb): New functions.
 +      (xg_create_frame_widgets): Connect theme name changes to
 +      style_changed_cb.
 +
 +      * xterm.c (emacs_class): New char[] for EMACS_CLASS.
 +      (xim_open_dpy, xim_initialize, xim_close_dpy): Use emacs_class.
 +      (x_term_init): Use char[] display_opt and name_opt instead of
 +      string literal.  file is const char*.
 +
 +      * xsmfns.c (NOSPLASH_OPT): Change to char[].
 +      (smc_save_yourself_CB): Do xstrdup on all ->type and ->name for
 +      props.  Free them at the end.
 +
 +      * xselect.c (Fx_get_atom_name): Use char empty[] instead of literal "".
 +
 +      * xrdb.c (get_system_app): Make path const and use char *p for
 +      non-const char.
 +
 +      * xmenu.c (Fx_popup_dialog): error_name is const char*.
 +      (xmenu_show): error parameter is const char **.  pane_string is const
 +      char *.
 +      (button_names): Is const char *.
 +      (xdialog_show): error_name and pane_string is const.
 +
 +      * process.h (synch_process_death): Is const char*.
 +
 +      * w32menu.c (w32_menu_show):
 +      * nsmenu.m (ns_menu_show): error parameter is const char **.
 +
 +      * menu.h (w32_menu_show, ns_menu_show, xmenu_show): error parameter
 +      is const char **.
 +
 +      * menu.c (Fx_popup_menu): error_name is const.
 +
 +      * keyboard.h (_widget_value): Add defined USE_GTK.  Replace Boolean
 +      with unsigned char and XtPointer with void *.
 +
 +      * gtkutil.h: Replace widget_value with struct _widget_value.
 +      (enum button_type, struct _widget_value): Remove and use the one from
 +      keyboard.h.
 +
 +      * gtkutil.c (get_utf8_string): Always return an allocated string.
 +      Parameter is const.
 +      (create_dialog, xg_create_one_menuitem, create_menus)
 +      (xg_item_label_same_p, xg_update_menu_item): Free result from
 +      get_utf8_string.
 +      (xg_separator_p, xg_item_label_same_p): label is const.
 +
 +      * font.h (font_open_by_name): Make name const.
 +
 +      * font.c (font_open_by_name): Make name const.
 +
 +      * floatfns.c (matherr): Use a const char* variable for x->name.
 +
 +      * emacs.c (main): Pass char[] to putenv instead of literal.
 +
 +      * callproc.c (synch_process_death): Make const.
 +      (Fcall_process): Make signame const.
 +
 +      * nsterm.h (parseKeyEquiv, addSubmenuWithTitle)
 +      (addDisplayItemWithImage): Use const char*.
 +
 +      * nsmenu.m (parseKeyEquiv, addSubmenuWithTitle)
 +      (addDisplayItemWithImage, update_frame_tool_bar): Use const char*.
 +
 +      * nsfont.m (ns_descriptor_to_entity): Use const char*.
 +
 +      * keyboard.h (_widget_value): name, value and key are const char*.
 +
 +      * unexmacosx.c (unexec_error): Use const char *.
 +
 +2010-08-09  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * font.h (font_parse_xlfd, font_parse_fcname, font_unparse_fcname)
 +      (font_parse_name, font_open_by_name):
 +      * font.c (font_parse_xlfd, font_parse_fcname, font_unparse_fcname)
 +      (font_parse_name, font_open_by_name): Remove const.
 +
 +2010-08-09  Andreas Schwab  <schwab@linux-m68k.org>
 +
 +      Use autoconf determined WORDS_BIGENDIAN instead of hardcoded
 +      definition.
 +
 +      * m/alpha.h: Don't define/undef WORDS_BIG_ENDIAN.
 +      * m/amdx86-64.h: Likewise.
 +      * m/arm.h: Likewise.
 +      * m/hp800.h: Likewise.
 +      * m/ia64.h: Likewise.
 +      * m/ibmrs6000.h: Likewise.
 +      * m/ibms390.h: Likewise.
 +      * m/intel386.h: Likewise.
 +      * m/iris4d.h: Likewise.
 +      * m/m68k.h: Likewise.
 +      * m/macppc.h: Likewise.
 +      * m/mips.h: Likewise.
 +      * m/sh3.h: Likewise.
 +      * m/sparc.h: Likewise.
 +      * m/template.h: Likewise.
 +      * m/vax.h: Likewise.
 +      * m/xtensa.h: Likewise.
 +      * fringe.c (init_fringe_bitmap): Test WORDS_BIGENDIAN instead of
 +      WORDS_BIG_ENDIAN.
 +      * lisp.h: Likewise.
 +      * md5.c: Likewise.
 +      * sound.c (le2hl, le2hs, be2hl, be2hs): Likewise.
 +
 +2010-08-09  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      Use const char* instead of char*.
 +      Reduce the number of warnings with -Wwrite-strings.
 +      * xrdb.c (get_environ_db, get_system_name):
 +      * unexelf.c (find_section):
 +      * term.c (string_cost, string_cost_one_line, per_line_cost)
 +      (get_named_tty, init_tty):
 +      * sysdep.c (sys_subshell):
 +      * sound.c (sound_perror, sound_warning, vox_open, vox_init)
 +      (alsa_sound_perror, alsa_open, alsa_configure, alsa_init):
 +      * search.c (Freplace_match):
 +      * process.c (Fmake_network_process, send_process, init_process):
 +      * lread.c (Fload, init_lread):
 +      * keymap.c (Fdescribe_buffer_bindings, describe_map_tree):
 +      * keyboard.c (parse_tool_bar_item, struct event_head):
 +      * gtkutil.h (xg_get_font_name):
 +      * gtkutil.c (get_dialog_title, create_dialog, xg_get_font_name)
 +      (make_widget_for_menu_item, make_menu_item, create_menus)
 +      (xg_make_tool_item):
 +      * font.c (parse_matrix, font_parse_name):
 +      * floatfns.c (rounding_driver, float_error_fn_name):
 +      * filelock.c (get_boot_time_1, lock_file_1):
 +      * fileio.c (barf_or_query_if_file_exists, check_writable):
 +      * editfns.c (get_system_name, get_operating_system_release)
 +      (Fencode_time, Fset_time_zone_rule):
 +      * dispextern.h (string_cost, per_line_cost, get_named_tty, init_tty):
 +      * buffer.c (defvar_per_buffer): Use const.
 +
 +2010-08-08  Kenichi Handa  <handa@m17n.org>
 +
 +      * charset.c: Include <stdlib.h>.
 +      (struct charset_sort_data): New struct.
 +      (charset_compare): New function.
 +      (Fsort_charsets): New function.
 +      (syms_of_charset): Declare Fsort_charsets as a Lisp function.
 +
 +      * coding.c (decode_coding_iso_2022): Fix checking of dimension
 +      number in CTEXT extended segment.
 +
 +2010-08-08  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * w32fns.c (syms_of_w32fns) <x-max-tooltip-size>: Fix typo in docstring.
 +      * xfns.c (syms_of_xfns) <x-max-tooltip-size>: Reflow docstring.
 +
 +2010-08-08  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * fns.c (Fsubstring_no_properties, Fnthcdr, Ffeaturep)
 +      (Fhash_table_size): Fix typos in docstrings.
 +      (Fmake_hash_table): Doc fix.
 +
 +2010-08-08  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * minibuf.c (syms_of_minibuf) <read-buffer-function>:
 +      Doc fix (bug#5625).
 +
 +2010-08-08  Ken Brown  <kbrown@cornell.edu>
 +
 +      * dired.c (DIRENTRY_NONEMPTY) [cygwin]: Use d_ino instead of
 +      the MSDOS definition.
 +
 +2010-08-08  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      Use const char* instead of char*.
 +      * xterm.c (x_create_toolkit_scroll_bar):
 +      * xfont.c (xfont_list_pattern):
 +      * xfns.c (x_default_scroll_bar_color_parameter)
 +      (xic_create_fontsetname, x_default_font_parameter)
 +      (x_screen_planes):
 +      * xdisp.c (c_string_pos, number_of_chars, reseat_to_string)
 +      (store_mode_line_string, decode_mode_spec, display_string):
 +      * menu.c (digest_single_submenu):
 +      * keymap.h (initial_define_key, initial_define_lispy_key):
 +      * keymap.c (initial_define_key, initial_define_lispy_key):
 +      * image.c (image_error, image_keyword):
 +      * gtkutil.h (xg_create_widget, xg_create_scroll_bar):
 +      * gtkutil.c (xg_create_widget, xg_create_scroll_bar):
 +      * ftfont.c (struct fc_charset_table, ftfont_spec_pattern)
 +      (ftfont_list, ftfont_match):
 +      * frame.c (frame_parm_table):
 +      * font.h (font_intern_prop, font_parse_xlfd, font_parse_fcname)
 +      (font_unparse_fcname, font_unparse_fcname, font_open_by_name)
 +      (font_add_log, font_deferred_log):
 +      * font.c (font_intern_prop, font_parse_xlfd, font_parse_fcname)
 +      (font_unparse_fcname, font_unparse_fcname, font_open_by_name)
 +      (font_add_log, font_deferred_log):
 +      * emacs.c (argmatch):
 +      * dispextern.h (struct it):
 +      * coding.c (ENCODE_DESIGNATION):
 +      * charset.c (define_charset_internal): Use const.
 +
 +      * s/freebsd.h (DECLARE_GETPWUID_WITH_UID_T): Remove, unused.
 +
 +      * xrdb.c: Remove include guard.
 +      Remove DECLARE_GETPWUID_WITH_UID_T conditional it had no effect.
 +      Remove #if 0 code.  Replace malloc->xmalloc, free->xfree,
 +      realloc->xrealloc instead of using #defines.
 +
 +2010-08-08  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * cmds.c (Fforward_line, Fbeginning_of_line, Fend_of_line):
 +      * editfns.c (Fline_beginning_position, Fline_end_position):
 +      State in the doc strings that start and end of line are in the
 +      logical order.
 +
 +      * xdisp.c (display_line): Move the handling of overlay arrow after
 +      the call to find_row_edges.  (Bug#6699)
 +
 +2010-08-07  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * keyboard.c (command_loop_1):
 +      * insdel.c (prepare_to_modify_buffer): Don't call validate_region.
 +
 +2010-08-07  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * insdel.c (prepare_to_modify_buffer): Save active region text to
 +      Vsaved_region_selection.
 +
 +      * xselect.c (QPRIMARY): Move to keyboard.c.
 +
 +      * keyboard.c (Vselect_active_regions): Move from simple.el.
 +      (Vsaved_region_selection, Qx_set_selection, QPRIMARY, Qlazy): New vars.
 +      (command_loop_1): Set window selection prior to deactivating the mark.
 +
 +2010-08-07  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * alloc.c (lisp_malloc):
 +      * buffer.c (set_buffer_internal, set_buffer_internal_1):
 +      * charset.h (emacs_mule_charset):
 +      * dispextern.h (inhibit_free_realized_faces, redraw_frame)
 +      (redraw_garbaged_frames, scroll_cost, update_frame, scrolling)
 +      (bitch_at_user):
 +      * lisp.h (Fcheck_coding_system, Fget_text_property)
 +      (Qfunction, Qcompletion_ignore_case, QCwidth, QCsize):
 +      Remove duplicate declarations.
 +
 +2010-08-06  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * process.c: Simplify include logic.
 +
 +      * keyboard.h (quit_char): Add declaration.
 +      * process.h (QCport, QCspeed, QCprocess, QCbytesize, QCstopbits)
 +      (QCparity, Qodd, Qeven, QCflowcontrol, Qhw, Qsw, QCsummary):
 +      Add declarations.
 +      * sysdep.c:
 +      * w32.c: Remove the above declarations.
 +
 +      Remove extern declarations in .c files, .h files have them.
 +      * xterm.c:
 +      * xdisp.c:
 +      * msdos.c:
 +      * image.c:
 +      * gtkutil.c:
 +      * fileio.c:
 +      * eval.c: Remove declarations.
 +
 +      * frame.c (frame_params): Make const.
 +
 +      * lisp.h (fatal_error_signal, emacs_root_dir): Add declaration.
 +
 +      * emacs.c (emacs_copyright, emacs_version): Make static.
 +      (Vinitial_window_system, Vauto_save_list_file_name)
 +      (Vinhibit_redisplay): Remove declarations.
 +      (main): Remove HAVE_SHM code, unused.  Remove _I386 conditional
 +      for AIX.
 +
 +      Use const for some arrays and functions.
 +      * xterm.h (xg_set_icon_from_xpm_data):
 +      * xfns.c (xg_set_icon_from_xpm_data):
 +      * term.c (fkeys):
 +      * keyboard.c (lispy_accent_keys, lispy_function_keys)
 +      (lispy_multimedia_keys, lispy_kana_keys, iso_lispy_function_keys)
 +      (lispy_drag_n_drop_names, scroll_bar_parts, modify_event_symbol)
 +      (frame.c frame_parms):
 +      * emacs-icon.h (gnu_xpm_bits):
 +      * callint.c (callint_argfuns): Use const.
 +
 +2010-08-06  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * sysdep.c: Move include term.h last of includes (Bug#6812).
 +
 +2010-08-06  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * dispnew.c (realloc_glyph_pool): Zero out newly allocated glyphs.
 +
 +      * msdos.c (IT_display_cursor): Log cursor position on termscript.
 +
 +      * .gdbinit (pgx): Display the avoid_cursor_p flag.
 +
 +2010-08-06  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * makefile.w32-in ($(BLD)/xdisp.$(O)): Update dependencies.
 +
 +2010-08-06  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * xterm.h (x_get_focus_frame): Declare.
 +
 +      * keyboard.h (poll_for_input_1): Unconditionally declare.
 +
 +      * nsterm.h (x_set_menu_bar_lines): Declare.
 +
 +      * window.c: Don't include menu.h, it depends on lots of other .h-files.
 +
 +      * xfaces.c (x_create_gc, x_free_gc): Convert to ANSI C prototypes.
 +
 +      * window.c: Include menu.h.
 +
 +      * unexmacosx.c (print_region_list, print_regions)
 +      (build_region_list, find_emacs_zone_regions)
 +      (unexec_regions_merge, read_load_commands, dump_it)
 +      (unexec_init_emacs_zone): Convert to ANSI C prototypes.
 +
 +      * term.c: Check HAVE_SYS_IOCTL_H.
 +
 +      * sysdep.c: Check HAVE_TERM_H.
 +
 +      * process.c: Check HAVE_UTIL_H.  Include nsterm.h if HAVE_NS.
 +
 +      * nsterm.m (ns_init_paths, ns_alloc_autorelease_pool)
 +      (ns_ring_bell, ns_defined_color, hide_hourglass)
 +      (x_display_pixel_height, x_display_pixel_width, syms_of_nsterm):
 +      Convert to ANSI C prototypes.
 +      (x_set_window_size, ns_draw_fringe_bitmap, judge): Move declarations
 +      before code.
 +
 +      * nsterm.h : Include sysselect.h.
 +      (x_sync, x_get_focus_frame, x_set_mouse_position)
 +      (x_set_mouse_pixel_position, x_make_frame_visible)
 +      (x_make_frame_invisible, x_iconify_frame, x_char_width, x_char_height)
 +      (x_pixel_width, x_pixel_height, x_set_frame_alpha, x_set_tool_bar_lines)
 +      (x_activate_menubar, free_frame_menubar, ns_init_paths, ns_select)
 +      (syms_of_nsterm, syms_of_nsfns, syms_of_nsmenu, syms_of_nsselect):
 +      Declare.
 +
 +      * nsmenu.m (popup_activated, name_is_separator)
 +      (syms_of_nsmenu): Convert to ANSI C prototypes.
 +      (runMenuAt): Prototypes and move declarations before code.
 +
 +      * nsimage.m (ns_load_image): Move NSTRACE after declarations.
 +
 +      * nsfont.m (ns_fallback_entity, syms_of_nsfont): Convert to ANSI C
 +      prototypes.
 +
 +      * nsfns.m (have_menus_p, ns_display_info_for_name)
 +      (x_set_cursor_type, ns_appkit_version_str)
 +      (ns_appkit_version_int, ns_do_applescript)
 +      (x_set_scroll_bar_default_width, x_sync, compute_tip_xy)
 +      (syms_of_nsfns): Convert to ANSI C prototypes.
 +
 +      * menu.h (x_set_menu_bar_line): Declare.
 +      (free_menubar_widget_value_tree et.al): Add HAVE_NS for these functions.
 +
 +      * lisp.h (fmod_float): Declare.
 +
 +      * image.c (xpm_scan, xpm_make_color_table_v)
 +      (xpm_put_color_table_v, xpm_get_color_table_v)
 +      (xpm_make_color_table_h, xpm_put_color_table_h)
 +      (xpm_get_color_table_h, xpm_str_to_color_key, xpm_load_image)
 +      (xpm_load): Convert to ANSI C prototypes.
 +
 +      * emacs.c: Include nsterm.h if HAVE_NS.
 +
 +      * bidi.c (bidi_dump_cached_states): Fix fprintf warning.
 +
 +2010-08-06  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * process.c: Remove HAVE_SOCKETS #ifdefs inside #ifdef
 +      subprocesses, only MSDOS does not define HAVE_SOCKETS.
 +      (socket_options): Use const char* for name.
 +
 +2010-08-06  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      Fix changes in 2010-08-05T23:15:24Z!dann@ics.uci.edu..2010-08-05T23:34:12Z!dann@ics.uci.edu for Windows build.
 +
 +      * xmenu.c [USE_X_TOOLKIT || USE_GTK]:
 +      Don't declare xmalloc_widget_value and digest_single_submenu.
 +
 +      * w32font.c (Qlatin): Remove declaration.
 +
 +      * menu.h (xmalloc_widget_value, digest_single_submenu): Declare.
 +
 +      * dired.c (compile_pattern): Restore declaration.
 +
 +2010-08-05  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      Remove extern declarations in .c files, .h files have them.
 +      * data.c:
 +      * dired.c:
 +      * editfns.c:
 +      * filelock.c:
 +      * fns.c:
 +      * font.c:
 +      * fontset.c:
 +      * frame.c:
 +      * fringe.c:
 +      * ftfont.c:
 +      * gtkutil.c:
 +      * indent.c:
 +      * keyboard.c:
 +      * keymap.c:
 +      * lread.c:
 +      * menu.c:
 +      * print.c:
 +      * search.c:
 +      * sound.c:
 +      * window.c:
 +      * xdisp.c:
 +      * xfaces.c:
 +      * xfns.c:
 +      * xfont.c:
 +      * xftfont.c:
 +      * xmenu.c:
 +      * xterm.c: Remove declarations.
 +
 +      Cleanup syssignal.h.
 +      * syssignal.h (sighold, sigrelse, RETSIGTYPE): Remove, unused.
 +      (main_thread): Move down to remove #ifdef.
 +      (SIGMASKTYPE, SIGEMPTYMASK, SIGFULLMASK, sigmask, sigunblock):
 +      Remove conditional definition following unconditional ones.
 +
 +      * lisp.h: Remove HAVE_SHM code, unused.
 +      (QCmap, QCrehash_size, QCrehash_threshold, QCsize, QCtest)
 +      (QCweakness, Qabove_handle, Qbackquote, Qbar, Qbelow_handle)
 +      (Qborder, Qbottom, Qbox, Qcircular_list, Qcomma, Qcomma_at)
 +      (Qcomma_dot, Qcursor, Qdefault, Qdown, Qend_scroll, Qeq, Qeql)
 +      (Qequal, Qfile_exists_p, Qfont_param, Qfringe, Qfunction)
 +      (Qfunction_documentation, Qhandle, Qhbar, Qheader_line, Qhollow)
 +      (Qidentity, Qleft_margin, Qmenu, Qmenu_bar_update_hook)
 +      (Qmode_line_inactive, Qmouse, Qoverriding_local_map)
 +      (Qoverriding_terminal_local_map, Qratio, Qregion, Qright_margin)
 +      (Qscroll_bar, Qtool_bar, Qtop, Qup, Qvertical_border, Qwhen)
 +      (Qwindow_scroll_functions, Vafter_load_alist)
 +      (Vauto_save_list_file_name, Vface_alternative_font_family_alist)
 +      (Vface_alternative_font_registry_alist, Vface_font_rescale_alist)
 +      (Vface_ignored_fonts, Vinhibit_redisplay, Vminibuffer_list)
 +      (Vprint_length, Vprint_level, Vscalable_fonts_allowed)
 +      (Vshell_file_name, Vsystem_name, Vwindow_scroll_functions)
 +      (Vwindow_system_version, Vx_no_window_manager, initial_argc)
 +      (initial_argv, last_nonmenu_event, load_in_progress)
 +      (noninteractive_need_newline, scroll_margin): Add declarations.
 +
 +      * keyboard.h (xmalloc_widget_value, digest_single_submenu):
 +      Remove declarations, menu.h has them.
 +      (QCbutton, QCtoggle, QCradio, QClabel, extra_keyboard_modifiers)
 +      (Vinput_method_function, Qinput_method_function)
 +      (Qevent_symbol_element_mask, last_event_timestamp):
 +      * dispextern.h (Voverflow_newline_into_fringe):
 +      * font.h (QCantialias, Qp, syms_of_ftfont, syms_of_xfns)
 +      (syms_of_ftxfont, syms_of_xftfont, syms_of_bdffont)
 +      (syms_of_w32font, syms_of_nsfont):
 +      * fontset.h (find_font_encoding, Qlatin):
 +      * frame.h (Qtooltip, Qrun_hook_with_args, Vmenu_bar_mode)
 +      (Vtool_bar_mode, set_frame_menubar):
 +      * ftfont.h (ftfont_font_format, ftfont_get_fc_charset):
 +      * xterm.h (Qx_gtk_map_stock):
 +      * keymap.h (meta_prefix_char): Add declarations.
 +
 +      * term.c: Remove dead code.
 +
 +      Fix emacs -Q -f server-start & emacsclient -t on GNU/Linux.
 +      * term.c (dissociate_if_controlling_tty): Use USG5 instead of
 +      USG.  This is equivalent to defined (USG) && !defined (BSD_PGRPS),
 +      which is what was there before BSD_PGRPS was removed.
 +
 +2010-08-05  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * deps.mk (unexcoff.o): Rename unexec.[co] => unexcoff.[co].
 +
 +      * unexcoff.c: Renamed from unexec.c.
 +
 +2010-08-04  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * sysdep.c (child_setup_tty): Comment-out left-over non-ICANON code.
 +
 +2010-08-03  Johan Bockgård  <bojohan@gnu.org>
 +
 +      * data.c (Flocal_variable_p): Handle variable aliases correctly.
 +      (Bug#6744)
 +
 +2010-08-02  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * xterm.c (x_create_toolkit_scroll_bar): Only set XtNbeNiceToColormap
 +      to TRUE if depth of screen is < 16.
 +
 +      * gtkutil.c (hierarchy_ch_cb, qttip_cb): Do not define unless
 +      USE_GTK_TOOLTIP.
 +      (xg_prepare_tooltip): Return 0 unless USE_GTK_TOOLTIP.
 +      (xg_show_tooltip, xg_hide_tooltip): Do nothing unless USE_GTK_TOOLTIP.
 +      (xg_create_frame_widgets): Surround tooltip-related code with ifdef
 +      USE_GTK_TOOLTIP.
 +      (xg_free_frame_widgets): Don't delete ttip_* unless USE_GTK_TOOLTIP.
 +
 +      * xterm.h (USE_GTK_TOOLTIP): New define.
 +      (struct x_output): Put ttip_* inside ifdef USE_GTK_TOOLTIP.
 +
 +      * sysdep.c (child_setup_tty): Enable ICANON in lflags and set VEOF
 +      to Control-D (Bug#6771).
 +
 +2010-08-02  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * editfns.c (Fregion_beginning, Fregion_end): Doc fixes (bug#6493).
 +      Wording by Drew Adams <drew.adams@oracle.com>.
 +
 +2010-08-01  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * xterm.h (struct x_output): Add ttip_widget, ttip_window and
 +      ttip_lbl.
 +
 +      * xterm.c (x_clear_frame): Check FRAME_GTK_WIDGET (f) before
 +      calling gtk_widget_queue_draw.
 +      (x_free_frame_resources): Call xg_free_frame_widgets.
 +
 +      * xfns.c (x_gtk_use_system_tooltips): New variable.
 +      (Fx_show_tip): If USE_GTK and x_gtk_use_system_tooltips, call
 +      new gtkutil tooltip functions to show the tooltip.
 +      (Fx_hide_tip): Call xg_hide_tooltip.
 +      (syms_of_xfns): Defvar x-gtk-use-system-tooltips.
 +
 +      * gtkutil.h (xg_free_frame_widgets, xg_prepare_tooltip)
 +      (xg_show_tooltip, xg_hide_tooltip): Declare.
 +
 +      * gtkutil.c (hierarchy_ch_cb, qttip_cb, xg_prepare_tooltip)
 +      (xg_show_tooltip, xg_hide_tooltip, xg_free_frame_widgets):
 +      New functions.
 +      (xg_create_frame_widgets): Set ttip_* to 0.  Set a dummy tooltip
 +      text so qttip_cb is called.  Connect query-tooltip to qttip_cb.
 +      Remove code that is commented out.
 +
 +2010-08-01  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * keymap.c (Fdefine_key, Flookup_key): Say what event is invalid.
 +
 +2010-07-31  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * xselect.c (x_own_selection): Use list4.
 +
 +2010-07-30  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * buffer.c (Qwindow): Do not define, already defined in data.c.
 +      (syms_of_buffer): Do not intern and staticpro Qwindow.  (Bug#6760)
 +
 +2010-07-29  Chad Brown  <yandros@mit.edu>
 +
 +      Replace tests for SYSV_SYSTEM_DIR with HAVE_DIRENT_H, set via autoconf.
 +      * dired.c, sysdep.c: Test HAVE_DIRENT_H instead of SYSV_SYSTEM_DIR.
 +      * config.in: Undef HAVE_DIRENT_H.
 +      * s/aix4-2.h, s/bsd-common.h, s/cygwin.h, s/gnu-linux.h,
 +      * s/msdos.h, s/usg5-4.h: Don't define SYSV_SYSTEM_DIR.
 +
 +2010-07-29  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      Rename s/usg5-4.h -> s/usg5-4-common.h.
 +      * s/usg5-4.h: Rename file to ...
 +      * s/usg5-4-common.h: ... this for consistency with what we do for BSD.
 +      * s/unixware.h:
 +      * s/sol2-6.h:
 +      * s/irix6-5.h: Update includes accordingly.
 +
 +2010-07-29  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * xfns.c (x_set_tool_bar_position): Remove debug fprintf.
 +
 +      * xterm.h (struct x_output): Add toolbar_top_height,
 +      toolbar_bottom_height, toolbar_left_width, toolbar_right_width.
 +      Remove toolbar_height.
 +      If USE_GTK: Add hbox_widget and toolbar_in_hbox.
 +      (FRAME_TOOLBAR_TOP_HEIGHT, FRAME_TOOLBAR_BOTTOM_HEIGHT)
 +      (FRAME_TOOLBAR_LEFT_WIDTH, FRAME_TOOLBAR_RIGHT_WIDTH): New macros.
 +      (FRAME_TOOLBAR_HEIGHT): Is now TOP_HEIGHT + BOTTOM_HEIGHT.
 +
 +      * xterm.c (x_set_window_size_1): Add FRAME_TOOLBAR_WIDTH to pixelwidth.
 +
 +      * xfns.c (x_set_tool_bar_position): New function.
 +      (xic_set_statusarea): Use FRAME_TOOLBAR_TOP_HEIGHT.
 +      (x_frame_parm_handlers): Add x_set_tool_bar_position.
 +      (syms_of_xfns): If USE_GTK, provide move-toolbar.
 +
 +      * window.c (calc_absolute_offset): Check for FRAME_TOOLBAR_TOP_HEIGHT
 +      and FRAME_TOOLBAR_LEFT_WIDTH.
 +
 +      * gtkutil.h (xg_change_toolbar_position): Declare.
 +
 +      * gtkutil.c (FRAME_TOTAL_PIXEL_WIDTH): New macro.
 +      (xg_frame_set_char_size): Add FRAME_TOOLBAR_WIDTH to pixelwidth.
 +      (xg_height_or_width_changed): Use FRAME_TOTAL_PIXEL_WIDTH.
 +      (xg_create_frame_widgets): Create a hobox for placing widgets
 +      vertically.  Use gtk_box_pack_start.
-       (Ffont_get_glyhphs): Renamed from Fget_font_glyphs.  Arguments and
++      (xg_height_or_width_changed): Rename from xg_height_changed.
 +      (x_wm_set_size_hint): Add FRAME_TOOLBAR_WIDTH to base_width.
 +      (xg_update_frame_menubar, free_frame_menubar): Change to
 +      xg_height_or_width_changed.
 +      (xg_tool_bar_detach_callback): Update left/right/top/bottom tool bar
 +      size correctly.  Remove hardcoded 4, instead use handlebox size -
 +      toolbar size.
 +      (xg_tool_bar_attach_callback): Update left/right/top/bottom tool bar
 +      size correctly.  Use handlebox size + toolbar size as additional size.
 +      (xg_pack_tool_bar): POS is a new parameter.
 +      Set orientation of tool bar based on pos.
 +      Only make handlebox_widget if NULL.
 +      Check if tool bar goes to vbox or hbox depending on pos.
 +      (xg_update_tool_bar_sizes): New function.
 +      (update_frame_tool_bar): Remove old_req, new_req.  Do not get tool bar
 +      height, call xg_update_tool_bar_sizes instead.
 +      (free_frame_tool_bar): Remove from hbox or vbox depending on
 +      toolbar_in_hbox,  Set all FRAME_TOOLBAR_*_(WIDTH|HEIGHT) to zero.
 +      (xg_change_toolbar_position): New function.
 +
 +      * frame.h (struct frame): Add tool_bar_position.
 +      (Qbottom): Declare.
 +
 +      * frame.c (Qtool_bar_position): New variable.
 +      (make_frame): Set tool_bar_position to Qtop.
 +      (frame_parms): Add tool-bar-position.
 +      (x_report_frame_params): Store tool_bar_position.
 +      (x_set_fringe_width): Reset wm size hint after fringe changes.
 +
 +2010-07-29  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      Make lisp_time_argument declaration work on all systems.
 +      * lisp.h (lisp_time_argument): Move declaration ...
 +      * systime.h (lisp_time_argument): ... here
 +      * editfns.c (lisp_time_argument): Remove declaration.  (Bug#6751)
 +
 +2010-07-29  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * vm-limit.c (POINTER): Add typedef for it.
 +      (start_of_data): Change return type from POINTER to char *.
 +
 +      * frame.h (Qtty_color_mode): Move declaration out of ifdef
 +      HAVE_WINDOW_SYSTEM.
 +
 +2010-07-29  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * vm-limit.c: Do not include sys/resource.h, mem-limits.h does it.
 +      Remove reference to __osf__, unused.
 +
 +      * mem-limits.h: Remove duplicated includes.
 +      (NULL): Remove definition, unused.
 +      (POINTER): Remove definition.
 +      (start_of_data): Use char* in prototype, as the function
 +      definition does.
 +
 +      Remove extern declarations from .c files, and them to .h files.
 +      * keyboard.h (Qhelp_echo, waiting_for_input)
 +      (input_available_clear_time, ignore_mouse_drag_p)
 +      (Vdouble_click_time, real_this_command, Vthis_original_command):
 +      * keymap.h (Qremap, Qmenu_item, Voverriding_local_map)
 +      (Voverriding_local_map_menu_flag):
 +      * lisp.h (Qinteractive_form, use_file_dialog)
 +      (Qcursor_in_echo_area, QCascent, QCmargin, QCrelief, Qcount)
 +      (Qextension_data, QCconversion, QCcolor_symbols, QCheuristic_mask)
 +      (QCindex, QCmatrix, QCcolor_adjustment, QCmask)
 +      (Qrisky_local_variable, map_char_table_for_charset, Vprint_level)
 +      (Qfunction, debug_on_next_call, Qfield)
 +      (Vinhibit_field_text_motion, Vuser_login_name, lisp_time_argument)
 +      (Qpriority, Qwindow, Qevaporate, Qbefore_string, Qafter_string)
 +      (Qfile_directory_p, Qinsert_file_contents)
 +      (Qcompletion_ignore_case, Qcompletion_ignore_case)
 +      (Vcompletion_regexp_list, Vhistory_length, completion_ignore_case)
 +      (history_delete_duplicates, minibuffer_auto_raise, Qonly)
 +      (Qfile_name_handler_alist, Qfront_sticky, Qrear_nonsticky)
 +      (Qminibuffer_prompt)
 +      (Vtemporary_file_directory,char_ins_del_vector, Qface):
 +      * xterm.h (gray_bitmap_width, gray_bitmap_height)
 +      (gray_bitmap_bits, xic_create_fontsetname):
 +      * coding.h (Vtranslation_table_for_input): Add extern declarations.
 +
 +      * xsmfns.c (Vuser_login_name):
 +      * xrdb.c (Vdouble_click_time):
 +      * xfaces.c (xic_create_fontsetname):
 +      * w32select.c (waiting_for_input):
 +      * print.c (minibuffer_auto_raise):
 +      * msdos.c (Qhelp_echo):
 +      * macros.c (real_this_command):
 +      * keymap.c (Voverriding_local_map):
 +      * xterm.c (poll_for_input_1, gray_bitmap_width)
 +      (gray_bitmap_height, gray_bitmap_bits;
 +      * xmenu.c ( Voverriding_local_map)
 +      (Voverriding_local_map_menu_flag; Qmenu_item; use_dialog_box)
 +      (use_file_dialog, Xt_app_con):
 +      * xdisp.c (minibuffer_auto_raise, Voverriding_local_map)
 +      (Voverriding_local_map_menu_flag, Qmenu_item, Qface, Qinvisible)
 +      (Qwidth, Qinvisible, Qwindow, Qpriority, Qtool_bar_lines)
 +      (Qtool_bar_lines, ignore_mouse_drag_p):
 +      * minibuf.c (Voverriding_local_map, Qfield, Qfront_sticky)
 +      (Qrear_nonsticky, nconc2):
 +      * keyboard.c (current_global_map, minibuf_level, Qmenu_item)
 +      (Vhistory_length, Vtranslation_table_for_input, Qcomposition)
 +      (Qdisplay, Qafter_string, Qbefore_string, Qundefined):
 +      * fileio.c (use_dialog_box, use_file_dialog, Vuser_login_name)
 +      (minibuf_level, minibuffer_auto_raise, lisp_time_argument):
 +      * eval.c (Qinteractive_form, Qrisky_local_variable, Qfunction)
 +      (gc_in_progress):
 +      * doc.c (Voverriding_local_map, Qremap):
 +      * dired.c (completion_ignore_case, Qcompletion_ignore_case)
 +      (Vcompletion_regexp_list):
 +      * coding.c (Qmac, Qinsert_file_contents, Qwrite_region)
 +      (Qcompletion_ignore_case):
 +      * callint.c (Qcursor_in_echo_area, Qfile_directory_p, Qonly)
 +      (Vhistory_length, Vthis_original_command, real_this_command)
 +      (Qface, Qminibuffer_prompt, history_delete_duplicates):
 +      * image.c (Qrisky_local_variable):
 +      * fontset.c (QCname):
 +      * fns.c (minibuffer_auto_raise, QCname):
 +      * dispnew.c (char_ins_del_cost):
 +      * composite.c (font_fill_lglyph_metrics):
 +      * cmds.c (Qface, Vtranslation_table_for_input):
 +      * charset.c (map_char_table_for_charset, Qfile_name_handler_alist):
 +      * ccl.c (charset_unicode):
 +      * callproc.c (Vtemporary_file_directory):
 +      * buffer.c (emacs_strerror): Remove extern declarations.
 +
 +      * data.c (Qwindow): Make non-static, used from other files too.
 +      * frame.c (validate_x_resource_name): Remove shadow definition for i.
 +
 +      * unexec.c (make_hdr): Remove references to NO_REMAP, COFF,
 +      SEGMENT_MASK, SECTION_ALIGNMENT, ADJUST_EXEC_HEADER.
 +      * s/usg5-4.h (COFF):
 +      * s/template.h:
 +      * s/msdos.h (COFF, NO_REMAP):
 +      * s/ms-w32.h (NO_REMAP):
 +      * s/hpux10-20.h (NO_REMAP):
 +      * m/sparc.h (SEGMENT_MASK):
 +      * m/m68k.h (NO_REMAP):
 +      * m/intel386.h (SEGMENT_MASK):
 +      * m/arm.h (NO_REMAP):
 +      * m/alpha.h (COFF):
 +      * m/template.h: Remove references to unused defines.
 +
 +2010-07-28  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * xsettings.c (Ftool_bar_get_system_style): Also check for
 +      Qtext_image_horiz.
 +
 +      * xdisp.c (Qtext_image_horiz): Define.
 +      (syms_of_xdisp): Initialize Qtext_image_horiz.  Add text-image-horiz
 +      to documentation of tool-bar-style.
 +
 +      * lisp.h (Qtext_image_horiz): Declare.
 +
 +      * gtkutil.c (xg_make_tool_item, xg_show_toolbar_item): Handle tool bar
 +      style text_image_horiz.
 +
 +2010-07-27  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * emacs.c (Fkill_emacs): Remove return statement.
 +
 +      * term.c (Qspace, QCalign_to, QCwidth): Remove declarations.
 +      (encode_terminal_code, produce_composite_glyph): Remove unused variables.
 +      (set_tty_color_mode, term_mouse_highlight, term_get_fkeys):
 +      Remove local extern declarations.
 +
 +      * xmenu.c: Do not included lwlib.h, not needed.
 +
 +      * m/iris4d.h (XUINT, XSET): Remove, not needed.
 +
 +      * process.c: Move definitions earlier to minimize #ifdefs.
 +
 +      * xterm.h (x_get_customization_string, x_load_resources)
 +      (x_get_resource, x_text_icon, x_text_icon, x_check_errors)
 +      (x_check_errors, x_property_data_to_lisp, defined_color)
 +      (xic_set_xfontset, x_defined_color): Use const.
 +
 +      * xterm.c (xlwmenu_window_p, xlwmenu_redisplay): Remove declarations.
 +      (x_text_icon, x_check_errors, x_connection_closed): Use const.
 +
 +      * xselect.c (selection_data_to_lisp_data)
 +      (x_property_data_to_lisp):
 +      * xrdb.c (x_get_string_resource, file_p)
 +      (x_get_customization_string, magic_file_p, search_magic_path)
 +      (get_system_app, get_user_app, x_load_resources, x_get_resource)
 +      (x_get_string_resource): Use const.
 +
 +      * xfns.c: Include xlwmenu.h when USE_LUCID.
 +      (x_defined_color, xic_set_xfontset): Use const.
 +      (Fx_hide_tip): Remove local extern declaration.
 +
 +      * xfaces.c (Qmouse_face): Remove declaration.
 +      (face_color_gray_p, tty_defined_color, defined_color)
 +      (face_color_gray_p, face_color_supported_p): Add const.
 +
 +      * xdisp.c (do_mouse_tracking): Remove declaration.
 +      (add_to_log): Use const.
 +
 +      * minibuf.c (Qmouse_face): Remove declaration.
 +
 +      * msdos.c (IT_note_mouse_highlight): Remove local extern declaration.
 +
 +      * keyboard.h (do_mouse_tracking): Add declaration.
 +
 +      * image.c (QCwidth, QCheight, QCforeground, QCbackground, QCfile)
 +      (QCdata, QCtype, Qcenter): Remove declarations.
 +
 +      * frame.c (x_get_resource_string, x_get_string_resource)
 +      (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
 +      (x_default_parameter): Use const.
 +
 +      * font.c (Qnormal, QCtype, QCfamily, QCweight, QCslant, QCwidth)
 +      (QCheight, QCsize, QCname): Remove declarations.
 +
 +      * emacs.c (main): Remove local extern declaration.
 +
 +      * editfns.c (region_limit, syms_of_editfns): Remove local extern
 +      declarations.
 +
 +      * dispnew.c: Remove duplicate #include <unistd.h>.
 +      (update_window, update_frame_1, init_display): Remove local extern
 +      declarations.
 +
 +      * dispextern.h (add_to_log): Remove declaration.
 +      (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
 +      (x_frame_get_and_record_arg, x_default_parameter): Add const.
 +
 +      * dired.c (scmp): Add const.
 +      (directory_files_internal): Remove local extern declaration.
 +
 +      * data.c (Finteractive_form): Use const.
 +
 +      * composite.c (syms_of_composite): Remove local extern declarations.
 +
 +      * charset.c (add_to_log): Remove declaration.
 +
 +      * character.c (strwidth, parse_str_to_multibyte): Add const.
 +
 +      * character.h (strwidth, parse_str_to_multibyte): Likewise.
 +
 +      * buffer.c (Fset_buffer_multibyte): Remove local extern declaration.
 +
 +      * lisp.h (Fkill_emacs): Mark as NO_RETURN.
 +      (Lisp_Subr): Make doc and intspec constant.
 +      (QCsize, Qspace, Qcenter, QCalign_to, QCdata, QCfile, QCtype)
 +      (Qlocal, Qapply, Qnormal, QCfamily, QCweight, QCslant, QCwidth)
 +      (QCheight, QCsize, QCname, QCwidth, QCforeground)
 +      (QCbackground, add_to_log, stack_base, Vmark_even_if_inactive)
 +      (display_arg): Add declarations.
 +
 +2010-07-27  Christoph Scholtes  <cschol2112@gmail.com>
 +
 +      * minibuf.c (Fread_buffer): Doc fix (bug#6528).
 +
 +      * window.c (Fwindow_height): Doc fix (bug#6518).
 +
 +2010-07-27  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * buffer.c (syms_of_buffer) <fringe-indicator-alist>: Doc fix.
 +
 +2010-07-26  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * keyboard.c (Ftop_level, Fexit_recursive_edit)
 +      (Fabort_recursive_edit): Remove return statements in NO_RETURN
 +      functions.
 +
 +      * frame.h (Qtty_color_mode): Add declaration.
 +
 +      * lisp.h (Ftop_level, Fexit_recursive_edit)
 +      (Fabort_recursive_edit): Mark as NO_RETURN.
 +
 +2010-07-26  Kenichi Handa  <handa@m17n.org>
 +
 +      * font.c (Ffont_shape_gstring): Terminate GSTRING by nil if the
 +      number of glyphs gets smaller than the original length.  (Bug#6621)
 +
 +2010-07-26  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * lread.c (unreadpure, mapatoms_1): Make static.
 +
 +2010-07-25  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * terminfo.c (tparam): Fix prototype of tparm.
 +
 +2010-07-25  Andreas Schwab  <schwab@linux-m68k.org>
 +
 +      * emacs.c (main) [PROFILING]: Use __executable_start if defined to
 +      find start of text segment.
 +      * dispnew.c (safe_bcopy): Don't define if HAVE___EXECUTABLE_START
 +      is defined.
 +
 +      * callproc.c (set_initial_environment): Avoid unbalanced braces.
 +
 +2010-07-25  Ken Brown  <kbrown@cornell.edu>
 +
 +      * vm-limit.c (check_memory_limits): Fix previous change;
 +      accidentally reverted an earlier change.
 +
 +2010-07-25  Ken Brown  <kbrown@cornell.edu>
 +
 +      * mem-limits.h (BSD4_2) [cygwin]: Don't define here; instead...
 +      * vm-limit.c: ...add 'defined (CYGWIN)' here (Bug#6715).
 +
 +2010-07-25  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * callproc.c (relocate_fd): Set inside #ifndef WINDOWSNT.
 +      * dired.c (opendir, readdir): Fix prototypes.
 +      * editfns.c (w32_get_internal_run_time): Fix prototypes.
 +      * keyboard.c (input_available_signal): Declare inside #ifdef SIGIO.
 +      * ndir.h (opendir, readdir, seekdir, closedir): Fix prototypes.
 +      (telldir): Remove declaration.
 +      * ralloc.c (real_morecore, __morecore): Fix prototypes.
 +      * sound.c (alsa_sound_perror): Declare inside #ifdef HAVE_ALSA.
 +      * syssignal.h (strsignal): Fix prototype.
 +      * term.c (tparam): Fix prototype.
 +      (term_get_fkeys_address, term_get_fkeys_kboard, term_get_fkeys_1)
 +      (term_get_fkeys): Set inside "#ifndef DOS_NT".
 +      * vm-limit.c (check_memory_limits): Fix prototypes of real_morecore
 +      and __morecore.
 +      * w32gui.h (XParseGeometry): Fix prototype.
 +      * w32heap.h (get_data_start, get_data_end, init_heap): Fix prototypes.
 +      * w32term.c (my_set_focus): Declare inside #if 0.
 +      * w32term.h (x_window_to_frame, x_display_info_for_name, w32_term_init)
 +      (w32_fill_rect, w32_clear_window, init_crit, delete_crit, signal_quit)
 +      (drain_message_queue, get_next_msg, post_msg, parse_button)
 +      (ClipboardSequence_Proc): Fix prototypes.
 +      (wait_for_sync): Remove declaration.
 +
 +2010-07-24  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * w32fns.c (w32_to_x_color): Remove, unused.
 +
 +2010-07-24  Andreas Schwab  <schwab@linux-m68k.org>
 +
 +      * lisp.h: Remove leftover P_.
 +
 +2010-07-24  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * ecrt0.c, unexalpha.c: Remove files, unused.
 +
 +2010-07-24  Andreas Schwab  <schwab@linux-m68k.org>
 +
 +      * cmds.c (internal_self_insert): Make static.
 +      * lisp.h (internal_self_insert): Remove declaration.
 +
 +2010-07-23  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * alloc.c (free_float):
 +      * font.c [ENABLE_CHECKING] (font_match_xlfd, font_check_xlfd_parse):
 +      * frame.c (delete_frame_handler):
 +      * ralloc.c (reorder_bloc):
 +      * w32menu.c (menubar_id_to_frame, add_left_right_boundary):
 +      Remove unused static functions.
 +
 +      * menu.c (cleanup_popup_menu): Set inside "#ifdef HAVE_NS";
 +      it is called only from NS code.
 +
 +      * w32term.c (my_set_focus): #ifdef away; it is called only from
 +      "#ifdef 0" code.
 +
 +      * w32fns.c (x_edge_detection):
 +      * xfaces.c (may_use_scalable_font_p):
 +      Remove obsolete static declarations.
 +
 +2010-07-20  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * alloc.c (emacs_blocked_free, emacs_blocked_malloc)
 +      (emacs_blocked_realloc, uninterrupt_malloc):
 +      * fringe.c (w32_reset_fringes):
 +      * image.c (convert_mono_to_color_image, lookup_rgb_color)
 +      (init_color_table, XPutPixel, jpeg_resync_to_restart_wrapper):
 +      * sound.c (be2hs, do_play_sound):
 +      * vm-limit.c (get_lim_data, ret_lim_data):
 +      * w32term.c (x_free_frame_resources):
 +      * xfaces.c (x_create_gc, x_free_gc):
 +      Convert definitions to standard C.
 +
 +2010-07-20  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * eval.c (Feval, Ffuncall): Use the new names.
 +
 +      * lisp.h (struct Lisp_Subr): Rename `am' to aMANY and add aUNEVALLED.
 +      (DEFUN): Add braces around the union initialisation and use ## to
 +      specify the right union alternative and avoid a cast.
 +
 +2010-07-18  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * makefile.w32-in ($(BLD)/keyboard.$(O)): Update dependencies.
 +
 +2010-07-17  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * frame.c (make_initial_frame): Use set_menu_bar_lines (Bug#6660).
 +
 +2010-07-17  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * gtkutil.c (xg_event_is_for_menubar): Also check that event window
 +      is related to the menu bar (Bug#6499).
 +      (xg_frame_resized): GTK_IS_MAPPED => gtk_widget_get_mapped, for Gtk 3.0.
 +
 +2010-07-16  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * xterm.h (x_menubar_window_to_frame): Second parameter is XEvent*.
 +
 +      * xterm.c (handle_one_xevent): Pass event to x_menubar_window_to_frame.
 +
 +      * xmenu.c (x_activate_menubar): Revert previous fix for Bug#6499,
 +      i.e. don't put back ButtonRelease (Bug#6608).
 +
 +      * xfns.c (x_menubar_window_to_frame): Take XEvent as second parameter
 +      instead of Window.  Call xg_event_is_for_menubar when
 +      USE_GTK (Bug#6499).
 +
 +      * gtkutil.h (xg_event_is_for_menubar): Declare.
 +
 +      * gtkutil.c (xg_event_is_for_menubar): New function (Bug#6499).
 +
 +2010-07-16  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * w32fns.c (x_set_foreground_color): Fix setting the cursor color
 +      when it's the same as the old foreground.  (Bug#6609)
 +
 +2010-07-16  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * xmenu.c (free_frame_menubar): Only call x_set_window_size if
 +      widget is non-null (Bug#6645).
 +
 +2010-07-15  Andreas Schwab  <schwab@linux-m68k.org>
 +
 +      * xterm.c (x_fully_uncatch_errors, x_trace_wire, x_check_font):
 +      Convert old-style definition.
 +
 +      * xmenu.c (create_and_show_popup_menu, xmenu_show): Fix type of
 +      timestamp argument.
 +
 +2010-07-15  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * fringe.c (update_window_fringes): Restore mistakenly reverted
 +      code from 2010-04-17T12:33:05Z!eliz@gnu.org merged in 2010-04-20T13:31:28Z!eliz@gnu.org.
 +
 +2010-07-14  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * xterm.c (xm_scroll_callback, x_process_timeouts): K&R => prototype.
 +      (SET_SAVED_KEY_EVENT): Remove (not used).
 +      (SET_SAVED_MENU_EVENT): Rename to SET_SAVED_BUTTON_EVENT and
 +      remove size parameter.
 +      (handle_one_xevent): Check popup_activated () for menu for Xt also.
 +      Remove #ifdef USE_GTK around finish = X_EVENT_DROP.
 +      Remove #ifdef USE_MOTIF code that did SET_SAVED_BUTTON_EVENT for
 +      ButtonRelease.
 +      (x_set_window_size_1): scroll_bar_actual_width is always
 +      SCROLL_BAR_COLS * COLUMN_WIDTH for the purpose of frame sizing.
 +
 +      * xdisp.c (pending_menu_activation): Remove extern declaration.
 +      (prepare_menu_bars): Remove setting of pending_menu_activation.
 +
 +      * xmenu.c (pending_menu_activation): Remove.
 +      (x_activate_menubar): Set popup_activated_flag for Xt also.
 +      Remove setting of pending_menu_activation.
 +      (set_frame_menubar): Remove check of pending_menu_activation.
 +      Declare menubar_size before code.  Correct spelling in comment.
 +
 +2010-07-14  Kenichi Handa  <handa@m17n.org>
 +
 +      * font.c (font_open_entity): Cancel previous change.
 +      (Ffont_get): Don't check FONT_ENTITY_INDEX of a font-object.
 +
 +2010-07-13  Eli Zaretskii  <eliz@gnu.org>
 +
 +      Remove subprocesses #ifdefs.
 +      * process.c <inhibit_sentinels>: Move to the common part.
 +      (Fwaiting_for_user_input_p): Move to the common part; return nil
 +      if async subprocesses aren't supported.
 +      * sysdep.c (wait_for_termination) [!MSDOS]: Don't compile on
 +      MS-DOS.  Remove "#ifdef subprocesses".
 +      (sys_subshell, sys_select): Remove "#ifdef subprocesses".
 +      (gettimeofday): Remove "#ifdef subprocesses".
 +      (wait_without_blocking): Remove function.
 +      (flush_pending_output, child_setup_tty): Don't compile on MS-DOS.
 +      Remove "#ifdef subprocesses".
 +      (child_setup_tty): Use WINDOWSNT instead of DOS_NT, since not
 +      compiled on MS-DOS.
 +      * callproc.c (Fcall_process) [!MSDOS]: Don't call
 +      wait_for_termination on MS-DOS.
 +      * emacs.c (shut_down_emacs): Remove "#ifndef subprocesses" from
 +      initialization of inhibit_sentinels.
 +      * keyboard.c (record_asynch_buffer_change): Remove "#ifdef
 +      subprocesses" conditional.
 +      * callproc.c (Fcall_process) [!subprocesses]: Don't call
 +      wait_for_termination, since `buffer' cannot be an integer when
 +      async subprocesses are not supported
 +      * xdisp.c (decode_mode_spec): Use `MSDOS' instead of `subprocesses'
 +      for ifdefing away the call to Fprocess_status.
 +
 +      * process.c (add_keyboard_wait_descriptor) [!subprocesses]: Ifdef
 +      away the entire body of the function.
 +
 +2010-07-13  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      Remove subprocesses #ifdefs from term.c.
 +      * process.c (add_keyboard_wait_descriptor)
 +      (delete_keyboard_wait_descriptor): Move to common section, do
 +      nothing when subprocesses is not defined.
 +      * term.c (Fsuspend_tty, Fresume_tty, init_tty):
 +      Remove subprocesses #ifdefs.
 +
 +      Convert maybe_fatal to standard C.
 +      * lisp.h (verror): Declare.
 +      * eval.c (verror): New function containing the code from ...
 +      (error): ... this.  Call verror.
 +      * term.c (vfatal): New function containing the code from ...
 +      (fatal): ... this.  Call vfatal.
 +      (maybe_fatal): Convert to standard C, use variable number of
 +      arguments.  Declare as non-return.
 +      (init_tty): Fix maybe_fatal call.
 +
 +2010-07-12  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * xterm.c (x_scroll_bar_set_handle, x_scroll_bar_expose)
 +      (_scroll_bar_note_movement): Convert definitions to standard C.
 +      * xmenu.c (menu_help_callback, pop_down_menu, xmenu_show):
 +      * xfns.c (hack_wm_protocols, x_window, x_window): Likewise.
 +
 +2010-07-12  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * xterm.c (x_frame_of_widget, x_alloc_nearest_color_for_widget)
 +      (x_alloc_lighter_color_for_widget, cvt_string_to_pixel)
 +      (cvt_pixel_dtor, x_window_to_menu_bar, xt_action_hook)
 +      (xaw_jump_callback, xaw_scroll_callback)
 +      (x_create_toolkit_scroll_bar, x_set_toolkit_scroll_bar_thumb)
 +      (x_wm_set_size_hint, x_activate_timeout_atimer):
 +      Convert definitions to standard C.
 +      * xmenu.c (menubar_id_to_frame, popup_get_selection)
 +      (popup_activate_callback, popup_deactivate_callback)
 +      (menu_highlight_callback, menubar_selection_callback)
 +      (apply_systemfont_to_dialog, apply_systemfont_to_menu)
 +      (free_frame_menubar, popup_selection_callback, as)
 +      (create_and_show_popup_menu, dialog_selection_callback)
 +      (create_and_show_dialog):
 +      * xfns.c (hack_wm_protocols, x_window):
 +      * xfaces.c (x_update_menu_appearance):
 +      * widget.c (get_default_char_pixel_size, pixel_to_char_size)
 +      (char_to_pixel_size, round_size_to_char, get_wm_shell)
 +      (set_frame_size, update_wm_hints, setup_frame_gcs)
 +      (update_various_frame_slots, update_from_various_frame_slots)
 +      (EmacsFrameInitialize, EmacsFrameRealize, EmacsFrameResize)
 +      (EmacsFrameSetValues, EmacsFrameQueryGeometry)
 +      (EmacsFrameSetCharSize, widget_store_internal_border): Likewise.
 +
 +2010-07-12  Andreas Schwab  <schwab@linux-m68k.org>
 +
 +      * dbusbind.c (xd_initialize): Don't compare boolean with a constant.
 +
 +2010-07-12  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * process.c (setup_process_coding_systems): Move to the part
 +      shared by non-subprocesses systems, and make its body empty when
 +      subprocesses is not defined.
 +      (close_process_descs): Move to the part shared by non-subprocesses
 +      systems.
 +      (wait_reading_process_output) [!subprocesses]: Convert arg list to
 +      ANSI C.
 +
 +2010-07-12  Andreas Schwab  <schwab@linux-m68k.org>
 +
 +      * editfns.c (transpose_markers): Convert old-style definition.
 +      * emacs.c (abort, shut_down_emacs, fixup_locale)
 +      (synchronize_system_time_locale)
 +      (synchronize_system_messages_locale, syms_of_emacs): Likewise.
 +      * floatfns.c (extract_float, matherr, init_floatfns)
 +      (syms_of_floatfns): Likewise.
 +      * fns.c (make_hash_table): Likewise.
 +      * ftfont.c (ftfont_get_otf, ftfont_otf_features)
 +      (ftfont_otf_capability, ftfont_get_glyph_id, ftfont_get_metrics)
 +      (ftfont_drive_otf, ftfont_shape_by_flt, ftfont_shape)
 +      (ftfont_variation_glyphs): Likewise.
 +      * gtkutil.c (xg_create_widget, xg_modify_menubar_widgets): Likewise.
 +      * keymap.c (describe_map_tree, describe_map, describe_vector): Likewise.
 +      * lread.c (read_filtered_event): Likewise.
 +      * minibuf.c (read_minibuf_noninteractive, read_minibuf): Likewise.
 +      * process.c (wait_reading_process_output): Likewise.
 +      * scroll.c (do_line_insertion_deletion_costs): Likewise.
 +      * search.c (search_buffer, boyer_moore): Likewise.
 +      * syntax.c (scan_sexps_forward): Likewise.
 +      * xdisp.c (try_scrolling): Likewise.
 +      * xfaces.c (face_at_buffer_position, face_for_overlay_string)
 +      (face_at_string_position): Likewise.
 +      * xfns.c (x_default_scroll_bar_color_parameter): Likewise.
 +      * xselect.c (x_get_window_property, receive_incremental_selection)
 +      (x_get_window_property_as_lisp_data, lisp_data_to_selection_data):
 +      Likewise.
 +      * xterm.c (x_draw_relief_rect, x_draw_box_rect): Likewise.
 +
 +2010-07-12  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * callproc.c (child_setup): Remove subprocesses conditional.
 +      Remove code dealing with SET_EMACS_PRIORITY, unused.
 +
 +      * buffer.c (Fset_buffer_multibyte): Remove subprocesses conditional.
 +      * process.c (close_process_descs): Use DOS_NT instead of WINDOWSNT.
 +
 +      * emacs.c (__do_global_ctors, __do_global_ctors_aux)
 +      (__do_global_dtors, __main): Use void in definition.
 +      (main): Remove code dealing with SET_EMACS_PRIORITY, unused.
 +      Remove SYMS_MACHINE code, unused.  Remove SYMS_SYSTEM, inline
 +      the only users from ...
 +      * s/ms-w32.h (SYMS_SYSTEM): ... here and ...
 +      * s/msdos.h (SYMS_SYSTEM): ... here.  Remove.
 +      (HAVE_VOLATILE): Remove, unused.
 +
 +      Convert more function definitions to standard C.
 +      * xdisp.c (window_box_edges, handle_single_display_spec)
 +      (display_string): Convert definition to standard C.
 +      * scroll.c (do_direct_scrolling, scrolling_1):
 +      * dispnew.c (allocate_matrices_for_frame_redisplay)
 +      (mirrored_line_dance):
 +      * coding.c (code_convert_string):
 +      * charset.c (map_charset_chars):
 +      * ccl.c (Fccl_program_p, Fccl_execute, Fccl_execute_on_string)
 +      (Fregister_ccl_program, Fregister_code_conversion_map):
 +      * keyboard.c (kbd_buffer_nr_stored): Likewise.
 +      (head_table): Make static and const.
 +
 +2010-07-12  Andreas Schwab  <schwab@linux-m68k.org>
 +
 +      * Makefile.in (C_WARNINGS_SWITCH, PROFILING_CFLAGS)
 +      (PROFILING_LDFLAGS): Set from substitution.
 +      (ALL_CFLAGS): Add C_WARNINGS_SWITCH and PROFILING_CFLAGS, put
 +      CFLAGS last.
 +
 +2010-07-12  Kenichi Handa  <handa@m17n.org>
 +
 +      * Makefile.in (lisp): Change hebrew.el to hebrew.elc.
 +      (shortlisp): Likewise.
 +
 +      * font.h (enum font_property_index): New member FONT_ENTITY_INDEX.
 +
 +      * font.c (font_open_entity): Record ENTITY in FONT_OBJECT's slot
 +      of FONT_ENTITY_INDEX.
 +      (Ffont_get): If KEY is :otf and the font-object doesn't have the
 +      property, get the property value dynamically.
 +      (Ffont_put): Accept font-entity and font-object too.
-       * xdisp.c (vmessage): Renamed from message, made static, and
++      (Ffont_get_glyhphs): Rename from Fget_font_glyphs.  Arguments and
 +      return value changed.
 +      (syms_of_font): Adjust for the above change.
 +
 +2010-07-11  Andreas Schwab  <schwab@linux-m68k.org>
 +
 +      * blockinput.h: Remove obsolete comment.
 +
 +      * lisp.h: Include <stddef.h>.
 +      (OFFSETOF): Don't define.
 +      (VECSIZE): Use offsetof instead of OFFSETOF.
 +      (PSEUDOVECSIZE): Likewise.
 +      * process.c (conv_sockaddr_to_lisp): Likewise.
 +      * alloc.c: Don't include <stddef.h>.
 +      * buffer.h (PER_BUFFER_VAR_OFFSET): Use offsetof.
 +
 +      * process.c: Remove obsolete comment.
 +
 +2010-07-11  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * xfaces.c (Vface_remapping_alist): Doc fix (Bug#6091).
 +
 +2010-07-11  Andreas Schwab  <schwab@linux-m68k.org>
 +
 +      * callint.c (Fcall_interactively): Use strchr, strrchr instead of
 +      index, rindex.
 +      * doc.c (get_doc_string, Fsnarf_documentation): Likewise.
 +      * editfns.c (Fuser_full_name, Fformat): Likewise.
 +      * emacs.c (argmatch, sort_args, decode_env_path): Likewise.
 +      * fileio.c (Ffile_symlink_p): Likewise.
 +      * filelock.c (current_lock_owner): Likewise.
 +      * font.c (font_parse_name, font_parse_family_registry): Likewise.
 +      * fontset.c (fontset_pattern_regexp): Likewise.
 +      * lread.c (read1): Likewise.
 +      * sysdep.c (init_system_name): Likewise.
 +      * xfns.c (select_visual): Likewise.
 +      * s/hpux10-20.h (index, rindex): Don't define.
 +      * s/ms-w32.h (index): Likewise.
 +      * s/usg5-4.h: Likewise.
 +
 +      * callproc.c (relocate_fd): Use F_DUPFD if defined.
 +
 +      * alloc.c (pending_malloc_warning, malloc_warning): Add const.
 +      * callproc.c (relocate_fd, getenv_internal_1, getenv_internal)
 +      (egetenv): Likewise.
 +      * doprnt.c (doprnt): Likewise.
 +      * editfns.c (set_time_zone_rule, format2): Likewise.
 +      * emacs.c (decode_env_path): Likewise.
 +      * eval.c (signal_error, error): Likewise.
 +      * insdel.c (replace_range_2): Likewise.
 +      * keyboard.c (cmd_error_internal): Likewise.
 +      * lread.c (isfloat_string, make_symbol, dir_warning): Likewise.
 +      * print.c (write_string, write_string_1, print_error_message):
 +      Likewise.
 +      * vm-limit.c (warn_function, memory_warnings): Likewise.
 +      * xdisp.c (message1, message1_nolog, message_with_string)
 +      (vmessage, message, message_nolog): Likewise.
 +      * emacs.c: Remove duplicate declaration.
 +      * keyboard.h: Likewise.
 +      * lisp.h: Update prototypes.
 +
 +      * eval.c: Fix indentation problem.
 +
 +      * keyboard.c: Include "process.h"
 +
 +      * eval.c: Remove obsolete noinline declaration.
 +      * fns.c: Likewise.
 +
 +2010-07-11  Ken Raeburn  <raeburn@raeburn.org>
 +
 +      * doprnt.c (doprnt): Take a va_list argument instead of count and
 +      pointer.
 +      * eval.c (error): Change to a standard-C variadic function.
-       of 10 screen lines.  See
-       http://lists.gnu.org/archive/html/emacs-devel/2010-06/msg00766.html
++      * xdisp.c (vmessage): Rename from message, made static, and
 +      changed to take a va_list argument.
 +      (message): New variadic wrapper.
 +      (message_nolog): Now a variadic function, calling vmessage.
 +      * lisp.h: Include stdarg.h for va_list.
 +      (doprnt, error, message, message_nolog): Decls updated.
 +
 +2010-07-11  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * process.c (syms_of_process) <delete-exited-processes>: Define
 +      even if !subprocesses.
 +      (delete_exited_processes): Ditto.
 +
 +      * msdos.c (syms_of_msdos) <delete-exited-processes>: Remove DEFVAR.
 +      (delete_exited_processes): Don't define.
 +
 +2010-07-10  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * frame.c (make_frame): Initialize menu_bar_lines and
 +      tool_bar_lines members.
 +      (make_initial_frame, make_terminal_frame):
 +      Initialize menu_bar_lines using value of menu-bar-mode.
 +
 +      * msdos.c (IT_set_frame_parameters): Don't set menu-bar-lines.
 +
 +2010-07-10  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * process.c: Reshuffle #include's.  Condition some of the global
 +      and static variables on `subprocesses'.
 +      (hold_keyboard_input, unhold_keyboard_input, kbd_on_hold_p):
 +      Leave only one implementation.
 +      (Fget_buffer_process, Fprocess_inherit_coding_system_flag)
 +      (kill_buffer_processes, Flist_system_processes)
 +      (Fprocess_attributes, init_process, syms_of_process): Unify the
 +      implementations for with subprocesses and without them.
 +
 +2010-07-09  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * xmenu.c (set_frame_menubar): Must realize menubar_widget to get the
 +      correct size for Motif.
 +      (free_frame_menubar): Call x_set_window_size to update frame size.
 +
 +      * xfns.c (x_window): Set borderWidth to 0 for pane and
 +      EmacsFrame.  Frame size calculation is wrong otherwise.
 +
 +2010-07-09  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * dbusbind.c (xd_initialize): Add new argument RAISE_ERROR, which
 +      allows to suppress errors when polling in Emacs' main loop.
 +      (Fdbus_init_bus, Fdbus_get_unique_name, Fdbus_call_method)
 +      (Fdbus_call_method_asynchronously, Fdbus_method_return_internal)
 +      (Fdbus_method_error_internal, Fdbus_send_signal)
 +      (xd_get_dispatch_status, xd_read_message, Fdbus_register_signal)
 +      (Fdbus_register_method): Use it.  (Bug#6579)
 +
 +2010-07-08  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * alloc.c: Convert DEFUNs to standard C.
 +      * buffer.c:
 +      * bytecode.c:
 +      * callint.c:
 +      * callproc.c:
 +      * casefiddle.c:
 +      * casetab.c:
 +      * category.c:
 +      * character.c:
 +      * charset.c:
 +      * chartab.c:
 +      * cmds.c:
 +      * coding.c:
 +      * composite.c:
 +      * data.c:
 +      * dbusbind.c:
 +      * dired.c:
 +      * dispnew.c:
 +      * doc.c:
 +      * dosfns.c:
 +      * editfns.c:
 +      * emacs.c:
 +      * eval.c:
 +      * fileio.c:
 +      * filelock.c:
 +      * floatfns.c:
 +      * fns.c:
 +      * font.c:
 +      * fontset.c:
 +      * frame.c:
 +      * fringe.c:
 +      * image.c:
 +      * indent.c:
 +      * insdel.c:
 +      * keyboard.c:
 +      * keymap.c:
 +      * lread.c:
 +      * macros.c:
 +      * marker.c:
 +      * menu.c:
 +      * minibuf.c:
 +      * msdos.c:
 +      * nsfns.m:
 +      * nsmenu.m:
 +      * nsselect.m:
 +      * print.c:
 +      * process.c:
 +      * search.c:
 +      * sound.c:
 +      * syntax.c:
 +      * term.c:
 +      * terminal.c:
 +      * textprop.c:
 +      * undo.c:
 +      * w16select.c:
 +      * w32console.c:
 +      * w32fns.c:
 +      * w32font.c:
 +      * w32menu.c:
 +      * w32proc.c:
 +      * w32select.c:
 +      * window.c:
 +      * xdisp.c:
 +      * xfaces.c:
 +      * xfns.c:
 +      * xmenu.c:
 +      * xselect.c:
 +      * xsettings.c:
 +      * xsmfns.c: Likewise.
 +
 +2010-07-08  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * process.c (kbd_is_on_hold, hold_keyboard_input)
 +      (unhold_keyboard_input, kbd_on_hold_p) [!subprocesses]: Define.
 +
 +2010-07-08  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * xmenu.c (set_frame_menubar, create_and_show_popup_menu)
 +      (create_and_show_dialog): Don't call apply_systemfont_to_(menu|dialog)
 +      unless USE_LUCID.
 +
 +2010-07-08  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * xdisp.c (store_mode_line_noprop_char): Remove K&R alternative
 +      declaration.
 +
 +      Clean up include guards.
 +      * tparam.c: Remove include guards for config.h, string.h and code
 +      that assumes #ifndef emacs.
 +      * termcap.c:
 +      * unexalpha.c:
 +      * sysdep.c:
 +      * filemode.c:
 +      * filelock.c:
 +      * bidi.c: Likewise.
 +
 +      Remove prefix-args.c
 +      * prefix-args.c: Remove file.
 +      * autodeps.mk (ALLOBJS): Remove reference to prefix-args.
 +      * Makefile.in (temacs${EXEEXT}): Remove references to
 +      PRE_EDIT_LDFLAGS and POST_EDIT_LDFLAGS.
 +      (mostlyclean): Remove reference to prefix-args.
 +      (prefix-args): Remove.
 +
 +      Simplify cstart_of_data, start_of_code and related code.
 +      * mem-limits.h: Remove !emacs and _LIBC conditional code.
 +      (start_of_data): Merge into start_of_data function.
 +      * sysdep.c (start_of_text): Remove.  Move simplified versions of
 +      it in the only users: unexaix.c and unexec.c.
 +      (read_input_waiting): Remove local declaration of quit_char.
 +      (start, etext): Remove declarations.
 +      (start_of_data): Merge with the version in mem-limits.h and move
 +      to vm-limits.c.
 +      * vm-limit.c (start_of_data): Merged and simplified version of the
 +      code formerly in mem-limits.h and sysdep.c.
 +      * unexec.c (start): New declaration, moved from sysdep.c.
 +      (start_of_text): Simplified version of the code formerly in sysdep.c.
 +      * unexaix.c (start_of_text): Simplified version of the code
 +      formerly in sysdep.c.
 +      * m/alpha.h (HAVE_TEXT_START): Remove.
 +      (TEXT_START): Move ...
 +      * unexalpha.c (TEXT_START): ... here.
 +      * s/hpux10-20.h (TEXT_START): Remove.
 +      * s/darwin.h (TEXT_START):
 +      * m/mips.h (TEXT_START):
 +      * m/macppc.h (HAVE_TEXT_START):
 +      * m/m68k.h (TEXT_START):
 +      * m/iris4d.h (TEXT_START):
 +      * m/intel386.h (TEXT_START):
 +      * m/ibmrs6000.h (TEXT_START):
 +      * m/ia64.h (HAVE_TEXT_START):
 +      * s/msdos.h (TEXT_START): Likewise.
 +
 +2010-07-07  Andreas Schwab  <schwab@linux-m68k.org>
 +
 +      * alloc.c (overrun_check_malloc, overrun_check_realloc)
 +      (overrun_check_free, xstrdup, allocate_string)
 +      (allocate_string_data, compact_small_strings, Fmake_string)
 +      (make_unibyte_string, make_multibyte_string)
 +      (make_string_from_bytes, make_specified_string, make_float)
 +      (Fcons, allocate_terminal, allocate_frame, make_pure_string)
 +      (Fgarbage_collect): Replace bcopy, safe_bcopy, bzero, bcmp by
 +      memcpy, memmove, memset, memcmp.
 +      * atimer.c (start_atimer, set_alarm): Likewise.
 +      * buffer.c (clone_per_buffer_values, report_overlay_modification)
 +      (mmap_realloc, init_buffer_once): Likewise.
 +      * callint.c (Fcall_interactively): Likewise.
 +      * callproc.c (Fcall_process, Fcall_process_region, child_setup)
 +      (getenv_internal_1): Likewise.
 +      * casefiddle.c (casify_object): Likewise.
 +      * ccl.c (ccl_driver): Likewise.
 +      * character.c (str_as_multibyte, str_to_multibyte): Likewise.
 +      * charset.c (load_charset_map_from_file)
 +      (load_charset_map_from_file, load_charset_map_from_vector)
 +      (Fdefine_charset_internal): Likewise.
 +      * cm.c (Wcm_clear): Likewise.
 +      * coding.c (decode_eol, decode_coding_object)
 +      (Fset_coding_system_priority, make_subsidiaries): Likewise.
 +      * data.c (Faset): Likewise.
 +      * dired.c (directory_files_internal, file_name_completion_stat):
 +      Likewise.
 +      * dispnew.c (new_glyph_matrix, adjust_glyph_matrix)
 +      (clear_glyph_row, copy_row_except_pointers)
 +      (copy_glyph_row_contents, new_glyph_pool, realloc_glyph_pool)
 +      (save_current_matrix, restore_current_matrix)
 +      (build_frame_matrix_from_leaf_window, mirrored_line_dance)
 +      (mirror_line_dance, scrolling_window): Likewise.
 +      * doc.c (Fsnarf_documentation, Fsubstitute_command_keys):
 +      Likewise.
 +      * doprnt.c (doprnt): Likewise.
 +      * editfns.c (Fuser_full_name, make_buffer_string_both)
 +      (Fmessage_box, Fformat, Ftranspose_regions): Likewise.
 +      * emacs.c (sort_args): Likewise.
 +      * eval.c (Fapply, Ffuncall): Likewise.
 +      * fileio.c (Ffile_name_directory, make_temp_name)
 +      (Fexpand_file_name, search_embedded_absfilename)
 +      (Fsubstitute_in_file_name, Ffile_symlink_p, Finsert_file_contents)
 +      (auto_save_error): Likewise.
 +      * fns.c (Fstring_equal, Fcopy_sequence, concat)
 +      (string_to_multibyte, Fstring_as_unibyte, Fstring_as_multibyte)
 +      (internal_equal, Fclear_string, larger_vector, copy_hash_table)
 +      (Fmake_hash_table): Likewise.
 +      * fringe.c (Fdefine_fringe_bitmap): Likewise.
 +      * ftfont.c (ftfont_text_extents): Likewise.
 +      * getloadavg.c (getloadavg): Likewise.
 +      * image.c (define_image_type, make_image, make_image_cache)
 +      (x_create_x_image_and_pixmap, xbm_image_p)
 +      (w32_create_pixmap_from_bitmap_data, xbm_load, xpm_lookup_color)
 +      (xpm_image_p, x_create_bitmap_from_xpm_data, xpm_load)
 +      (init_color_table, x_build_heuristic_mask, pbm_image_p, pbm_load)
 +      (png_image_p, png_read_from_memory, png_load, jpeg_image_p)
 +      (tiff_image_p, tiff_read_from_memory, gif_image_p)
 +      (gif_read_from_memory, gif_load, svg_image_p, gs_image_p):
 +      Likewise.
 +      * indent.c (scan_for_column, compute_motion): Likewise.
 +      * insdel.c (gap_left, gap_right, make_gap_smaller, copy_text)
 +      (insert_1_both, insert_from_gap, replace_range_2): Likewise.
 +      * intervals.c (reproduce_tree, reproduce_tree_obj): Likewise.
 +      * keyboard.c (echo_char, save_getcjmp, restore_getcjmp)
 +      (kbd_buffer_store_event_hold, apply_modifiers_uncached)
 +      (store_user_signal_events, menu_bar_items, tool_bar_items)
 +      (process_tool_bar_item, append_tool_bar_item)
 +      (read_char_minibuf_menu_prompt, read_key_sequence)
 +      (Fread_key_sequence, Fread_key_sequence_vector, Frecent_keys):
 +      Likewise.
 +      * keymap.c (current_minor_maps, Fdescribe_buffer_bindings):
 +      Likewise.
 +      * lisp.h (STRING_COPYIN): Likewise.
 +      * lread.c (Fload, read1, oblookup): Likewise.
 +      * msdos.c (Frecent_doskeys): Likewise.
 +      * nsfns.m (Fx_create_frame): Likewise.
 +      * nsfont.m (nsfont_open, nsfont_text_extents, ns_glyph_metrics):
 +      Likewise.
 +      * nsimage.m (EmacsImage-initFromSkipXBM:width:height:)
 +      (EmacsImage-initForXPMWithDepth:width:height:flip:length:):
 +      Likewise.
 +      * nsmenu.m (ns_update_menubar): Likewise.
 +      * nsterm.m (ns_draw_fringe_bitmap, ns_term_init): Likewise.
 +      * print.c (print_unwind, printchar, strout, print_string)
 +      (print_error_message): Likewise.
 +      * process.c (conv_lisp_to_sockaddr, set_socket_option)
 +      (Fmake_network_process, Fnetwork_interface_list)
 +      (Fnetwork_interface_info, read_process_output, Fprocess_send_eof)
 +      (init_process): Likewise.
 +      * ralloc.c (resize_bloc, r_alloc_sbrk, r_alloc_init): Likewise.
 +      * regex.c (init_syntax_once, regex_compile, re_compile_fastmap):
 +      Likewise.
 +      * scroll.c (do_scrolling, do_direct_scrolling)
 +      (scrolling_max_lines_saved): Likewise.
 +      * search.c (search_buffer, wordify, Freplace_match): Likewise.
 +      * sound.c (wav_init, au_init, Fplay_sound_internal): Likewise.
 +      * syntax.c (skip_chars, skip_syntaxes): Likewise.
 +      * sysdep.c (child_setup_tty, sys_subshell, emacs_get_tty)
 +      (emacs_set_tty): Likewise.
 +      * term.c (encode_terminal_code, calculate_costs)
 +      (produce_special_glyphs, create_tty_output, init_tty, delete_tty):
 +      Likewise.
 +      * termcap.c (tgetst1, gobble_line): Likewise.
 +      * termhooks.h (EVENT_INIT): Likewise.
 +      * tparam.c (tparam1): Likewise.
 +      * unexalpha.c (unexec): Likewise.
 +      * unexec.c (write_segment): Likewise.
 +      * unexmacosx.c (unexec_write_zero): Likewise.
 +      * w32fns.c (w32_wnd_proc, Fx_create_frame, x_create_tip_frame)
 +      (Fx_file_dialog, Fsystem_move_file_to_trash): Likewise.
 +      * w32font.c (w32font_list_family, w32font_text_extents)
 +      (w32font_list_internal, w32font_match_internal)
 +      (w32font_open_internal, compute_metrics, Fx_select_font):
 +      Likewise.
 +      * w32menu.c (set_frame_menubar, add_menu_item)
 +      (w32_menu_display_help, w32_free_submenu_strings): Likewise.
 +      * w32term.c (XCreateGC, w32_initialize_display_info): Likewise.
 +      * w32uniscribe.c (uniscribe_list_family): Likewise.
 +      * w32xfns.c (get_next_msg, post_msg, prepend_msg): Likewise.
 +      * window.c (make_window, replace_window, set_window_buffer)
 +      (Fsplit_window): Likewise.
 +      * xdisp.c (init_iterator, RECORD_OVERLAY_STRING, reseat_to_string)
 +      (add_to_log, message3, x_consider_frame_title)
 +      (append_space_for_newline, extend_face_to_end_of_line)
 +      (decode_mode_spec_coding, init_glyph_string): Likewise.
 +      * xfaces.c (x_create_gc, get_lface_attributes_no_remap)
 +      (Finternal_copy_lisp_face, Finternal_merge_in_global_face)
 +      (face_attr_equal_p, make_realized_face, make_face_cache)
 +      (free_realized_faces, lookup_named_face, smaller_face)
 +      (face_with_height, lookup_derived_face)
 +      (x_supports_face_attributes_p, Finternal_set_font_selection_order)
 +      (Finternal_set_font_selection_order, realize_default_face)
 +      (compute_char_face, face_at_buffer_position)
 +      (face_for_overlay_string, face_at_string_position, merge_faces):
 +      Likewise.
 +      * xfns.c (xic_create_fontsetname, Fx_create_frame)
 +      (Fx_window_property, x_create_tip_frame)
 +      (Fx_backspace_delete_keys_p): Likewise.
 +      * xfont.c (xfont_list, xfont_match, xfont_list_family)
 +      (xfont_text_extents): Likewise.
 +      * xmenu.c (set_frame_menubar, xmenu_show): Likewise.
 +      * xrdb.c (magic_file_p, x_get_resource): Likewise.
 +      * xselect.c (x_queue_event, x_get_window_property)
 +      (receive_incremental_selection): Likewise.
 +      * xsmfns.c (x_session_check_input): Likewise.
 +      * xterm.c (x_send_scroll_bar_event, SET_SAVED_MENU_EVENT)
 +      (handle_one_xevent, x_check_errors, xim_initialize, x_term_init):
 +      Likewise.
 +      * character.h (BCOPY_SHORT): Removed.
 +      * config.in: Regenerate.
 +      * dispnew.c (safe_bcopy): Only define as dummy if PROFILING.
 +      * emacs.c (main) [PROFILING]: Don't declare
 +      dump_opcode_frequencies.
 +      * lisp.h (safe_bcopy): Remove declaration.
 +      (memset) [!HAVE_MEMSET]: Declare.
 +      (memcpy) [!HAVE_MEMCPY]: Likewise.
 +      (memmove) [!HAVE_MEMMOVE]: Likewise.
 +      (memcmp) [!HAVE_MEMCMP]: Likewise.
 +      * s/ms-w32.h (bzero, bcopy, bcmp, GAP_USE_BCOPY)
 +      (BCOPY_UPWARD_SAFE, BCOPY_DOWNWARD_SAFE, HAVE_BCOPY, HAVE_BCMP):
 +      Don't define.
 +      (HAVE_MEMCMP, HAVE_MEMCPY, HAVE_MEMMOVE, HAVE_MEMSET): Define.
 +      * s/msdos.h (GAP_USE_BCOPY, BCOPY_UPWARD_SAFE)
 +      (BCOPY_DOWNWARD_SAFE): Don't define.
 +      * sysdep.c (memset) [!HAVE_MEMSET]: Define.
 +      (memcpy) [!HAVE_MEMCPY]: Define.
 +      (memmove) [!HAVE_MEMMOVE]: Define.
 +      (memcmp) [!HAVE_MEMCMP]: Define.
 +
 +2010-07-07  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * process.c (kbd_is_on_hold): New variable.
 +      (hold_keyboard_input, unhold_keyboard_input, kbd_on_hold_p):
 +      New functions.
 +      (wait_reading_process_output): If kbd_on_hold_p returns non-zero,
 +      select on empty input mask.
 +      (init_process): Initialize kbd_is_on_hold to 0.
 +
 +      * process.h (hold_keyboard_input, unhold_keyboard_input)
 +      (kbd_on_hold_p): Declare.
 +
 +      * keyboard.c (input_available_signal): Declare.
 +      (kbd_buffer_nr_stored): New function.
 +      (kbd_buffer_store_event_hold): If kbd_buffer_nr_stored returns
 +      more than KBD_BUFFER_SIZE/2, stop reding input (Bug#6571).
 +      (kbd_buffer_get_event): If input is suspended and kbd_buffer_nr_stored
 +      returns less than KBD_BUFFER_SIZE/4, resume reding input (Bug#6571).
 +      (tty_read_avail_input): If input is on hold, return.
 +      Don't read more that free slots in kbd_buffer (Bug#6571).
 +
 +2010-07-07  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * msdos.h:
 +      * msdos.c:
 +      * dosfns.c:
 +      * w16select.c: Convert function definitions to ANSI C.
 +
 +      * msdos.h (ctrl_break_func, install_ctrl_break_check):
 +      Remove unused prototypes.
 +
 +2010-07-07  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * coding.c, sysdep.c: Convert some more functions to standard C.
 +
 +2010-07-07  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * coding.c (decode_coding_gap, encode_coding_gap, decode_coding_object)
 +      (encode_coding_object): Use SPECPDL_INDEX.
 +      (syms_of_coding): Use DOS_NT.
 +
 +2010-07-07  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * intervals.h (interval): Use EMACS_UINT instead of unsigned EMACS_INT.
 +
 +      Make the function member of Lisp_Subr use standard C prototypes.
 +      * lisp.h (struct Lisp_Subr): Use a union for the function member.
 +      (DECL_ALIGN): Add a cast for the function.
 +      * eval.c (Feval, Ffuncall): Use the proper type for each type
 +      function call.
 +
 +2010-07-06  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * fringe.c (draw_fringe_bitmap_1): Use lookup_named_face to get
 +      fringe face id, so face-remapping-alist works (Bug#6091).
 +
 +2010-07-06  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * w32.c, w32console.c, w32fns.c, w32font.c, w32heap.c, w32inevt.c
 +      * w32menu.c, w32proc.c, w32reg.c, w32select.c, w32term.c
 +      * w32uniscribe.c, w32xfns.c: Convert function definitions to standard C.
 +
 +2010-07-06  Andreas Schwab  <schwab@linux-m68k.org>
 +
 +      * xterm.c (x_get_keysym_name): Change type of parameter to int.
 +      * lisp.h: Declare x_get_keysym_name.
 +      * keyboard.c (modify_event_symbol): Don't declare
 +      x_get_keysym_name here.
 +
 +2010-07-06  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * ecrt0.c: Revert conversion to standard C.
 +
 +2010-07-05  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * vm-limit.c (memory_warnings):
 +      * keyboard.c (modify_event_symbol):
 +      * floatfns.c (rounding_driver, ceiling2, floor2, truncate2)
 +      (round2, emacs_rint):
 +      * process.c (send_process, old_sigpipe): Convert function
 +      definitions and declarations to standard C.
 +
 +2010-07-05  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * buffer.c, cm.c, eval.c, keyboard.c, process.c, term.c, vm-limit.c,
 +      * xdisp.c: Convert function definitions to standard C.
 +
 +      * cm.c (cmputc): Arg C is now int, not char.
 +      * process.c (Fmake_network_process): Cast sockaddr_in* to sockaddr*.
 +
 +2010-07-05  James Cloos  <cloos@jhcloos.com>
 +
 +      * xterm.h (Xatom_net_wm_name, Xatom_net_wm_icon_name): New.
 +
 +      * xterm.c (x_term_init): Intern the _NET_WM_NAME and
 +      _NET_WM_ICON_NAME atoms.
 +
 +      * xfns.c (x_set_name_internal): Set the EWMH _NET_WM_NAME
 +      and _NET_WM_ICON_NAME properties, too, matching what is
 +      done in the Gtk+ case.
 +
 +2010-07-05  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * xterm.c (XTring_bell, XTset_terminal_window): Fix wrong prototype.
 +
 +      * xsmfns.c (SSDATA): New macro.
 +      (smc_save_yourself_CB, x_session_initialize): Use SSDATA for strings
 +      passed to strlen/strcpy/strcat.
 +      (create_client_leader_window): Surround with #ifndef USE_GTK.
 +      Cast 7:th arg to XChangeProperty to (unsigned char *).
 +
 +      * xsettings.c (something_changedCB, parse_settings)
 +      (apply_xft_settings): Reformat prototype.
 +      (something_changedCB, init_gconf): Remove unused variable i.
 +      (read_settings): Remove unused variable long_len.
 +
 +      * gtkutil.c (xg_get_pixbuf_from_pix_and_mask)
 +      (xg_get_image_for_pixmap, create_dialog)
 +      (xg_get_file_with_selection, xg_get_file_name, update_cl_data)
 +      (menuitem_highlight_callback, make_menu_item)
 +      (xg_create_one_menuitem, create_menus, xg_update_menu_item)
 +      (xg_create_scroll_bar, xg_update_scrollbar_pos)
 +      (xg_set_toolkit_scroll_bar_thumb, xg_tool_bar_button_cb)
 +      (xg_tool_bar_proxy_help_callback, xg_tool_bar_detach_callback)
 +      (xg_tool_bar_attach_callback, xg_tool_bar_help_callback)
 +      (xg_tool_bar_item_expose_callback): Reformat prototype.
 +      (xg_update_menubar): GList *group => GSList *group.
 +      (xg_modify_menubar_widgets): Initialize witem to 0, check witem != 0
 +      before use.
 +      (update_frame_tool_bar): 4:th param to xg_get_image_for_pixmap changed
 +      to GTK_IMAGE (wimage).
 +
 +2010-07-05  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * atimer.c: Use "" instead of <> for local includes for
 +      consistency with the rest of the code.
 +
 +      * xsmfns.c (smc_save_yourself_CB, smc_error_handler):
 +      * xrdb.c (get_system_name):
 +      * window.c (shrink_windows):
 +      * syntax.c (forw_comment):
 +      * scroll.c (calculate_scrolling, calculate_direct_scrolling)
 +      (ins_del_costs):
 +      * mem-limits.h (start_of_data):
 +      * lread.c (readevalloop):
 +      * gtkutil.c (xg_dialog_response_cb, xg_get_file_with_chooser)
 +      (xg_get_file_with_selection, xg_update_menubar, xg_update_submenu):
 +      * frame.c (x_get_focus_frame):
 +      * floatfns.c (fmod_float):
 +      * fileio.c (choose_write_coding_system):
 +      * emacs.c (fatal_error_signal, init_cmdargs, argmatch)
 +      (malloc_initialize_hook, sort_args, synchronize_locale):
 +      * doprnt.c (doprnt):
 +      * dired.c (compile_pattern):
 +      * data.c (fmod_float):
 +      * chartab.c (map_sub_char_table, map_sub_char_table_for_charset)
 +      (map_char_table_for_charset):
 +      * charset.c (define_charset_internal):
 +      * alloc.c (Fgarbage_collect): Convert declarations or definitions
 +      to standard C.
 +
 +2010-07-04  Tetsurou Okazaki  <okazaki@be.to>  (tiny change)
 +            Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * lread.c (read1): Fix up last change to not mess up `c'.
 +
 +2010-07-04  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * strftime.c: Revert conversion to standard C (2010-07-04T07:50:25Z!dann@ics.uci.edu).
 +
 +2010-07-04  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      Fix prototypes.
 +
 +      * atimer.c (start_atimer): Use EMACS_TIME, not struct timeval.
 +      * dired.c (file_name_completion_stat): Use DIRENTRY, not struct dirent.
 +      * fileio.c (read_non_regular, read_non_regular_quit): Add Lisp_Object
 +      arg, as required by internal_condition_case_1.
 +      * print.c (strout): Use const char* for arg PTR.
 +      * regex.c (bcmp_translate): Use RE_TRANSLATE_TYPE, not Lisp_Object.
 +      (analyse_first): Fix "const const".
 +      * sysdep.c (set_file_times): Use EMACS_TIME, not struct timeval.
 +      * unexelf.c (round_up, find_section): Use ElfW macro for arguments.
 +      * xgselect.c (xg_select): Use SELECT_TYPE, EMACS_TIME.
 +
 +2010-07-04  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * alloc.c: Convert function definitions to standard C.
 +      * atimer.c:
 +      * bidi.c:
 +      * bytecode.c:
 +      * callint.c:
 +      * callproc.c:
 +      * casefiddle.c:
 +      * casetab.c:
 +      * category.c:
 +      * ccl.c:
 +      * character.c:
 +      * charset.c:
 +      * chartab.c:
 +      * cmds.c:
 +      * coding.c:
 +      * composite.c:
 +      * data.c:
 +      * dbusbind.c:
 +      * dired.c:
 +      * dispnew.c:
 +      * doc.c:
 +      * doprnt.c:
 +      * ecrt0.c:
 +      * editfns.c:
 +      * fileio.c:
 +      * filelock.c:
 +      * filemode.c:
 +      * fns.c:
 +      * font.c:
 +      * fontset.c:
 +      * frame.c:
 +      * fringe.c:
 +      * ftfont.c:
 +      * ftxfont.c:
 +      * gtkutil.c:
 +      * indent.c:
 +      * insdel.c:
 +      * intervals.c:
 +      * keymap.c:
 +      * lread.c:
 +      * macros.c:
 +      * marker.c:
 +      * md5.c:
 +      * menu.c:
 +      * minibuf.c:
 +      * prefix-args.c:
 +      * print.c:
 +      * ralloc.c:
 +      * regex.c:
 +      * region-cache.c:
 +      * scroll.c:
 +      * search.c:
 +      * sound.c:
 +      * strftime.c:
 +      * syntax.c:
 +      * sysdep.c:
 +      * termcap.c:
 +      * terminal.c:
 +      * terminfo.c:
 +      * textprop.c:
 +      * tparam.c:
 +      * undo.c:
 +      * unexelf.c:
 +      * window.c:
 +      * xfaces.c:
 +      * xfns.c:
 +      * xfont.c:
 +      * xftfont.c:
 +      * xgselect.c:
 +      * xmenu.c:
 +      * xrdb.c:
 +      * xselect.c:
 +      * xsettings.c:
 +      * xsmfns.c:
 +      * xterm.c: Likewise.
 +
 +2010-07-03  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * msdos.c (IT_set_frame_parameters): Fix setting of colors in
 +      frames other than the initial one.  Fix reversal of colors when
 +      `reverse' is specified in the frame parameters.
 +      Call update_face_from_frame_parameter instead of
 +      internal-set-lisp-face-attribute.  Initialize screen colors from
 +      initial_screen_colors[] when f->default_face_done_p is zero,
 +      instead of depending on being called with default-frame-alist as
 +      the alist argument.
 +
 +      * xfaces.c (update_face_from_frame_parameter): Move out of
 +      HAVE_WINDOW_SYSTEM portion.  Condition window-system only parts
 +      with HAVE_WINDOW_SYSTEM.
 +
 +      * msdos.c (IT_set_frame_parameters): Set menu-bar-lines according
 +      to menu-bar-mode, if not set in the frame parameters or in
 +      default-frame-alist.
 +
 +      * w32console.c (sys_tputs): Adjust argument list to prototype in
 +      term.c.
 +
 +2010-07-03  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * lisp.h (memory_warnings): Fix prototype.
 +
 +      * cm.h (evalcost): Fix prototype.
 +
 +      * cm.c (evalcost): Fix arg type.
 +
 +2010-07-02  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * term.c (term_clear_mouse_face, Fidentity):
 +      * syssignal.h (signal_handler_t):
 +      * lisp.h (memory_warnings):
 +      * coding.h (preferred_coding_system):
 +      * cm.h (evalcost):
 +      * blockinput.h (reinvoke_input_signal): Convert to standard C prototypes.
 +
 +2010-07-02  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * dosfns.h (msdos_stdcolor_idx, msdos_stdcolor_name): Remove P_
 +      from prototypes.
 +
 +      * msdos.h (load_pixmap): Don't define away.
 +
 +2010-07-02  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * lisp.h:
 +      * atimer.h: Remove define for P_.
 +
 +      * alloc.c: Remove __P and P_ from .c and .m files.
 +      * atimer.c:
 +      * buffer.c:
 +      * callint.c:
 +      * category.c:
 +      * charset.c:
 +      * chartab.c:
 +      * cm.c:
 +      * coding.c:
 +      * composite.c:
 +      * data.c:
 +      * dired.c:
 +      * dispnew.c:
 +      * doc.c:
 +      * editfns.c:
 +      * emacs.c:
 +      * eval.c:
 +      * fileio.c:
 +      * filelock.c:
 +      * fns.c:
 +      * font.c:
 +      * fontset.c:
 +      * frame.c:
 +      * ftfont.c:
 +      * ftxfont.c:
 +      * gmalloc.c:
 +      * gtkutil.c:
 +      * image.c:
 +      * indent.c:
 +      * intervals.c:
 +      * keyboard.c:
 +      * keymap.c:
 +      * lread.c:
 +      * marker.c:
 +      * menu.c:
 +      * minibuf.c:
 +      * print.c:
 +      * process.c:
 +      * scroll.c:
 +      * search.c:
 +      * sound.c:
 +      * strftime.c:
 +      * syntax.c:
 +      * sysdep.c:
 +      * term.c:
 +      * terminal.c:
 +      * textprop.c:
 +      * unexalpha.c:
 +      * w32console.c:
 +      * w32fns.c:
 +      * w32font.c:
 +      * w32menu.c:
 +      * w32term.c:
 +      * w32uniscribe.c:
 +      * window.c:
 +      * xdisp.c:
 +      * xfaces.c:
 +      * xfns.c:
 +      * xfont.c:
 +      * xftfont.c:
 +      * xmenu.c:
 +      * xselect.c:
 +      * xterm.c: Likewise.
 +
 +      Remove P_ and __P macros.
 +      * atimer.h: Remove P_ and __P macros.
 +      * buffer.h:
 +      * category.h:
 +      * ccl.h:
 +      * character.h:
 +      * charset.h:
 +      * cm.h:
 +      * coding.h:
 +      * composite.h:
 +      * dispextern.h:
 +      * disptab.h:
 +      * dosfns.h:
 +      * font.h:
 +      * fontset.h:
 +      * frame.h:
 +      * gtkutil.h:
 +      * indent.h:
 +      * intervals.h:
 +      * keyboard.h:
 +      * keymap.h:
 +      * lisp.h:
 +      * macros.h:
 +      * md5.h:
 +      * menu.h:
 +      * msdos.h:
 +      * nsterm.h:
 +      * puresize.h:
 +      * region-cache.h:
 +      * syntax.h:
 +      * syssignal.h:
 +      * systime.h:
 +      * termhooks.h:
 +      * w32font.h:
 +      * w32term.h:
 +      * widget.h:
 +      * window.h:
 +      * xgselect.h:
 +      * xsettings.h:
 +      * xterm.h: Likewise.
 +
 +2010-07-02  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * lisp.h: Document that USE_LISP_UNION_TYPE is now enabled using autoconf.
 +
 +      Cleanup old code.
 +      * dired.c (BSD4_3): Remove all uses, redundant with BSD4_2.
 +      * syssignal.h: Remove code for Lynx, not supported anymore.
 +      * vm-limit.c: Remove unused code the depends on emacs not being
 +      defined and NO_LIM_DATA being defined.
 +      * mem-limits.h: Remove dead code.
 +
 +2010-07-01  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * window.c (Fwindow_absolute_pixel_edges): Doc fix.
 +
 +      * window.c (calc_absolute_offset, Fwindow_absolute_pixel_edges)
 +      (Fwindow_inside_absolute_pixel_edges): New functions (bug#5721).
 +
 +      * nsfns.m (compute_tip_xy): Do not convert coordinates from frame
 +      parameters, they are already absolute.
 +
 +      * nsterm.m (x_set_window_size, initFrameFromEmacs):
 +      Rename FRAME_NS_TOOLBAR_HEIGHT to FRAME_TOOLBAR_HEIGHT.
 +
 +      * nsterm.h (FRAME_NS_TOOLBAR_HEIGHT): Rename to FRAME_TOOLBAR_HEIGHT.
 +
 +      * nsmenu.m (update_frame_tool_bar, free_frame_tool_bar):
 +      Update FRAME_TOOLBAR_HEIGHT.
 +
 +      * nsmenu.m (free_frame_tool_bar, update_frame_tool_bar):
 +      Add BLOCK/UNBLOCK_INPUT so asserts don't trigger.
 +
 +2010-06-30  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * frame.c (get_future_frame_param, Fmake_terminal_frame):
 +      Don't check default-frame-alist.
 +
 +2010-06-30  Andreas Schwab  <schwab@linux-m68k.org>
 +
 +      * process.c (create_process): Avoid using invalid file descriptors.
 +
 +      * callproc.c (child_setup): Avoid closing a file descriptor twice.
 +
 +2010-06-30  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * xsettings.c (Ffont_get_system_normal_font, Ffont_get_system_font):
 +      Improve documentation.  Return font regardless of use_system_font.
 +      (syms_of_xsettings): Improve documentation for font-use-system-font.
 +
 +2010-07-10  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * xfaces.c (realize_face): Garbage the frame if a face is removed
 +      (Bug#6593).
 +
 +2010-07-05  Andreas Schwab  <schwab@linux-m68k.org>
 +
 +      * keyboard.c: Remove duplicate <setjmp.h>.
 +      (read_key_sequence): Remove volatile qualifiers.
 +
 +2010-07-05  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
 +
 +      * dispextern.h (FRINGE_HEIGHT_BITS): New define.
 +      (struct glyph_row): New members left_fringe_offset and
 +      right_fringe_offset.
 +
 +      * xterm.c (x_draw_fringe_bitmap): Don't clip bottom aligned bitmap
 +      specially.
 +      * w32term.c (w32_draw_fringe_bitmap): Likewise.
 +      * nsterm.m (ns_draw_fringe_bitmap): Likewise.
 +
 +      * fringe.c (draw_fringe_bitmap_1): Don't clip bitmap here.
 +      Take account of bitmap offset.
 +      (draw_window_fringes): Take account of window vscroll.
 +      (update_window_fringes): Likewise.  Extend top-aligned top indicator
 +      or bottom-aligned bottom indicator to adjacent rows if it doesn't fit
 +      in one row.  Don't set redraw_fringe_bitmaps_p outside row comparison.
 +      Set left_fringe_offset and right_fringe_offset (Bug#5634, Bug#6325).
 +
 +2010-07-04  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * w32fns.c (Qtooltip): Declare.
 +      Suggested by Andy Moreton <andrewjmoreton@gmail.com>.
 +
 +2010-07-03  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * xmenu.c (x_activate_menubar): Send Press/Release for Gtk+ to avoid
 +      grab on just Press (Bug#6499).
 +
 +2010-07-02  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * frame.c (Qtooltip): New var.
 +      (delete_frame): Use it.  Fix faulty if statement.  Don't update
 +      mode line for tooltip frames.  Suggested by Martin Rudalics.
 +
 +      * xfns.c (x_create_tip_frame):
 +      * w32fns.c (x_create_tip_frame): Use it.
 +
 +2010-06-17  Naohiro Aota  <naota@elisp.net>  (tiny change)
 +
 +      * xftfont.c (xftfont_open): Check font width one by one also when
 +      spacing is dual.
 +
 +      * ftfont.c (ftfont_open): Ditto.
 +
 +2010-06-30  Glenn Morris  <rgm@gnu.org>
 +
 +      * s/sol2-6.h (INHIBIT_X11R6_XIM): Remove, handled by configure now.
 +
 +      * Makefile.in (CANNOT_DUMP): Update for configure name change.
 +
 +      * s/freebsd.h (USE_MMAP_FOR_BUFFERS):
 +      * s/irix6-5.h (USE_MMAP_FOR_BUFFERS):
 +      * s/darwin.h (SYSTEM_MALLOC):
 +      * s/sol2-10.h (SYSTEM_MALLOC): Move to configure.
 +
 +2010-06-29  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * nsfns.m: extern declare Vmenu_bar_mode, Vtool_bar_mode.
 +      (ns_get_screen): Don't assign integer to f.
 +      (Fx_display_color_cells): Declarations before statements.
 +
 +2010-06-28  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * xfns.c (x_default_font_parameter): Remove got_from_system
 +      (Bug#6526).
 +
 +      * xterm.h (gtk_widget_get_window, gtk_widget_get_mapped)
 +      (gtk_adjustment_get_page_size, gtk_adjustment_get_upper):
 +      New defines based on what configure finds.
 +
 +      * xterm.c (XTflash): Use gtk_widget_get_window.
 +      (xg_scroll_callback): Use gtk_adjustment_get_upper and
 +      gtk_adjustment_get_page_size.
 +      (handle_one_xevent): Use gtk_widget_get_mapped.
 +      (x_term_init): Remove HAVE_GTK_MULTIDISPLAY and associated error
 +      messages.
 +
 +      * xmenu.c (create_and_show_popup_menu): Call gtk_widget_get_mapped.
 +
 +      * gtkutil.h: Replace HAVE_GTK_FILE_BOTH with
 +      HAVE_GTK_FILE_SELECTION_NEW.
 +
 +      * gtkutil.c (xg_display_open, xg_display_close):
 +      Remove HAVE_GTK_MULTIDISPLAY, it is always defined.
 +      (xg_display_open): Return type is void.
 +      (gtk_widget_set_has_window)
 +      (gtk_dialog_get_action_area, gtk_dialog_get_content_area)
 +      (gtk_widget_get_sensitive, gtk_adjustment_set_page_size)
 +      (gtk_adjustment_set_page_increment)
 +      (gtk_adjustment_get_step_increment): #define these if not found
 +      by configure.
 +      (remove_submenu): New define based on Gtk+ version.
 +      (xg_set_cursor, xg_frame_resized, xg_event_is_for_scrollbar):
 +      Use gtk_widget_get_window.
 +      (xg_frame_resized, xg_update_frame_menubar): Use gtk_widget_get_mapped.
 +      (xg_create_frame_widgets): Use gtk_widget_set_has_window.
 +      (create_dialog): Use gtk_dialog_get_action_area and
 +      gtk_dialog_get_content_area.
 +      (xg_uses_old_file_dialog, xg_get_file_name): Remove HAVE_GTK_FILE_BOTH
 +      and HAVE_GTK_FILE_CHOOSER_DIALOG_NEW.  File chooser is always
 +      available, so checking for HAVE_GTK_FILE_SELECTION_NEW is enough.
 +      (xg_update_menubar, xg_update_submenu, xg_show_toolbar_item):
 +      Use g_object_ref and g_object_unref.
 +      (xg_update_menu_item, xg_tool_bar_menu_proxy):
 +      Use gtk_widget_get_sensitive.
 +      (xg_update_submenu): Use remove_submenu.
 +      (xg_update_scrollbar_pos): Don't use GtkFixedChild, use child
 +      properties instead to get old x and y position.
 +      (xg_set_toolkit_scroll_bar_thumb): Use gtk_adjustment_get_page_size,
 +      gtk_adjustment_get_step_increment, gtk_adjustment_set_page_size,
 +      gtk_adjustment_set_step_increment and gtk_adjustment_set_page_increment.
 +      (xg_get_tool_bar_widgets): New function.
 +      (xg_tool_bar_menu_proxy, xg_show_toolbar_item)
 +      (update_frame_tool_bar): Call xg_get_tool_bar_widgets.
 +      (toolbar_set_orientation): New #define based on if configure
 +      finds gtk_orientable_set_orientation.
 +      (xg_create_tool_bar): Call toolbar_set_orientation.
 +      (xg_make_tool_item, xg_show_toolbar_item): Call gtk_box_pack_start
 +      instead of gtk_box_pack_start_defaults.
 +
 +2010-06-28  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * cmds.c (Fdelete_backward_char): Move into Lisp.
 +
 +2010-06-27  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * s/freebsd.h (BSD4_2): Remove redundant definition.
 +      bsd-common.h defines it already.
 +
 +2010-06-27  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * xfns.c (Fx_create_frame): Don't consult X resouces when setting
 +      menu-bar-lines and tool-bar-lines.  Use menu-bar-mode and
 +      tool-bar-mode, which are now set using these X resources at
 +      startup, to determine the defaults (Bug#2249).
 +
 +      * w32fns.c (Fx_create_frame):
 +      * nsfns.m (Fx_create_frame): Likewise.
 +
 +      * frame.c (Vmenu_bar_mode, Vtool_bar_mode): New vars.
 +
 +2010-06-24  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * gtkutil.c (xg_update_scrollbar_pos):
 +      Avoid C99 mid-block variable declaration.
 +
 +2010-06-22  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * xterm.c (x_scroll_bar_create): Remove call to xg_show_scroll_bar.
 +
 +      * gtkutil.h (xg_show_scroll_bar): Remove.
 +
 +      * gtkutil.c (xg_update_scrollbar_pos): Show/hide scroll bar as needed
 +      if height is less than scroll bar min size.
 +      (xg_show_scroll_bar): Remove, show moved to xg_update_scrollbar_pos.
 +
 +      * xfns.c (x_default_font_parameter): Try to open font from system
 +      before using it (bug#6478).  Rename got_from_gconf to got_from_system.
 +
 +2010-06-22  Keith Packard  <keithp@keithp.com>  (tiny change)
 +
 +      * font.c (font_parse_fcname): Allow . for sizes like 7.5 (bug#6437).
 +
 +2010-06-20  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * xdisp.c (try_scrolling): When scroll-conservatively is set to
 +      most-positive-fixnum, be extra accurate when scrolling window
 +      start, to avoid missing the cursor line.
 +
 +2010-06-19  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * xdisp.c (try_scrolling): Compute the limit for searching point
 +      in forward scroll from scroll_max, instead of an arbitrary limit
-       over continuation lines in bidi-reordered buffers.  Return
-       CURSOR_MOVEMENT_MUST_SCROLL upon failure to find a suitable row,
++      of 10 screen lines.
++      See http://lists.gnu.org/archive/html/emacs-devel/2010-06/msg00766.html
 +      and
 +      http://lists.gnu.org/archive/html/emacs-devel/2010-06/msg00773.html
 +      for details.
 +
 +2010-06-16  Glenn Morris  <rgm@gnu.org>
 +
 +      * editfns.c (Fbyte_to_string): Pacify compiler.
 +
 +2010-06-16  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * lread.c (read1): Phase out old-style backquotes a bit more.
 +
 +2010-06-12  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * makefile.w32-in ($(BLD)/bidi.$(O)): Depend on biditype.h and
 +      bidimirror.h.
 +
 +      * deps.mk (bidi.o): Depend on biditype.h and bidimirror.h.
 +
 +      * bidi.c (bidi_initialize): Remove explicit initialization of
 +      bidi_type_table; include biditype.h instead.  Don't support
 +      entries whose second codepoint is zero.  Initialize bidi_mirror_table.
 +      (bidi_mirror_char): Use bidi_mirror_table.
 +
 +      * biditype.h: New file.
 +
 +      * bidimirror.h: New file.
 +
 +      * window.c (syms_of_window): Doc fix (bug#6409).
 +
 +2010-06-12  Romain Francoise  <romain@orebokech.com>
 +
 +      * Makefile.in (lisp, shortlisp): Use new location of vc-hooks and
 +      ediff-hook.
 +
 +2010-06-10  Glenn Morris  <rgm@gnu.org>
 +
 +      * editfns.c (Fbyte_to_string): Pacify compiler.
 +
 +      * m/ibms390x.h: Rather than duplicating ibms390.h, just include it.
 +
 +2010-06-26  Andreas Schwab  <schwab@linux-m68k.org>
 +
 +      * alloc.c (Fmake_byte_code): Don't access undefined argument
 +      (Bug#6517).
 +
 +2010-06-25  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * xdisp.c (next_element_from_image): Ensure that after-strings are
 +      read the next time we hit handle_stop (Bug#1336).
 +
 +2010-06-23  Andreas Schwab  <schwab@linux-m68k.org>
 +
 +      * lread.c (read1): Signal error if #s is not followed by paren.
 +
 +2010-06-19  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * image.c (free_image): Mark frame as garbaged (Bug#6426).
 +
 +      * keymap.c (Fdefine_key): Doc fix (Bug#6460).
 +
 +2010-06-15  Glenn Morris  <rgm@gnu.org>
 +
 +      * editfns.c (Fbyte_to_string): Pacify compiler.
 +
 +2010-06-09  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * dbusbind.c (xd_append_arg): Don't "make-unibyte" the string.
 +      Check `object's type before accessing its guts.
 +
 +2010-06-09  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * s/usg5-4.h: Fix previous change.
 +      Suggested by Lawrence Mitchell <wence@gmx.li>
 +
 +2010-06-08  Andreas Schwab  <schwab@linux-m68k.org>
 +
 +      * minibuf.c (Fall_completions): Add more checks.
 +
 +2010-06-08  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * minibuf.c (Fall_completions): Check COLLECTION's size (bug#6378).
 +
 +2010-06-08  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * lread.c (X_OK): Remove, unused.
 +
 +      * dispnew.c: Remove obsolete comment.
 +
 +      Remove INCLUDED_FCNTL.
 +      * xterm.c (INCLUDED_FCNTL):
 +      * callproc.c (INCLUDED_FCNTL):
 +      * alloc.c (INCLUDED_FCNTL):
 +      * systty.h (INCLUDED_FCNTL): Remove all uses, not needed anymore.
 +      (emacs_get_tty, emacs_set_tty): Declare unconditionally.
 +
 +2010-06-07  Martin Rudalics  <rudalics@gmx.at>
 +
 +      * window.c (Fselect_window): Move `record_buffer' up to the
 +      beginning of this function, so the buffer gets recorded
 +      even if the selected window does not change.
 +      http://lists.gnu.org/archive/html/emacs-devel/2010-06/msg00137.html
 +
 +2010-06-07  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * cmds.c (Fforward_char, Fbackward_char): Fix typos in docstrings.
 +      (Fforward_line, Fbeginning_of_line): Reflow docstrings.
 +
 +2010-06-06  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      Remove BSTRING related code, all platforms define it.
 +      * s/usg5-4.h (BSTRING): Remove definition.
 +      * s/template.h (BSTRING):
 +      * s/msdos.h (BSTRING):
 +      * s/ms-w32.h (BSTRING):
 +      * s/hpux10-20.h (BSTRING):
 +      * s/gnu-linux.h (BSTRING):
 +      * s/darwin.h (BSTRING):
 +      * s/cygwin.h (BSTRING):
 +      * s/bsd-common.h (BSTRING):
 +      * s/aix4-2.h (BSTRING): Likewise.
 +      * sysdep.c: Remove code depending on BSTRING not being defined.
 +
 +2010-06-05  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      Remove obsolete macro BASE_LEADING_CODE_P.
 +      * character.h (BASE_LEADING_CODE_P): Remove.
 +      * regex.c [!emacs] (BASE_LEADING_CODE_P): Remove.
 +      * buffer.c (Fset_buffer_multibyte):
 +      * indent.c (scan_for_column, compute_motion):
 +      * insdel.c (count_combining_before, count_combining_after):
 +      Use LEADING_CODE_P instead of BASE_LEADING_CODE_P.
 +
 +2010-06-04  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      Turn `directory-sep-char' into a noop.
 +
 +      * lisp.h [WINDOWSNT] (Vdirectory_sep_char): Don't declare.
 +      (DIRECTORY_SEP): Define unconditionally.
 +
 +      * s/ms-w32.h (DIRECTORY_SEP): Remove.
 +
 +      * emacs.c (decode_env_path): Don't check DIRECTORY_SEP,
 +      call dostounix_filename directly.
 +
 +      * fileio.c (CORRECT_DIR_SEPS): Remove.
 +      (Ffile_name_directory, directory_file_name, Fexpand_file_name)
 +      (Fsubstitute_in_file_name): Use dostounix_filename instead.
 +      (file_name_as_directory): Use dostounix_filename, DIRECTORY_SEP.
 +      (syms_of_fileio) <directory-sep-char>: Move to subr.el.
 +
 +      * w32proc.c (CORRECT_DIR_SEPS): Remove.
 +      (Fw32_short_file_name, Fw32_long_file_name): Use dostounix_filename.
 +
 +2010-06-03  Andreas Schwab  <schwab@linux-m68k.org>
 +
 +      * process.c (conv_lisp_to_sockaddr): Fix conversion of IPv4 address.
 +      (Bug#6346)
 +
 +2010-06-03  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * ccl.c (Fccl_program_p): Fix typo in docstring.
 +
 +2010-06-03  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      Move UNEXEC definition to autoconf.
 +      * s/usg5-4.h (UNEXEC): Remove, move to configure.in.
 +      * s/sol2-10.h (UNEXEC):
 +      * s/irix6-5.h (UNEXEC):
 +      * s/hpux10-20.h (UNEXEC):
 +      * s/gnu-linux.h (UNEXEC):
 +      * s/darwin.h (UNEXEC):
 +      * s/cygwin.h (UNEXEC):
 +      * s/bsd-common.h (UNEXEC):
 +      * s/aix4-2.h (UNEXEC):
 +      * m/alpha.h (UNEXEC): Likewise.
 +      * Makefile.in (UNEXEC_OBJ): Define using @UNEXEC_OBJ@.
 +
 +2010-06-03  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      Remove obsolete pre-unicode2 macros.
 +      * character.h (MULTIBYTE_FORM_LENGTH, PARSE_MULTIBYTE_SEQ): Remove.
 +      * composite.c (composition_reseat_it):
 +      * data.c (Faset):
 +      * fns.c (Ffillarray):
 +      * regex.c (re_search_2): Use BYTES_BY_CHAR_HEAD.
 +      [!emacs] (BYTES_BY_CHAR_HEAD): Define instead of MULTIBYTE_FORM_LENGTH.
 +
 +2010-06-03  Juri Linkov  <juri@jurta.org>
 +
 +      * buffer.c (Fother_buffer): Add CHECK_FRAME.
 +      (Fswitch_to_buffer): Remove unused variable `err'.
 +
 +2010-06-03  Glenn Morris  <rgm@gnu.org>
 +
 +      * m/template.h (NO_SOCK_SIGIO): Remove, no longer used.
 +
 +      * m/hp800.h (alloca) [__NetBSD__ && __GNUC__]: No need to define it,
 +      now that AH_BOTTOM does it.
 +
 +      * m/hp800.h (HAVE_ALLOCA):
 +      * m/ibms390x.h (HAVE_ALLOCA): Do not define, no longer needed.
 +
 +      * m/ia64.h, s/gnu-linux.h, s/gnu.h, s/netbsd.h, s/usg5-4.h:
 +      Remove NOT_C_CODE tests, it is always true now.
 +
 +2010-06-02  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      Fix config.h includes.
 +      * xsettings.c:
 +      * xgselect.c:
 +      * nsterm.m:
 +      * nsselect.m:
 +      * nsimage.m:
 +      * nsfont.m:
 +      * nsfns.m:
 +      * dbusbind.c: Use #include <config.h> instead of "config.h" as all
 +      other files do.
 +
 +      * gmalloc.c: Remove BROKEN_PROTOTYPES reference, unused.
 +
 +      * s/sol2-6.h: Remove obsolete comments.
 +
 +      Remove unnecessary alloca.h includes.
 +      * keymap.c: Do not include alloca.h, config.h does that.
 +      * sysdep.c: Likewise.  Do not define fwrite, not used.
 +
 +2010-06-01  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * sysdep.c (child_setup_tty): Move the non-canonical initialization to
 +      the HAVE_TERMIO where it belongs (bug#6149).
 +
 +2010-05-31  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * keymap.c (Fwhere_is_internal): Fix handling of remapping (in thread
 +      of bug#6305).
 +
 +2010-05-30  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * bidi.c (bidi_move_to_visually_next): Make sure the sentinel
 +      state is always cached (bug#6306).
 +
 +2010-05-29  Eli Zaretskii  <eliz@gnu.org>
 +
 +      Fix cursor motion in bidi-reordered continued lines.
 +      * xdisp.c (try_cursor_movement): Backup to non-continuation line
 +      only after finding point's row.  Fix the logic.  Rewrite the loop
-       (read_settings): Renamed from read_xft_settings.
++      over continuation lines in bidi-reordered buffers.
++      Return CURSOR_MOVEMENT_MUST_SCROLL upon failure to find a suitable row,
 +      rather than CURSOR_MOVEMENT_CANNOT_BE_USED.
 +
 +2010-05-28  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * fileio.c (Fdelete_file): Pass TRASH arg to handler call.
 +
 +2010-05-28  Kenichi Handa  <handa@m17n.org>
 +
 +      * font.c (font_delete_unmatched): Check Vface_ignored_fonts.
 +      Don't sheck SPEC if it is nil.
 +      (font_list_entities): Call font_delete_unmatched if
 +      Vface_ignored_fonts is non-nil.  (Bug#6287)
 +
 +2010-05-28  Glenn Morris  <rgm@gnu.org>
 +
 +      * Makefile.in (LIBES): Remove $LOADLIBES, it is never set.
 +
 +2010-05-27  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * fileio.c (Fdelete_file): Change meaning of optional arg to mean
 +      whether to trash.
 +      (internal_delete_file, Frename_file): Callers changed.
 +      (delete_by_moving_to_trash): Doc fix.
 +      (Fdelete_directory_internal): Don't move to trash.
 +
 +      * callproc.c (delete_temp_file):
 +      * buffer.c (Fkill_buffer): Callers changed.
 +
 +      * lisp.h: Update prototype.
 +
 +2010-05-27  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * xdisp.c (redisplay_window): After redisplay, check if point is
 +      still valid before setting it (Bug#6177).
 +
 +2010-05-27  Glenn Morris  <rgm@gnu.org>
 +
 +      * Makefile.in, autodeps.mk, deps.mk, ns.mk:
 +      Convert comments to Makefile format.
 +
 +      * Makefile.in (bootstrap-clean): No more Makefile.c.
 +
 +2010-05-26  Glenn Morris  <rgm@gnu.org>
 +
 +      * Makefile.in (YMF_PASS_LDFLAGS): Remove.
 +      (temacs${EXEEXT}): Use PRE_EDIT_LDFLAGS, POST_EDIT_LDFLAGS.
 +
 +      * Makefile.in (NS_IMPL_GNUSTEP_INC, NS_IMPL_GNUSTEP_TEMACS_LDFLAGS):
 +      Remove.
 +      (TEMACS_LDFLAGS): Do not use NS_IMPL_GNUSTEP_TEMACS_LDFLAGS.
 +
 +2010-05-26  Kenichi Handa  <handa@m17n.org>
 +
 +      * composite.c (composition_compute_stop_pos): Fix condition for
 +      backward scanning.
 +
 +2010-05-25  Glenn Morris  <rgm@gnu.org>
 +
 +      * Makefile.in (@NS_IMPL_GNUSTEP_INC@, NS_IMPL_GNUSTEP_TEMACS_LDFLAGS):
 +      Move before TEMACS_LDFLAGS.
 +      (TEMACS_LDFLAGS): Use $NS_IMPL_GNUSTEP_TEMACS_LDFLAGS.
 +      (temacs${EXEEXT}): Do not use $NS_IMPL_GNUSTEP_TEMACS_LDFLAGS.
 +
 +      * Makefile.in (NOT_C_CODE): No longer define.
 +      (config.h): No longer include.
 +
 +      * Makefile.in (LD_SWITCH_SYSTEM_TEMACS): Move definition after some
 +      variables it may reference.
 +
 +      * Makefile.in (LD_SWITCH_SYSTEM_EXTRA): Remove.
 +      (TEMACS_LDFLAGS): Remove LD_SWITCH_SYSTEM_EXTRA.
 +
 +2010-05-25  Kenichi Handa  <handa@m17n.org>
 +
 +      * dispextern.h (struct composition_it): New members rule_idx and
 +      charpos.
 +
 +      * xdisp.c (set_iterator_to_next): While scanning backward, assume
 +      that the character positions of IT point the last character of the
 +      current grapheme cluster.
 +      (next_element_from_composition): Don't change character positions
 +      of IT.
 +      (append_composite_glyph): Set glyph->charpos to
 +      it->cmp_it.charpos.
 +
 +      * composite.c (autocmp_chars): Change the first argument to RULE,
 +      and try composition with RULE only.
 +      (composition_compute_stop_pos): Record the index number of the
 +      composition rule in CMP_IT->rule_idx.
 +      (composition_reseat_it): Call autocmp_chars repeatedly until the
 +      correct rule of the composition is found.
 +      (composition_update_it): Set CMP_IT->charpos.  Assume the CHARPOS
 +      is at the last character of the current grapheme cluster when
 +      CMP_IT->reversed_p is nonzero.
 +
 +2010-05-24  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * editfns.c (Fbyte_to_string): New function.
 +
 +2010-05-24  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * process.c (Fmake_network_process): Set :host to nil if it's not used.
 +      Suggested by Masatake YAMATO <yamato@redhat.com>.
 +
 +2010-05-23  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * dispextern.h (init_iterator): Sync prototype with changed definition.
 +
 +2010-05-20  enami tsugutomo  <tsugutomo.enami@jp.sony.com>
 +
 +      * s/netbsd.h: If terminfo is found, use it in preference to
 +      termcap.  (Bug#6190)  [Backport from trunk]
 +
 +2010-05-19  Eli Zaretskii  <eliz@gnu.org>
 +
 +      Redesign and reimplement bidi-aware edge positions of glyph rows.
 +
 +      * dispextern.h (struct glyph_row): New members minpos and maxpos.
 +      (MATRIX_ROW_START_CHARPOS, MATRIX_ROW_START_BYTEPOS)
 +      (MATRIX_ROW_END_CHARPOS, MATRIX_ROW_END_BYTEPOS): Reference minpos
 +      and maxpos members instead of start.pos and end.pos, respectively.
 +
 +      * xdisp.c (display_line): Compare IT_CHARPOS with the position in
 +      row->start.pos, rather than with MATRIX_ROW_START_CHARPOS.
 +      (cursor_row_p): Use row->end.pos rather than MATRIX_ROW_END_CHARPOS.
 +      (try_window_reusing_current_matrix, try_window_id):
 +      Use ROW->minpos rather than ROW->start.pos.
 +      (init_from_display_pos, init_iterator): Use EMACS_INT for
 +      character and byte positions.
 +      (find_row_edges): Rename from find_row_end.  Accept additional
 +      arguments for minimum and maximum buffer positions seen by
 +      display_line for this row.  Don't use iterator to find the
 +      position following the maximum one; instead, increment the
 +      position found by display_line directly.  Fix logic; eol_pos
 +      should be tested before the rest.  Handle the case of characters
 +      delivered from display vector (bug#6036).  Fix tests related to
 +      it->method.  Handle the truncated_on_right_p rows.
 +      (RECORD_MAX_MIN_POS): New macro.
 +      (display_line): Use it to record the minimum and maximum buffer
 +      positions for glyphs in the row being assembled.  Record the
 +      position of the newline that terminates the line.  If word wrap is
 +      in effect, restore minimum and maximum positions seen up to the
 +      wrap point, when iterator returns to it.
 +      (try_window_reusing_current_matrix): Give up if in bidi-reordered
 +      row and cursor not already at point.  Restore original pre-bidi
 +      code for unidirectional buffers.
 +
 +      * dispnew.c (increment_row_positions, check_matrix_invariants):
 +      Increment and check row->start.pos and row->end.pos, in addition
 +      to MATRIX_ROW_START_CHARPOS and MATRIX_ROW_END_CHARPOS.
 +
 +      * .gdbinit (prowlims): Display row->minpos and row->maxpos.
 +      Display truncated_on_left_p and truncated_on_right_p flags.
 +      Formatting fixes.
 +      (pmtxrows): Display the ordinal number of each row.  Don't display
 +      rows beyond the last one.
 +
 +      * bidi.c (bidi_cache_iterator_state): Don't zero out new_paragraph:
 +      it is not copied by bidi_copy_it.
 +
 +2010-05-22  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * w32.c (sys_write): Break writes into chunks smaller than 32MB.
 +      (Bug#6237)
 +
 +2010-05-22  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * image.c (Fimage_flush): Rename from image-refresh.
 +
 +2010-05-21  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * xdisp.c (redisplay_internal): Clear caches even if redisplaying
 +      just one window.
 +
 +      * image.c (Vimage_cache_eviction_delay): Decrease to 300.
 +      (clear_image_cache): If the number of cached images is unusually
 +      large, decrease the cache eviction delay (Bug#6230).
 +
 +2010-05-21  Glenn Morris  <rgm@gnu.org>
 +
 +      * Makefile.in (${ns_appdir}, ${ns_appbindir}Emacs, ns-app):
 +      Move these rules to ns.mk.
 +      * ns.mk: New file.
 +
 +      * Makefile.in (../src/$(OLDXMENU), $(OLDXMENU)): Always define rules.
 +
 +      * Makefile.in (CANNOT_DUMP): New, set by configure.
 +      (emacs${EXEEXT}, bootstrap-emacs${EXEEXT}): Use $CANNOT_DUMP.
 +
 +2010-05-20  Juri Linkov  <juri@jurta.org>
 +
 +      * fileio.c (Fdelete_file): Change interative spec to use
 +      `read-file-name' like in `find-file-read-args' where the default
 +      value is `default-directory' instead of `buffer-file-name'.
 +      http://lists.gnu.org/archive/html/emacs-devel/2010-05/msg00533.html
 +
 +2010-05-20  Kevin Ryde  <user42@zip.com.au>
 +
 +      * keyboard.c (Vlast_command, Vkeyboard_translate_table)
 +      (Voverriding_terminal_local_map, Vsystem_key_alist)
 +      (Vlocal_function_key_map): Fix manual link in docstring (Bug#6224).
 +
 +2010-05-20  Glenn Morris  <rgm@gnu.org>
 +
 +      * Makefile.in (DEPDIR): New constant.
 +      (DEPFLAGS): Set with configure, not cpp.
 +      (MKDEPDIR): New, set by configure.
 +      (.c.o, .m.o, ecrt0.o): Use $MKDEPDIR.
 +      (clean): Use $DEPDIR.
 +      (deps_frag): Include from configure.
 +      Move static/dynamic dependency stuff to deps.mk/autodeps.mk.
 +      * deps.mk, autodeps.mk: New files, extracted from Makefile.in.
 +
 +      * bidi.c (bidi_cache_shrink, bidi_cache_iterator_state):
 +      Fix reallocation of the cache.  (Bug#6210)
 +
 +2010-05-19  Glenn Morris  <rgm@gnu.org>
 +
 +      * s/msdos.h (ORDINARY_LINK): Move to sed2v2.inp.
 +
 +      * Makefile.in (LD, YMF_PASS_LDFLAGS): Set with configure, not cpp.
 +      (GNULIB_VAR): Remove.
 +      (LIBES): Use LIB_GCC instead of GNULIB_VAR.
 +
 +      * m/ibms390x.h (LINKER):
 +      * m/macppc.h (LINKER) [GNU_LINUX]:
 +      * s/aix4-2.h (ORDINARY_LINK):
 +      * s/cygwin.h (LINKER):
 +      * s/darwin.h (ORDINARY_LINK):
 +      * s/gnu.h (ORDINARY_LINK):
 +      * s/netbsd.h (LINKER):
 +      * s/usg5-4.h (ORDINARY_LINK):
 +      Move to configure.
 +
 +      * s/aix4-2.h (LINKER): Remove; this file sets ORDINARY_LINK.
 +
 +2010-05-18  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * character.c (Fstring, Funibyte_string): Use SAFE_ALLOCA to
 +      prevent stack overflow if number of arguments is too large
 +      (Bug#6214).
 +
 +2010-05-18  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * charset.c (load_charset_map_from_file): Don't call close after fclose.
 +
 +2010-05-18  Glenn Morris  <rgm@gnu.org>
 +
 +      * s/gnu-linux.h: Combine two conditionals.
 +
 +      * Makefile.in (otherobj): Include $(VMLIMIT_OBJ) separately from
 +      $(POST_ALLOC_OBJ).
 +
 +      * Makefile.in (RALLOC_OBJ): New, set by configure.
 +      (rallocobj): Replace with the previous variable.
 +      (otherobj): Use $RALLOC_OBJ.
 +
 +      * s/gnu.h (REL_ALLOC) [DOUG_LEA_MALLOC]:
 +      * s/gnu-linux.h (REL_ALLOC) [DOUG_LEA_MALLOC]: Move undef to configure.
 +
 +      * Makefile.in (GMALLOC_OBJ, VMLIMIT_OBJ): New, set by configure.
 +      (gmallocobj, vmlimitobj): Replace with previous two variables.
 +      (otherobj): Use $GMALLOC_OBJ, $VMLIMIT_OBJ.
 +
 +2010-05-17  Glenn Morris  <rgm@gnu.org>
 +
 +      * Makefile.in (OLDXMENU_DEPS): New, set by configure.
 +      (stamp-oldxmenu): Use $OLDXMENU_DEPS.
 +
 +2010-05-16  Glenn Morris  <rgm@gnu.org>
 +
 +      * Makefile.in (${ns_appbindir}Emacs, ns-app): Always define these rules.
 +
 +      * Makefile.in (clean): Get rid of HAVE_NS conditional.
 +
 +      * Makefile.in (ns_appdir, ns_appbindir): Now configure adds the
 +      trailing "/".
 +
 +      * Makefile.in (TEMACS_LDFLAGS2): New, set by configure.
 +      (temacs${EXEEXT}): Combine the NS_IMPL_GNUSTEP case with the default.
 +
 +      * Makefile.in (GNUSTEP_SYSTEM_LIBRARIES): Remove, unused.
 +      (NS_IMPL_GNUSTEP_TEMACS_LDFLAGS): New, set by configure.
 +      (LD) [NS_IMPL_GNUSTEP]: Set to $(CC) -rdynamic.
 +      (temacs${EXEEXT}): Remove $LOCALCPP, never defined or referenced.
 +      Make most of the NS_IMPL_GNUSTEP case the same as the default case.
 +
 +      * Makefile.in (temacs${EXEEXT}) [!NS_IMPL_GNUSTEP]:
 +      Remove ${STARTFLAGS}, nothing ever sets it.
 +
 +2010-05-16  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * m/ia64.h (UNEXEC): Remove, set in s/*.h.
 +
 +2010-05-16  Glenn Morris  <rgm@gnu.org>
 +
 +      * Makefile.in (LIBX_BASE): Always define.
 +
 +      * Makefile.in (LIBX_OTHER): Move out of cpp section.
 +
 +      * Makefile.in (LIBXT): Always define.
 +
 +2010-05-15  Glenn Morris  <rgm@gnu.org>
 +
 +      * Makefile.in (OLDXMENU, LIBXMENU, LIBX_OTHER): Always define.
 +
 +      * Makefile.in (FONT_DRIVERS): Remove, replace with $FONT_OBJ.
 +      (obj, SOME_MACHINE_OBJECTS): Use $FONT_OBJ.
 +
 +2010-05-15  Ken Raeburn  <raeburn@raeburn.org>
 +
 +      * lisp.h (XFLOAT_DATA): Use "0?x:x" to generate an rvalue.  (Bug#5916)
 +      (LISP_MAKE_RVALUE) [!USE_LISP_UNION_TYPE && !__GNUC__]: Likewise.
 +
 +      * emacs.c (main): Initialize initial-environment and
 +      process-environment before generating from env, not after.
 +
 +      Handle --version reasonably in CANNOT_DUMP configuration.
 +      * emacs.c (emacs_version, emacs_copyright): New string variables.
 +      (Vemacs_version, Vemacs_copyright): New Lisp_Object variables.
 +      (syms_of_emacs): Defvar them, and initialize them from the C
 +      string variables.
 +      (main): If initialization hasn't been done, print initial version
 +      info from the C strings, instead of starting an interactive session.
 +
 +2010-05-15  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * bidi.c (bidi_paragraph_init): Don't leave alone garbage values
 +      of bidi_it->paragraph_dir.  Call bidi_initialize if needed.
 +      (bidi_paragraph_init): Remove redundant assertion that we are at
 +      the beginning of a line after call to bidi_find_paragraph_start.
 +
 +      * xdisp.c (Fcurrent_bidi_paragraph_direction): New function.
 +      (syms_of_xdisp): Defsubr it.
 +
 +      * cmds.c (Fforward_char, Fbackward_char): Doc fix.
 +
 +      * Makefile.in: Fix MSDOS-related comments.
 +
 +2010-05-15  Glenn Morris  <rgm@gnu.org>
 +
 +      * Makefile.in (OLDXMENU_TARGET): New, set by configure.
 +      (really-lwlib, really-oldXMenu): Always define.
 +      ($OLDXMENU): Depend on $OLDXMENU_TARGET.
 +
 +      * Makefile.in: Simplify cpp conditional.
 +
 +      * Makefile.in (${ns_appdir}): Simplify using umask.
 +
 +      * Makefile.in (${ns_appdir}): Remove references to CVS-related files.
 +
 +2010-05-14  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * eval.c (specbind): Remove left-over duplicate test.
 +      Disallow let-binding frame-local vars.  Add comment.
 +
 +2010-05-14  Eli Zaretskii  <eliz@gnu.org>
 +
 +      Make the cache of bidi iterator states dynamically allocated.
 +      * bidi.c (bidi_cache_shrink): New function.
 +      (bidi_init_it): Call it.
 +      (bidi_cache_iterator_state): Enlarge the cache if needed.
 +
 +      * bidi.c (bidi_move_to_visually_next): Rename from
 +      bidi_get_next_char_visually.  All callers changed.
 +
 +2010-05-14  Kenichi Handa  <handa@m17n.org>
 +
 +      * dispextern.h (struct composition_it): New member reversed_p.
 +
 +      * composite.c (composition_compute_stop_pos): Search backward if
 +      ENDPOS < CHARPOS.
 +      (composition_reseat_it): Handle the case that ENDPOS < CHARPOS.
 +      Set CMP_IT->reversed_p.
 +      (composition_update_it): Pay attention to CMP_IT->reversed_p.
 +
 +      * xdisp.c (set_iterator_to_next):
 +      Call composition_compute_stop_pos with negative ENDPOS if we are
 +      scanning backward.  Call composition_compute_stop_pos if scan
 +      direction is changed.
 +      (next_element_from_buffer): Call composition_compute_stop_pos with
 +      negative ENDPOS if we are scanning backward.
 +      (next_element_from_composition): Pay attention to
 +      IT->cmp_it.reversed_p.
 +
 +2010-05-14  Kenichi Handa  <handa@m17n.org>
 +
 +      * font.c (font_range): Return the range for the font found at first.
 +
 +2010-05-14  Glenn Morris  <rgm@gnu.org>
 +
 +      * Makefile.in (ns_appdir, ns_appbindir, ns_appsrc): Always define.
 +
 +      * Makefile.in (mktime, X11, register): Move undefs to configure.
 +
 +      * Makefile.in (MSDOS_OBJ): Default to empty, let msdos scripts set it.
 +      (MSDOS_X_OBJ): New variable.
 +      (MSDOS_SUPPORT_REAL): New constant.
 +      (MSDOS_SUPPORT): Set as a variable, not with cpp.
 +      (obj): Use MSDOS_X_OBJ.
 +      (lisp): Use MSDOS_SUPPORT as a variable.
 +
 +      * Makefile.in (REAL_MOUSE_SUPPORT): New constant.
 +      (GPM_MOUSE_SUPPORT): Now it's a constant.
 +      (MOUSE_SUPPORT, TOOLTIP_SUPPORT, WINDOW_SUPPORT): Set with configure,
 +      not cpp.
 +
 +      * Makefile.in (@NS_IMPL_GNUSTEP_INC@): Use in place of #ifdef.
 +      (ns_appresdir): Remove, unused.
 +
 +      * Makefile.in (SHELL): Move outside cpp section.
 +
 +      * s/netbsd.h (AMPERSAND_FULL_NAME): Remove (defined in AH_BOTTOM).
 +
 +2010-05-13  Glenn Morris  <rgm@gnu.org>
 +
 +      * Makefile.in (FONT_DRIVERS): Place with other HAVE_X_WINDOWS stuff.
 +      (TOOLTIP_SUPPORT): Place with other HAVE_WINDOW_SYSTEM stuff.
 +
 +      * Makefile.in (FONT_DRIVERS): If HAVE_X_WINDOWS is defined,
 +      HAVE_WINDOW_SYSTEM must be too.
 +
 +      * Makefile.in (WINNT_SUPPORT): Remove, nt build does not use this file.
 +      (lisp): Remove WINNT_SUPPORT.
 +
 +      * Makefile.in (OLDXMENU, LIBXMENU) [!HAVE_MENUS]:
 +      Let configure set these variables (to empty) in this case as well.
 +
 +      * Makefile.in (LD_SWITCH_X_SITE): Define as a variable, not via cpp.
 +      (LIBX_BASE): Use $LD_SWITCH_X_SITE.
 +
 +      * Makefile.in (C_SWITCH_X_SYSTEM, C_SWITCH_X_SITE, LIB_STANDARD)
 +      (LIB_MATH, FONTCONFIG_CFLAGS, FONTCONFIG_LIBS, FREETYPE_CFLAGS)
 +      (FREETYPE_LIBS, LIBOTF_CFLAGS, LIBOTF_LIBS, M17N_FLT_CFLAGS)
 +      (M17N_FLT_LIBS, GNU_OBJC_CFLAGS, GNUSTEP_SYSTEM_LIBRARIES, LIBGPM)
 +      (LIBRESOLV, UNEXEC_OBJ): For clarity, define variables to hold
 +      the values output by configure.
 +      (ALL_CFLAGS, obj, LIBES, temacs${EXEEXT}): Use the above variables.
 +
 +2010-05-12  Glenn Morris  <rgm@gnu.org>
 +
 +      * Makefile.in (YMF_PASS_LDFLAGS, LD, LINKER): Simplify the logic.
 +      (LINKER_WAS_SPECIFIED): Remove.
 +
 +      * Makefile.in (LIB_GCC): Set using configure, not cpp.
 +      (GNULIB_VAR) [!ORDINARY_LINK]: Always set to $LIB_GCC.
 +      * m/arm.h (LIB_GCC) [GNU_LINUX]:
 +      * s/cygwin.h (LIB_GCC):
 +      * s/freebsd.h (LIB_GCC):
 +      * s/gnu-linux.h (LIB_GCC):
 +      * s/msdos.h (LIB_GCC):
 +      * s/netbsd.h (LIB_GCC):
 +      Move to configure.
 +
 +2010-05-11  Karel Klíč  <kklic@redhat.com>
 +
 +      * ftfont.c: Fix incorrect parentheses of #if condition for
 +      definining M17N_FLT_USE_NEW_FEATURE.
 +
 +2010-05-11  Glenn Morris  <rgm@gnu.org>
 +
 +      * Makefile.in (LIBS_SYSTEM) [MSDOS]: Do not reset.
 +      * s/msdos.h (MSDOS_LIBS_SYSTEM): Remove.
 +
 +2010-05-10  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * xdisp.c (init_iterator): Don't turn on bidi reordering in
 +      unibyte buffers.  See
 +      http://lists.gnu.org/archive/html/emacs-devel/2010-05/msg00263.html.
 +
 +2010-05-10  Glenn Morris  <rgm@gnu.org>
 +
 +      * Makefile.in (LIBS_SYSTEM): Set using configure, not cpp.
 +      (LIBS_SYSTEM) [MSDOS]: Reset with MSDOS_LIBS_SYSTEM.
 +      (LIBES): Use LIBS_SYSTEM as a variable.
 +      * s/msdos.h (LIBS_SYSTEM): Rename to MSDOS_LIBS_SYSTEM.  Always define.
 +      * s/aix4-2.h (LIBS_SYSTEM):
 +      * s/freebsd.h (LIBS_SYSTEM):
 +      * s/hpux10-20.h (LIBS_SYSTEM):
 +      * s/sol2-6.h (LIBS_SYSTEM):
 +      * s/unixware.h (LIBS_SYSTEM):
 +      Move to configure.
 +
 +      * s/aix4-2.h (MAIL_USE_LOCKF):
 +      * s/bsd-common.h (MAIL_USE_FLOCK):
 +      * s/darwin.h (MAIL_USE_FLOCK):
 +      * s/gnu-linux.h (MAIL_USE_FLOCK):
 +      * s/irix6-5.h (MAIL_USE_FLOCK):
 +      * s/template.h (MAIL_USE_FLOCK):
 +      Move to configure.
 +
 +2010-05-08  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * Version 23.2 released.
 +
 +2010-05-08  Andreas Schwab  <schwab@linux-m68k.org>
 +
 +      * composite.c (autocmp_chars): Save point as marker before calling
 +      auto-composition-function (Bug#5984).
 +
 +      * lisp.h (restore_point_unwind): Add prototype.
 +
 +      * fileio.c (restore_point_unwind): Remove static attribute.
 +
 +2010-05-08  Kenichi Handa  <handa@m17n.org>
 +
 +      * ftfont.c (M17N_FLT_USE_NEW_FEATURE): Define it if we can use the
 +      new feature of libotf and m17n-flt.
 +      (ftfont_check_otf) [M17N_FLT_USE_NEW_FEATURE]:
 +      Call OTF_check_features even if no specific feature is given.
 +      (PACK_OTF_TAG) [M17N_FLT_USE_NEW_FEATURE]: New macro.
 +      (ftfont_drive_otf) [M17N_FLT_USE_NEW_FEATURE]: Handle the case
 +      that OUT is NULL.  Use OTF_drive_gsub_with_log and
 +      OTF_drive_gpos_with_log instead of OTF_drive_gsub and
 +      OTF_drive_gpos.
 +      (ftfont_try_otf) [M17N_FLT_USE_NEW_FEATURE]: New function.
 +      (ftfont_shape_by_flt) [M17N_FLT_USE_NEW_FEATURE]:
 +      Setup mflt_enable_new_feature and mflt_try_otf.
 +
 +2010-05-08  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * xsettings.c (Ftool_bar_get_system_style): Correct comment.
 +
 +      * gtkutil.c (xg_pack_tool_bar): Change show_all to show for handle
 +      box and toolbar (Bug #6139).
 +      (xg_create_tool_bar): Remove comment (Bug #6139).
 +      (xg_make_tool_item): Remove gtk_widget_show_all (Bug #6139).
 +      (xg_show_toolbar_item): Add gtk_widget_show for weventbox (Bug #6139).
 +
 +2010-05-08  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * makefile.w32-in ($(BLD)/eval.$(O), $(BLD)/w32fns.$(O)):
 +      Update dependencies.
 +
 +2010-05-08  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * fringe.c (update_window_fringes): Set up truncation bitmaps for
 +      R2L lines.
 +
 +2010-05-08  Glenn Morris  <rgm@gnu.org>
 +
 +      * Makefile.in (THIS_IS_MAKEFILE): Remove, unused.
 +
 +      * Makefile.in (LIBS_TERMCAP): Set with configure, not cpp.
 +      (TERMCAP_OBJ): New, set by configure, replacing termcapobj.
 +      (termcapobj): Replace with TERMCAP_OBJ.
 +      (otherobj): Use $TERMCAP_OBJ instead of $termcapobj.
 +      (LIBES): Use LIBS_TERMCAP as a variable.
 +
 +      * s/freebsd.h (osreldate.h): No longer include, since this file
 +      does not use __FreeBSD_version any more.
 +
 +      * s/aix4-2.h (TERMINFO):
 +      * s/cygwin.h (TERMINFO):
 +      * s/darwin.h (TERMINFO, LIBS_TERMCAP) [HAVE_LIBNCURSES]:
 +      * s/freebsd.h (TERMINFO, LIBS_TERMCAP):
 +      * s/gnu-linux.h (TERMINFO, LIBS_TERMCAP) [HAVE_LIBNCURSES]:
 +      * s/gnu.h (TERMINFO, LIBS_TERMCAP) [HAVE_LIBNCURSES]:
 +      * s/hpux10-20.h (TERMINFO, LIBS_TERMCAP):
 +      * s/irix6-5.h (TERMINFO):
 +      * s/netbsd.h (LIBS_TERMCAP):
 +      * s/openbsd.h (TERMINFO, LIBS_TERMCAP):
 +      * s/sol2-6.h (LIBS_TERMCAP) [!TERMINFO]:
 +      * s/usg5-4.h (TERMINFO):
 +      Move to configure.
 +
 +2010-05-07  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * eval.c (unbind_to): Don't unbind a local binding into the global
 +      binding when the local binding disappeared.  Inversely, don't unbind
 +      a global binding into a newly created local binding.
 +      * data.c (set_internal): Make its `buf' arg into a `where' arg so we
 +      can specify the frame to use, when applicable.  Adjust callers.
 +
 +2010-05-07  Vincent Belaïche  <vincent.belaiche@gmail.com>
 +            Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * floatfns.c (Fisnan, Fcopysign, Ffrexp, Fldexp): New functions.
 +
 +2010-05-07  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * w32fns.c: Include w32.h.
 +      (Fw32_shell_execute): Decode the error message before passing it
 +      to `error'.  (Bug#6126)
 +
 +      * msdos.c (dos_set_window_size):
 +      * w16select.c (Fx_selection_exists_p): Use `Fsymbol_value (foo)'
 +      instead of `XSYMBOL (foo)->value'.
 +
 +2010-05-07  Eli Zaretskii  <eliz@gnu.org>
 +
 +      Fix the MS-DOS build, broken by autoconfiscation.
 +
 +      * Makefile.in: Don't use Make-style comments past the "start of
 +      cpp stuff" line.
 +      (MSDOS_OBJ): Remove xmenu.o (it is now defined by XMENU_OBJ).
 +
 +      * s/msdos.h (UNEXEC): Don't define (@unexec@ in Makefile.in is
 +      edited directly by msdos/sed1v2.inp).
 +
 +2010-05-07  Glenn Morris  <rgm@gnu.org>
 +
 +      * Makefile.in (LD_SWITCH_SYSTEM): Set with configure, not cpp.
 +      (LD_SWITCH_SYSTEM_EXTRA): New variable, set by configure.
 +      (TEMACS_LDFLAGS): Use $LD_SWITCH_SYSTEM and $LD_SWITCH_SYSTEM_EXTRA,
 +      move out of cpp section.
 +      * s/freebsd.h (LD_SWITCH_SYSTEM):
 +      * s/gnu-linux.h (LD_SWITCH_SYSTEM):
 +      * s/netbsd.h (LD_SWITCH_SYSTEM):
 +      * s/openbsd.h (LD_SWITCH_SYSTEM): Move to configure.in.
 +
 +2010-05-07  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      Define LIB_STANDARD and START_FILES using autoconf.
 +      * s/usg5-4.h (LIB_STANDARD):
 +      * s/netbsd.h (START_FILES):
 +      * s/irix6-5.h (LIB_STANDARD):
 +      * s/hpux10-20.h (LIB_STANDARD, START_FILES):
 +      * s/gnu-linux.h (START_FILES, LIB_STANDARD):
 +      * s/freebsd.h (START_FILES):
 +      * s/darwin.h (START_FILES):
 +      * s/cygwin.h (START_FILES):
 +      * s/aix4-2.h (LIB_STANDARD):
 +      * m/ibmrs6000.h (START_FILES): Remove, move logic to configure.in.
 +      * Makefile.in (STARTFILES): Rename to START_FILES, define using
 +      autoconf, not cpp.
 +
 +2010-05-06  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      Remove NEED_BSDTTY and NEED_UNISTD_H.
 +      * s/hpux10-20.h (NEED_BSDTTY): Remove.
 +      * s/aix4-2.h (NEED_UNISTD_H): Remove.
 +      * systty.h: Simplify conditionals for including <sys/bsdtty.h>,
 +      <sys/ptyio.h> and <unistd.h>.
 +
 +      * emacs.c (main): Remove NO_DIR_LIBRARY conditional, unused.
 +
 +      * Makefile.in (STARTFILES): Conditionally define to make the usage clear.
 +      * s/gnu.h (START_FILES): Remove empty definition.
 +
 +2010-05-06  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * xterm.c (x_draw_image_relief): Move declaration of extra to beginning.
 +
 +2010-05-06  Glenn Morris  <rgm@gnu.org>
 +
 +      * Makefile.in (CPP, LN_S): Remove unused variables.
 +
 +2010-05-05  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * syntax.c (Fchar_syntax): Check the arg is a character (bug#6080).
 +
 +2010-05-05  Lawrence Mitchell  <wence@gmx.li>
 +
 +      * m/sparc.h: Fix typo in earlier change.
 +
 +2010-05-04  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      Misc tweaks.
 +      * eval.c (Fdefvaralias): Remove unintended nested if.
 +      (internal_condition_case_2, internal_condition_case_n): Use ANSI type.
 +
 +2010-05-04  Bernhard Herzog  <bh@intevation.de>  (tiny change)
 +
 +      * xsmfns.c (smc_save_yourself_CB): strlen(client_id) => strlen(cwd).
 +
 +2010-05-04  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      Remove BSD_PGRPS.
 +      * s/bsd-common.h (BSD_PGRPS): Remove undef.
 +      * s/gnu-linux.h (BSD_PGRPS): Remove.
 +      * term.c (dissociate_if_controlling_tty):
 +      * sysdep.c (narrow_foreground_group, widen_foreground_group)
 +      (init_sys_modes, reset_sys_modes):
 +      * emacs.c (main):
 +      * callproc.c (Fcall_process, child_setup): Remove code depending
 +      on BSD_PGRPS.
 +
 +      Remove POSIX_SIGNALS.
 +      * s/usg5-4.h (POSIX_SIGNALS):
 +      * s/netbsd.h (POSIX_SIGNALS):
 +      * s/msdos.h (POSIX_SIGNALS):
 +      * s/ms-w32.h (POSIX_SIGNALS):
 +      * s/hpux11.h (POSIX_SIGNALS):
 +      * s/gnu.h (POSIX_SIGNALS):
 +      * s/gnu-linux.h (POSIX_SIGNALS):
 +      * s/freebsd.h (POSIX_SIGNALS):
 +      * s/darwin.h (POSIX_SIGNALS):
 +      * s/cygwin.h (POSIX_SIGNALS):
 +      * s/aix4-2.h (POSIX_SIGNALS): Remove definition.
 +      * s/unixware.h:
 +      * s/sol2-6.h: Remove comments on POSIX_SIGNALS.
 +      * process.c (create_process):
 +      * syssignal.h:
 +      * sysdep.c (wait_for_termination, init_signals):
 +      * process.c (create_process):
 +      * msdos.c: POSIX_SIGNALS is always defined on all platforms,
 +      remove all code that assumes the contrary.
 +
 +2010-05-04  Glenn Morris  <rgm@gnu.org>
 +
 +      * s/gnu-linux.h (LD_SWITCH_SYSTEM): Use LD_SWITCH_X_SITE_AUX as a shell
 +      variable.
 +      * s/netbsd.h (LD_SWITCH_SYSTEM_tmp): Remove.
 +      (LD_SWITCH_SYSTEM): Use $LD_SWITCH_X_SITE_AUX_RPATH.
 +      * s/openbsd.h (LD_SWITCH_SYSTEM_tmp): Remove.
 +      (LD_SWITCH_SYSTEM): Use $LD_SWITCH_X_SITE_AUX_RPATH instead of
 +      LD_SWITCH_SYSTEM_tmp.
 +      * Makefile.in (LD_SWITCH_X_SITE_AUX, LD_SWITCH_X_SITE_AUX_RPATH):
 +      New variables, set by configure.
 +
 +      * s/aix4-2.h (LD_SWITCH_SYSTEM_TEMACS): Move to configure.in.
 +      * s/darwin.h (HEADERPAD_EXTRA, LIBS_NSGUI): Remove.
 +      (LD_SWITCH_SYSTEM_TEMACS): Move to configure.in.
 +      * Makefile.in (LD_SWITCH_SYSTEM_TEMACS): New variable, set by configure.
 +      (TEMACS_LDFLAGS): Use $LD_SWITCH_SYSTEM_TEMACS.
 +
 +      * s/aix4-2.h (C_SWITCH_SYSTEM):
 +      * m/alpha.h (C_SWITCH_MACHINE):
 +      Move to configure.in.
 +      * Makefile.in (C_SWITCH_MACHINE, C_SWITCH_SYSTEM):
 +      New variables, set by configure.
 +      (ALL_CFLAGS): Use $C_SWITCH_MACHINE and $C_SWITCH_SYSTEM in place of
 +      $c_switch_machine and $c_switch_system.
 +
 +2010-05-04  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * s/hpux10-20.h (LIB_STANDARD): New definition.
 +      * Makefile.in (ORDINARY_LINK): Remove setting LIB_STANDARD based
 +      on it, not used anymore.
 +
 +2010-05-03  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * eval.c (internal_condition_case_n): Rename from
 +      internal_condition_case_2.
 +      (internal_condition_case_2): New function.
 +
 +      * xdisp.c (safe_call): Use internal_condition_case_n.
 +
 +      * fileio.c (Fdelete_file, internal_delete_file): New arg FORCE.
 +      (internal_delete_file, Frename_file): Callers changed.
 +
 +      * buffer.c (Fkill_buffer):
 +      * callproc.c (delete_temp_file): Callers changed (Bug#6070).
 +
 +      * lisp.h: Update prototypes.
 +
 +2010-05-03  Glenn Morris  <rgm@gnu.org>
 +
 +      * Makefile.in (LIBX_EXTRA, LIBX_BASE): New variables.
 +      (LIBXT_OTHER, LIBX_OTHER): New, set by configure.
 +      (LIBXT): Set with configure, not cpp.
 +      (LIBX): Remove.
 +      (LIBES): Replace $LIBX with $LIBX_BASE and $LIBX_OTHER.
 +
 +2010-05-02  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * m/amdx86-64.h (START_FILES, LIB_STANDARD): Remove.
 +      The FreeBSD is not needed, the default works, Solaris version is
 +      not needed, and the remaining case is not supported by configure.
 +
 +2010-05-02  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * xsmfns.c (CHDIR_OPT): New define.
 +      (smc_save_yourself_CB): Add CHDIR_OPT to options to use when
 +      restarting emacs.
 +
 +      * xterm.c (x_connection_closed): Call Fkill_emacs instead of
 +      shut_down_emacs.
 +
 +      * emacs.c (USAGE1): Mention --chdir.
 +      (main): Handle --chdir.
 +      (standard_args): Add --chdir.
 +      (fatal_error_signal): Call Fkill_emacs for SIGTERM and SIGHUP (Bug
 +      #5552).
 +
 +2010-05-01  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      Remove LD_SWITCH_MACHINE.
 +      * Makefile.in (LD_SWITCH_MACHINE): Remove definition, unused.
 +      (TEMACS_LDFLAGS): Do not use LD_SWITCH_MACHINE.
 +
 +      Clean up IRIX code.
 +      * m/iris4d.h (TERMINFO, FIRST_PTY_LETTER): Move definitions ...
 +      * s/irix6-5.h (TERMINFO, FIRST_PTY_LETTER): ... here.
 +
 +      Clean up AIX code.
 +      * m/ibmrs6000.inp: Remove file, unused.
 +      * m/ibmrs6000.h (IBMR2AIX): Remove, unused.
 +      (LD_SWITCH_MACHINE): Rename to LD_SWITCH_SYSTEM_TEMACS, and move
 +      definition ...
 +      * s/aix4-2.h (LD_SWITCH_SYSTEM_TEMACS): ... here.
 +
 +      * sysdep.c (child_setup_tty, init_sys_modes): Remove !IBMR2AIX code,
 +      unused.
 +
 +2010-05-01  Eli Zaretskii  <eliz@gnu.org>
 +
 +      Emulate POSIX_SIGNALS on MS-Windows.
 +
 +      * s/ms-w32.h (POSIX_SIGNALS, struct sigaction, SIG_BLOCK)
 +      (SIG_SETMASK, SIG_UNBLOCK): Define.
 +
 +      * sysdep.c (sys_signal) [WINDOWSNT]: #ifdef away.
 +      (wait_for_termination) [WINDOWSNT]: Move MS-Windows specific code
 +      from non-POSIX_SIGNALS section to POSIX_SIGNALS section.
 +
 +      * w32.c (sigemptyset, sigaddset, sigfillset, sigprocmask):
 +      New stubs.
 +
 +      Miscellaneous fixes of bidi display.
 +
 +      * xdisp.c (find_row_end): New function, refactored from display_line.
 +      (display_line): Use it.
 +      (extend_face_to_end_of_line): In almost-filled rows, extend only
 +      if the row is R2L and not continued.
 +      (display_line): Fix prepending of truncation glyphs to R2L rows.
 +      Preserve overlay and string info in row->end.
 +      (insert_left_trunc_glyphs): Support addition of left truncation
 +      glyphs to R2L rows.
 +      (set_cursor_from_row): Don't place cursor on the vertical border
 +      glyph between adjacent windows.  Fix a crash when a display string
 +      is continued to the next line.  Don't return zero if cursor was
 +      found by `cursor' property of a display string.
 +      (try_cursor_movement): Don't assume that row->end == (row+1)->start,
 +      test for that explicitly.
 +
 +2010-05-01  Glenn Morris  <rgm@gnu.org>
 +
 +      * Makefile.in (gmallocobj, rallocobj, vmlimitobj): Initialize to null,
 +      for clarity.
 +      (OTHER_OBJ): Remove.
 +      (PRE_ALLOC_OBJ, POST_ALLOC_OBJ): New, set by configure.
 +      (otherobj): Use PRE_ALLOC_OBJ, POST_ALLOC_OBJ rather than OTHER_OBJ.
 +
 +2010-05-01  Karel Klíč  <kklic@redhat.com>
 +
 +      * fileio.c (Ffile_selinux_context): Context functions may return null.
 +
 +2010-04-30  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * s/gnu.h (POSIX_SIGNALS, START_FILES): New definitions.
 +
 +2010-04-30  Glenn Morris  <rgm@gnu.org>
 +
 +      * Makefile.in (vmlimitobj) [!SYSTEM_MALLOC]: New variable.  (Bug#6065)
 +      (OTHER_OBJ): Define as a separate variable, for clarity.
 +
 +2010-04-30  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * xsettings.c: include limits.h and update file comment.
 +
 +2010-04-30  Glenn Morris  <rgm@gnu.org>
 +
 +      * Makefile.in (OLDXMENU, LIBXMENU) [HAVE_MENUS]:
 +      Set with configure, not cpp.
 +      (LIBW): Remove, replace with $TOOLKIT_LIBW.
 +
 +      * Makefile.in (mallocobj): Remove.
 +      (otherobj): Simplify using @OTHER_OBJ@.
 +
 +      * Makefile.in (dispnew.o, frame.o, fringe.o, font.o, fontset.o)
 +      (keyboard.o, window.o, xdisp.o, xfaces.o, menu.o):
 +      Don't bother making nsgui.h dependency platform-specific.
 +
 +      * Makefile.in (nsfns.o): Remove duplicate nsgui.h dependency.
 +
 +2010-04-29  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * process.c (read_process_output, exec_sentinel): Don't burp if the
 +      sentinel/filter kills the current buffer (bug#6060).
 +
 +      Fix wrong-docstring problem introduced with hash-consing.  (Bug#6008)
 +      * eval.c (Fautoload): Set doc to a unique number rather than to 0.
 +      Remove unused var `args'.
 +      * lisp.h (XSETCARFASTINT, XSETCDRFASTINT): Remove.
 +      (LOADHIST_ATTACH): Wrap with do...while to avoid surprises for callers.
 +      * doc.c (store_function_docstring): Use XSETCAR.
 +
 +2010-04-28  Glenn Morris  <rgm@gnu.org>
 +
 +      * Makefile.in (BASE_WINDOW_SUPPORT, X_WINDOW_SUPPORT): New variables.
 +      (WINDOW_SUPPORT) [HAVE_WINDOW_SYSTEM]: Use them.
 +
 +      * Makefile.in (CYGWIN_OBJ): Set with configure, not cpp.
 +
 +      * Makefile.in (GPM_MOUSE_SUPPORT): New, set by configure.
 +      (MOUSE_SUPPORT) [!HAVE_MOUSE]: Use $GPM_MOUSE_SUPPORT.
 +
 +      * Makefile.in (FONT_OBJ): New, set by configure.
 +      (FONT_DRIVERS): Use $FONT_OBJ.
 +
 +      * Makefile.in (LIBXMU): Set with configure, not cpp.
 +      * s/aix4-2.h (LIBXMU):
 +      * s/hpux10-20.h (LIBXMU):
 +      Remove definition, now set in configure.
 +
 +      * Makefile.in (NS_OBJ, NS_SUPPORT): Set with configure, not cpp.
 +
 +      * m/amdx86-64.h [i386]: Move this test to configure.in.
 +
 +2010-04-27  Glenn Morris  <rgm@gnu.org>
 +
 +      * Makefile.in (LIBXTR6): Set with configure, not cpp.
 +      * s/unixware.h (NEED_LIBW): Remove definition.
 +
 +      * Makefile.in (LUCID_LIBW, MOTIF_LIBW): Remove, replacing by...
 +      (TOOLKIT_LIBW): New, set by configure.
 +      (@X_TOOLKIT_TYPE@): No longer define it.
 +
 +      * Makefile.in (LIBXP): Remove, since included in MOTIF_LIBW.
 +      (MOTIF_LIBW): Set with configure, not cpp.
 +      * s/aix4-2.h (LIB_MOTIF):
 +      * s/gnu-linux.h (LIB_MOTIF):
 +      * s/unixware.h (LIB_MOTIF): Move to configure.in.
 +
 +2010-04-27  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      Reduce CPP usage.
 +      * Makefile.in (LIB_X11_LIB): Remove, inline in the only user.
 +      (obj): Use autoconf for unexec instead of cpp.
 +      (C_SWITCH_SYSTEM, C_SWITCH_MACHINE, C_SWITCH_X_SITE):
 +      Remove definitions and undefs.  Inline definitions in the only user.
 +      (ALL_CFLAGS): Substitute C_SWITCH_X_SYSTEM using autoconf.
 +
 +2010-04-27  Glenn Morris  <rgm@gnu.org>
 +
 +      * m/amdx86-64.h (START_FILES, LIB_STANDARD): Change the logic around,
 +      since the defaults (set by the system file) are fine in most cases.
 +      [GNU_LINUX, __OpenBSD__, __NetBSD__, __APPLE__]: Remove sections.
 +      * m/ibms390x.h (START_FILES, LIB_STANDARD):
 +      * m/macppc.h (START_FILES, LIB_STANDARD) [GNU_LINUX]:
 +      * m/sparc.h (START_FILES, LIB_STANDARD) [__linux__]:
 +      Remove definitions, since they are set correctly in s/gnu-linux.h.
 +      * s/freebsd.h (START_FILES, LIB_STANDARD):
 +      * s/gnu-linux.h (START_FILES, LIB_STANDARD):
 +      * s/hpux10-20.h (START_FILES):
 +      * s/netbsd.h (START_FILES, LIB_STANDARD, START_FILES_1, END_FILES_1):
 +      Use $CRT_DIR in place of fixed /usr/lib, /lib directories.
 +
 +      * Makefile.in (LIBXP, LUCID_LIBW, WIDGET_OBJ): Set via configure.
 +      (MOTIF_LIBW): Use $LIBXP.
 +      (otherobj): Use $WIDGET_OBJ.
 +
 +2010-04-26  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * Makefile.in (LIBS_MACHINE): Remove, unused.
 +
 +      Use autoconf instead of cpp for LIB_MATH.
 +      * s/darwin.h (LIB_MATH): Do not define here, move to configure.
 +      * s/cygwin.h (LIB_MATH): Likewise.
 +      * Makefile.in (LIB_MATH): Do not define with cpp.
 +      (LIBES): Use autoconf for LIB_MATH.
 +
 +2010-04-26  Kenichi Handa  <handa@m17n.org>
 +
 +      * composite.c (Ffind_composition_internal): Fix the return value
 +      for an automatic composition.
 +
 +2010-04-25  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      Remove all NO_ARG_ARRAY uses.
 +      * fns.c (concat2, concat3, nconc2):
 +      * eval.c (apply1, call1, call2, call3, call4, call5, call6)
 +      (call7): Remove NO_ARG_ARRAY usage, assume it's always true.
 +      * m/xtensa.h (NO_ARG_ARRAY):
 +      * m/template.h (NO_ARG_ARRAY):
 +      * m/sparc.h (NO_ARG_ARRAY):
 +      * m/sh3.h (NO_ARG_ARRAY):
 +      * m/mips.h (NO_ARG_ARRAY):
 +      * m/macppc.h (NO_ARG_ARRAY):
 +      * m/iris4d.h (NO_ARG_ARRAY):
 +      * m/intel386.h (NO_ARG_ARRAY):
 +      * m/ibms390x.h (NO_ARG_ARRAY):
 +      * m/ibms390.h (NO_ARG_ARRAY):
 +      * m/ibmrs6000.h (NO_ARG_ARRAY):
 +      * m/ia64.h (NO_ARG_ARRAY):
 +      * m/hp800.h (NO_ARG_ARRAY):
 +      * m/arm.h (NO_ARG_ARRAY):
 +      * m/amdx86-64.h (NO_ARG_ARRAY):
 +      * m/alpha.h (NO_ARG_ARRAY): Remove definition.
 +
 +2010-04-25  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * xdisp.c (display_line): Don't assume 2nd call to
 +      get_next_display_element cannot return zero.  (Bug#6030)
 +      (iterate_out_of_display_property): New function, body from pop_it.
 +      (pop_it): Use it.
 +
 +2010-04-24  Glenn Morris  <rgm@gnu.org>
 +
 +      * m/amdx86-64.h (START_FILES, LIB_STANDARD) [__OpenBSD__]:
 +      For clarity, revert to using fixed /usr/lib rather than $CRT_DIR.
 +      (START_FILES, LIB_STANDARD) [__FreeBSD__]: Merge into the generic case,
 +      since CRT_DIR defaults to /usr/lib.  Suggested by Dan Nicolaescu.
 +
 +2010-04-24  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * xdisp.c (display_line): Use `reseat' instead of `reseat_1', and
 +      use `get_next_display_element' and `set_iterator_to_next' to
 +      advance to the next character, when looking for the character that
 +      begins the next row.
 +
 +      * .gdbinit: Add a "set Fmake_symbol" line to force GDB to load the
 +      definition of "struct Lisp_Symbol".
 +
 +2010-04-24  Glenn Morris  <rgm@gnu.org>
 +
 +      * Makefile.in (CRT_DIR): New variable, set by configure.
 +      * m/amdx86-64.h, m/ibms390x.h (START_FILES, LIB_STANDARD):
 +      Use $CRT_DIR rather than HAVE_LIB64_DIR.  (Bug#5655)
 +
 +2010-04-23  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * Makefile.in: Remove C_SWITCH_X_MACHINE, unused.
 +
 +      * s/cygwin.h (LIBS_DEBUG): Remove, unused.
 +
 +      Remove redundant flags.
 +      * s/freebsd.h (C_SWITCH_SYSTEM):
 +      * s/hpux10-20.h (C_SWITCH_X_SYSTEM, LD_SWITCH_X_DEFAULT):
 +      * s/netbsd.h (C_SWITCH_SYSTEM):
 +      * s/openbsd.h (LD_SWITCH_X_DEFAULT): Remove, configure takes care
 +      of these.
 +
 +      Simplify m/intel386.h.
 +      * m/intel386.h (CRT0_DUMMIES): Remove, inline value in the only
 +      user: ecrt0.c.
 +      (SOLARIS2): Remove LOAD_AVE_TYPE, LOAD_AVE_CVT, LIBS_MACHINE, unused.
 +      (USG5_4): Move LOAD_AVE_TYPE, LOAD_AVE_CVT, FSCALE definitions to
 +      the only user: s/unixware.h.
 +      * ecrt0.c: Remove #ifndef static.  Inline CRT0_DUMMIES definition
 +      from m/intel386.h.
 +      * s/unixware.h (LOAD_AVE_TYPE, LOAD_AVE_CVT, FSCALE):
 +      Definitions moved here from m/intel386.h.
 +
 +      * m/mips.h: Remove #if 0 code.
 +
 +2010-04-23  Eli Zaretskii  <eliz@gnu.org>
 +
 +      Fix display of composed characters from L2R scripts in bidi buffers.
 +      * xdisp.c (set_iterator_to_next, next_element_from_composition):
 +      After advancing IT past the composition, resync the bidi iterator
 +      with IT's position.  (Bug#5977)
 +
 +2010-04-23  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * Makefile.in (LD_SWITCH_MACHINE_TEMACS): Remove, unused.
 +      (TEMACS_LDFLAGS): Don't use LD_SWITCH_SYSTEM_TEMACS.
 +
 +2010-04-23  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * gtkutil.c: Include xsettings.h for Ftool_bar_get_system_style.
 +
 +2010-04-23  Eli Zaretskii  <eliz@gnu.org>
 +
 +      Support `display' text properties and overlay strings in bidi buffers.
 +      * xdisp.c (pop_it): When the stack is popped after displaying
 +      from a string, bidi-iterate to exit from the text portion covered
 +      by the `display' property or overlay.  (Bug#5988, bug#5920)
 +
 +2010-04-23  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * m/macppc.h (LD_SWITCH_SYSTEM_TEMACS): Remove #undef.
 +      (LD_SWITCH_MACHINE_TEMACS): Remove, configure sets nocombreloc.
 +
 +      * s/netbsd.h (LD_SWITCH_SYSTEM_TEMACS): Remove, configure sets nocombreloc.
 +      * s/openbsd.h (LD_SWITCH_SYSTEM_TEMACS): Remove.
 +
 +      Simplify STARTFILES definition.
 +      * s/hpux10-20.h (START_FILES): Explicitly define here instead of
 +      relying on Makefile.in to define it.
 +      * s/cygwin.h (START_FILES): Likewise.
 +      * Makefile.in (STARTFILES): Remove conditional code, not needed anymore.
 +
 +      Clean up Solaris code.
 +      * s/sol2-6.h (LD_SWITCH_SYSTEM_TEMACS, C_SWITCH_X_SYSTEM)
 +      (LIB_MOTIF): Remove, configure takes care of this.
 +      (NOT_USING_MOTIF): Remove, unused.
 +      * xrdb.c: Remove #if 0-ed #include.
 +      (SYSV): Remove conditional for old SysV.
 +      * sysdep.c (closedir): Remove conditional code for Solaris,
 +      Solaris has closedir.
 +
 +2010-04-22  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * xsettings.c (read_and_apply_settings): Check if current_font is
 +      NULL before strcmp (Bug#6001).
 +
 +2010-04-21  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      Clean up HP-UX files.
 +      * m/hp800.h (NO_REMAP, VIRT_ADDR_VARIES, DATA_SEG_BITS)
 +      (DATA_START, TEXT_START, LOAD_AVE_TYPE, LOAD_AVE_CVT)
 +      (LDAV_SYMBOL, index, rindex): Move definitions only used in HP-UX ...
 +      * s/hpux10-20.h: ... to the only user, here.
 +
 +2010-04-21  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * bidi.c (bidi_find_paragraph_start, bidi_at_paragraph_end): Don't
 +      use buffer-local values of paragraph-start and paragraph-separate.
 +      <paragraph_start_re, paragraph_separate_re>: Rename from
 +      fallback_paragraph_start_re and fallback_paragraph_separate_re.
 +      (Bug#5992)
 +
 +2010-04-21  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * xsettings.c: Qmonospace_font_name, Qtool_bar_style and
 +      current_tool_bar_style are new.
 +      (store_config_changed_event): Rename from store_font_changed_event.
 +      (XSETTINGS_TOOL_BAR_STYLE): New define.
 +      (SEEN_FONT, SEEN_TB_STYLE): New enum values.
 +      (struct xsettings): Add font and tb_style, set xft stuff inside #ifdef
 +      HAVE_XFT.
 +      (something_changedCB): store_font_changed_event is now
 +      store_config_changed_event.
 +      (parse_settings): Rename from parse_xft_settings.
 +      Read non-xft xsettings outside #ifdef HAVE_XFT.
-       (init_xsettings): Renamed from init_xfd_settings.
++      (read_settings): Rename from read_xft_settings.
 +      (apply_xft_settings): Take current settings as parameter.  Do not
 +      call read_(xft)_settings.
 +      (read_and_apply_settings): New function.
 +      (xft_settings_event): Do non-xft stuff out of HAVE_XFT.
 +      Call read_and_apply_settings if there are settings to be read.
-       (buildobj.h): Renamed from $(SRC)/buildobj.h.
++      (init_xsettings): Rename from init_xfd_settings.
 +      Call read_and_apply_settings unconditionally.
 +      (xsettings_initialize): Call init_xsettings.
 +      (Ftool_bar_get_system_style): New function.
 +      (syms_of_xsettings): Define Qmonospace_font_name and
 +      Qtool_bar_style.  Initialize current_tool_bar_style to nil.
 +      defsubr Stool_bar_get_system_style.  Fprovide on
 +      dynamic-setting.
 +      Move misplaced HAVE_GCONF
 +
 +      * xsettings.h (Ftool_bar_get_system_style): Declare.
 +
 +      * xdisp.c: Vtool_bar_style, tool_bar_max_label_size,
 +      Qtext, Qboth, Qboth_horiz are new.
 +      (syms_of_xdisp): Intern Qtext, Qboth, Qboth_horiz, DEFVAR
 +      Vtool_bar_style, tool_bar_max_label_size.
 +
 +      * lisp.h: Extern declare Qtext, Qboth, Qboth_horiz.
 +
 +      * keyboard.c: QClabel is new.
 +      (parse_tool_bar_item): Take out QClabel from tool bar items.
 +      Try to construct a label if ther is no QClabel.
 +      (syms_of_keyboard): Intern :label as QClabel.
 +
 +      * dispextern.h (tool_bar_item_idx): TOOL_BAR_ITEM_LABEL is new.
 +      (Vtool_bar_style, tool_bar_max_label_size, DEFAULT_TOOL_BAR_LABEL_SIZE):
 +      New.
 +
 +      * Makefile.in (SOME_MACHINE_LISP): font-setting.el renamed to
 +      dynamic-setting.el.
 +
 +      * gtkutil.c (xg_tool_bar_menu_proxy): Handle label in tool bar item.
 +      (xg_make_tool_item, xg_show_toolbar_item): New function.
 +      (update_frame_tool_bar): Take label from TOOL_BAR_ITEM_LABEL.
 +      Call xg_make_tool_item to make a tool bar item.
 +      Call xg_show_toolbar_item.  Use wtoolbar instead of x->toolbar_widget.
 +
 +      * xterm.c (x_draw_image_relief): Take Vtool_bar_button_margin
 +      into account for toolbars.
 +
 +2010-04-21  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * data.c (make_blv): Declarations before code (Bug#5993).
 +
 +2010-04-21  Glenn Morris  <rgm@gnu.org>
 +
 +      * Makefile.in (DBUS_OBJ, GTK_OBJ, XMENU_OBJ, XOBJ):
 +      Define using autoconf, not cpp.
 +      (LIBXSM): New variable, set by autoconf.
 +      (LIBXT): Use $LIBXSM.
 +
 +2010-04-21  Dan Nicolaescu  <local_user@dannlt>
 +
 +      Remove NOMULTIPLEJOBS, unused.
 +      * s/template.h (NOMULTIPLEJOBS):
 +      * s/msdos.h (NOMULTIPLEJOBS): Remove, unused.
 +
 +      Simplify LD_SWITCH_SYSTEM_TEMACS usage.
 +      * s/freebsd.h (LD_SWITCH_SYSTEM_TEMACS):
 +      * s/gnu-linux.h (LD_SWITCH_SYSTEM_TEMACS): Remove, configure
 +      detects -znocombreloc and passes it to the linker
 +      * s/hpux10-20.h (LD_SWITCH_SYSTEM_TEMACS): Remove, empty.
 +
 +2010-04-21  Glenn Morris  <rgm@gnu.org>
 +
 +      * Makefile.in (LIBSELINUX_LIBS): Move out of #ifdef.
 +
 +2010-04-21  Karel Klíč  <kklic@redhat.com>
 +
 +      * Makefile.in (LIBSELINUX_LIBS): New.
 +      (LIBES): Add $LIBSELINUX_LIBS.
 +      * eval.c, lisp.h (call7): New function.
 +      * fileio.c [HAVE_LIBSELINUX]: Include selinux headers.
 +      (Ffile_selinux_context, Fset_file_selinux_context):
 +      New functions.
 +      (Fcopy_file): New parameter preserve-selinux-context.
 +      (Frename_file): Preserve selinux context when renaming by copy-file.
 +
 +2010-04-21  Juanma Barranquero  <lekktu@gmail.com>
 +            Eli Zaretskii  <eliz@gnu.org>
 +
 +      Don't depend on cm.c or termcap.c on Windows, use stubs.
 +      * makefile.w32-in (OBJ1): Remove cm.$(O) and termcap.$(O).
 +      ($(BLD)/cm.$(O), $(BLD)/termcap.$(O)): Remove.
 +      * w32console.c (current_tty, cost): New vars; lifted from cm.c.
 +      (evalcost, cmputc, cmcheckmagic, cmcostinit, cmgoto, Wcm_clear)
 +      (sys_tputs, sys_tgetstr): New stubs.
 +      * s/ms-w32.h (chcheckmagic, cmcostinit, cmgoto, cmputc, Wcm_clear)
 +      (tputs, tgetstr): New; define to sys_*.
 +
 +2010-04-20  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * buffer.c (syms_of_buffer) <bidi-display-reordering>: Doc fix.
 +
 +2010-04-20  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * data.c (Fmake_variable_buffer_local, Fmake_local_variable):
 +      Just signal a warning rather than an error when inside a let.
 +      (Fmake_variable_frame_local): Add the same test.
 +
 +      * font.c (syms_of_font): Make the style table vars read-only.
 +
 +      * buffer.h (struct buffer): Remove unused var `direction_reversed'.
 +      * buffer.c (init_buffer_once, syms_of_buffer): Remove its initialization.
 +
 +      * bidi.c (bidi_initialize): Simplify fallback_paragraph_*_re init.
 +
 +2010-04-20  Eli Zaretskii  <eliz@gnu.org>
 +
 +      Fix R2L paragraph display on TTY.
 +
 +      * xdisp.c (unproduce_glyphs): New function.
 +      (display_line): Use it when produced glyphs are discarded from R2L
 +      glyph rows.
 +      (append_composite_glyph): In R2L rows, prepend the glyph rather
 +      than appending it.
 +
 +      * term.c (append_composite_glyph): In R2L rows, prepend the glyph
 +      rather than append it.  Set up the resolved_level and bidi_type
 +      attributes of the appended glyph.
 +      (produce_special_glyphs): Mirror the backslash continuation
 +      character in R2L lines.
 +
 +      Implement display of R2L paragraphs in GUI sessions.
 +
 +      * xdisp.c [HAVE_WINDOW_SYSTEM]: Add prototype for
 +      append_stretch_glyph.
 +      (set_cursor_from_row) <cursor_x>: Remove unused variable.
 +      Fix off-by-one error in computing x at end of text in the row.
 +      (append_stretch_glyph): In reversed row, prepend the glyph rather
 +      than append it.  Set resolved_level and bidi_type of the glyph.
 +      (extend_face_to_end_of_line): If the row is reversed, prepend a
 +      stretch glyph whose width is such that the rightmost glyph will be
 +      drawn at the right margin of the window.  Fix off-by-one error on
 +      TTY frames in testing whether a line needs face extension.
 +      Fix face extension at ZV.  If this is the last glyph row, use
 +      DEFAULT_FACE_ID, to avoid painting the rest of the window with the
 +      region face.
 +      (set_cursor_from_row, display_line):
 +      Use MATRIX_ROW_CONTINUATION_LINE_P instead of testing value of
 +      row->continuation_lines_width.
 +      (next_element_from_buffer): Don't call bidi_paragraph_init if we
 +      are at ZV.  Fixes a crash when reseated to ZV by
 +      try_window_reusing_current_matrix.
 +      (display_and_set_cursor, erase_phys_cursor): Handle negative HPOS,
 +      which happens with R2L glyph rows.  Fixes a crash when inserting a
 +      character at end of an R2L line.
 +      (set_cursor_from_row): Don't be fooled by truncated rows: don't
 +      treat them as having zero-width characters.  Improve comments.
 +      Don't reverse pos_before and pos_after for reversed glyph rows.
 +      Set cursor.x to negative value when the cursor might be on the
 +      left fringe.
 +      (IT_OVERFLOW_NEWLINE_INTO_FRINGE): For R2L lines, consider the
 +      left fringe, not the right one.
 +      (notice_overwritten_cursor, draw_phys_cursor_glyph)
 +      (erase_phys_cursor): For reversed cursor_row, support cursor on
 +      the left fringe.
 +
 +      * fringe.c (update_window_fringes): For R2L rows, swap the bitmaps
 +      of continuation indicators on the fringes.
 +      (draw_fringe_bitmap): For reversed glyph rows, allow cursor on the
 +      left fringe.
 +
 +      * w32term.c (w32_draw_window_cursor): For reversed glyph rows,
 +      draw cursor on the left fringe.
 +
 +      * xterm.c (x_draw_window_cursor): For reversed glyph rows, draw
 +      cursor on the left fringe.
 +
 +      * dispnew.c (update_text_area): Handle reversed desired rows when
 +      the cursor is on the left fringe.
 +      (set_window_cursor_after_update): Limit cursor's hpos by -1 from
 +      below, not by 0, for when the cursor is on the left fringe.
 +
 +2010-04-20  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * gtkutil.c (xg_event_is_for_scrollbar): Check if grabbed
 +      widget is a scrollbar.
 +
 +2010-04-20  Kenichi Handa  <handa@m17n.org>
 +
 +      * charset.c (char_charset): Consider Vcharset_non_preferred_head
 +      only when the arg CHARSET_LIST is nil.
 +
 +2010-04-20  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      Make variable forwarding explicit rather the using special values.
 +      Basically, this makes the structure of buffer-local values and object
 +      forwarding explicit in the type of Lisp_Symbols rather than use
 +      special Lisp_Objects for that.  This tends to lead to slightly more
 +      verbose code, but is more C-like, simpler, and makes it easier to make
 +      sure we handled all cases, among other things by letting the compiler
 +      help us check it.
 +      * lisp.h (enum Lisp_Misc_Type, union Lisp_Misc):
 +      Removing forwarding objects.
 +      (enum Lisp_Fwd_Type, enum symbol_redirect, union Lisp_Fwd): New types.
 +      (struct Lisp_Symbol): Make the various forms of variable-forwarding
 +      explicit rather than hiding them inside Lisp_Object "values".
 +      (XFWDTYPE): New macro.
 +      (XINTFWD, XBOOLFWD, XOBJFWD, XKBOARD_OBJFWD): Redefine.
 +      (XBUFFER_LOCAL_VALUE): Remove.
 +      (SYMBOL_VAL, SYMBOL_ALIAS, SYMBOL_BLV, SYMBOL_FWD, SET_SYMBOL_VAL)
 +      (SET_SYMBOL_ALIAS, SET_SYMBOL_BLV, SET_SYMBOL_FWD): New macros.
 +      (SYMBOL_VALUE, SET_SYMBOL_VALUE): Remove.
 +      (struct Lisp_Intfwd, struct Lisp_Boolfwd, struct Lisp_Objfwd)
 +      (struct Lisp_Buffer_Objfwd, struct Lisp_Kboard_Objfwd):
 +      Remove the Lisp_Misc_* header.
 +      (struct Lisp_Buffer_Local_Value): Redefine.
 +      (BLV_FOUND, SET_BLV_FOUND, BLV_VALUE, SET_BLV_VALUE): New macros.
 +      (struct Lisp_Misc_Any): Add filler to get the right size.
 +      (struct Lisp_Free): Use struct Lisp_Misc_Any rather than struct
 +      Lisp_Intfwd.
 +      (DEFVAR_LISP, DEFVAR_LISP_NOPRO, DEFVAR_BOOL, DEFVAR_INT)
 +      (DEFVAR_KBOARD): Allocate a forwarding object.
 +      * data.c (do_blv_forwarding, store_blv_forwarding): New macros.
 +      (let_shadows_global_binding_p): New function.
 +      (union Lisp_Val_Fwd): New type.
 +      (make_blv): New function.
 +      (swap_in_symval_forwarding, indirect_variable, do_symval_forwarding)
 +      (store_symval_forwarding, swap_in_global_binding, Fboundp)
 +      (swap_in_symval_forwarding, find_symbol_value, Fset)
 +      (let_shadows_buffer_binding_p, set_internal, default_value)
 +      (Fset_default, Fmake_variable_buffer_local, Fmake_local_variable)
 +      (Fkill_local_variable, Fmake_variable_frame_local)
 +      (Flocal_variable_p, Flocal_variable_if_set_p)
 +      (Fvariable_binding_locus):
 +      * xdisp.c (select_frame_for_redisplay):
 +      * lread.c (Fintern, Funintern, init_obarray, defvar_int)
 +      (defvar_bool, defvar_lisp_nopro, defvar_lisp, defvar_kboard):
 +      * frame.c (store_frame_param):
 +      * eval.c (Fdefvaralias, Fuser_variable_p, specbind, unbind_to):
 +      * bytecode.c (Fbyte_code) <varref, varset>: Adapt to the new symbol
 +      value structure.
 +      * buffer.c (PER_BUFFER_SYMBOL): Move from buffer.h.
 +      (clone_per_buffer_values): Only adjust markers into the current buffer.
 +      (reset_buffer_local_variables): PER_BUFFER_IDX is never -2.
 +      (Fbuffer_local_value, set_buffer_internal_1)
 +      (swap_out_buffer_local_variables):
 +      Adapt to the new symbol value structure.
 +      (DEFVAR_PER_BUFFER): Allocate a Lisp_Buffer_Objfwd object.
 +      (defvar_per_buffer): Take a new arg for the fwd object.
 +      (buffer_lisp_local_variables): Return a proper alist (different fix
 +      for bug#4138).
 +      * alloc.c (Fmake_symbol): Use SET_SYMBOL_VAL.
 +      (Fgarbage_collect): Don't handle buffer_defaults specially.
 +      (mark_object): Handle new symbol value structure rather than the old
 +      special Lisp_Misc_* objects.
 +      (gc_sweep) <symbols>: Free also the buffer-local-value objects.
 +      * term.c (set_tty_color_mode):
 +      * bidi.c (bidi_initialize): Don't access the ->value field directly.
 +      * buffer.h (PER_BUFFER_VAR_OFFSET): Don't bother with
 +      a buffer_local_flags.
 +      * print.c (print_object): Get rid of impossible forwarding objects.
 +
 +2010-04-19  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * bidi.c (bidi_get_type, bidi_get_category)
 +      (bidi_at_paragraph_end, bidi_resolve_weak, bidi_resolve_neutral)
 +      (bidi_type_of_next_char, bidi_level_of_next_char):
 +      Declare static.  Use `INLINE' rather than `inline'.
 +
 +2010-04-19  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * dired.c (Ffile_attributes): Fix typo in docstring.
 +
 +2010-04-19  Adrian Robert  <Adrian.B.Robert@gmail.com>
 +
 +      * nsmenu.m (EmacsDialog-runDialogAt:): Declare ret as
 +      NSInteger (Bug#5811).
 +
 +2010-04-19  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
 +
 +      * s/darwin.h (PTY_ITERATION, PTY_NAME_SPRINTF, PTY_TTY_NAME_SPRINTF)
 +      (PTY_OPEN): New defines.  Use openpty (Bug#726, Bug#5819).
 +
 +2010-04-19  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
 +
 +      * frame.h (FRAME_LINE_TO_PIXEL_Y): Add missing parenthesis.
 +
 +2010-04-19  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * xdisp.c (prepare_menu_bars): Don't call ns_set_doc_edited for
 +      terminal frames (Bug#5837).
 +
 +2010-04-19  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * .gdbinit (xsubchartable): New command.
 +
 +2010-04-19  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * xdisp.c (display_line): Don't write beyond the last glyph row in
 +      the desired matrix.  Fixes a crash in "emacs -nw" (bug#5972), see
 +      http://lists.gnu.org/archive/html/emacs-devel/2010-04/msg00075.html
 +      and
 +      http://lists.gnu.org/archive/html/emacs-devel/2010-04/msg00213.html
 +
 +2010-04-18  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * alloc.c (Fpurecopy): Hash-cons if requested.
 +      (syms_of_alloc): Update purify-flag docstring.
 +
 +2010-04-18  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * gtkutil.c (xg_set_geometry): Set size in geometry string also.
 +      (x_wm_set_size_hint): Set USER_POS in hint_flags (Bug#5968).
 +
 +2010-04-17  Eli Zaretskii  <eliz@gnu.org>
 +
 +      Fix a crash when an NSM character is inserted at BEGV.
 +
 +      * bidi.c (bidi_init_it): Fix initialization of bidi_it->prev.
 +      (bidi_resolve_weak): Don't use prev.type_after_w1 if it is
 +      NEUTRAL_B or UNKNOWN_BT.
 +
 +2010-04-16  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * xdisp.c (set_cursor_from_row): Don't consider possibility of
 +      other rows with cursor unless they are different from this row and
 +      this row is part of a continued line.  (Bug#5943)
 +
 +2010-04-16  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * s/freebsd.h: Restore osreldate.h include.
 +      Suggested by Naohiro Aota.
 +
 +2010-04-16  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * xmenu.c (apply_systemfont_to_menu): *childs was incorrectly used.
 +
 +2010-04-16  Ken Brown  <kbrown@cornell.edu>  (tiny change)
 +
 +      * s/cygwin.h: Avoid linking against static libgcc.
 +
 +2010-04-15  Juri Linkov  <juri@jurta.org>
 +
 +      * window.c: Add Qscroll_command.
 +      Remove Vscroll_preserve_screen_position_commands.
 +      (window_scroll_pixel_based, window_scroll_line_based): Check the
 +      `scroll-command' property on the last command instead of searching
 +      the last command in Vscroll_preserve_screen_position_commands.
 +      (syms_of_window): Initialize and staticpro `Qscroll_command'.
 +      Put Qscroll_command property on Qscroll_up and Qscroll_down.
 +      (scroll-preserve-screen-position): Doc fix.
 +      (Vscroll_preserve_screen_position_commands): Remove variable.
 +
 +2010-04-15  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * xdisp.c (message): Do not use NO_ARG_ARRAY.
 +
 +2010-04-14  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      Reduce cpp use in Makefile.in.
 +      * Makefile.in (DBUS_CFLAGS, DBUS_LIBS, GCONF_CFLAGS, GCONF_LIBS)
 +      (LIBSOUND, CFLAGS_SOUND, RSVG_LIBS, RSVG_CFLAGS, INTERVALS_H)
 +      (GETLOADAVG_LIBS, RUN_TEMACS): Move to the autoconf section.
 +      (ORDINARY_LINK): Remove, defined in src/s/gnu.h.
 +      (CRT0_COMPILE): Remove, inline it in the only user.
 +
 +2010-04-14  Juri Linkov  <juri@jurta.org>
 +
 +      * window.c (keys_of_window): Rebind `C-v' from `scroll-up' to
 +      `scroll-up-command' and `M-v' from `scroll-down' to
 +      `scroll-down-command'.
 +
 +2010-04-14  Juri Linkov  <juri@jurta.org>
 +
 +      * window.c (Vscroll_preserve_screen_position_commands): New variable
 +      with the default value as the list of Qscroll_down and Qscroll_up.
 +      (window_scroll_pixel_based, window_scroll_line_based): Search the
 +      last command in the list Vscroll_preserve_screen_position_commands
 +      instead of comparing with Qscroll_up and Qscroll_down.
 +
 +2010-04-13  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * gtkutil.c (xg_set_geometry): Set geometry for PPosition also.
 +      (x_wm_set_size_hint): Dont set position flags, gtk_window_parse_geometry
 +      does that.
 +
 +      * xfns.c (Fx_create_frame, x_create_tip_frame): Set default border width
 +      to zero.
 +
 +2010-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * term.c (init_tty): Move common text outside of #ifdef TERMINFO.
 +
 +      Try to solve the problem of spurious EOF chars in long lines of text
 +      sent to interactive subprocesses.
 +      * sysdep.c (child_setup_tty): Do not enable ICANON any more.
 +      (system_process_attributes): Remove unused var `ttotal'.
 +      * process.c (send_process): Don't bother breaking long line with EOF
 +      chars when talking to ttys any more.
 +      (wait_reading_process_output): Output a warning when called in such
 +      a way that it could block without being interruptible.
 +
 +      Try to detect file modification within the same second.
 +      * buffer.h (struct buffer): New field modtime_size.
 +      * buffer.c (reset_buffer): Initialize it.
 +      * fileio.c (Finsert_file_contents, Fwrite_region): Set it.
 +      (Fverify_visited_file_modtime): Check it.
 +      (Fclear_visited_file_modtime, Fset_visited_file_modtime): Clear it.
 +      (Fset_visited_file_modtime): Set (or clear) it.
 +
 +2010-04-12  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * process.c (status_notify): Remove unused var `ro'.
 +
 +2010-04-12  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * xfns.c (select_visual): Don't call error if XGetVisualInfo returns
 +      more than one visual (Bug#5938).
 +
 +2010-04-12  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * Makefile.in (C_SWITCH_SYSTEM,C_SWITCH_MACHINE,C_SWITCH_X_SITE):
 +      Undefine.
 +
 +2010-04-11  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      Remove C_SWITCH_SYSTEM_TEMACS.
 +      * s/darwin.h (C_SWITCH_SYSTEM_TEMACS): Remove.
 +      (malloc, realloc, free): Use emacs, not temacs for conditional
 +      definition.
 +
 +      * Makefile.in (C_SWITCH_SYSTEM_TEMACS): Remove.
 +      (ALL_CFLAGS): Do not use C_SWITCH_SYSTEM_TEMACS.
 +
 +      Use autoconf, not cpp for some variables.
 +      * Makefile.in (C_SWITCH_SYSTEM, C_SWITCH_MACHINE)
 +      (C_SWITCH_X_SITE): Define using autoconf, not cpp.
 +      (ALL_CFLAGS): Use them as make variables.
 +      (really-lwlib, really-oldXMenu): Do not pass them.
 +
 +2010-04-11  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * xmenu.c (apply_systemfont_to_dialog): New.
 +      (create_and_show_dialog): Call apply_systemfont_to_dialog if HAVE_XFT.
 +
 +2010-04-11  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * process.c (exec_sentinel): Preserve current-buffer.
 +
 +      * process.c (read_process_output): Move the save-current-buffer to
 +      apply to both the filter and the non-filter branches.
 +
 +2010-04-10  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * s/msdos.h (UNEXEC): New definition.
 +
 +2010-04-10  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
 +
 +      * dispextern.h (TRY_WINDOW_CHECK_MARGINS)
 +      (TRY_WINDOW_IGNORE_FONTS_CHANGE): New defines.
 +
 +      * xdisp.c (try_window): Change arg from CHECK_MARGINS to FLAGS.
 +      Don't abort with fonts change if TRY_WINDOW_IGNORE_FONTS_CHANGE is
 +      set in FLAGS.  Callers with non-zero CHECK_MARGINS changed to use
 +      TRY_WINDOW_CHECK_MARGINS.
 +
 +      * xfns.c (Fx_show_tip): Undo last change.  Call try_window with
 +      TRY_WINDOW_IGNORE_FONTS_CHANGE (Bug#2423).  Subtract last glyph's
 +      width only when it is for padding.
 +
 +2010-04-09  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * xfns.c (Fx_show_tip): Call try_window in a loop until
 +      fonts_changed_p is zero (Bug#2423).
 +
 +2010-04-08  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * xdisp.c (set_cursor_from_row): Don't dereference glyphs beyond
 +      the end of TEXT_AREA.  (Bug#5856)
 +
 +2010-04-08  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * xsettings.c (XSETTINGS_FONT_NAME): Move XSETTINGS_FONT_NAME out of
 +      HAVE_GCONF.
 +
 +2010-04-08  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * bidi.c (bidi_resolve_weak): Use prev.type_after_w1, instead of
 +      prev.orig_type, for resolving type of NSM.  (Bug#5858)
 +
 +2010-04-08  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * xsettings.c (current_font, SYSTEM_FONT, XSETTINGS_FONT_NAME): New.
 +      (parse_xft_settings): Also check for XSETTINGS_FONT_NAME and save that
 +      in current_font.
 +      (init_gconf): Read value of SYSTEM_FONT and save it in current_font.
 +      (Ffont_get_system_normal_font, xsettings_get_system_normal_font):
 +      New functions.
 +      (syms_of_xsettings): Initialize current_font.
 +      defsubr Sfont_get_system_normal_font.
 +
 +      * xsettings.h (Ffont_get_system_normal_font)
 +      (xsettings_get_system_normal_font): Declare.
 +
 +      * xfns.c (extern xlwmenu_default_font): Remove.
 +      (Fx_create_frame): Remove setting of xlwmenu_default_font, moved
 +      to xlwmenu.c.
 +
 +      * menu.c (digest_single_submenu): If USE_LUCID and HAVE_XFT, encode
 +      menu items in UTF-8.
 +
 +      * xmenu.c: include xsettings.h and xlwmenu.h if USE_LUCID.
 +      (apply_systemfont_to_menu): New function.
 +      (set_frame_menubar, create_and_show_popup_menu):
 +      Call apply_systemfont_to_menu.
 +
 +2010-04-07  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * frame.h (FRAME_TEXT_LINES_TO_PIXEL_HEIGHT): Don't use
 +      FRAME_LINE_TO_PIXEL_Y.
 +
 +      * xterm.c (x_set_window_size_1): Don't add border_width/height to
 +      pixelwidth/height.
 +
 +2010-04-07  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      Simplify code for HP machines.
 +      * m/hp800.h (LOAD_AVE_TYPE, LOAD_AVE_CVT, NO_REMAP): Do not define
 +      for GNU_LINUX, not needed.
 +      (UNEXEC, NEED_BSDTTY): Move definitions...
 +      * s/hpux10-20.h (UNEXEC, NEED_BSDTTY): ... here.
 +
 +      * m/iris4d.h (UNEXEC): Move definition ...
 +      * s/irix6-5.h (UNEXEC): ... here.
 +
 +2010-04-04  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * xfns.c (set_machine_and_pid_properties): New function.
 +      (Fx_create_frame): Call set_machine_and_pid_properties.
 +
 +2010-04-03  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * bidi.c (bidi_resolve_explicit, bidi_level_of_next_char):
 +      Check bidi_it->bytepos against ZV_BYTE instead of bidi_it->ch against
 +      BIDI_EOB.  Fixes infloop with vertical cursor motion at ZV.
 +
 +      * w32fns.c (x_create_tip_frame): Copy `parms' before we modify it
 +      in this function.  (Bug#5703)
 +
 +2010-04-03  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * nsterm.h: Fix last change.
 +
 +2010-04-03  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * m/intel386.h (NO_REMAP): Move definition ...
 +      * s/msdos.h (NO_REMAP): ... here.
 +
 +      * m/vax.h (CRT0_DUMMIES): Remove, unused.
 +
 +      * ecrt0.c: Remove MSDOS, m68k and __sparc__ conditionals, file not
 +      used on those platforms.
 +
 +2010-04-02  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      Remove extern errno declarations.
 +      * xterm.c:
 +      * xrdb.c:
 +      * w32term.c:
 +      * unexec.c:
 +      * unexaix.c:
 +      * sysdep.c:
 +      * process.c:
 +      * lread.c:
 +      * keyboard.c:
 +      * floatfns.c:
 +      * filelock.c:
 +      * fileio.c:
 +      * emacs.c (main):
 +      * ecrt0.c:
 +      * dispnew.c:
 +      * callproc.c:
 +      * buffer.c: Remove errno extern declarations.
 +      * s/netbsd.h (NEED_ERRNO): Remove.
 +
 +2010-04-01  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      Remove all uses of LIBX11_SYSTEM.
 +      * Makefile.in (LIBX11_SYSTEM): Remove.
 +      * s/msdos.h (LIBX11_SYSTEM): Do not define, define LIBS_SYSTEM
 +      instead.
 +
 +2010-04-01  Eli Zaretskii  <eliz@gnu.org>
 +
 +      Remove support for DJGPP v1.x (bug#5813).
 +
 +      * w16select.c (__dpmi_int): Remove DJGPP v1.x compatibility.
 +      * s/msdos.h:
 +      * unexec.c (make_hdr, copy_text_and_data):
 +      * sysdep.c (wait_for_termination, sys_subshell):
 +      * msdos.c (dos_set_window_size, msdos_set_cursor_shape)
 +      (IT_set_terminal_modes, __write, _rename, gethostname)
 +      (gettimeofday, alarm, fork, kill, dos_ttraw, dos_ttcooked)
 +      (run_msdos_command, abort): Remove DJGPP v1.x code and tests of
 +      the value of __DJGPP__.
 +      (nice, pause, sigsetmask, sigblock): Remove DJGPP v1.x
 +      compatibility code.
 +      * lread.c:
 +      * gmalloc.c (memalign):
 +      * fileio.c (Fcopy_file, check_executable, Ffile_modes):
 +      * emacs.c (main):
 +      * dosfns.c (init_dosfns):
 +      * dired.c (file_name_completion_stat): Remove tests of __DJGPP__.
 +
 +2010-04-01  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * xdisp.c (set_cursor_from_row): Fix cursor positioning when the
 +      string with `cursor' property comes from an `after-string'
 +      overlay.  (Bug#5816)
 +
 +2010-04-01  Glenn Morris  <rgm@gnu.org>
 +
 +      * Makefile.in (LIBTIFF, LIBJPEG, LIBPNG, LIBGIF, LIBXPM, XFT_LIBS):
 +      Define as Makefile variables.
 +      (LIBX): Use above variables rather than directly using autoconf.
 +
 +2010-03-31  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      Clean up BSD_SYSTEM use.
 +      * xterm.c:
 +      * process.c:
 +      * emacs.c: Use HAVE_SYS_IOCTL_H instead of BSD_SYSTEM as a guard
 +      for including <sys/ioctl.h>.
 +      * sysdep.c (wait_without_blocking): Remove BSD_SYSTEM case, this
 +      code is only used for MSDOS.
 +
 +2010-03-31  Juri Linkov  <juri@jurta.org>
 +
 +      * image.c: Add `Qextension_data'.
 +      (syms_of_image): Initialize and staticpro `Qextension_data'.
 +      (Fimage_metadata): Rename from `Fimage_extension_data'.
 +      (gif_load): Put GIF extension data to the property
 +      `Qextension_data'.
 +
 +2010-03-31  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * nsfns.m (ns_set_doc_edited): Remove unused arg OLDVAL.
 +      * nsterm.h: Fix prototype.
 +
 +2010-03-31  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * xdisp.c (highlight_trailing_whitespace): Support highlight of
 +      trailing whitespace in right-to-left rows.
 +
 +2010-03-31  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      Get rid of the direct_output optimizations.
 +      * keyboard.c (nonundocount): Remove extern declaration.
 +      (command_loop_1): Remove brittle optimisation for cheap and
 +      common operations.
 +      * xdisp.c (redisplay_internal): Don't bother checking
 +      redisplay_performed_directly_p any more.
 +      * sysdep.c (init_sys_modes): Don't call direct_output_forward_char
 +      any more.
 +      * dispnew.c (redisplay_performed_directly_p)
 +      (direct_output_for_insert, direct_output_forward_char):
 +      * dispextern.h (redisplay_performed_directly_p)
 +      (direct_output_for_insert, direct_output_forward_char): Remove.
 +      * cmds.c (nonundocount): Make it static.
 +
 +2010-03-31  Bernhard Herzog  <bh@intevation.de>  (tiny change)
 +
 +      * menu.c (Fx_popup_menu): Use last_event_timestamp (Bug#4930).
 +
 +2010-03-31  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * xdisp.c (note_mouse_highlight): Don't do highlight if pointer is
 +      invisible (Bug#5766).
 +
 +2010-03-31  Adrian Robert  <adrian.b.robert@gmail.com>
 +
 +      * xdisp.c (x_consider_frame_title, update_window_cursor):
 +      Remove HAVE_NS conditionals.
 +      (prepare_menu_bars) [HAVE_NS]: Call ns_set_doc_edited.
 +
 +      * nsfns.m (x_implicitly_set_name): If frame-title-format is t, use
 +      filename for the title.
 +      (ns_set_doc_edited): Do nothing if the selected window is a
 +      minibuffer window.
 +
 +      * nsterm.h: Add prototypes for ns_set_name_as_filename and
 +      ns_set_doc_edited.
 +
 +      * nsterm.m: Remove unneeded prototype.
 +
 +2010-03-31  Glenn Morris  <rgm@gnu.org>
 +
 +      * Makefile.in (SOME_MACHINE_OBJECTS): Ensure dbus stuff is always
 +      in the DOC file.  (Bug#5336)
 +
 +2010-03-31  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * xdisp.c (pos_visible_p): Revert 2008-01-25 change (Bug#5730).
 +
 +2010-03-31  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * window.c (keys_of_window): Remove redundant/overridden bindings.
 +
 +2010-03-30  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * xdisp.c (BUFFER_POS_REACHED_P, move_it_in_display_line_to):
 +      Restore original behavior when the iterator is not bidi_p.
 +
 +2010-03-30  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * xdisp.c (syms_of_xdisp): Use intern_c_string instead of intern.
 +
 +2010-03-30  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * bidi.c (bidi_cache_iterator_state): Invalidate the cache if we
 +      are outside the range of cached character positions.
 +
 +2010-03-30  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * makefile.w32-in ($(BLD)/bidi.$(O)): Add dependency on w32gui.h.
 +
 +2010-03-30  Eli Zaretskii  <eliz@gnu.org>
 +
 +      Initial support for bidirectional editing.
 +
 +      * Makefile.in (obj): Include bidi.o.
 +      (bidi.o): New target.
 +
 +      * makefile.w32-in (OBJ1): Add $(BLD)/bidi.$(O).
 +      ($(BLD)/bidi.$(O)): New target.
 +
 +      * bidi.c: New file.
 +
 +      * buffer.h (struct buffer): New members bidi_display_reordering
 +      and bidi_paragraph_direction.
 +
 +      * buffer.c (init_buffer_once): Initialize bidi_display_reordering
 +      and bidi_paragraph_direction.
 +      (syms_of_buffer): Declare Lisp variables bidi-display-reordering
 +      and bidi-paragraph-direction.
 +      (Fbuffer_swap_text): Swap the values of
 +      bidi_display_reordering and bidi_paragraph_direction.
 +
 +      * dispextern.h (BIDI_MAXLEVEL, BIDI_AT_BASE_LEVEL): New macros.
 +      (bidi_type_t, bidi_dir_t): New types.
 +      (bidi_saved_info, bidi_stack, bidi_it): New structures.
 +      (struct it): New members bidi_p, bidi_it, paragraph_embedding,
 +      prev_stop, base_level_stop, and eol_pos.
 +      (bidi_init_it, bidi_get_next_char_visually): New prototypes.
 +      (IT_STACK_SIZE): Enlarge to 5.
 +      (struct glyph_row): New member reversed_p.
 +      <string_buffer_position>: Update prototype.
 +      (PRODUCE_GLYPHS): Set the reversed_p flag in the iterator's
 +      glyph_row if bidi_it.paragraph_dir == R2L.
 +      (struct glyph): New members resolved_level and bidi_type.
 +
 +      * dispnew.c (direct_output_forward_char): Give up if we need bidi
 +      processing or buffer's direction is right-to-left.
 +      (prepare_desired_row): Preserve the reversed_p flag.
 +      (row_equal_p): Compare the reversed_p attributes as well.
 +
 +      * xdisp.c (init_iterator): Initialize it->bidi_p.
 +      Call bidi_init_it and set it->paragraph_embedding from the current
 +      buffer's value of bidi_paragraph_direction.
 +      (reseat_1): Initialize bidi_it.first_elt.
 +      (set_iterator_to_next, next_element_from_buffer): Use the value of
 +      paragraph_embedding to determine the paragraph direction.
 +      (set_iterator_to_next): Under bidi reordering, call
 +      bidi_get_next_char_visually.  Call bidi_paragraph_init if the
 +      new_paragraph flag is set in the bidi iterator.
 +      (next_element_from_buffer): If bidi_it.first_elt is set,
 +      initialize paragraph direction and find the first character to
 +      display in the visual order.  If reseated to a middle of a line,
 +      prime the bidi iterator starting at the line's beginning.
 +      Handle the situation where we overstepped stop_charpos due to
 +      non-linearity of the bidi iteration.  Likewise for when we back up
 +      beyond the previous stop_charpos.  When moving across stop_charpos,
 +      record it in prev_stop.
 +      (display_line): Set row->end and it->start for the next row to the
 +      next character in logical order.  Always extend reversed_p rows to
 +      the end of line, even if they end at ZV.  Copy the reversed_p flag
 +      to the next glyph row.  Keep calling set_cursor_from_row for
 +      bidi-reordered rows even if we already have a possible candidate
 +      for cursor position.  Set row_end after all the row's glyphs have
 +      been produced, by looping over the glyphs.  Record the position
 +      after EOL in it->eol_pos, and use it to set end_pos of the last
 +      row produced for a continued line.
 +      <Qright_to_left, Qleft_to_right>: New variables.
 +      (syms_of_xdisp): Initialize and staticpro them.
 +      (string_buffer_position_lim): New function.
 +      (string_buffer_position): Most of code moved to
 +      string_buffer_position_lim.  Last argument and return value are
 +      now EMACS_INT; all callers changed.
 +      (set_cursor_from_row): Rewritten to support bidirectional text and
 +      reversed glyph rows.
 +      (text_outside_line_unchanged_p, try_window_id):
 +      Disable optimizations if we are reordering bidirectional text and the
 +      paragraph direction can be affected by the change.
 +      (append_glyph, append_composite_glyph)
 +      (produce_image_glyph, append_stretch_glyph): Set the
 +      resolved_level and bidi_type members of each glyph.
 +      (append_glyph): If the glyph row is reversed, prepend the glyph
 +      rather than appending it.
 +      (handle_stop_backwards): New function.
 +      (reseat_1, pop_it, push_it): Set prev_stop and base_level_stop.
 +      (reseat): call handle_stop_backwards to recompute prev_stop and
 +      base_level_stop for the new position.
 +      (handle_invisible_prop): Under bidi iteration, skip invisible text
 +      using bidi_get_next_char_visually.  If we are `reseat'ed, init the
 +      paragraph direction.  Update IT->prev_stop after skipping
 +      invisible text.
 +      (move_it_in_display_line_to): New variables prev_method
 +      and prev_pos.  Compare for strict equality in
 +      BUFFER_POS_REACHED_P.
 +      (try_cursor_movement): Examine all the candidate rows that occlude
 +      point, to return the best match.  If rows are bidi-reordered
 +      and point moved backwards, back up to the row that is not a
 +      continuation line, and start looking for a suitable row from
 +      there.
 +
 +      * term.c (append_glyph): Reverse glyphs by pre-pending them,
 +      rather than appending, if the glyph_row's reversed_p flag is set.
 +      Set the resolved_level and bidi_type members of each glyph.
 +
 +      * .gdbinit (pbiditype): New command.
 +      (pgx): Use it to display bidi level and type of the glyph.
 +      (pitx): Display some bidi information about the iterator.
 +      (prowlims, pmtxrows): New commands.
 +
 +2010-03-30  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      Remove all uses of C_DEBUG_SWITCH and LIBS_DEBUG.
 +      * s/usg5-4.h (LIBS_DEBUG):
 +      * s/irix6-5.h (C_DEBUG_SWITCH):
 +      * s/gnu-linux.h (LIBS_DEBUG):
 +      * s/darwin.h (LIBS_DEBUG):
 +      * s/bsd-common.h (LIBS_DEBUG):
 +      * s/aix4-2.h (LIBS_DEBUG, C_DEBUG_SWITCH):
 +      * m/iris4d.h (LIBS_DEBUG):
 +      * m/hp800.h (LIBS_DEBUG): Remove definitions.
 +
 +      * Makefile.in (LIBES): Remove reference to LIBS_DEBUG.
 +      (LIBS_DEBUG): Remove definition.
 +
 +2010-03-27  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * process.c (Fmake_network_process): Don't apply Bug#5173 fix for
 +      Windows.
 +
 +2010-03-25  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
 +
 +      * process.c (Fmake_network_process): Don't call turn_on_atimers around
 +      `connect' (Bug#5723).
 +
 +2010-03-25  Helmut Eller  <eller.helmut@gmail.com>
 +
 +      * process.c (Fmake_network_process): Call `select' for interrupted
 +      `connect' rather than creating new socket (Bug#5173).
 +
 +2010-03-24  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * frame.c (x_get_arg): Handle RES_TYPE_BOOLEAN_NUMBER (bug #5736).
 +
 +      * xfns.c (Fx_create_frame): Make menuBar a RES_TYPE_BOOLEAN_NUMBER.
 +
 +      * dispextern.h (resource_types): RES_TYPE_BOOLEAN_NUMBER is new.
 +
 +2010-03-24  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
 +
 +      * xfns.c (Fx_create_frame) [USE_LUCID]: Add BLOCK_INPUT around
 +      XLoadQueryFont.
 +
 +2010-03-24  Kenichi Handa  <handa@m17n.org>
 +
 +      * coding.c (decode_coding_ccl): Fix previous change for the
 +      multibyte case.
 +      (encode_coding_ccl): Don't setup ccl program here.  Fix for the
 +      case that the output buffer is fullfilled.
 +      (encode_coding): Setup ccl program here.
 +
 +2010-03-23  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * s/gnu-linux.h (LIBS_SYSTEM): Remove, same as default.
 +
 +      Simplify LIBS_MACHINE definitions.
 +      * m/hp800.h (LIBS_MACHINE): Remove, same as default.
 +      * m/iris4d.h (LIBS_MACHINE): Likewise.
 +      * m/ibmrs6000.h (LIBS_MACHINE): Rename to LIBS_SYSTEM and move ...
 +      * s/aix4-2.h (LIBS_SYSTEM): ... here.
 +      * s/netbsd.h: Remove commented out code.
 +
 +2010-03-22  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      Remove dead code dealing with POSIX_SIGNALS.
 +      * atimer.c (set_alarm): Remove dead code, all USG systems define
 +      POSIX_SIGNALS.
 +      * data.c (arith_error): Likewise.
 +      * keyboard.c (input_available_signal, handle_user_signal)
 +      (interrupt_signal): Likewise.
 +      * process.c (sigchld_handler): Likewise.
 +      (create_process): Remove if 0 code.  Remove HPUX conditional when
 +      !defined (POSIX_SIGNALS), it cannot be true.
 +      * syssignal.h: Remove USG5_4 and USG conditionals when
 +      !POSIX_SIGNALS, they cannot be true.
 +
 +      * keyboard.c (Fset_input_interrupt_mode): Remove code depending on
 +      NO_SOCK_SIGIO, not used anymore.
 +
 +2010-03-21  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * m/vax.h (BSD_SYSTEM, BSD4_2): Remove conditionals, we only
 +      support vax on BSDs.
 +
 +      * m/ibmrs6000.h (ORDINARY_LINK): Move definition ...
 +      * s/aix4-2.h (ORDINARY_LINK): ... here.
 +
 +2010-03-21  Andreas Schwab  <schwab@linux-m68k.org>
 +
 +      * Makefile.in (abs_builddir): Define.
 +      (bootstrap_exe): Use it.
 +      (VPATH): Use $(srcdir) instead of @srcdir@.
 +
 +2010-03-20  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * Makefile.in (bootstrap_exe): Use an absolute name.
 +
 +2010-03-20  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      Remove support for old GNU/Linux using libc version 5.
 +      * m/alpha.h (LINUX_SBRK_BUG): Remove definition.
 +      * emacs.c (main): Remove code depending on LINUX_SBRK_BUG.
 +
 +      Consolidate redundant definitions in s/bsd-common.h.
 +      * s/bsd-common.h (BSD4_2, TABDLY, TAB3, HAVE_TERMIOS, NO_TERMIO)
 +      (LIBS_DEBUG, SYSV_SYSTEM_DIR, UNEXEC, NARROWPROTO, BSD_PGRPS)
 +      (LDAV_SYMBOL, KERNEL_FILE): Define (or undefine) here instead of
 +      doing it in all files that include this one.
 +      * s/gnu.h (BSD4_2, TABDLY, TAB3, HAVE_TERMIOS, NO_TERMIO)
 +      (LIBS_DEBUG, SYSV_SYSTEM_DIR, UNEXEC, NARROWPROTO, BSD_PGRPS)
 +      (LDAV_SYMBOL, KERNEL_FILE): Remove.
 +      * s/freebsd.h (BSD4_2, TABDLY, TAB3, HAVE_TERMIOS, NO_TERMIO)
 +      (LIBS_DEBUG, SYSV_SYSTEM_DIR, UNEXEC, NARROWPROTO, BSD_PGRPS)
 +      (LDAV_SYMBOL, KERNEL_FILE): Remove.
 +      * s/netbsd.h (BSD4_2, TABDLY, TAB3, HAVE_TERMIOS, NO_TERMIO)
 +      (LIBS_DEBUG, SYSV_SYSTEM_DIR, UNEXEC, NARROWPROTO, BSD_PGRPS)
 +      (LDAV_SYMBOL, KERNEL_FILE): Remove.
 +
 +      Consolidate redundant definitions.
 +      * s/usg5-4.h (sigsetmask, PTY_TTY_NAME_SPRINTF): Do not define,
 +      it's undefined in all files that include this one.
 +      (POSIX_SIGNALS): Define here instead of doing it in all files that
 +      include this one.
 +      * s/irix6-5.h (sigsetmask, PTY_TTY_NAME_SPRINTF): Do not undef.
 +      (POSIX_SIGNALS): Do not define.
 +      * s/sol2-6.h (sigsetmask, PTY_TTY_NAME_SPRINTF): Do not undef.
 +      (POSIX_SIGNALS): Do not define.
 +      * s/unixware.h (sigsetmask, PTY_TTY_NAME_SPRINTF): Do not undef.
 +      (POSIX_SIGNALS): Do not define.
 +
 +      Remove support for old UNIX System V systems.
 +      * s/unixware.h: Add the contents of s/usg-5-4-2.h.
 +      * s/usg-5-4-2.h: Remove.
 +
 +      Remove support for Solaris on PPC and for old versions.
 +      * s/sol2-6.h: Add the contents of s/sol-2.3.h, s/sol-2.4.h, s/sol-2.5.h.
 +      (LD_SWITCH_SYSTEM, USE_MMAP_FOR_BUFFERS): Remove #defines/#undef
 +      that cancel each other.
 +      * s/sol2-3.h:
 +      * s/sol2-4.h:
 +      * s/sol2-5.h: Remove.
 +      * m/ibmrs6000.h: Remove code for USG5_4, this file is only used on AIX.
 +      (NO_REMAP): Remove, unused.
 +      (UNEXEC): Move definition ...
 +      * s/aix4-2.h (UNEXEC): ... here.
 +
 +      * s/openbsd.h: Remove support for non-ELF and for systems that do
 +      not support shared libraries.
 +      * s/netbsd.h:
 +      * s/freebsd.h: Likewise.
 +
 +2010-03-20  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      Remove non-working support for lynxos 3.0.
 +      * s/lynxos.h: Remove file.
 +
 +      * unexec.c (unexec, adjust_lnnoptrs): Do not depend on
 +      COFF_BSD_SYMBOLS, nothing defines it anymore.
 +
 +2010-03-20  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      Remove obsolete uses of HAVE_SHM.
 +      * emacs.c (standard_args):
 +      (Fdump_emacs):
 +      (syms_of_emacs): Remove code depending on HAVE_SHM.
 +
 +      * alloc.c: Remove HAVE_SHM dependent definition.
 +
 +      * Makefile.in (RUN_TEMACS): Do not depend on HAVE_SHM.
 +
 +2010-03-18  Glenn Morris  <rgm@gnu.org>
 +
 +      * emacs.c (USAGE4): Hard-code bug address.
 +      (REPORT_EMACS_BUG_ADDRESS, REPORT_EMACS_BUG_PRETEST_ADDRESS): Remove.
 +      (bug_reporting_address): Remove.
 +      (main): Don't call bug_reporting_address.
 +
 +      * Makefile.in (XFT_LIBS, LIBXPM, LIBJPEG, LIBPNG, LIBTIFF, LIBGIF)
 +      (LIBGPM, LIBRESOLV): Set using autoconf rather than cpp.
 +
 +2010-03-15  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * xfns.c (Fx_create_frame):
 +      * frame.c (Vdefault_frame_scroll_bars): Put non-GTK X scroll-bars
 +      on left.
 +
 +2010-03-13  Andreas Politz  <politza@fh-trier.de>  (tiny change)
 +
 +      * editfns.c (Fformat): Account for string precision when computing
 +      field width (Bug#5710).
 +
 +2010-03-12  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * xfns.c (Fx_create_frame): Set default to Qright.
 +
 +      * frame.c (Vdefault_frame_scroll_bars): Set default to Qright for
 +      all window systems.
 +
 +2010-03-12  Eli Zaretskii  <eliz@gnu.org>
 +
 +      These changes remove termcap.c from the build on Posix platforms.
 +      * Makefile.in (termcapobj): Move termcap.o from here...
 +      (MSDOS_OBJ): ...to here.
 +      (termcapobj) [!LIBS_TERMCAP]: Remove specialized value, as it is
 +      now identical to when LIBS_TERMCAP is defined.
 +
 +      * term.c: Remove (ifdef'ed away) inclusion of termcap.h.
 +
 +      * cm.c: Remove (ifdef'ed away) inclusion of termcap.h.
 +
 +      * config.in: Regenerated.  (See top-level ChangeLog.)
 +
 +2010-03-10  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * Branch for 23.2.
 +
 +2010-03-10  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      Cleanup setup of gl_state in various parts of the code.
 +      * syntax.h (SETUP_BUFFER_SYNTAX_TABLE): New macro.
 +      (SETUP_SYNTAX_TABLE, SETUP_SYNTAX_TABLE_FOR_OBJECT):
 +      * syntax.c (find_defun_start, Fchar_syntax, Fmatching_paren)
 +      (skip_chars):
 +      * regex.c (regex_compile): Use it.
 +      (re_compile_pattern): Don't set gl_state.current_syntax_table since
 +      it's now set in regex_compile when/if we need it.
 +
 +2010-03-05  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      Make it possible to C-g in a tight bytecode loop again (bug#5680).
 +      * lisp.h (ELSE_PENDING_SIGNALS): New macro.
 +      (QUIT): Use it to consolidate code and remove redundancy.
 +      * bytecode.c (BYTE_CODE_QUIT): Use it as well.
 +
 +      * regex.c (regex_compile): Setup gl_state as well.
 +
 +      * syntax.c (skip_chars): Setup gl_state (bug#3823).
 +      (in_classes): Use CONSP before XCAR/XCDR.
 +
 +2010-03-03  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * keymap.c (Fwhere_is_internal): Use Fequal to compare
 +      definitions, so that keyboard macros are correctly handled
 +      (Bug#5481).
 +
 +2010-03-02  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * coding.c (decode_coding_emacs_mule): Fixup pointers to buffer
 +      text that could be relocated inside the call to emacs_mule_char.
 +      (emacs_mule_char): Use CODING_DECODE_CHAR instead of DECODE_CHAR.
 +      (CODING_DECODE_CHAR): Add a comment describing its purpose.
 +
 +2010-03-02  Kenichi Handa  <handa@m17n.org>
 +
 +      * character.c (parse_str_as_multibyte): Fix handling of the
 +      multibyte form of raw-bytes.
 +      (str_as_multibyte): Likewise.
 +
 +      * buffer.c (Fset_buffer_multibyte): Fix handling of the multibyte
 +      form of raw-bytes.
 +
 +2010-02-28  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * charset.c (load_charset_map_from_file)
 +      (load_charset_map_from_vector): Zero out allocated
 +      charset_map_entries before using them.
 +
 +2010-02-27  Andreas Schwab  <schwab@linux-m68k.org>
 +
 +      * w32uniscribe.c (uniscribe_check_otf): Fix length check.
 +
 +2010-02-27  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * font.c (font_parse_fcname): Recognize "Book", "Condensed",
 +      "Medium", and "Semi-Condensed" keywords in GTK names (Bug#5646).
 +
 +2010-02-26  Kenichi Handa  <handa@m17n.org>
 +
 +      * ftfont.c (ftfont_get_open_type_spec): Fix parsing of otf_spec.
 +
 +      * xdisp.c (reseat_to_string): Fix previous change.
 +
 +2010-02-26  David Reitter  <david.reitter@gmail.com>
 +
 +      * nsfont.m (nsfont_draw): ns_antialias_text should be a
 +      Lisp_Object (Bug#4736).
 +
 +2010-02-25  Kenichi Handa  <handa@m17n.org>
 +
 +      * xdisp.c (reseat_to_string): Fix previous change (bug#5609).
 +
 +2010-02-24  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * xterm.c (XTflash): Move declarations before statements.
 +
 +      * gtkutil.c (xg_get_gdk_display): Remove (unused).
 +      (xg_get_pixbuf_from_pix_and_mask, xg_create_frame_widgets)
 +      (xg_toggle_notify_cb, xg_set_toolkit_scroll_bar_thumb)
 +      (xg_create_tool_bar): Remove unused variables.
 +      (x_wm_set_size_hint): Move declarations before statements.
 +      (xg_create_frame_widgets): Remove variable grav.
 +
 +2010-02-21  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * m/arm.h: Define the LIB_GCC flag to be -lgcc_s (Bug#5518).
 +
 +2010-02-18  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * term.c (fatal): Add a final \n if needed (bug#5596).
 +
 +2010-02-18  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * nsterm.m (ns_ring_bell): Revert last change (Bug#5569).
 +
 +2010-02-18  Glenn Morris  <rgm@gnu.org>
 +
 +      * callint.c (Finteractive): Doc fix.
 +
 +2010-02-18  Kazuhiro Ito  <kzhr@d1.dion.ne.jp>  (tiny change)
 +
 +      * coding.c (record_conversion_result):
 +      Handle CODING_RESULT_INSUFFICIENT_DST.
 +      (decode_coding_object): Record CODING_RESULT_INSUFFICIENT_MEM on
 +      memory allocation error.
 +
 +2010-02-17  Kenichi Handa  <handa@m17n.org>
 +
 +      * coding.c (decode_coding_ccl): Don't setup ccl program here.
 +      Fix for the case that the output buffer is fullfilled.
 +      (decode_coding): Setup ccl program here.  Keep looping when the
 +      decoder stopped because the output buffer is
 +      fullfilled (bug#5534).
 +
 +      * ccl.c (ccl_driver): Never reset ic to CCL_HEADER_MAIN.
 +
 +2010-02-13  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * xterm.c (x_clear_frame_area): Call gtk_widget_queue_draw if USE_GTK,
 +      bug #5571.
 +      (XTflash): Use Gdk-routines if USE_GTK so scroll bars don't get
 +      overdrawn.
 +
 +2010-02-10  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * xsmfns.c (x_session_initialize): Move initialization of ice_fd and
 +      doing_interact here.
 +      (ice_connection_closed): New function.
 +      (x_session_check_input, smc_die_CB, ice_io_error_handler)
 +      (ice_conn_watch_CB, x_session_close): Call ice_connection_closed.
 +      (x_session_check_input): Call IceCloseConnection if IceProcessMessages
 +      returns I/O error.
 +      (ice_conn_watch_CB): Call add_keyboard_wait_descriptor on ice_fd,
 +      bug #5512.
 +
 +2010-02-08  Francis Devereux  <francis@devrx.org>  (tiny change)
 +
 +      * nsfont.m (nsfont_open): The system's value for the font descent
 +      is negative, so round it down to avoid clipping.
 +
 +2010-02-06  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * charset.c (load_charset_map_from_file)
 +      (load_charset_map_from_vector): Fix last change to use SAFE_ALLOCA
 +      instead of xmalloc (Bug#5526).  Suggested by Vivek Dasmohapatra.
 +
 +2010-02-05  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * charset.c (load_charset_map_from_file): Allocate large
 +      charset_map_entries structure on the heap rather than the stack.
 +      (Bug#5526).
 +
 +2010-01-31  Kenichi Handa  <handa@m17n.org>
 +
 +      * font.c (font_parse_xlfd): If FONT is a font-entity and pixel
 +      size in NAME is invalid, return -1 (Bug#5396).
 +
 +2010-01-31  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * nsterm.m (ns_defined_color): Block input.  Suggested by Mike
 +      <deactivated@gmail.com> (Bug#3605).
 +
 +2010-01-31  David De La Harpe Golden  <david@harpegolden.net>
 +
 +      * fileio.c (Frename_file): Correctly rename symlinks to
 +      directories (Bug#5496).
 +
 +2010-01-31  Filipe Cabecinhas  <filcab@gmail.com>  (tiny change)
 +
 +      * nsterm.m (ns_ring_bell): Handle visible bell like X.
 +
 +2010-01-30  Andreas Schwab  <schwab@linux-m68k.org>
 +
 +      * character.h (CHAR_PRINTABLE_P): Reparenthesize to avoid warning.
 +
 +2010-01-29  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * frame.c (DEFAULT_ROWS): Change default to 35.
 +
 +      * xfns.c (x_default_font_parameter): Change default XFT font to
 +      monospace-10 (Bug#3643).
 +
 +2010-01-29  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * w32inevt.c (key_event): Remove unnecessary comparison of
 +      event->uChar.AsciiChar with 128.
 +
 +2010-01-28  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * fileio.c (Frename_file): Fix last change (Bug#5487).
 +
 +      * m/mips.h: Remove DATA_START.  Suggested by Dan Nicolaescu.
 +
 +      * m/alpha.h: Don't define DATA_START on NetBSD (Bug#4629).
 +
 +2010-01-28  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * xfns.c (Fx_create_frame): Remove window size matching code from
 +      2010-01-15.
 +      (x_get_current_desktop, x_get_desktop_workarea): Remove.
 +
 +2010-01-27  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32inevt.c (w32_kbd_patch_key): Save the unicode character.
 +      (key_event): Use unicode for characters 128 and higher (Bug#4567).
 +
 +2010-01-27  Kenichi Handa  <handa@m17n.org>
 +
 +      * regex.c (analyse_first): Fix setting of fastmap for unibyte
 +      pattern string (Bug#4209).
 +
 +2010-01-27  David De La Harpe Golden  <david@harpegolden.net>
 +
 +      * fileio.c (Frename_file): Call copy-directory and
 +      delete-directory for directories, in order to handle cross-device
 +      renaming (Bug#3353).
 +
 +2010-01-25  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * xfns.c (Fx_create_frame): If frame height is too big, try
 +      sizes 24 and 10.  Bug #3643.
 +
 +2010-01-24  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      Try and fix bug#788, hopefully for real this time.
 +      * keymap.c (shadow_lookup): Add `remap' arg.
 +      (describe_map, describe_vector): Update calls to shadow_lookup.
 +      (Fwhere_is_internal): Fix up handling of `remapped_sequences' and
 +      `remapped' so this flag is applicable to `sequence'.  Be careful to
 +      perform remapping during shadow_lookup check of remapped_sequences.
 +
 +2010-01-24  Eric Bélanger  <snowmaniscool@gmail.com>  (tiny change)
 +
 +      * image.c (png_load): Use png_sig_cmp instead of the obsolete
 +      png_check_sig, which has been removed in libpng 1.4.
 +
 +2010-01-23  Giorgos Keramidas  <keramida@ceid.upatras.gr>  (tiny change)
 +
 +      * filelock.c: Include utmp.h only when HAVE_UTMP_H (FreeBSD 9.x
 +      lacks this header file).
 +
 +2010-01-23  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
 +
 +      * xdisp.c (draw_glyphs): Update `start' for left_overwritten case
 +      as in Emacs 22.
 +
 +2010-01-22  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
 +
 +      * lisp.h (make_pure_string): String pointer arg now points to const.
 +
 +      * alloc.c (find_string_data_in_pure, make_pure_string): String pointer
 +      args now point to const.
 +
 +2010-01-22  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * lread.c (Fload): Don't treat files without .elc extension as
 +      byte-compiled if they are ``magic'', i.e. `openp' returned -2 for
 +      them.  (bug#5303)
 +
 +2010-01-20  Kenichi Handa  <handa@m17n.org>
 +
 +      * coding.c (consume_chars): If ! multibyte and the encoder is ccl,
 +      treat the source as actual byte sequence.
 +
 +2010-01-19  Alan Mackenzie  <acm@muc.de>
 +
 +      Fix spurious before-change-functions invocation from (insert ?\n).
 +      * textprop.c (set_text_properties): Rename parameter
 +      `signal_after_change_p' to `coherent_change_p', and make the
 +      invocation of `modify_region' conditional on it.
 +
 +2010-01-19  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * xsettings.c (apply_xft_settings): Save settings in Vxft_settings
 +      for debug purpose.
 +      (syms_of_xsettings): Declare xft-settings.
 +
 +2010-01-18  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * editfns.c (Fcurrent_time_string): Doc fix (Bug#5408).
 +
 +2010-01-16  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * xterm.c (event_handler_gdk): Block input (Bug#5037).
 +
 +2010-01-16  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * emacs.c (standard_args): Adjust arg priorities to reflect how
 +      they are processed in startup.el.
 +
 +2010-01-16  Andreas Schwab  <schwab@linux-m68k.org>
 +
 +      * Makefile.in (lisp, shortlisp): Update.
 +
 +2010-01-16  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * xterm.c (x_term_init): Instead of inhibiting GC while running Lisp
 +      code, link the new kboard into all_kboard before running Lisp code,
 +      and protect the new terminal with GCPRO (Bug#5365).
 +      (x_term_init): Remove unused var `atom'.
 +      (x_delete_display, x_delete_terminal): Remove unused var `i'.
 +
 +2010-01-15  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * xfns.c (x_get_current_desktop, x_get_desktop_workarea): New functions.
 +      (Fx_create_frame): Call x_get_current_desktop and x_get_desktop_workarea
 +      to find out usable size of the desktop.  Don't make frames larger than
 +      this.  Bug #3643.
 +
 +2010-01-15  Kenichi Handa  <handa@m17n.org>
 +
 +      * xdisp.c (CHAR_COMPOSED_P): New arg END_CHARPOS.  Callers changed.
 +
 +2010-01-15  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * nsterm.m (Qnone): Define.
 +
 +      * nsfns.m (Qnone): Move definition to nsterm.m.
 +
 +2010-01-14  Kenichi Handa  <handa@m17n.org>
 +
 +      * coding.c (detect_coding_iso_2022): Fix handling of euc-xx coding
 +      systems.
 +
 +2010-01-14  Kenichi Handa  <handa@m17n.org>
 +
 +      Make auto-composition work on all buffers even if they are
 +      fundamental mode.
 +
 +      * composite.c (Vauto_composition_mode): New variable.
 +      (composition_compute_stop_pos): Check Vauto_composition_mode
 +      instead of Vauto_composition_function.
 +      (composition_adjust_point, Ffind_composition_internal): Likewise.
 +      (syms_of_composite): Declare Lisp variable
 +      "auto-composition-mode" here.
 +
 +2010-01-13  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * xterm.c (x_term_init): Avoid garbage-collecting the new terminal
 +      during call to vendor-specific-keysyms (Bug#5365).
 +
 +2010-01-13  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
 +
 +      * keyboard.c (input_available_signal) [SYNC_INPUT]:
 +      Call SIGNAL_THREAD_CHECK (Bug#5333).
 +
 +      * atimer.c (alarm_signal_handler) [!SYNC_INPUT]:
 +      Call SIGNAL_THREAD_CHECK.
 +
 +2010-01-13  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      Try to fix bug#5314.  This is probably not the final word, tho.
 +      * buffer.c (Fset_buffer_modified_p): Try and be careful not to modify
 +      recent-auto-save-p as a side-effect.
 +      * buffer.h (BUF_AUTOSAVE_MODIFF): New macro.
 +      * buffer.c (Fkill_buffer, reset_buffer):
 +      * editfns.c (Fsubst_char_in_region):
 +      * fileio.c (Finsert_file_contents, Fdo_auto_save)
 +      (Fset_buffer_auto_saved, Frecent_auto_save_p): Use it.
 +
 +2010-01-13  Kenichi Handa  <handa@m17n.org>
 +
 +      Display buffer name, etc. in mode line by composing correctly.
 +
 +      * xdisp.c (reseat_to_string): Call composition_compute_stop_pos if
 +      STRING is not nil.
 +      (display_mode_element): Adjust for the change of
 +      decode_mode_spec and display_line.
 +      (decode_mode_spec): Change arg MULTIBYTE to STRING.
 +      (display_string): Handle the case that STRING is non-null and
 +      LISP_STRING is not nil.
 +
 +      * xterm.c (x_draw_composite_glyph_string_foreground):
 +      Pay attention to s->face->overstrike.
 +
 +      * composite.c (composition_reseat_it): Don't check PT if STRING is
 +      non nil.
 +
 +2010-01-12  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
 +
 +      * keyboard.c (read_char): Don't apply previous change when current
 +      buffer is unchanged by command execution.
 +
 +2010-01-12  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * keyboard.c (read_char): Return after executing from special map.
 +
 +2010-01-12  Glenn Morris  <rgm@gnu.org>
 +
 +      * emacs.c (REPORT_EMACS_BUG_PRETEST_ADDRESS): Set it to
 +      bug-gnu-emacs rather than emacs-pretest-bug.
 +
 +2010-01-11  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * nsterm.m (syms_of_nsterm): Initialize Qcontrol etc. before
 +      initializing the Lisp variables that depend on them.
 +
 +2010-01-11  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
 +
 +      * xfns.c (x_set_menu_bar_lines) [!USE_X_TOOLKIT && !USE_GTK]:
 +      Clear areas that will not be updated after change of menu bar lines.
 +      Clear the menu bar window's current matrix when the window gets empty.
 +
 +2010-01-09  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * intervals.h, textprop.c (extend_property_ranges): Return value
 +      and args changed.  Discard properties that begin at or after the
 +      new end (Bug#5306).
 +
 +      * editfns.c (Fformat): Caller changed.
 +
 +      * nsterm.m (ns_set_default_prefs): Delete function.
 +      (syms_of_nsterm): Initialize ns_command_modifier,
 +      ns_control_modifier, ns_function_modifier, ns_antialias_text, and
 +      ns_antialias_threshold here, not in ns_term_init (Bug#4113).
 +
 +      * xdisp.c (pos_visible_p): Check for invisible text at the correct
 +      position (Bug#4040).
 +
 +2010-01-09  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * editfns.c (Ffloat_time): Doc fix.
 +
 +2010-01-09  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * xfns.c (Fx_create_frame): Don't create frame larger than display
 +      by default bug#3643.
 +
 +2010-01-09  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
 +
 +      * frame.h (FRAME_TOP_MARGIN_HEIGHT): New macro.
 +      (FRAME_LINE_TO_PIXEL_Y, FRAME_PIXEL_Y_TO_LINE): Take account of pseudo
 +      windows above internal border.
 +
 +      * window.h (WINDOW_MENU_BAR_P, WINDOW_TOOL_BAR_P): New macros.
 +      (WINDOW_TOP_EDGE_Y, WINDOW_BOTTOM_EDGE_Y): Take account of pseudo
 +      windows above internal border.
 +
 +      * xdisp.c (get_glyph_string_clip_rects, init_glyph_string): Don't treat
 +      tool bar windows specially.
 +
 +      * xfns.c (x_set_tool_bar_lines): Take account of menu bar height.
 +
 +      * xterm.c (x_after_update_window_line): Don't treat tool bar windows
 +      specially.
 +      (XTflash): Take account of menu bar height.
 +
 +      * w32term.c (x_after_update_window_line): Don't treat tool bar windows
 +      specially.
 +
 +2010-01-08  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * dispnew.c (change_frame_size_1): newwidth == FRAME_COLS (f) must
 +      also be true before we can return early (bug #5339).
 +
 +2010-01-06  David Reitter  <david.reitter@gmail.com>
 +
 +      * nsfns.m (ns_get_screen): Rewrite, returning NULL for non-NS.
 +      (Fns_display_usable_bounds): Rewrite, computing bounds properly
 +      (Bug#3233).
 +
 +2010-01-06  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * font.c (font_open_entity): Enable chache and call cached_font_ok
 +      for the driver if defined.
 +      (QCuser_spec): New symbol.
 +      (font_spec_from_name): Save name as user-spec.
 +      (font_load_for_lface): Keep user-spec instead of name.
 +      (font_open_by_name): Save name as user-spec.
 +      (syms_of_font): Initialize QCuser_spec.
 +      (font_clear_prop): Clear name if it exists in font (bug#5157).
 +
 +      * xftfont.c (xftfont_open): Call xftfont_add_rendering_parameters.
 +      (xftfont_add_rendering_parameters, xftfont_cached_font_ok): New.
 +      (syms_of_xftfont): Initialize xftfont_driver.cached_font_ok.
 +
 +      * font.h (struct font_driver): Add cached_font_ok.
 +
 +      * xterm.c (x_clear_frame): Queue draw for scroll bars.
 +
 +2010-01-05  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * xterm.c (x_new_font): Move code for setting rows/cols before
 +      resizing ...
 +      (x_set_window_size): ... to here.  Bug #2568.
 +
 +      * gtkutil.c (xg_clear_under_internal_border): New function.
 +      (xg_frame_resized, xg_frame_set_char_size):
 +      Call xg_clear_under_internal_border.
 +      (xg_update_scrollbar_pos): Clear under old scroll bar position.
 +
 +2010-01-05  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * keyboard.c (read_key_sequence): Catch keyboard switch after
 +      making a new tty frame (Bug#5095).
 +
 +2010-01-05  Kenichi Handa  <handa@m17n.org>
 +
 +      * fontset.c (fontset_find_font): Fix getting the frame pointer.
 +
 +2010-01-04  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * dbusbind.c (xd_remove_watch): Avoid trying to convert a void* to
 +      Lisp_Object, preferring to convert a lisp_Object to a void* instead.
 +      (Fdbus_init_bus): Use XHASH to get a scalar value from a Lisp_Object.
 +
 +2010-01-03  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * dbusbind.c (xd_add_watch): Improve debug message.
 +      (xd_remove_watch): Improve debug message.  If DATA is the session
 +      bus, unset D-Bus session environment.
 +      (Fdbus_init_bus): Pass the bus as argument to
 +      dbus_connection_set_watch_functions.  (Bug#5283)
 +
 +2010-01-01  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * nsterm.m (ns_get_color): Fix buffer overflow (Bug#4763).
 +
 +      * lread.c (syms_of_lread): Make it clearer that these are the
 +      names of loaded files (Bug#5068).
 +
 +      * eval.c (run_hook_with_args): Handle the case where the global
 +      value has the obsolete single-function form (Bug#5026).
 +
 +2009-12-27  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * minibuf.c (Fall_completions): Minor optimization.
 +
 +2009-12-26  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * .gdbinit (pgx): Fix display of composite glyphs.
 +      Display cmp.from and cmp.to as well.
 +      (pitx): Fix last change.
 +
 +2009-12-25  Kenichi Handa  <handa@m17n.org>
 +
 +      * composite.h (composition_adjust_point): Update prototype.
 +
 +      * composite.c (composition_reseat_it): Don't make a composition
 +      spanning over point.
 +      (CHAR_COMPOSABLE_P): Treat U+200C (ZWNJ) and U+200D (ZWJ) as
 +      composable characters.
 +      (composition_adjust_point): New arg NEW_PT.  Callers changed.
 +
 +      * keyboard.c (command_loop_1): Force redisplay if the last point
 +      was within a composition.
 +      (adjust_point_for_property): Don't adjust point for automatic
 +      composition when called after buffer modification.
 +
 +2009-12-19  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * .gdbinit (pitx): Don't use enum names, use their values.
 +      Remove reference to non-existing value GET_FROM_COMPOSITION.
 +      (pgx): Don't use enum names, use their values.
 +      (pitmethod): New helper command.
 +      (pitx): Use it to display iteration method.
 +      (pgrowit): New command.
 +
 +      * makefile.w32-in ($(BLD)/cmds.$(O)): Depend on frame.h.
 +
 +      Update dependencies in Makefile.in.
 +
 +      * Makefile.in (alloc.o): Depend on termhooks.h.
 +      (atimer.o): Depend on blockinput.h.
 +      (buffer.o): Depend on indent.h, keyboard.h, coding.h, keymap.h,
 +      and frame.h.
 +      (callint.o): Depend on systime.h, coding.h, and composite.h.
 +      (callproc.o): Depend on buffer.h.
 +      (casefiddle.o): Don't depend on charset.h.
 +      (casetab.o): Depend on character.h.
 +      (ccl.o): Depend on composite.h.
 +      (chartab.o): Depend on ccl.h.
 +      (cm.o): Depend on dispextern.h.
 +      (cmds.o): Depend on systime.h, coding.h, frame.h, and composite.h.
 +      (coding.o): Don't depend on $(INTERVALS_H).
 +      (composite.o): Don't depend on dispextern.h explicitly (it's in
 +      $(INTERVALS_H)).  Depend on ccl.h.
 +      (data.o): Depend on systime.h, coding.h, composite.h,
 +      dispextern.h, font.h, and ccl.h.
 +      (dired.o): Depend on composite.h.
 +      (dispnew.o): Depend on coding.h.  Don't depend explicitly on
 +      composite.h (it's in $(INTERVALS_H)).
 +      (doc.o): Depend on systime.h, coding.h, and composite.h.
 +      (editfns.o): Don't depend explicitly on dispextern.h.
 +      (emacs.o): Depend on frame.h and coding.h.
 +      (eval.o): Depend on coding.h, composite.h, and xterm.h.
 +      (fileio.o): Depend on frame.h and commands.h.  Don't depend
 +      explicitly on dispextern.h.
 +      (filelock.o): Don't depend on epaths.h and charset.h.  Depend on
 +      composite.h.
 +      (fns.o): Don't depend on termhooks.h.
 +      (font.o): Depend on buffer.h, composite.h, fontset.h, and xterm.h.
 +      (fontset.o): Depend on blockinput.h, atimer.h, systime.h,
 +      coding.h, $(INTERVALS_H), window.h, xterm.h.
 +      (frame.o): Depend on coding.h, composite.h, termhooks.h, and ccl.h.
 +      (fringe.o): Depend on blockinput.h, atimer.h, and systime.h.
 +      (ftfont.o): Depend on blockinput.h, atimer.h, systime.h, coding.h,
 +      fontset.h, ccl.h, and ftfont.h.
 +      (ftxfont.o): Depend on atimer.h, systime.h, fontset.h, and ccl.h.
 +      (gtkutil.o): Depend on dispextern.h and composite.h.
 +      (image.o): Depend on epaths.h, character.h, coding.h, composite.h,
 +      termhooks.h, and ccl.h.
 +      (indent.o): Depend on systime.h, coding.h, and $(INTERVALS_H).
 +      (intervals.o): Depend on systime.h and coding.h.
 +      (keyboard.o): Depend on composite.h and coding.h.
 +      (keymap.o): Depend on coding.h and frame.h.
 +      (lread.o): Depend on systime.h, frame.h, blockinput.h, and atimer.h.
 +      (macros.o): Depend on systime.h, coding.h, and composite.h.
 +      (menu.o): Depend on systime.h, coding.h, composite.h, window.h,
 +      and atimer.h.
 +      (minibuf.o): Depend on systime.h and coding.h.  Don't depend on
 +      dispextern.h explicitly.
 +      (print.o): Depend on termhooks.h, coding.h, and ccl.h.
 +      Don't depend explicitly on dispextern.h and composite.h.
 +      (process.o): Depend on character.h, xgselect.h, and sysselect.h.
 +      (regex.o): Don't depend on charset.h.
 +      (scroll.o): Depend on systime.h, coding.h, composite.h, and window.h.
 +      (search.o): Don't depend explicitly on composite.h.
 +      (sound.o): Depend on atimer.h and systime.h.
 +      (syntax.o): Don't depend explicitly on composite.h.
 +      (sysdep.o): Depend on coding.h and composite.h.
 +      (term.o): Depend on xterm.h and buffer.h.
 +      (terminal.o): Depend on dispextern.h, composite.h, and systime.h.
 +      (textprop.o): Don't depend on dispextern.h explicitly.
 +      (undo.o): Depend on dispextern.h.
 +      (window.o): Depend on coding.h and termhooks.h.  Don't depend on
 +      dispextern.h and composite.h explicitly.
 +      (xdisp.o): Depend on ccl.h.
 +      (xfaces.o): Depend on coding.h and ccl.h.
 +      (xfns.o): Depend on $(INTERVALS_H) and ccl.h.
 +      (xfont.o): Depend on atimer.h, systime.h, fontset.h, and ccl.h.
 +      (xftfont.o): Depend on atimer.h, systime.h, fontset.h, ccl.h, and
 +      ftfont.h.
 +      (xgselect.o): New dependency.
 +      (xmenu.o): Depend on composite.h, keymap.h, and sysselect.h.
 +      (xselect.o): Depend on keyboard.h, coding.h, and composite.h.
 +      (xsettings.o): Depend on dispextern.h, keyboard.h, systime.h,
 +      coding.h, composite.h, blockinput.h, atimer.h, and termopts.h.
 +      (xsmfns.o): Depend on frame.h and dispextern.h.
 +      (xterm.o): Depend on intervals.h, keymap.h, xgselect.h, and
 +      sysselect.h.
 +
 +2009-12-19  Andreas Schwab  <schwab@linux-m68k.org>
 +
 +      * font.c (Fclear_font_cache): Pass correct cache argument to
 +      font_clear_cache.
 +
 +2009-12-16  Andreas Schwab  <schwab@linux-m68k.org>
 +
 +      * Makefile.in (prefix-args${EXEEXT}): Don't compile prefix-args.c
 +      twice.
 +
 +2009-12-15  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * xdisp.c (decode_mode_spec): Inhibit garbage collection when
 +      calling file-remote-p.  Reported by Jim Meyering.
 +
 +2009-12-15  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * dbusbind.c (xd_retrieve_arg): Reorder declarations in order to
 +      avoid compiler warnings.  (Bug #5217)
 +
 +2009-12-14  Kenichi Handa  <handa@m17n.org>
 +
 +      * coding.c (decode_coding_iso_2022): Ignore ISO_CODE_SS2_7 (0x19)
 +      in 8-bit encoding.
 +
 +2009-12-13  Pat Thoyts  <patthoyts@users.sourceforge.net>  (tiny change)
 +
 +      * xfns.c (x_create_tip_frame): Set the extended window manager hint for
 +      tooltip windows.
 +
 +2009-12-13  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * xterm.h (struct x_display_info): Add Xatom_net_window_type_tooltip and
 +      Xatom_net_window_type.
 +
 +      * xterm.c (x_term_init): Initialize Xatom_net_window_type_tooltip and
 +      Xatom_net_window_type.
 +
 +      * xterm.c (my_log_handler): New function.
 +      (x_term_init): Set my_log_handler as log handler during gtk_init
 +      so we can filter out buggy messages.  (Bug #5120).
 +
 +      * xterm.c (xg_scroll_callback): Parameter list changed,
 +      use parameter GtkScrollType to determine scroll/line/page.
 +      Only allow dragging if a button < 4 is grabbed (bug #5177).
 +      (xg_end_scroll_callback): New function.
 +      (x_create_toolkit_scroll_bar): Pass xg_end_scroll_callback to
 +      xg_create_scroll_bar.
 +
 +      * gtkutil.c (xg_gtk_scroll_destroy): Remove XG_LAST_SB_DATA handling.
 +      (scroll_end_callback): Remove.
 +      (xg_create_scroll_bar): Add parameter end_callback, bind it to
 +      button-release-event.  Replace value-changed event with change-value,
 +      bug #5177.
 +      (xg_event_is_for_scrollbar): Only return true if button is less than 4,
 +      bug #5177.
 +
 +      * gtkutil.h (XG_LAST_SB_DATA): Remove.
 +      (xg_create_scroll_bar): Add GCallback end_callback.
 +
 +      * xftfont.c (QClcdfilter): New variable.
 +      (xftfont_open): Parse constant names for RGBA, HINT_STYLE and LCDFILTER.
 +      (syms_of_xftfont): Initialize QClcdfilter.
 +
 +2009-12-12  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * xsettings.c (struct xsettings): Add member seen.
 +      (parse_xft_settings): Update member seen with what we have read.
 +      Return non-zero if Xft-settings have been parsed, 0 otherwise.
 +      (apply_xft_settings): Only update Xft settings with what member seen
 +      indicates as new.
 +
 +2009-12-12  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * dispextern.h (struct text_pos): Use EMACS_INT.
 +      (struct glyph): Use EMACS_INT for charpos.
 +      (struct it): Use EMACS_INT for stop_charpos, end_charpos,
 +      region_beg_charpos, region_end_charpos,
 +      redisplay_end_trigger_charpos, and also for
 +      iterator_stack_entry.end_charpos and
 +      iterator_stack_entry.stop_charpos.
 +
 +2009-12-12  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * gtkutil.c (scroll_end_callback): New function (bug #5177).
 +      (xg_create_scroll_bar): Call scroll_end_callback on button release
 +      event (bug #5177).
 +      (xg_event_is_for_scrollbar): != replaced with ==.
 +
 +2009-12-12  Kenichi Handa  <handa@m17n.org>
 +
 +      * ftfont.c (struct ftfont_info): New member matrix.
 +      (ftfont_open): Setup xftfont_info->matrix.
 +      (MFLTFontFT): New member matrix.
 +      (FLOOR, CEIL, ROUND): New macros.
 +      (ftfont_get_metrics): Handle matrix transformation.
 +      (ftfont_shape_by_flt): New arg matrix.  Callers changed.
 +
 +      * xftfont.c (struct xftfont_info): New member matrix.
 +      (xftfont_open): Setup xftfont_info->matrix.
 +
 +2009-12-10  Kenichi Handa  <handa@m17n.org>
 +
 +      * xdisp.c (append_space_for_newline): Consider face-remapping.
 +
 +2009-12-09  Andreas Schwab  <schwab@linux-m68k.org>
 +
 +      * xsettings.c: Include "keyboard.h".
 +
 +      * gtkutil.c (xg_tool_bar_proxy_help_callback): Fix missing return.
 +
 +      Fix implicit function declarations.
 +      * cmds.c: Include "frame.h".
 +      * frame.c: Include "font.h" also if !HAVE_WINDOW_SYSTEM.
 +      * frame.h: Move declaration of delete_frame outside of
 +      HAVE_WINDOW_SYSTEM.
 +
 +2009-12-09  Ken Brown  <kbrown@cornell.edu>  (tiny change)
 +
 +      * s/cygwin.h (G_SLICE_ALWAYS_MALLOC): New variable.
 +
 +      * emacs.c (main): Set the G_SLICE environment variable for Cygwin
 +      GTK builds.
 +
 +2009-12-07  Andreas Schwab  <schwab@linux-m68k.org>
 +
 +      * unexelf.c (unexec): Don't search for .data twice.
 +
 +2009-12-05  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * xdisp.c (push_display_prop): Don't set avoid_cursor_p.  Return 0
 +      if push failed.
 +      (handle_line_prefix): Set avoid_cursor_p here.  Check return value
 +      of push_display_prop (Bug#5000).
 +
 +      * xfaces.c (Fx_family_fonts): Handle 2009-07-14 change to return
 +      value of font_list_entities (Bug#5085).
 +
 +2009-12-04  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      Fix `string-to-number' to deal consistently with integers and floats.
 +      * lread.c (isfloat_string): New argument ignore_trailing to accept all
 +      trailing characters, not just whitespace.
 +      (read1): Pass new arg 0 to keep old behavior.
 +      * data.c (Fstring_to_number): Pass 1 to isfloat_string to ignore
 +      trailing chars, as it is already done for integers.  Doc fixes.
 +      * lisp.h (isfloat_string): Add new arg to declaration of isfloat_string.
 +
 +2009-12-04  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * dispextern.h (enum prop_idx) <AUTO_COMPOSED_PROP_IDX>:
 +      Delete unused enumeration value.
 +
 +2009-12-03  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * Makefile.in (lisp, shortlisp): Replace indian.el with indian.elc.
 +
 +2009-12-03  Daniel Hackney  <dan@haxney.org>  (tiny change)
 +
 +      * process.c (Fmake_network_process): Fix up the tests for
 +      "connectionless socket", so they DTRT for seqpacket sockets as well.
 +
 +2009-12-03  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * process.c (Qseqpacket): New symbol.
 +      (HAVE_SEQPACKET): New macro.
 +      (Fmake_network_process): Accept new :type `seqpacket'.
 +      (init_process): Add `seqpacket' feature when applicable.
 +      (syms_of_process): Initialize Qseqpacket.
 +
 +2009-12-01  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
 +
 +      * font.c (font_load_for_lface, font_open_by_name): Don't store name
 +      if entity is Qnil.
 +
 +2009-11-30  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * print.c (print_preprocess): Preprocess the key_and_value table of
 +      hashtables, even tho they're "hidden" (bug#5082).
 +
 +2009-11-29  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * frame.c (frame_make_pointer_invisible)
 +      (frame_make_pointer_visible): Declare f before statements.
 +
 +2009-11-28  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * Makefile.in [!AUTO_DEPEND]: Remove outdated comment about
 +      omitted dependencies on lisp.h.
 +
 +2009-11-27  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * xftfont.c (xftfont_end_for_frame): Just return if dpyinfo->display
 +      is NULL.
 +
 +      * xterm.c (x_delete_terminal): Set dpyinfo->display to NULL.
 +
 +      * frame.c (frame_make_pointer_invisible)
 +      (frame_make_pointer_visible): Just return if there isn't any selected
 +      frame.
 +
 +      * search.c (simple_search): Remove warning by making *p const.
 +
 +2009-11-26  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * xdisp.c (power_letter): Remove duplicate const.
 +
 +2009-11-25  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * term.c (delete_tty): Remove check for last terminal (bug#4970).
 +
 +      * xsettings.c: Revert changes from 2009-11-23.  Just use Xft
 +      defaults (bug #5025).
 +
 +2009-11-24  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * insdel.c (adjust_markers_for_delete): Move it in the
 +      right direction!  (bug#4803)
 +
 +2009-11-24  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
 +
 +      * font.c (font_open_entity): Don't use ASET if font_object is Qnil.
 +
 +      * xterm.c (x_new_font): Update f->scroll_bar_actual_width.
 +
 +2009-11-24  Glenn Morris  <rgm@gnu.org>
 +
 +      * frame.c (focus-follows-mouse): Mention mouse-autoselect-window.
 +
 +2009-11-23  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * Makefile.in: Must create deps for ecrt0.o in its rule.
 +
 +      * xfns.c (Fx_select_font): Try to convert Fontconfig name to Gtk name
 +      because that is what Gtk+ font dialog understands.
 +
 +      * font.c (font_make_object, Fcopy_font_spec): Use Fcopy_alist instead
 +      of Fcopy_sequence.
 +      (font_open_by_name): Put name given into QCname for font-object returned.
 +
 +      * frame.c (x_set_font): Save original font name as frame parameter
 +      font-parameter.
 +
 +      * xsettings.c (set_default_xft_settings): New function.
 +      (init_xfd_settings): Call set_default_xft_settings if no XSETTINGS window
 +      is found.
 +
 +2009-11-22  Andreas Schwab  <schwab@linux-m68k.org>
 +
 +      * search.c (simple_search): Avoid CHAR_TO_BYTE in inner loop when
 +      searching backwards through multibyte buffer.
 +
 +2009-11-21  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * xterm.c: #include xgselect.h.
 +      (x_initialize): Call xgselect_initialize.
 +
 +      * xsettings.c (something_changedCB): C++ comments => C comments.
 +      (init_gconf): Do not deal with any GLib file descriptors, xg_select
 +      does that now.
 +
 +      * gtkutil.c (xg_timer, xg_process_timeouts, xg_start_timer)
 +      (xg_stop_timer, menu_grab_callback_cnt, menu_grab_callback)
 +      (scroll_bar_button_cb): Remove.
 +      (create_menus): C++ comments => C comments.  Don't bind grab-notify
 +      event.
 +      (xg_create_scroll_bar): Don't bind button-press-event and
 +      button-release-event.
 +
 +      * process.c: Include xgselect.h if defined (USE_GTK) ||
 +      defined (HAVE_GCONF).
 +      (wait_reading_process_output): Call xg_select for the same condition.
 +
 +      * xgselect.c (xg_select): New function to better integrate with
 +      GLib/Gtk event handling.  Needed if GConf daemon dies/restarts.
 +
 +      * xgselect.h: New file, declare xg_select, xgselect_initialize.
 +
 +      * Makefile.in (XOBJ): Add xgselect.o.
 +
 +2009-11-21  Andreas Schwab  <schwab@linux-m68k.org>
 +
 +      * character.h (STRING_CHAR, STRING_CHAR_AND_LENGTH):
 +      Remove ignored second argument.  All callers changed.
 +      * regex.c (STRING_CHAR, STRING_CHAR_AND_LENGTH, RE_STRING_CHAR)
 +      (RE_STRING_CHAR_AND_LENGTH): Likewise.
 +      * xdisp.c (string_char_and_length): Likewise.
 +
 +2009-11-21  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * xterm.c (x_new_font):
 +      * print.c (print_object):
 +      * cmds.c (Fself_insert_command): Move declarations before statements.
 +
 +2009-11-20  Ken Brown  <kbrown@cornell.edu>  (tiny change)
 +
 +      * s/cygwin.h: Remove unneeded linker flags.
 +
 +2009-11-20  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * xfns.c (x_default_font_parameter): Call xsettings_get_system_font.
 +
 +      * xsettings.h: Declare xsettings_get_system_font.
 +
 +      * xsettings.c (xsettings_get_system_font): New function.
 +      (init_gconf): No use initiating gconf unless we have Xft also.
 +      (syms_of_xsettings): Only provide system-font-setting if HAVE_XFT and
 +      HAVE_GCONF.
 +
 +      * gtkutil.c (xg_modify_menubar_widgets): If menubar is totally empty
 +      add a blank entry so it doesn't collapse into nothing.
 +
 +2009-11-19  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * lread.c (Funintern): Comment out last change.
 +
 +2009-11-19  Richard Stallman  <rms@gnu.org>
 +
 +      * lread.c (Funintern): Error if symbol is t or nil.
 +
 +2009-11-19  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * insdel.c (make_gap_larger): Don't make as many assumptions about the
 +      representation of Lisp integers.
 +      Reported by MJ Chan <mjchan.inbox@gmail.com>.
 +
 +2009-11-17  Andreas Schwab  <schwab@linux-m68k.org>
 +
 +      * lisp.h: Remove declaration of Ffont_get_system_font.
 +      * xfns.c: Move include of "xsettings.h".
 +      * xsettings.h: Use EXFUN to declare Ffont_get_system_font.
 +
 +2009-11-17  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * xsettings.c (something_changedCB, Ffont_get_system_font):
 +      Check use_system_font.
 +      (syms_of_xsettings): DEFVAR font-use-system-font.
 +
 +2009-11-17  Andreas Schwab  <schwab@linux-m68k.org>
 +
 +      * xfns.c (x_default_font_parameter): Remove dead assignment.
 +
 +      * lisp.h (Fbyteorder, init_font, Ffont_get_system_font): Declare.
 +
 +2009-11-17  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * xftfont.c (xftfont_fix_match): Older versions of fontconfig do
 +      not have FC_LCD_*.  #define them if not there.
 +
 +      * xsettings.c (parse_xft_settings, apply_xft_settings): Ditto.
 +
 +      * xterm.h (struct x_display_info): Add atoms and Window for xsettings.
 +
 +      * xterm.c (handle_one_xevent): Call xft_settings_event for
 +      ClientMessage, PropertyNotify and DestroyNotify.
 +      (x_term_init): If we have XFT, get DPI from Xft.dpi.
 +      Call xsettings_initialize.
 +
 +      * xftfont.c (xftfont_fix_match): New function.
 +      (xftfont_open): Call XftDefaultSubstitute before XftFontMatch.
 +      Call xftfont_fix_match after XftFontMatch.
 +
 +      * xfont.c (xfont_driver): Initialize all members.
 +
 +      * xfns.c (x_default_font_parameter):
 +      Try font from Ffont_get_system_font.
 +      Do not get font from x_default_parameter if we got one from
 +      Ffont_get_system_font.
 +      (Fx_select_font): Get the defaut font name from :name of FRAME_FONT(f).
 +
 +      * w32font.c (w32font_driver): Initialize all members.
 +
 +      * termhooks.h (enum event_kind): CONFIG_CHANGED_EVENT is new.
 +
 +      * lisp.h: Declare syms_of_xsettings.
 +
 +      * keyboard.c (kbd_buffer_get_event, make_lispy_event):
 +      Handle CONFIG_CHANGED_EVENT.
 +
 +      * ftfont.c (ftfont_filter_properties): New function.
 +
 +      * frame.c (x_set_font): Remove unused variable lval.
 +
 +      * font.h (struct font_driver): Add filter_properties.
 +
 +      * font.c (font_put_extra): Don't return if val is nil, it means
 +      boolean option is off.
 +      (font_parse_fcname): Collect all extra properties in extra_props
 +      and call filter_properties for all drivers with extra_props and
 +      font as parameter.
 +      (font_open_entity): Do not use cache, it does not pick up new
 +      fontconfig settings like hinting.
 +      (font_load_for_lface): If spec had a name in it, store it in entity.
 +
 +      * emacs.c (main): Call syms_of_xsettings.
 +
 +      * config.in: HAVE_GCONF is new.
 +
 +      * Makefile.in (GCONF_CFLAGS, GCONF_LIBS): New variables for HAVE_GCONF.
 +      xsettings.o is new.
 +
 +2009-11-17  Kenichi Handa  <handa@m17n.org>
 +
 +      * xdisp.c (x_produce_glyphs): Consider face-remapping when falling
 +      back to the default font in case that no suitable font is found.
 +
 +2009-11-17  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * menu.c (Fx_popup_menu) [HAVE_NS]: Use generic code for window edge.
 +      Suggested by Chad Brown <yandros@mit.edu>.
 +      (push_menu_item): Use MENU_ITEMS_ITEM_* names.
 +
 +2009-11-16  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * xmenu.c (x_menu_wait_for_event): Call XFlush before select.
 +
 +2009-11-14  Andreas Schwab  <schwab@linux-m68k.org>
 +
 +      * Makefile.in: Ignore errors from mkdir when creating deps directory.
 +
 +2009-11-14  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * gtkutil.c (xg_update_frame_menubar): Do nothing if menubar already
 +      has a parent.
 +
 +      * Makefile.in: If AUTO_DEPEND is defined, make gcc generate
 +      dependency files in deps/.  Include those files into Makefile.
 +
 +      * config.in: Generated (AUTO_DEPEND).
 +
 +2009-11-13  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * dbusbind.c (Vdbus_registered_objects_table): Rename from
 +      Vdbus_registered_functions_table, because it contains also
 +      properties.  Fix docstring.
 +      (Fdbus_call_method, Fdbus_call_method_asynchronously): Fix docstring.
 +
 +2009-11-13  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * alloc.c (mark_object): Don't reprocess marked strings.
 +      Check vector's markbit earlier.  Adjust calls to mark_vectorlike.
 +      (mark_vectorlike, mark_char_table): Assume the object is unmarked.
 +
 +2009-11-13  Kenichi Handa  <handa@m17n.org>
 +
 +      * category.c (word_boundary_p): Adjust for the change of the
 +      semantics of Vword_combining_categories.
 +      (Vword_combining_categories): Describe the slight change of the
 +      semantics.
 +
 +2009-11-13  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * menu.c (Fx_popup_menu): Call Fx_hide_tip only if HAVE_WINDOW_SYSTEM.
 +
 +      * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Revert last change.
 +
 +2009-11-12  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * xdisp.c (syms_of_xdisp): Fix typo in last change.
 +
 +2009-11-12  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * makefile.w32-in: Update dependencies; add dependencies to lisp.h.
 +
 +2009-11-11  David Reitter  <david.reitter@gmail.com>
 +
 +      * menu.c (Fx_popup_menu): Remove left-over debugging code and rename
 +      variables to fix 2009-11-09 change.
 +
 +2009-11-11  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * process.c (ifflag_def): Make flag_sym constant.
 +      (Fnetwork_interface_info): Use a constant pointer.
 +      (ifflag_table):
 +      * xfns.c (cursor_bits):
 +      * xdisp.c (power_letter):
 +      * termcap.c (speeds, esctab):
 +      * sysdep.c (baud_convert):
 +      * keyboard.c (lispy_accent_codes, modifier_names):
 +      * image.c (xbm_format, xpm_format, pbm_format, png_format)
 +      (jpeg_format, tiff_format, gif_format, svg_format)
 +      (interlace_start, interlace_increment, gs_format):
 +      * gtkutil.c (separator_names):
 +      * fringe.c (swap_nibble):
 +      * fns.c (base64_value_to_char, base64_char_to_value):
 +      * fileio.c (make_temp_name_tbl):
 +      * coding.c (suffixes): Make constant.
 +
 +      * frame.c (make_initial_frame):
 +      * buffer.c (init_buffer_once): Use make_pure_c_string instead of
 +      build_string.
 +      * alloc.c (syms_of_alloc): Build Vmemory_signal_data in pure memory.
 +
 +      * s/freebsd.h:
 +      * s/netbsd.h: Remove code referring to non-existent file: unexsunos4.o.
 +
 +      * Makefile.in: Add dependencies to lisp.h.  Remove dependencies
 +      for non-existent files: unexmips.c, unexnext.c, abbrev.c, malloc.c.
 +
 +      * xfns.c (syms_of_xfns): Use make_pure_string instead of build_string.
 +      * xterm.c (syms_of_xterm):
 +      * xfaces.c (syms_of_xfaces):
 +      * xdisp.c (syms_of_xdisp):
 +      * lread.c (syms_of_lread):
 +      * keyboard.c (syms_of_keyboard): Use make_pure_c_string instead of
 +      build_string.
 +
 +      * doc.c (Fsnarf_documentation): Purecopy Vbuild_files.
 +
 +2009-11-10  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * fns.c (Fplist_get): Merge the active and the commented out code.
 +
 +2009-11-10  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * keyboard.h: Declare timer_check.
 +
 +      * keyboard.c (timer_check_2): New function that does what the old
 +      timer_check did.
 +      (timer_check): Call timer_check_2 until -1 or a non-zero time is
 +      returned, i.e. don't return -1 with timers pending.
 +
 +      * process.c: Remove extern declaration of timer_check.
 +
 +      * xmenu.c (x_menu_wait_for_event): Remove code that did a timeout
 +      even if timer_check returned -1.
 +
 +      * gtkutil.c (xg_dialog_response_cb): Data is now a struct
 +      xg_dialog_data.
 +      (pop_down_dialog): Destroy widget (if any), cancel timer and unref
 +      the event loop.
 +      (xg_maybe_add_timer, xg_dialog_run): New functions (bug #4574).
 +      (xg_get_file_name, xg_get_font_name): Call xg_dialog_run (bug #4574).
 +      Destroy the dialog after xg_dialog_run.
 +
 +2009-11-10  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * menu.c (Fx_popup_menu) [HAVE_NS]: Remove unused vars.
 +
 +2009-11-10  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * xmenu.c (xmenu_show): Must not be static after 2009-11-09 changes.
 +
 +2009-11-09  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * menu.c [HAVE_NTGUI]: Declare current_popup_menu.
 +
 +2009-11-09  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * menu.c (Fx_popup_menu): Consolidate versions from xmenu.c,
 +      w32menu.c, and nsmenu.m.
 +      Simplify the obsolete case where position is nil.
 +      (cleanup_popup_menu): New function, moved from nsmenu.m.
 +      (struct skp): Remove slot `notreal'.
 +      (single_keymap_panes, keymap_panes): Remove arg `notreal' and
 +      adjust callers.
 +      (single_menu_item): Adjust call to parse_menu_item.
 +      (syms_of_menu): Defsubr x-popup-menu.
 +      * menu.h (Vmenu_updating_frame): Consolidate declarations from *menu.c.
 +      (keymap_panes): Don't export any more.
 +      (mouse_position_for_popup, w32_menu_show, ns_menu_show)
 +      (xmenu_show): Declare.
 +      * keyboard.c (parse_menu_item): Remove arg `notreal'.
 +      (menu_bar_item, read_char_minibuf_menu_prompt): Adjust callers.
 +      * keyboard.h (parse_menu_item): Update declaration.
 +      * xmenu.c (Fx_popup_menu): Remove.
 +      (syms_of_xmenu): Don't defsubr x-popup-menu.
 +      * w32menu.c (Fx_popup_menu): Remove.
 +      (syms_of_w32menu): Don't defsubr x-popup-menu.
 +      * nsmenu.m (cleanup_popup_menu): Remove.
 +      (ns_menu_show): Rename from ns_popup_menu and remove all the code
 +      moved to menu.c's Fx_popup_menu.
 +      (Fx_popup_menu): Remove.
 +      (syms_of_nsmenu): Don't defsubr x-popup-menu, and don't initialize
 +      menu_items (it's done in menu.c already).
 +
 +2009-11-08  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * keyboard.c (parse_menu_item): Handle `notreal' a bit earlier.
 +      Use `tem' less.  Make sure KEYEQ holds a string or nil (bug#4879).
 +
 +2009-11-08  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * xmenu.c (Fx_popup_menu): Extract event timestamp.  Pass it to
 +      xmenu_show.  Hide any tooltip before opening a menu.
 +      (xmenu_show): New arg.  Pass it to create_and_show_popup_menu.
 +      (create_and_show_popup_menu): New arg.  Pass it to gtk_menu_popup.
 +
 +2009-11-06  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      Let integers use up 2 tags to give them one extra bit and thus double
 +      their range.
 +      * lisp.h (USE_2_TAGS_FOR_INTS): New macro.
 +      (LISP_INT_TAG, case_Lisp_Int, LISP_STRING_TAG, LISP_INT_TAG_P):
 +      New macros.
 +      (enum Lisp_Type): Use them.  Give explicit values.
 +      (Lisp_Type_Limit): Remove.
 +      (XINT, XUINT, make_number) [!USE_LISP_UNION_TYPE]:
 +      (MOST_NEGATIVE_FIXNUM, MOST_POSITIVE_FIXNUM, INTMASK):
 +      Pay attention to USE_2_TAGS_FOR_INTS.
 +      (INTEGERP): Use LISP_INT_TAG_P.
 +      * fns.c (internal_equal): Simplify the default case.
 +      (sxhash): Use case_Lisp_Int.
 +      * data.c (wrong_type_argument): Don't check against Lisp_Type_Limit
 +      any more.
 +      (Ftype_of): Use case_Lisp_Int.
 +      (store_symval_forwarding): Take into account the fact that Ints can
 +      now have more than one tag.
 +      * buffer.c (syms_of_buffer): Use LISP_INT_TAG.
 +      (buffer_slot_type_mismatch):
 +      * xfaces.c (face_attr_equal_p):
 +      * print.c (print_object):
 +      * alloc.c (mark_maybe_object, mark_object, survives_gc_p):
 +      Use case_Lisp_Int.
 +
 +2009-11-06  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Reduce by further 30K.
 +
 +      * alloc.c (make_pure_c_string): Fix last change to avoid compiler
 +      warning.
 +
 +2009-11-06  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * gtkutil.c (xg_event_is_for_scrollbar): New function (bug#4870).
 +
 +      * gtkutil.h: Declare xg_event_is_for_scrollbar (bug#4870).
 +
 +      * xterm.c (handle_one_xevent): Call xg_event_is_for_scrollbar for
 +      ButtonPressRelease and MotionNotify (bug#4870).
 +
 +2009-11-06  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * keymap.c (syms_of_keymap): Construct exclude_keys in pure memory.
 +
 +      * xterm.c (syms_of_xterm):
 +      * xselect.c (syms_of_xselect):
 +      * xmenu.c (syms_of_xmenu):
 +      * xfns.c (syms_of_xfns):
 +      * xfaces.c (syms_of_xfaces):
 +      * xdisp.c (syms_of_xdisp):
 +      * window.c (syms_of_window):
 +      * w32fns.c (syms_of_w32fns):
 +      * undo.c (syms_of_undo):
 +      * textprop.c (syms_of_textprop):
 +      * terminal.c (syms_of_terminal):
 +      * syntax.c (syms_of_syntax):
 +      * sound.c (syms_of_sound):
 +      * search.c (syms_of_search):
 +      * print.c (syms_of_print):
 +      * minibuf.c (syms_of_minibuf):
 +      * macros.c (syms_of_macros):
 +      * keymap.c (syms_of_keymap, initial_define_key)
 +      (initial_define_lispy_key):
 +      * keyboard.c (syms_of_keyboard):
 +      * insdel.c (syms_of_insdel):
 +      * image.c (syms_of_image):
 +      * fringe.c (syms_of_fringe):
 +      * frame.c (syms_of_frame):
 +      * fontset.c (syms_of_fontset):
 +      * fns.c (syms_of_fns):
 +      * fns.c (syms_of_fns):
 +      * fileio.c (syms_of_fileio):
 +      * fileio.c (syms_of_fileio):
 +      * eval.c (syms_of_eval):
 +      * doc.c (syms_of_doc):
 +      * dispnew.c (syms_of_display):
 +      * dired.c (syms_of_dired):
 +      * dbusbind.c (syms_of_dbusbind):
 +      * data.c (syms_of_data):
 +      * composite.c (syms_of_composite):
 +      * coding.c (syms_of_coding):
 +      * cmds.c (syms_of_cmds):
 +      * charset.c (define_charset_internal, syms_of_character):
 +      * ccl.c (syms_of_ccl):
 +      * category.c (syms_of_category, init_category_once):
 +      * casetab.c (syms_of_casetab):
 +      * casefiddle.c (syms_of_casefiddle):
 +      * callint.c (syms_of_callint):
 +      * bytecode.c (syms_of_bytecode):
 +      * buffer.c (keys_of_buffer, syms_of_buffer):
 +      * alloc.c (syms_of_alloc):
 +      * process.c (syms_of_process, init_process):
 +      * lread.c (syms_of_lread, init_obarray):
 +      * font.c (build_style_table):
 +      * emacs.c (syms_of_emacs, main): Replace calls to intern with
 +      intern_c_string, calls to make_pure_string with
 +      make_pure_c_string.  Use pure_cons instead of Fcons.
 +
 +      * process.c (socket_options): Make it const.
 +      (set_socket_option, init_process): Use a const pointer.
 +
 +      * lread.c (intern_c_string): New function.
 +      (defvar_kboard, defvar_lisp, defvar_lisp_nopro, defvar_bool)
 +      (defvar_int): Uset it.  Make the name const char*.
 +
 +      * lisp.h (defvar_kboard, defvar_lisp, defvar_lisp_nopro, defvar_bool)
 +      (defvar_int): Update prototypes.
 +      (DEFUN, EXFUN): Support for prototypes is now required.
 +      (intern_c_string): New prototype.
 +      (struct Lisp_Subr): Make symbol_name constant.
 +
 +      * font.c (struct table_entry): Remove unused member.  Make NAMES
 +      constant.
 +      (weight_table, slant_table, width_table): Make constant.
 +
 +      * emacs.c (struct standard_args): Make name and longname constant.
 +
 +      * character.h (DEFSYM): Use intern_c_string.
 +
 +2009-11-06  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * alloc.c (make_pure_c_string): New function.
 +
 +      * eval.c (Fautoload): Purecopy all arguments.
 +
 +2009-11-05  Kenichi Handa  <handa@m17n.org>
 +
 +      * fileio.c (Finsert_file_contents): Be sure set coding-system of
 +      the buffer in case of replace.
 +
 +2009-11-04  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * puresize.h (BASE_PURESIZE): Increase to 1620000.
 +
 +2009-11-03  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * editfns.c (save_restriction_restore): Update the (pt/begv/vz)_markers
 +      when applicable (bug#4851).
 +
 +      * lisp.h: Make USE_LSB_TAG work with USE_LISP_UNION_TYPE.
 +      (P_): Support for prototypes is now required.
 +
 +2009-10-31  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * frame.c (Fmake_frame_invisible, Fframe_visible_p): Doc fix
 +      (Bug#4827).
 +
 +2009-10-30  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Redefine to waste less pure space.
 +
 +2009-10-30  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * puresize.h (BASE_PURESIZE): Increase to 1470000.
 +
 +      * lread.c (Fload): Purecopy the file name when building
 +      Vpreloaded_file_list.
 +
 +2009-10-29  Jason Rumney  <jasonr@wanchan.jasonrumney.net>
 +
 +      * w32fns.c (syms_of_w32fns): Change default value of
 +      w32-scroll-lock-modifier to nil.  (Bug#2827)
 +
 +2009-10-26  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * minibuf.c (Fall_completions): Fix typos in docstring.
 +
 +2009-10-26  Andreas Schwab  <schwab@redhat.com>
 +
 +      * puresize.h (PURESIZE_RATIO): Increase back to 10/6.
 +
 +2009-10-26  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * window.c (grow_mini_window): Comment out "delta >= 0" assertion.
 +      For delta < 0, skip check that only makes sense when the mini-window
 +      is going to be enlarged.  (Bug#4534)
 +
 +2009-10-25  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * keyboard.c (read_char_x_menu_prompt): Don't demand a prompt
 +      string in menu maps (Bug#4471).
 +
 +2009-10-24  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * nsfns.m (ns_set_name, ns_set_name_as_filename): Don't call
 +      FRAME_NS_VIEW on terminal frames (Bug#4765).
 +
 +2009-10-24  Andreas Schwab  <schwab@linux-m68k.org>
 +
 +      * dbusbind.c (xd_retrieve_arg): Handle DBUS_TYPE_INTnn and
 +      DBUS_TYPE_UINTnn separately to get proper sign extension.
 +
 +      * dired.c (Ffile_attributes): Simplify now that FIXNUM_OVERFLOW_P
 +      can properly handle unsigned types.
 +      (make_uid, make_gid): Remove.
 +
 +      * lisp.h (FIXNUM_OVERFLOW_P): Fix last change to handle unsigned
 +      types again.
 +
 +      * sysdep.c (procfs_ttyname): Fix sprintf format to match argument type.
 +      (system_process_attributes): Likewise.
 +
 +2009-10-24  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * keymap.c (Fmake_sparse_keymap): Purecopy the name.
 +
 +      * eval.c (Fautoload): Purecopy the filename.  Simplify.
 +
 +      * category.c (Fdefine_category): Purecopy docstring.
 +
 +2009-10-23  Andreas Schwab  <schwab@linux-m68k.org>
 +
 +      * lisp.h (FIXNUM_OVERFLOW_P): Remove cast to avoid overflow.
 +
 +      * puresize.h (PURESIZE_RATIO): Decrease to 11/7.
 +
 +2009-10-23  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * window.c (Fwindow_edges, Fwindow_pixel_edges)
 +      (Fwindow_inside_edges, Fwindow_inside_pixel_edges): Doc fix
 +      (Bug#4775).
 +
 +2009-10-23  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * fileio.c (syms_of_fileio): Initialize Vdirectory_sep_char.
 +      (init_fileio_once):
 +      * lisp.h (init_fileio_once): Remove.
 +      * emacs.c (main): Don't call init_fileio_once.
 +
 +2009-10-23  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * puresize.h (BASE_PURESIZE): Increase to 1430000.
 +
 +2009-10-21  Andreas Schwab  <schwab@linux-m68k.org>
 +
 +      * doprnt.c (doprnt): Fix overflow check.
 +
 +2009-10-21  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * xterm.c (x_term_init): Remove XSynchronize call done for debugging.
 +
 +      * xterm.h (x_wait_for_event): Declare it.
 +
 +      * xterm.c (pending_event_wait): New variable.
 +      (handle_one_xevent): Set pending_event_wait.eventtype to 0 if we
 +      see pending_event_wait.eventtype.
 +      (handle_one_xevent): Don't change gravity when parent changes.
 +      (x_new_font): Call change_frame_size with new rows/columns before we
 +      try to resize the frame.
 +      (x_wait_for_event): New function.
 +      (x_set_window_size_1): Don't change gravity unless change_gravity
 +      is set.
 +      Call XResizeWindow with FRAME_OUTER_WINDOW.  If we are visible,
 +      don't change frame size, instead wait for the ConfigureNotify.
 +      (x_set_window_size): Call x_set_window_size_1 for USE_X_TOOLKIT also.
 +      (x_wm_set_size_hint): Remove ifdefs for USE_X_TOOLKIT.
 +      (x_initialize): Initialize pending_event_wait.
 +
 +      * xmenu.c (set_frame_menubar): Add internal border width to menu bar
 +      size.
 +
 +      * widget.c (EmacsFrameSetValues): Add comment.
 +      (EmacsFrameSetCharSize): Just call x_set_window_size.
 +
 +      * gtkutil.c (xg_frame_set_char_size): Flush events and call
 +      x_wait_for_event.
 +      (flush_and_sync): Remove again.
 +      (xg_get_font_name): Suggest monospace if no previous font is known.
 +
 +2009-10-20  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * character.c (char_resolve_modifier_mask): Don't resolve meta to the
 +      8th bit, since that only made sense in the ASCII world (bug#4751).
 +
 +2009-10-20  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
 +
 +      * xterm.c (XTread_socket) [!USE_GTK && HAVE_X_I18N]: Don't quit
 +      processing pending events when event is filtered for input method.
 +      (Bug#3681)
 +
 +2009-10-20  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * fns.c: Add #endif accidentally removed in previous change.
 +
 +2009-10-19  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * fns.c: Remove code for unsupported system: MAC_OS.
 +      * image.c: Likewise.  Include setjmp.h.
 +
 +2009-10-19  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * xterm.c (x_create_toolkit_scroll_bar): Don't allocate color for
 +      pixel -1 (bug #4742).
 +
 +2009-10-19  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * process.c (create_pty): Remove conditionals for no longer
 +      supported systems: UNIPLUS and RTU.
 +
 +      * xterm.c:
 +      * xfns.c: Remove always true condition: XtSpecificationRelease >= 5.
 +
 +      * alloc.c: Do not define struct catchtag.
 +      * eval.c: Move struct catchtag definition ...
 +      * lisp.h: ... here.
 +
 +      * image.c: Move png.h #include earlier to avoid warnings.
 +
 +      * xterm.c:
 +      * xsmfns.c:
 +      * xselect.c:
 +      * xrdb.c:
 +      * xmenu.c:
 +      * xftfont.c:
 +      * xfont.c:
 +      * xfns.c:
 +      * xfaces.c:
 +      * xdisp.c:
 +      * window.c:
 +      * widget.c:
 +      * w32xfns.c:
 +      * w32uniscribe.c:
 +      * w32term.c:
 +      * w32select.c:
 +      * w32reg.c:
 +      * w32proc.c:
 +      * w32menu.c:
 +      * w32inevt.c:
 +      * w32heap.c:
 +      * w32font.c:
 +      * w32fns.c:
 +      * w32console.c:
 +      * w32.c:
 +      * w16select.c:
 +      * vm-limit.c:
 +      * unexsol.c:
 +      * unexec.c:
 +      * unexcw.c:
 +      * unexaix.c:
 +      * undo.c:
 +      * tparam.c:
 +      * textprop.c:
 +      * terminfo.c:
 +      * terminal.c:
 +      * termcap.c:
 +      * term.c:
 +      * syntax.c:
 +      * sound.c:
 +      * sheap.c:
 +      * search.c:
 +      * scroll.c:
 +      * region-cache.c:
 +      * regex.c:
 +      * ralloc.c:
 +      * process.c:
 +      * print.c:
 +      * nsterm.m:
 +      * nsselect.m:
 +      * nsmenu.m:
 +      * nsimage.m:
 +      * nsfont.m:
 +      * nsfns.m:
 +      * msdos.c:
 +      * minibuf.c:
 +      * menu.c:
 +      * marker.c:
 +      * macros.c:
 +      * keymap.c:
 +      * keyboard.c:
 +      * intervals.c:
 +      * insdel.c:
 +      * indent.c:
 +      * gtkutil.c:
 +      * ftxfont.c:
 +      * ftfont.c:
 +      * fringe.c:
 +      * frame.c:
 +      * fontset.c:
 +      * font.c:
 +      * fns.c:
 +      * floatfns.c:
 +      * filelock.c:
 +      * fileio.c:
 +      * emacs.c:
 +      * editfns.c:
 +      * dosfns.c:
 +      * doprnt.c:
 +      * doc.c:
 +      * dispnew.c:
 +      * dired.c:
 +      * dbusbind.c:
 +      * data.c:
 +      * composite.c:
 +      * coding.c:
 +      * cmds.c:
 +      * cm.c:
 +      * chartab.c:
 +      * charset.c:
 +      * character.c:
 +      * ccl.c:
 +      * category.c:
 +      * casetab.c:
 +      * casefiddle.c:
 +      * callproc.c:
 +      * callint.c:
 +      * bytecode.c:
 +      * buffer.c:
 +      * atimer.c: Include setjmp.h.  (Bug#4643)
 +
 +2009-10-18  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      Remove leftover table unibyte_to_multibyte_table.
 +      * character.c (unibyte_to_multibyte_table): Remove.
 +      (Funibyte_char_to_multibyte): Use MAKE_CHAR_MULTIBYTE.
 +      * charset.c (init_charset_once): Don't init unibyte_to_multibyte_table.
 +      * character.h (UNIBYTE_TO_CHAR): New macro.
 +      (MAKE_CHAR_MULTIBYTE): Use it.
 +      (unibyte_to_multibyte_table, unibyte_char_to_multibyte): Remove.
 +      * xdisp.c (get_next_display_element): USE ASCII_CHAR_P.
 +      (message_dolog, set_message_1):
 +      * search.c (Freplace_match):
 +      * editfns.c (Fcompare_buffer_substrings):
 +      * fns.c (Fcompare_strings): Use MAKE_CHAR_MULTIBYTE.
 +      (concat):
 +      * insdel.c (copy_text, count_size_as_multibyte):
 +      Use ASCII_CHAR_P and BYTE8_TO_CHAR.
 +      * term.c (produce_glyphs):
 +      * syntax.c (skip_chars): Use BYTE8_TO_CHAR.
 +      * regex.c (RE_CHAR_TO_MULTIBYTE):
 +      * cmds.c (internal_self_insert):
 +      * buffer.h (FETCH_CHAR_AS_MULTIBYTE): Use UNIBYTE_TO_CHAR.
 +
 +      * cmds.c (internal_self_insert): `c' is already in "multibyte" form.
 +
 +2009-10-17  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * puresize.h (BASE_PURESIZE): Increase to 1310000.
 +
 +2009-10-16  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * buffer.c (Fbuffer_name): Doc fix.  (Bug#4728)
 +
 +2009-10-15  Adrian Robert  <Adrian.B.Robert@gmail.com>
 +
 +      * nsterm.h (NS_HAVE_NSINTEGER): Back out and augment with CGFloat,
 +      still needed under Tiger.
 +
 +      * nsterm.m (EmacsView-conversationIdentifier): Arg is long.
 +
 +      * m/amdx86-64.h: Don't set LIB_STANDARD and START_FILES under
 +      __Apple__.
 +
 +      * m/intel386.h: Remove DARWIN_OS/_LP64 special case.
 +
 +2009-10-15  Kenichi Handa  <handa@m17n.org>
 +
 +      * print.c (print_object): Escape a symbol like "2E10" too.
 +
 +2009-10-11  Adrian Robert  <Adrian.B.Robert@gmail.com>
 +
 +      Cleanups and changes for 64-bit compile under Snow Leopard.
 +      Based on suggestions by Erik Charlebois.
 +
 +      * nsfns.m (xw-color-values): Use CGFloat where appropriate.
 +
 +      * nsfont.m (ns_char_width): Replace deprecated call.
 +      (ns_findfonts, nsfont_list_family): Use long format in printf, and
 +      cast argument.
 +      (nsfont_open): Use ns_char_width() everywhere.
 +      (ns_uni_to_glyphs, NSGlyphStorage): Use NS[U]Integer where appropriate.
 +
 +      * nsgui.h (NSPoint, NSSize) [!__OBJC__]: Define and use CGFloat.
 +
 +      * nsimage.m (EmacsImage-setXBMColor:,-getPixelAtX:Y:): Use CGFloat
 +      where appropriate.
 +
 +      * nsmenu.m (EmacsMenu-addItemWithWidgetValue:): Use NSInteger
 +      where appropriate.
 +      (EmacsToolbar-addDisplayItemWithImage:idx:helpText:enabled:):
 +      Use stringWithUTF8String.
 +      (EmacsDialogPanel-initWithContentRect:styleMask:): Fix signature.
 +
 +      * nsterm.h (EmacsView, EmacsMenu, EmacsToolbar, EmacsTooltip):
 +      Add formal protocol mention to inheritance.
 +      [NS_HAVE_NSINTEGER]: Drop conditional and contents.
 +
 +      * nsterm.m (ns_color_to_lisp): Use CGFloat where appropriate.
 +      Fix printf format.
 +      (ns_query_color): Use CGFloat where appropriate.
 +      (EmacsView<NSTextInput>, EmacsScroller): Fix method signatures.
 +      (EmacsScroller-mouseDown:): Use long format in printf, and cast
 +      argument.
 +
 +      * config.in (NS_HAVE_NSINTEGER): Drop.
 +
 +      * dbusbind.c (dbus-method-return-internal)
 +      (dbus-method-error-internal): Use long format in printf, and cast
 +      argument.
 +
 +      * font.c (font_unparse_xlfd, font_unparse_fcname): Use long format
 +      in printf, and cast argument.
 +
 +      * process.c (list_processes_1): Use long format in printf, and
 +      cast argument.
 +
 +2009-10-11  Glenn Morris  <rgm@gnu.org>
 +
 +      * frame.c (Fframe_pixel_height): Doc fix.  (Bug#4535)
 +
 +2009-10-08  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * gtkutil.c (create_menus): Call gtk_widget_set_size_request for
 +      menu bar with a small width so it doesn't enlarge the frame.
 +
 +2009-10-08  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * fontset.c (Fset_fontset_font): Fix typos in error messages.
 +
 +2009-10-06  Glenn Morris  <rgm@gnu.org>
 +
 +      * Makefile.in (emacs${EXEEXT}): Remove direct dependence on
 +      SOME_MACHINE_LISP (this enters indirectly via DOC).
 +
 +2009-10-05  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * dired.c (Ffile_attributes): Doc fix.  (Bug#4638)
 +
 +2009-10-04  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * xdisp.c (syms_of_xdisp) <unibyte-display-via-language-environment>:
 +      Doc fix.
 +
 +2009-10-03  Martin Rudalics  <rudalics@gmx.at>
 +
 +      * window.c (Fdelete_window): Check WINDOW argument.  (Bug#4618)
 +
 +2009-10-02  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * lisp.h (Qdelete_directory_internal): Remove, because it is not
 +      used anymore outside fileio.c.
 +
 +      * w32fns.c (Fsystem_move_file_to_trash): Use delete-directory.
 +
 +2009-10-01  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * lisp.h (Qdelete_directory_internal):
 +      Declare, instead of Qdelete_directory.
 +
 +      * w32fns.c (Fsystem_move_file_to_trash): Use it.
 +
 +2009-10-01  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * eval.c (Fcalled_interactively_p): Add `kind' argument.
 +
 +2009-10-01  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * fileio.c (Fdelete_directory_internal): Rename from
 +      Fdelete_directory.  It is not a command anymore.  It has no file
 +      name handler.
 +
 +2009-09-28  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * xdisp.c (get_next_display_element): Use an enum in last change.
 +
 +2009-09-28  Kenichi Handa  <handa@m17n.org>
 +
 +      * xdisp.c (get_next_display_element): Pay attention to
 +      unibyte_display_via_language_environment in handling
 +      Vnobreak_char_display.
 +
 +2009-09-27  Adrian Robert  <Adrian.B.Robert@gmail.com>
 +
 +      * nsterm.h (ns_app_name): New extern variable.
 +
 +      * nsterm.m (ns_app_name): New variable.
 +      (ns_term_init): Set and use it.
 +      (ns_term_shutdown): Use it.
 +
 +      * nsmenu.m (ns_update_menubar): Use ns_app_name.  Sync with xmenu.c.
 +      (EmacsMenu-clear:, ns_popup_dialog): Use ns_app_name.
 +
 +      * nsfns.m (ns_set_name_iconic, ns_set_name)
 +      (ns_set_name_as_filename, x-create-frame, ns-get-resource)
 +      (ns-set-resource): Use ns_app_name instead of NSProcessInfo call.
 +
 +      * menu.c (find_and_return_menu_selection) [HAVE_NS]:
 +      Remove double-casting in client_data comparison.
 +
 +2009-09-27  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
 +
 +      * keyboard.c (make_lispy_event): Remember last wheel direction.
 +      (syms_of_keyboard) <wheel_syms>: Compute array size at compile time.
 +
 +2009-09-26  Glenn Morris  <rgm@gnu.org>
 +
 +      * Makefile.in (MSDOS_SUPPORT) [MSDOS]: Remove unneeded '/' in
 +      internal.elc.  Add term/pc-win.elc.
 +      (WINDOW_SUPPORT) [HAVE_X_WINDOWS]: Add term/common-win.elc and
 +      term/x-win.elc.
 +      (WINNT_SUPPORT) [WINDOWSNT]: Add term/common-win.elc and
 +      term/w32-win.elc.
 +      (NS_SUPPORT): New.
 +      (lisp): Add NS_SUPPORT.
 +      (SOME_MACHINE_LISP): Add term/w32-win.elc and emacs-lisp/easymenu.elc.
 +
 +2009-09-25  David Reitter  <david.reitter@gmail.com>
 +
 +      * nsmenu.m (EmacsMenu-clear): Recognize application menu
 +      on Mac OS X 10.6+ (bug#4513).
 +
 +2009-09-24  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * frame.c (xrdb_get_resource): Return nil for empty string resources;
 +      some parts of Emacs code (like font selection) don't grok them.
 +      See http://lists.gnu.org/archive/html/emacs-devel/2009-09/msg00528.html
 +
 +2009-09-24  Andreas Schwab  <schwab@redhat.com>
 +
 +      * coding.c (decode_coding_iso_2022): Fix operator precedence.
 +
 +2009-09-24  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * dired.c (Fdirectory_files): Fix typo in docstring.
 +
 +2009-09-23  Adrian Robert  <Adrian.B.Robert@gmail.com>
 +
 +      * nsterm.m (EV_TIMESTAMP, x_set_window_size)
 +      (EmacsApp-application:openFiles:): Remove GNUstep conditionals.
 +      (EmacsScroller-setPosition:portion:whole:): Remove -display call
 +      under GNUstep.
 +      (EmacsView-initFrameFromEmacs:): Set autoresizing mask.
 +
 +      * nsfont.m (ns_glyph_metrics): Remove GNUstep conditional for
 +      glyph advancement.
 +
 +2009-09-22  Adrian Robert  <Adrian.B.Robert@gmail.com>
 +
 +      * nsterm.m (CGContextSetFontRenderingMode): Drop declaration.
 +      (EmacsScroller-mouseDown:): Use SCROLL_BAR_FIRST_DELAY.
 +
 +      * nsmenu.m (EmacsMenu-menuNeedsUpdate): Ignore if frame has been
 +      deleted (bug #4492).
 +
 +      * nsfont.m (Vns_reg_to_script): New lisp variable.
 +      (syms_of_nsfont): Declare it.
 +      (ns_registry_to_script): New function.
 +      (ns_get_req_script): Call it.
 +      (ns_findfonts): Don't give up on non-unicode registry.
 +
 +      * font.c (DEFAULT_ENCODING) [HAVE_NS]: Remove special case.
 +
 +2009-09-20  Tom Tromey  <tromey@redhat.com>
 +
 +      * eval.c (find_handler_clause): Make stack-trace-on-error work in
 +      batch mode (bug#4228).
 +
 +2009-09-18  Rob Christie  <robchristie@gmail.com>  (tiny change)
 +
 +      * nsmenu.m (EmacsMenu-parseKeyEquiv:): Parse key equivalent more
 +      carefully.  (Bug #4339)
 +
 +2009-09-18  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * syntax.c (Fchar_syntax): Minor doc fix (Bug#4400).
 +
 +2009-09-18  Adrian Robert  <Adrian.B.Robert@gmail.com>
 +
 +      * emacs.c (inhibit_x_resources): Update doc string for NS.
 +      (main) [HAVE_NS]: Don't process --no-init-file option.
 +      Remove legacy code for -NXHost.  Fix error printf in daemon case.
 +
 +      * nsterm.h (ns_no_defaults): Remove.
 +
 +      * nsterm.m (ns_no_defaults): Remove.
 +      (ns_term_init): Switch ns_no_defaults -> inhibit_x_resources.
 +      (ns_use_qd_smoothing): Remove legacy variable.
 +      (EmacsView-windowShouldZoom:): Set frame left_pos, top_pos and
 +      don't update the NSWindow itself.
 +      (EmacsView-windowWillUseStandardFrame:defaultFrame:):
 +      Improve state detection and store user rect ourselves.  (Bug #3581)
 +
 +      * nsfont.m (nsfont_draw) [NS_IMPL_COCOA]: Don't use
 +      ns_use_qd_smoothing.
 +
 +      * nsfns.m (x_get_string_resource): Ape just-previous changes to other
 +      platform versions.  Drop support for emacs-20-style face specs.
 +      (x-close-connection): Drop PSFlush() under OS X.
 +      (x-focus-frame): Activate the app first.  (Bug #4180)
 +
 +2009-09-17  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * emacs.c (inhibit_x_resources): New variable.
 +      (main) [HAVE_NS]: Don't process --quick command line option.
 +      (syms_of_emacs) <inhibit-x-resources>: DEFVAR_BOOL it.
 +
 +      * lisp.h (inhibit_x_resources): Declare it extern.
 +
 +      * w32reg.c (x_get_string_resource):
 +      * xrdb.c (x_get_string_resource): Obey inhibit_x_resources.
 +
 +2009-09-17  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * Makefile.in (MSDOS_SUPPORT, SOME_MACHINE_LISP):
 +      Add lisp/term/internal.elc.
 +
 +2009-09-17  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * frame.c (x_get_resource_string): Re-add for non-toolkit builds
 +      (bug#4461).
 +
 +2009-09-17  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * puresize.h (BASE_PURESIZE): Increase to 1290000.
 +
 +      * Makefile.in (OTHER_FILES): Define using autoconf, not cpp.
 +      (OBJECTS_MACHINE): Remove, unused.
 +
 +2009-09-16  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * frame.c (x_get_resource_string): Remove unused.
 +
 +2009-09-15  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * xterm.c (x_new_font): Call change_frame_size before calling
 +      x_set_window_size, in case frame size won't change.
 +
 +      * frame.c (x_set_font): Remove dead code.
 +
 +2009-09-15  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * lread.c (Fload): Also run do-after-load-evaluation while dumping.
 +
 +2009-09-12  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * lread.c (Fload): Don't output a message after loading an obsolete
 +      package any more (done in Lisp now).
 +
 +2009-09-12  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * fns.c (syms_of_fns): Doc fix (Bug#4227).
 +
 +2009-09-12  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * keymap.c (Fwhere_is_internal): Use nconc2.
 +
 +2009-09-11  Alan Mackenzie  <acm@muc.de>
 +
 +      * dispnew.c (Fsend_string_to_terminal): Amend doc string to cover
 +      batch mode.
 +
 +2009-09-11  Andreas Schwab  <schwab@linux-m68k.org>
 +
 +      * xdisp.c (display_mode_element): Detect cycles.
 +
 +2009-09-11  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * keymap.c (where_is_internal): Don't erroneously return nil right after
 +      filling the cache.
 +      (where_is_internal_1): Fix up typo.
 +
 +2009-09-11  Glenn Morris  <rgm@gnu.org>
 +
 +      * frame.c (Fx_parse_geometry): Unify the X and NS versions so that they
 +      share a common doc-string.
 +
 +2009-09-11  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * keymap.c (get_keymap): Return the actual keymap symbol rather than
 +      t for autoloaded keymaps when autoloading is not allowed (bug#4393).
 +
 +      * keymap.c (QCadvertised_binding): New constant.
 +      (syms_of_keymap): Initialize it.
 +      (Fwhere_is_internal): Try and use bindings from :advertised-binding
 +      if applicable.
 +
 +2009-09-10  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * keyboard.c (Qmenu_alias, Vdefine_key_rebound_commands): Remove.
 +      (parse_menu_item): Streamline since bindings are recomputed all the
 +      time anyway.  Don't bother checking Vdefine_key_rebound_commands any
 +      more and don't support lmenu's menu-alias any more either.
 +
 +      * keymap.c (where_is_internal_data): Make noindirect a boolean.
 +      (where_is_internal): Strip it down to only traverse the keymaps.
 +      Move the cache handling from Fwhere_is_internal to here.
 +      (Fwhere_is_internal): Move the handling of remapping and the choice of
 +      the best binding from where_is_internal to here.
 +      Unify the cached/noncached paths, so remapping is also handled
 +      correctly when the cache is used, and so the cache can be used to
 +      speed up remap-handling when applicable.
 +      Give preference to non-remapped bindings.
 +      * doc.c (Fsubstitute_command_keys): Let Fwhere_is_internal's prefer
 +      non-remapped bindings.
 +      * keyboard.c (parse_menu_item): Let Fwhere_is_internal handle
 +      command remapping.
 +
 +      * xdisp.c (display_mode_element): Move list length limit from 50 to
 +      5000 (see thread starting with <xbaik5174uqu.fsf@cam.ac.uk>).
 +
 +2009-09-09  Adrian Robert  <Adrian.B.Robert@gmail.com>
 +
 +      * nsfont.m (ns_get_family): Don't force first letter to uppercase.
 +
 +2009-09-09  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * xdisp.c (Vtruncate_partial_width_windows): Improve docstring.
 +      (Bug#4334)
 +
 +      * keymap.c (where_is_internal): Filter out shadowed remappings.
 +      Assume that where_is_internal returns unshadowed bindings to simplify
 +      the code and get rid of the gotos.  Use ASIZE.
 +
 +2009-09-04  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * xterm.c (x_focus_changed): If we get a focusout and pointer
 +      is invisible, make it visible.
 +
 +      * xterm.h: Remove condition for declaration of
 +      x_*_window_to_frame.
 +
 +2009-09-03  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * dispnew.c (Fsend_string_to_terminal): Make it work again on the
 +      initial terminal as well.
 +
 +2009-09-02  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * xterm.h: Rename x_non_menubar_window_to_frame to
 +      x_menubar_window_to_frame.
 +
 +      * xterm.c: Remove declarations also in xterm.h.
 +      (XTmouse_position): Do not return valid positions
 +      for clicks in the menubar and the toolbar for Gtk+.
 +
 +      * xfns.c (x_any_window_to_frame): Assume less about Gtk+ internals,
 +      if the widget for the event has the same top level as a frame,
 +      return the frame.
 +      (x_menubar_window_to_frame): Detect menu bar even with Gtk+
 +      internal windows, bug #4122.
 +      (x_non_menubar_window_to_frame): Remove.
 +
 +2009-09-02  Glenn Morris  <rgm@gnu.org>
 +
 +      * buffer.c (default-major-mode): Move most of the doc from here...
 +      (major-mode): ... to here.
 +
 +2009-08-30  Nick Roberts  <nickrob@snap.net.nz>
 +
 +      * process.c (wait_reading_process_output): Keep the descriptor
 +      when pty is used by a non-child process, e.g., in I/O buffer of
 +      GDB this allows inferior to be restarted.
 +
 +2009-08-29  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * xdisp.c (redisplay_internal): Remove redundant test and collapse
 +      both branches into one.
 +
 +2009-08-29  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * emacs.c (USAGE1): Remove --(no-)multibyte, --(no-)unibyte.
 +      (main): Use enable-multibyte-characters rather than
 +      default-enable-multibyte-characters.  Output a warning message when
 +      running a unibyte session.
 +
 +2009-08-28  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
 +
 +      * unexmacosx.c (print_load_command_name) [LC_DYLD_INFO]: Add cases
 +      LC_DYLD_INFO and LC_DYLD_INFO_ONLY.
 +      (copy_data_segment): Also copy __program_vars section.
 +      (copy_dyld_info) [LC_DYLD_INFO]: New function.
 +      (dump_it) [LC_DYLD_INFO]: Use it.
 +
 +      * s/darwin.h [temacs]: Undef HAVE_POSIX_MEMALIGN.
 +
 +2009-08-28  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * makefile.w32-in ($(BLD)/doc.$(O)): Depend on buildobj.h, not on
 +      $(SRC)/buildobj.h.
-       * font.c (font_rescale_ratio): Moved from xfaces.c.
++      (buildobj.h): Rename from $(SRC)/buildobj.h.
 +      (make-buildobj-CMD, make-buildobj-SH): Create buildobj.h, not
 +      $(SRC)/buildobj.h.
 +      (clean): Add buildobj.h.
 +
 +2009-08-28  Teodor Zlatanov  <tzz@lifelogs.com>
 +
 +      * print.c (print_object): Set escapeflag to 1 when printing
 +      hashtable keys and values.
 +
 +2009-08-27  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * lread.c (read_integer): Use doubles (and potentially return a float
 +      number) as we do in string-to-number.
 +      (read1): Use strtol to read integers, signal errors on strtol's
 +      overflow and use floats if strtol's output is too large for
 +      Elisp integers.
 +
 +2009-08-27  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * makefile.w32-in ($(SRC)/buildobj.h, make-buildobj-CMD)
 +      (make-buildobj-SH): Fix last change.
 +      (SRC): Move to before where it's first used.
 +
 +2009-08-27  Kenichi Handa  <handa@m17n.org>
 +
 +      * process.c (send_process): Use encode_coding_object instead of
 +      encode_coding_string to perform eol-conversion even if the string
 +      is unibyte.
 +
 +      * coding.c (encode_coding_utf_16): Fix checking of a Unicode
 +      character.
 +
 +      * cmds.c (Fself_insert_command): Avoid unnecessay
 +      unibyte->multibyte conversion.  (Bug#4240)  (Bug#4037)
 +
 +2009-08-26  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * callproc.c (Fcall_process): Remove always true #if.
 +
 +      * lisp.h: Replace #if 0 code for checking with text pointing to
 +      the --enable-checking configure flag.
 +
 +      * emacs.c (main): Mention the --enable-profiling configure flag
 +      instead of using CFLAGS.
 +
 +2009-08-26  Ken Raeburn  <raeburn@raeburn.org>
 +
 +      * Makefile.in (buildobj.h): New target.
 +      (doc.o): Depend on it.
 +      (temacs${EXEEXT}): Don't generate buildobj.lst.
 +      (mostlyclean): Delete buildobj.h, not buildobj.lst.
 +      * makefile.w32-in ($(SRC)/buildobj.h): New target.
 +      ($(BLD)/doc.$(O)): Depend on it.
 +      (make-buildobj-CMD, make-buildobj-SH): New targets.  (Syntax help
 +      provided by Eli Zaretskii.)
 +      ($(TEMACS)): Don't generate buildobj.lst.
 +      * doc.c: Include buildobj.h.
 +      (buildobj): New static variable.
 +      (Fsnarf_documentation): Use it, instead of opening and reading
 +      buildobj.lst.
 +
 +2009-08-25  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * dbusbind.c (Fdbus_call_method)
 +      (Fdbus_call_method_asynchronously): Use English numeric format for
 +      timeout values in doc string.
 +
 +2009-08-25  Kenichi Handa  <handa@m17n.org>
 +
 +      * alloc.c (mark_char_table): New function.
 +      (mark_object): Use mark_char_table for a char-table.
 +
 +      * lisp.h (CHAR_TABLE_REF_ASCII): New macro.
 +      (CHAR_TABLE_REF): Use it.
 +
 +2009-08-23  Ken Raeburn  <raeburn@raeburn.org>
 +
 +      * Makefile.in (emacs${EXEEXT}) [CANNOT_DUMP]: Set EMACSLOADPATH
 +      before invoking the newly build emacs to check for load-path
 +      shadowing.
 +
 +2009-08-22  Glenn Morris  <rgm@gnu.org>
 +
 +      * Makefile.in (bootstrap_exe): New variable.
 +      (.el.elc, ${lispsource}loaddefs.el, bootstrap-emacs${EXEEXT}):
 +      Use ${bootstrap_exe}.
 +
 +2009-08-22  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * coding.h (encode_coding_string): Don't encode unibyte strings.
 +      (Bug#4047)
 +
 +2009-08-22  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * config.in (HAVE_DBUS_WATCH_GET_UNIX_FD): Add.
 +
 +      * dbusbind.c (XD_WITH_DBUS_WATCH_GET_UNIX_FD): Remove.  It was
 +      intended as hotfix only.
 +      (xd_add_watch, xd_remove_watch): Use HAVE_DBUS_WATCH_GET_UNIX_FD.
 +
 +2009-08-21  Adrian Robert  <Adrian.B.Robert@gmail.com>
 +
 +      * nsterm.m (ns_get_color): Update documentation properly for last
 +      change, and clean up loose ends in the code left by it.
 +      Fix longstanding bug with 16-bit hex parsing, and add support for
 +      yet another X11 format (rgb:r/g/b) for compatibility.
 +      * nsfns.m (EmacsDialogPanel-runDialogAt): Add declaration of
 +      timer_check() to avoid crash on Leopard/PPC.  Bug #2154.
 +
 +2009-08-21  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * eval.c (init_eval_once): Bump max_lisp_eval_depth to 500 for js.el.
 +
 +2009-08-20  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * dbusbind.c (XD_WITH_DBUS_WATCH_GET_UNIX_FD): New macro.
 +      (xd_add_watch, xd_remove_watch): Use it.  Print debug messages.
 +      (xd_initialize, xd_pending_messages): Check, whether
 +      $DBUS_SESSION_BUS_ADDRESS is set.
 +
 +2009-08-20  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
 +
 +      * nsfns.m (Fxw_color_values): Return 3-element list.  Doc fix.
 +
 +      * nsterm.m (ns_get_color): Remove incompatible color formats again.
 +
 +2009-08-20  Glenn Morris  <rgm@gnu.org>
 +
 +      * emacs.c (system-type): Doc fix.
 +
 +2009-08-19  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * keyboard.c (syms_of_keyboard): Default to 5 buttons, which should be
 +      enough for the most common situations.  Avoid SET_SYMBOL_VALUE.
 +
 +2009-08-18  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * dbusbind.c (xd_add_watch, xd_remove_watch, Fdbus_init_bus):
 +      New functions.
 +      (xd_initialize): Revert change from 2009-08-16.
 +
 +2009-08-18  Kenichi Handa  <handa@m17n.org>
 +
 +      * fontset.c (Ffontset_font): If a nil element is found in a
 +      font-group vector, return nil.
 +
 +2009-08-17  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * process.c (status_notify): Don't perform redisplay.
 +      (Fdelete_process, list_processes_1, process_send_signal):
 +      Expliticly perform redisplay.
 +      (wait_reading_process_output): Always check process status, but
 +      don't perform redisplay unless DO_DISPLAY is non-zero (Bug#2930).
 +
 +2009-08-17  Ken Raeburn  <raeburn@raeburn.org>
 +
 +      * lisp.h (XFLOAT_DATA): Produce an rvalue by adding 0 to the value.
 +      (XFLOAT_INIT): New macro for storing a float value.
 +      * alloc.c (make_float, make_pure_float): Use XFLOAT_INIT.
 +      * fns.c (sxhash): Copy out the value of a float in order to
 +      examine its bytes.
 +      * dbusbind.c (xd_append_arg): Likewise.
 +
 +      * emacs.c (main): Don't call syms_of_data twice.
 +
 +2009-08-16  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * dbusbind.c (xd_initialize): Add connection file descriptor to
 +      input_wait_mask, in order to let select() detect, whether a new
 +      message has been arrived.
 +      (Fdbus_call_method_asynchronously): Allow nil HANDLER.
 +
 +2009-08-15  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * dbusbind.c (xd_get_dispatch_status, xd_pending_messages):
 +      New functions.
 +
 +      * lisp.h (xd_pending_messages): Declare.
 +
 +      * keyboard.c (readable_events): Call xd_pending_messages.
 +
 +2009-08-15  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * eval.c (Fcalled_interactively_p, Finteractive_p): Doc fix (Bug#3936).
 +
 +      * xdisp.c (pop_it): Don't pop into a display vector (Bug#4131).
 +
 +      * buffer.c (set_buffer_internal_1)
 +      (swap_out_buffer_local_variables): Check for unbound local
 +      variables (Bug#4138).
 +
 +2009-08-14  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * process.c (create_pty): Fix last change.
 +
 +2009-08-13  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * image.c (xbm_read_bitmap_data): New arg inhibit_image_error.
 +      (xbm_load_image): Caller changed.
 +      (xbm_file_p): Avoid signalling an image_error (Bug#4107).
 +
 +2009-08-13  Nick Roberts  <nickrob@snap.net.nz>
 +
 +      * process.c (create_pty): New function.
 +      (Fstart_process): Use it to allow Emacs to just associate a pty
 +      with the buffer.  See associated change in gdb-mi.el.
 +      (list_processes_1): Deal with no program name.
 +      (start_process_unwind): Use pid == -2 to mean no process.
 +
 +2009-08-12  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * cmds.c (nonundocount): New global variable.
 +      (keys_of_cmds): Initialize it.
 +      (Fself_insert_command): Use it to combine upto 20 sequential chars
 +      into a single undo entry, just like the Qself_insert_command code in
 +      keyboard.c does.
 +      Call frame_make_pointer_invisible, also like the Qself_insert_command
 +      code in keyboard.c does.
 +      * keyboard.c (command_loop_1): Use the new global nonundocount rather
 +      than its own local replacement for it.
 +
 +2009-08-10  Ken Raeburn  <raeburn@raeburn.org>
 +
 +      * fns.c (concat): Don't re-set string length to its current value.
 +
 +      * coding.h (decode_coding_string, encode_coding_string):
 +      Use SBYTES macro.
 +
 +      * doprnt.c (doprnt_lisp): Delete unused function.
 +      (doprnt): Merge with doprnt1, discarding lispstrings code.
 +      * lisp.h (doprnt_lisp): Don't declare.
 +
 +2009-08-07  Juri Linkov  <juri@jurta.org>
 +
 +      * puresize.h (BASE_PURESIZE): Increase to 1270000.
 +
 +2009-08-07  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * print.c (syms_of_print): Undo previous change.
 +
 +2009-08-05  Teodor Zlatanov  <tzz@lifelogs.com>
 +
 +      * lread.c (read1, syms_of_lread): Read hashtables back from the
 +      readable format.
 +
 +      * print.c (print_preprocess, print_object): Print hashtables fully
 +      and readably.
 +      (syms_of_print): Provide 'hashtable-print-readable.
 +
 +2009-08-02  Adrian Robert  <Adrian.B.Robert@gmail.com>
 +
 +      * nsfont.m (ns_descriptor_to_entity): Handle case when descriptor has
 +      no family set.
 +      (nsfont_open): Handle case when entity has no family.
 +
 +2009-07-29  Adrian Robert  <Adrian.B.Robert@gmail.com>
 +
 +      * nsfont.m (ns_findfonts): Fix 2009-07-24 change to return only one
 +      element, not a list, for match case.
 +
 +2009-07-28  Kenichi Handa  <handa@m17n.org>
 +
 +      * font.c (font_parse_xlfd): Check DPI and AVGWIDTH properties more
 +      rigidly.
 +
 +      * xfont.c (xfont_list_pattern): Don't ignore the return value of
 +      font_parse_xlfd.  Check font properties more rigidly.
 +
 +2009-07-27  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * s/netbsd.h (SIGNALS_VIA_CHARACTERS): Remove, already defined in
 +      bsd-common.h.
 +
 +2009-07-27  Kenichi Handa  <handa@m17n.org>
 +
 +      * xfaces.c (face_with_height): Call font_clear_prop.
 +
 +2009-07-26  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * dispnew.c (init_display): Use Qx, Qw32, and Qns.
 +
 +      * xterm.c (x_term_init): Use Qx.
 +
 +      * nsfont.m (nsfont_draw): Revert 2009-07-15 change.
 +
 +      * nsterm.m (ns_maybe_dumpglyphs_background): Revert 2009-07-15 change.
 +      (ns_get_color): Revert 2009-07-16 change.
 +
 +2009-07-25  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * lread.c (syms_of_lread) <force_load_messages>: New variable.
 +      (Fload): Use it to force load messages, even if NOMESSAGES is non-nil.
 +
 +2009-07-25  Ken Raeburn  <raeburn@raeburn.org>
 +
 +      * coding.h (decode_coding_string, encode_coding_string):
 +      Use SCHARS macro.
 +
 +      * lread.c: Rewrite 2009-07-21 changes.
 +      (load_depth): Delete.
 +      (Qload_in_progress): New variable.
 +      (load_unwind): Don't reference load_depth or load_in_progress.
 +      (Fload): Likewise; specbind Qload_in_progress instead.
 +      (init_lread): Don't initialize load_depth.
 +      (syms_of_lread): Initialize and protect Qload_in_progress.
 +
 +2009-07-24  Adrian Robert  <Adrian.B.Robert@gmail.com>
 +
 +      * nsfont.m (ns_findfonts): Correctly return fallback in match case.
 +
 +2009-07-23  Yavor Doganov  <yavor@gnu.org>
 +
 +      * nsfont.m (NSFontDescriptor.h): Explicitly include under GNUstep.
 +
 +2009-07-23  Adrian Robert  <Adrian.B.Robert@gmail.com>
 +
 +      * nsterm.m (EmacsView-keyUp:): Only act when running under Tiger.
 +      Bugs 3792, 3720, 2402.
 +      (ns_lookup_indexed_color): Check for bad index.
 +      (ns_index_color): Init unused slot to 0.
 +      (ns_dumpglyphs_box_or_relief): Replace useless xassert with an if().
 +      Bug 3714, possibly 3082.
 +
 +2009-07-22  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32fns.c (w32_wnd_proc) [WM_IME_STARTCOMPOSITION]:
 +      Position IME window at cursor (Bug#2570).
 +      (w32_wnd_proc) [WM_IME_CHAR]: Release context when finished.
 +      (globals_of_w32fns): Dynamically load functions required above.
 +
 +      * w32term.c (w32_draw_window_cursor): Send message to reposition
 +      any IME window.
 +
 +2009-07-21  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * fileio.c: Revert 2009-07-16 changes.
 +      (Vauto_save_include_big_deletions): New variable.
 +      (Fdo_auto_save): Disable auto-save only if
 +      auto-save-include-big-deletions is nil.
 +
 +2009-07-21  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * xdisp.c (move_it_to): For continued lines ending in a tab, take
 +      the overflowed pixels into account (Bug#3879).
 +
 +2009-07-21  Ken Raeburn  <raeburn@raeburn.org>
 +
 +      * lread.c (load_depth): New variable.
 +      (Fload, load_unwind, init_lread): Set it to the load recursion
 +      depth; set load_in_progress as a simple boolean based on the
 +      current load_depth.  (Bug#3892)
 +
 +2009-07-20  Adrian Robert  <Adrian.B.Robert@gmail.com>
 +
 +      * nsfont.m (ns_has_attribute): Remove.
 +      (ns_findfonts, nsfont_open): Use ns_attribute_fvalue() instead.
 +
 +2009-07-18  Juri Linkov  <juri@jurta.org>
 +
 +      * process.c (Fset_process_query_on_exit_flag): Mention killing
 +      a buffer in docstring.
 +
 +2009-07-17  Kenichi Handa  <handa@m17n.org>
 +
 +      * casetab.c (shuffle): Fix the logic of setting up the cycle.
 +
 +2009-07-16  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
 +
 +      * nsfns.m (Fns_set_alpha): Remove function.
 +      (syms_of_nsfns): Don't defsubr it.
 +
 +      * nsterm.m (ns_get_color): Remove incompatible color formats.
 +      (ns_color_to_lisp): Generate #rrggbb color format string.
 +
 +2009-07-16  Richard Stallman  <rms@gnu.org>
 +
 +      * fileio.c (Fwrite_region, Fdo_auto_save): Handle save_length = -2.
 +      (Fset_buffer_auto_saved): Handle save_length = -2.
 +
 +2009-07-16  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * xterm.c (Qx_gtk_map_stock): New var.
 +
 +      * gtkutil.c (update_frame_tool_bar): Use Qx_gtk_map_stock instead
 +      of calling intern each time.
 +
 +2009-07-15  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
 +
 +      * nsfont.m (nsfont_draw): Remove code for stippling, which actually
 +      does tiling.
 +
 +      * nsterm.m (ns_maybe_dumpglyphs_background): Likewise.
 +
 +2009-07-14  Kenichi Handa  <handa@m17n.org>
 +
 +      * font.c (font_vconcat_entity_vectors): New function.
 +      (struct font_sort_data): New member font_driver_preference.
 +      (font_compare): Check font_driver_preference.
 +      (font_sort_entities): The format of the first argument changed.
 +      (font_delete_unmatched): Likewise.
 +      (font_list_entities): The return type changed.
 +      (font_select_entity): The format of the second argument changed.
 +      (font_find_for_lface): Adjuste for the above changes.
 +      Don't suppress the checking of C even if the repertory supports it.
 +      (Flist_fonts): Adjust for the above changes.
 +
 +      * ftfont.c (ftfont_spec_pattern): New arg langname.  Change caller.
 +      (ftfont_list): Adjust for the change of ftfont_spec_pattern.
 +      Reject a font who has adstyle property that is different from a
 +      langname derived from registry property.
 +      (ftfont_match): Adjust for the change of ftfont_spec_pattern.
 +
 +2009-07-13  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * dired.c (directory_files_internal) [WINDOWSNT]: Don't make a
 +      local copy of dirfilename.
 +
 +2009-07-13  Kenichi Handa  <handa@m17n.org>
 +
 +      * chartab.c (sub_char_table_ref_and_range): Fix the range check
 +      against max_char.
 +
 +      * cmds.c (internal_self_insert): Check sym by SYMBOLP before
 +      calling XSYMBOL (sym).
 +
 +2009-07-11  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * dired.c (directory_files_internal_w32_unwind) [WINDOWSNT]:
 +      New function.
 +      (directory_files_internal) [WINDOWSNT]:
 +      Bind w32-get-true-file-attributes to either t or nil, depending whether
 +      the filesystem of the directory is fast or slow.
 +
 +      * w32.c (logon_network_drive): Don't assume PATH is an absolute
 +      file name.
 +      (is_slow_fs): New function.
 +      (stat): Use it to determine whether to issue more system calls to
 +      get accurate file attributes, when w32-get-true-file-attributes is
 +      `local'.
 +
 +2009-07-10  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * xfns.c (Fx_select_font): Remember last font selected in
 +      x_last_font_name and use that the next time.  Also try the frame
 +      parameter font-parameter as default to the font dialog.
 +
 +2009-07-10  Kenichi Handa  <handa@m17n.org>
 +
 +      * xftfont.c (xftfont_open): Fix typo: FC_RGBA->FC_HINT_STYLE.
 +
 +2009-07-09  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * w32proc.c (syms_of_ntproc) <w32-get-true-file-attributes>: Doc fix.
 +
 +      * w32.c (stat): Treat UNC file names as residing on remote
 +      drives.  (Bug#3542)
 +
 +2009-07-09  Kenichi Handa  <handa@m17n.org>
 +
 +      * fontset.c (fontset_find_font): Fix previous change.
 +
 +2009-07-08  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * dbusbind.c (xd_initialize, Fdbus_call_method, xd_read_message)
 +      (Fdbus_register_signal, Fdbus_register_method): Cleanup memory of
 +      error flag.
 +
 +2009-07-08  Kenichi Handa  <handa@m17n.org>
 +
 +      * fontset.c (fontset_find_font): Fix the logic of handling
 +      charset_matched.
 +      (font_for_char): Delete unused var.
 +      (generate_ascii_font_name): Delete it.
 +
 +      * coding.h (JIS_TO_SJIS2): Fix the code range check.
 +
 +      * coding.c (detect_coding_sjis): Handle shift_jis-2004 correctly.
 +      (encode_coding_sjis): Fix the code range check.
 +
 +2009-07-07  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * fileio.c (Fsubstitute_in_file_name, Ffile_name_directory)
 +      (Fexpand_file_name): Copy string data properly (Bug#3772).
 +
 +2009-07-07  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * xterm.c (handle_one_xevent): Only call x_check_fullscreen on the
 +      first MapNotify.
 +
 +2009-07-07  Kenichi Handa  <handa@m17n.org>
 +
 +      * character.h (unibyte_has_multibyte_table): Delete extern.
 +      (UNIBYTE_CHAR_HAS_MULTIBYTE_P): Delete it.
 +
 +      * charset.c (Fset_charset_priority): Update charset_unibyte.
 +      (syms_of_charset): Initialize charset_unibyte.
 +
 +      * character.c (unibyte_has_multibyte_table): Delete it.
 +      (multibyte_char_to_unibyte): Use CHAR_TO_BYTE8 instead of checking
 +      charset_unibyte.
 +      (multibyte_char_to_unibyte_safe): Likewise.
 +      (Funibyte_char_to_multibyte): Don't check charset_unibyte.
 +
 +      * xdisp.c (get_next_display_element): Decode it->c by charset_unibyte.
 +      (x_produce_glyphs): Likewise.
 +
 +      * .gdbinit (xcharset): Fix the treating $arg0.
 +
 +2009-07-04  Eli Zaretskii  <eliz@gnu.org>
 +
 +      Emulation of `getloadavg' on MS-Windows.
 +      * w32.c: Include float.h.
 +      (g_b_init_get_native_system_info, g_b_init_get_system_times)
 +      (GetNativeSystemInfo_Proc, GetSystemTimes_Proc): Declare.
 +      (get_native_system_info, get_system_times): New functions.
 +      (buf_next, buf_prev, sample_system_load, getavg): New subroutines.
 +      (getloadavg): Rewrite using GetSystemTimes and GetNativeSystemInfo.
 +      (globals_of_w32): Initialize g_b_init_get_native_system_info,
 +      g_b_init_get_system_times, and num_of_processors.
 +
 +2009-07-03  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32term.c (w32_initialize): Use standard types.
 +
 +2009-07-03  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * dired.c (Ffile_attributes): Decode user and group names by the
 +      locale's encoding.  (Bug#3443)
 +
 +2009-07-03  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * sysdep.c (sys_suspend): Remove USG_JOBCTRL #ifdef, unused.
 +      (mkdir): Remove MKDIR_PROTOTYPE #ifdef, unused.
 +
 +      * callproc.c (child_setup): Use #else instead of a separate #ifdef.
 +
 +      * term.c (init_tty): Remove spurious #ifdef.
 +
 +      * m/mips.h: Mention this file is also used for netbsd.
 +      * m/pmax.h: Remove file.
 +
 +2009-07-03  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * xterm.h (struct x_display_info): Add invisible_cursor.
 +      (struct x_output): Add current_cursor.
 +
 +      * xterm.c (XTtoggle_invisible_pointer): New function.
 +      (x_define_frame_cursor): Don't define cursor if invisible or the
 +      same as before.  Set current_cursor.
 +      (x_create_terminal): Set toggle_invisible_pointer_hook.
 +
 +      * xfns.c (make_invisible_cursor): New function.
 +      (x_set_mouse_color): Call make_invisible_cursor.
 +      Set current_cursor.
 +      (x_window): Set current_cursor.
 +
 +      * termhooks.h (struct terminal): Add toggle_invisible_pointer_hook.
 +
 +      * keyboard.c (command_loop_1): Call frame_make_pointer_invisible after
 +      inserting a character.
 +      (read_avail_input): Call frame_make_pointer_visible.
 +
 +      * frame.c (Vmake_pointer_invisible): New variable.
 +      (frame_make_pointer_invisible, frame_make_pointer_visible):
 +      New functions.
 +      (syms_of_frame): DEFVAR make-pointer-invisible, initialize to Qt.
 +
 +      * frame.h: Declare frame_make_pointer_invisible and
 +      frame_make_pointer_visible.
 +      (struct frame): Add pointer_invisible.
 +
 +2009-07-02  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * gtkutil.c (xg_frame_set_char_size): Do set width/height if the
 +      frame isn't visible.
 +      (xg_frame_resized): If width/height is -1, get size of window
 +      from X server.
 +
 +      * xterm.c (handle_one_xevent): Call xg_frame_resized for USE_GTK
 +      for MapNotify.
 +
 +      * gtkutil.c (xg_frame_set_char_size): Do not set pixel width/height
 +      here or call change_frame_size.  Just call flush_and_sync.
 +      (flush_and_sync): Reintroduce.
 +
 +2009-07-01  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * xterm.h (struct x_display_info): Add Xatom_net_wm_state_sticky.
 +
 +      * xterm.c (x_handle_net_wm_state): Also look for sticky.
 +      (x_term_init): Initialize Xatom_net_wm_state_sticky.
 +
 +      * frame.h: Declare Qsticky.
 +
 +      * w32fns.c (w32_frame_parm_handlers): Set 0 for sticky.
 +
 +      * nsfns.m (ns_frame_parm_handlers): Ditto.
 +
 +      * frame.c: Declare Qsticky.
 +      (frame_parms): Add sticky.
 +
 +      * xfns.c (x_frame_parm_handlers): Let x_set_sticky handle sticky.
 +
 +      * xterm.h: Declare x_set_sticky.
 +
 +      * xterm.c (x_set_sticky): New function.
 +
 +      * gtkutil.c (xg_tool_bar_proxy_help_callback): New function.
 +      (xg_tool_bar_menu_proxy): Attach enter/leave events to
 +      xg_tool_bar_proxy_help_callback.
 +
 +      * emacs.c (USAGE3, standard_args): Add -mm and --maximized.
 +
 +      * frame.c: Qmaximized is new.
 +      (x_set_frame_parameters): Do not handle fullscreen specially.
 +      Only set width and height if explicitly set.
 +      (x_set_fullscreen): Handle Qmaximized.
 +      (x_set_font, x_figure_window_size): Do not handle fullscreen specially.
 +      (syms_of_frame): Initialize Qmaximized.
 +
 +      * frame.h (fullscreen_type): Add FULLSCREEN_MAXIMIZED.
 +      Declare Qfullwidth, Qfullheight, Qfullboth, Qmaximized.
 +
 +      * xterm.c (handle_one_xevent): Remove call to x_check_fullscreen
 +      for Expose event.  Add call to x_check_fullscreen for MapNotify event.
 +      Remove all code w.r.t. fullscreen from ConfigureNotify event.  Do not
 +      set gravity to NorthWestGravity when USE_GTK.
 +      (set_wm_state): New function.
 +      (do_ewmh_fullscreen): Use set_wm_state.  Also handle FULLSCREEN_MAXIMIZED.
 +      (x_handle_net_wm_state): Handle FULLSCREEN_MAXIMIZED.
 +      (x_check_fullscreen): Simplify so we only handle EMWH type of fullscreen
 +      or the case when no window manager is running.  That means remove calls
 +      to x_real_positions and x_fullscreen_adjust.
 +
 +      * gtkutil.c (flush_and_sync, x_wm_size_hint_off): Remove.
 +      (xg_frame_set_char_size): Remove calls to x_wm_size_hint_off and
 +      flush_and_sync.
 +      (xg_height_changed): New function.
 +      (xg_create_frame_widgets): Remove call to gtk_widget_set_size_request
 +      and gtk_window_set_policy.  Set frame gravity after parsing the
 +      geometry string.
 +      (xg_update_frame_menubar, free_frame_menubar)
 +      (xg_tool_bar_detach_callback, xg_tool_bar_attach_callback)
 +      (update_frame_tool_bar, free_frame_tool_bar): Call xg_height_changed.
 +      Remove calls to xg_frame_set_char_size.
 +
 +2009-07-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * keyboard.c (decode_keyboard_code): New function.
 +      (tty_read_avail_input): Decode the input bytes if necessary.
 +
 +      * coding.c (setup_coding_system):
 +      Initialize coding->carryover_bytes to 0.
 +      (Fset_keyboard_coding_system_internal): If CODING-SYSTEM is nil,
 +      use Qno_conversion.
 +
 +2009-07-01  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
 +
 +      * Makefile.in (SOME_MACHINE_LISP): Add ../lisp/term/common-win.elc.
 +
 +2009-06-30  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * xftfont.c (xftfont_open): Avoid passing NULL argument to XftLockFace.
 +
 +2009-06-30  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32term.c (w32_initialize): Use GetModuleHandle for library that
 +      is already loaded.
 +      Set user model ID if supported (bug#1849).
 +
 +2009-06-29  Jim Meyering  <meyering@redhat.com>
 +
 +      Remove useless if-before-xfree test.
 +      * nsfont.m (nsfont_close): Remove useless test.
 +      * term.c (delete_tty): Likewise.
 +      * w32.c (system_process_attributes): Likewise.
 +      * w32font.c (w32font_close): Likewise.
 +      * xfaces.c (x_free_gc): Likewise.
 +      * xselect.c (buffer): Likewise.
 +
 +2009-06-28  Andreas Schwab  <schwab@linux-m68k.org>
 +
 +      * process.c (send_process): Keep decoded string in a local
 +      variable and protect it from GC.  (Bug#3521)
 +
 +2009-06-28  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * term.c (create_tty_output) [MSDOS]: #ifdef away.
 +      (tty_free_frame_resources) [MSDOS]: Add a DOS-specific version.
 +
 +2009-06-28  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * xdisp.c (start_display, handle_face_prop)
 +      (move_it_vertically_backward, cursor_row_fully_visible_p)
 +      (redisplay_window, try_window_id, produce_image_glyph):
 +      Delete some #ifdef-ed out code chunks that are now obsolete.
 +
 +      * xterm.c (x_update_window_begin, x_new_focus_frame)
 +      (x_scroll_bar_handle_click, handle_one_xevent)
 +      (handle_one_xevent, XTread_socket, x_focus_on_frame)
 +      (x_make_frame_visible, x_make_frame_invisible)
 +      (x_wm_set_icon_pixmap, x_initialize): Delete some #ifdef-ed out
 +      code chunks that are now obsolete.
 +
 +2009-06-28  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * dbusbind.c (XD_SYMBOL_TO_DBUS_TYPE): Convert macro into function
 +      xd_symbol_to_dbus_type.  With Solaris 2.11, it was said to compile
 +      for hours, when optimzation is enabled.
 +      (xd_signature, xd_append_arg, xd_retrieve_arg, xd_initialize)
 +      (xd_read_message): Make them static.
 +
 +2009-06-27  Chuck Blake  <cblake@pdos.csail.mit.edu>  (tiny change)
 +
 +      * term.c (turn_on_face): Allow simultaneously bold and dim
 +      terminal faces (Bug#3530).
 +
 +2009-06-27  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * frame.c (x_get_arg): Check if dpyinfo is non-NULL.
 +
 +      * xdisp.c (mouse_face_from_buffer_pos): Fix detection of
 +      truncation glyphs (Bug#3686).
 +
 +2009-06-27  Glenn Morris  <rgm@gnu.org>
 +
 +      * m/pmax.h: Restore file, with only netbsd portions.
 +
 +2009-06-26  David Reitter  <david.reitter@gmail.com>
 +
 +      * nsterm.m (keydown): Avoid infinite loop.
 +
 +2009-06-26  Peter Jolly  <peter@jollys.org>  (tiny change)
 +
 +      * ftfont.c (get_adstyle_property): Call font_intern_prop with 1 as
 +      the arg FORCE_SYMBOL.
 +
 +2009-06-25  Kenichi Handa  <handa@m17n.org>
 +
 +      * fontset.c (fontset_find_font): When a usable rfont_def is found
 +      in a fallback font-group, make it the first element of the group.
 +
 +2009-06-24  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * emacs-icon.h: Always define gnu_xpm_bits on GTK (bug#3671).
 +
 +2009-06-24  Kenichi Handa  <handa@m17n.org>
 +
 +      * fontset.c (fontset_get_font_group): Return 0 if no font-group is
 +      set for C.
 +      (fontset_font): Record the availability of a font for C both in
 +      the realized fontsets of the current one and the default one.
 +
 +2009-06-23  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * sysdep.c (child_setup_tty): Remove SIGNALS_VIA_CHARACTERS
 +      conditional, it is always defined on AIX.
 +
 +2009-06-23  Miles Bader  <miles@gnu.org>
 +
 +      * window.c (Vrecenter_redisplay): New variable.
 +      (syms_of_window): Initialize it.
 +      (Qtty): New extern declaration.
 +      (Frecenter): Only do redisplay if Vrecenter_redisplay requests it.
 +
 +2009-06-23  Jim Meyering  <meyering@redhat.com>
 +
 +      * src/ftfont.c (setup_otf_gstring, ftfont_shape_by_flt):
 +      Use xmalloc and xrealloc (not malloc and realloc), so subsequent heap
 +      pointer dereferences are guaranteed to be valid.
 +
 +2009-06-23  Kenichi Handa  <handa@m17n.org>
 +
 +      * emacs.c (main): Call init_font ().
 +
 +      * font.h (Vfont_log): Extern it.
 +      (FONT_ADD_LOG, FONT_DEFERRED_LOG): New macros.
 +
 +      * font.c (font_sort_entities, font_list_entities)
 +      (font_matching_entity, font_open_entity)
 +      (font_close_object): Change font_add_log to FONT_ADD_LOG.
 +      (Vfont_log): Delete static.
 +      (font_log_env_checked): Delete this variable.
 +      (font_add_log): Don't check font_log_env_checked.
 +      (font_deferred_log): Check Vfont_log.
 +      (init_font): New function.
 +
 +      * ftfont.c: Change font_add_log to FONT_ADD_LOG.
 +
 +      * w32font.c: Change font_add_log to FONT_ADD_LOG.
 +
 +      * w32uniscribe.c: Change font_add_log to FONT_ADD_LOG.
 +
 +      * xfont.c: Change font_add_log to FONT_ADD_LOG.
 +
 +      * fontset.c (fontset_font): Call FONT_DEFERRED_LOG.
 +      (face_for_char): Don't call font_deferred_log here.
 +      (font_for_char): Likewise.
 +
 +2009-06-22  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * w32term.c (x_draw_glyph_string): Use the glyph string's width
 +      rather than its background_width for drawing the overline and
 +      underline (Bug#489).
 +
 +      * xterm.c (x_draw_glyph_string): Use the glyph string's width
 +      rather than its background_width for drawing the overline and
 +      underline (Bug#489).
 +      (xg_default_icon_file): New variable.
 +      (syms_of_xterm): Initialize it to the Emacs SVG icon file.
 +      (x_bitmap_icon): Under GTK, use xg_default_icon_file.
 +
 +      * xdisp.c (Qbefore_string, Qafter_string): Add externs.
 +      (load_overlay_strings): Remove externs.
 +      (fast_find_position): Function deleted.
 +      (mouse_face_from_buffer_pos): New function, based on
 +      fast_find_position.  Correctly handle before-strings,
 +      display-strings, and after-strings (Bug#1220).
 +      (note_mouse_highlight): Use mouse_face_from_buffer_pos.
 +
 +2009-06-21  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * xdisp.c (IT_DISPLAYING_WHITESPACE): Define for !HAVE_WINDOW_SYSTEM.
 +      (move_it_in_display_line_to, move_it_in_display_line_to)
 +      (display_line): Remove #ifdef HAVE_WINDOW_SYSTEM.
 +
 +2009-06-21  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * Branch for 23.1.
 +
 +2009-06-21  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32term.c (keyboard_codepage): New static variable.
 +      (w32_read_socket) [WM_INPUTLANGCHANGE]: Update it.
 +      (w32_read_socket) [WM_CHAR]: Use it to decode character
 +      input (bug#3237).
 +      (w32_initialize): Initialize it.
 +      (codepage_for_locale): New function.
 +
 +2009-06-20  Ken Raeburn  <raeburn@raeburn.org>
 +
 +      * process.c (status_message): Pass Faset index argument as a lisp
 +      object, so as to work with USE_LISP_UNION_TYPE.
 +
 +2009-06-19  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
 +
 +      * coding.c (Ffind_coding_systems_region_internal):
 +      Cache checked characters.
 +
 +2009-06-18  Kenichi Handa  <handa@m17n.org>
 +
 +      * coding.c (decode_coding_iso_2022): Check MSB of bytes more rigidly.
 +
 +2009-06-18  Andreas Schwab  <aschwab@redhat.com>
 +
 +      * xdisp.c (redisplay_internal): Check that the frame is still
 +      live after redisplay of its windows.
 +      (redisplay_windows): Check that the window is still live.
 +
 +2009-06-17  Andreas Schwab  <schwab@linux-m68k.org>
 +
 +      * coding.c (detect_coding_utf_16): Fix previous change.
 +
 +2009-06-16  Kenichi Handa  <handa@m17n.org>
 +
 +      * coding.c (detect_coding_utf_16): Fix the logic of rejecting
 +      UTF-16 by checking the dispersion of Eth and Oth bytes.
 +
 +2009-06-15  Andreas Schwab  <schwab@linux-m68k.org>
 +
 +      * coding.c (detect_coding_utf_16): Fix typo counting odd bytes.
 +
 +2009-06-15  Kenichi Handa  <handa@m17n.org>
 +
 +      * process.c (status_message): Fix previous change.  Be sure to
 +      decode a localized string.
 +
 +2009-06-15  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
 +
 +      * xterm.c (x_delete_terminal): Put previous change in #if 0 and
 +      add comment explaining why.
 +
 +2009-06-14  Sidney Markowitz  <sidney@sidney.com>
 +
 +      * nsmenu.m (EmacsTooltip: setText): Set height of tooltip.
 +
 +2009-06-14  Adrian Robert  <Adrian.B.Robert@gmail.com>
 +
 +      * nsfont.m (ns_attribute_value): Remove.
 +      (ns_attribute_fvalue): Incorporate code from ns_attribute_value.
 +      (ns_has_attribute): Shrink the normal range.
 +      (ns_findfonts): Don't worry about requested spec in determining
 +      need for synthItal.
 +      (ns_get_covering_families): Retain scriptToFamilies.
 +
 +2009-06-14  Seiji Zenitani  <zenitani@mac.com>
 +
 +      * xdisp.c [USE_MAC_TOOLBAR]: Remove obsolete definition for Mac Carbon.
 +
 +2009-06-11  Kenichi Handa  <handa@m17n.org>
 +
 +      * xdisp.c (x_get_glyph_overhangs): Fix calculation of right
 +      overhang for the static composition case.
 +
 +2009-06-11  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
 +
 +      * xdisp.c (x_get_glyph_overhangs): Fix calculation of right
 +      overhang for the automatic composition case.
 +
 +      * xterm.c (x_compute_glyph_string_overhangs): Handle the automatic
 +      composition case.
 +
 +2009-06-10  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * xdisp.c (get_next_display_element): When handling wrap-prefix
 +      and line-prefix, treat \n as a control character (bug#3502).
 +
 +2009-06-10  Kenichi Handa  <handa@m17n.org>
 +
 +      * font.c (font_parse_family_registry): Fix for one-char foundry.
 +      (font_sort_entities): Initialize prefer_prop[FONT_AVGWIDTH_INDEX].
 +
 +2009-06-09  Dmitry Dzhus  <dima@sphinx.net.ru>  (tiny change)
 +
 +      * process.c (status_message): Fix handling of multibyte signal
 +      string (Bug#3499).
 +
 +2009-06-09  Jim Meyering  <meyering@redhat.com>
 +
 +      * xfaces.c (Fx_load_color_file): Avoid array bounds error if the
 +      color name is missing.
 +
 +2009-06-09  Kenichi Handa  <handa@m17n.org>
 +
 +      * charset.c (Fmap_charset_chars): In docstring, state clearly that
 +      FROM-CODE and TO-CODE are codepoints of CHARSET.
 +
 +2009-06-08  Adrian Robert  <Adrian.B.Robert@gmail.com>
 +
 +      * nsterm.m (ns_use_system_highlight_color): Drop, unused.
 +
 +2009-06-08  Adrian Robert  <Adrian.B.Robert@gmail.com>
 +
 +      Changes to support :script/:lang/:otf in NS font driver.
 +      * nsfont.m (nsfont_escape_name, nsfont_unescape_name)
 +      (nsfont_get_family, nsfont_char_width): Rename to ns_ prefix to
 +      indicate not part of font driver interface, and change callers.
 +      (ns_get_family): Remove pointless null check.
 +      (nsfont_spec_to_traits, nsfont_fmember_to_entity): Replace with
 +      ns_spec_to_descriptor, ns_descriptor_to_entity.
 +      (nsfont_trait_distance, nsfont_make_fontset_for_font): Remove.
 +      (ns_attribute_value, ns_attribute_fvalue, ns_has_attribute)
 +      (ns_spec_to_descriptor, ns_descriptor_to_entity)
 +      (ns_charset_covers, ns_lang_to_script, ns_otf_to_script)
 +      (ns_get_req_script, ns_accumulate_script_ranges)
 +      (ns_script_to_charset, ns_get_covering_families, ns_findfonts):
 +      New functions.
 +      (nsfont_list, nsfont_match): Use ns_findfonts.
 +      (nsfont_open): Use font descriptor instead of traits.
 +      (nsfont_draw): Handle "automatic" (lookup-table) compositions.
 +      (dump_glyphstring): Rename to ns_dump_glyphstring.
 +
 +      * nsterm.h (dump_glyphstring): Rename to ns_dump_glyphstring.
 +
 +      * nsfns.m (Fns_popup_font_panel): Use shared font manager.
 +
 +      * fontset.c (fontset_from_font): Remove NS-specific code.
 +
 +2009-06-08  Peter Jones  <pjones@pmade.com>  (tiny change)
 +
 +      * nsterm.m (ns_draw_window_cursor): Respect cursor_type for
 +      nonactive windows.
 +
 +2009-06-08  Felix Mueller  <felix@enqueue.eu>  (tiny change)
 +
 +      * nsterm.m (ns_init_paths): Append path separator to INFOPATH variable.
 +
 +2009-06-08  Wolfgang Lux  <wolfgang.lux@gmail.com>  (tiny change)
 +
 +      * keyboard.c (kbd_buffer_get_event): Null-check used_mouse_menu.
 +
 +2009-06-07  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * xdisp.c (move_it_in_display_line_to): On text-only terminals,
 +      account for the overflowing of newlines into the last glyph on the
 +      display line (Bug#3482).
 +
 +2009-06-05  David Reitter  <david.reitter@gmail.com>
 +
 +      * nsselect.m (Fx_own_selection_internal, Fx_selection_exists_p)
 +      (Fx_selection_owner_p): Rename from Fns_own_selection_internal,
 +      Fns_selection_exists_p, Fns_selection_owner_p.
 +
 +2009-06-03  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32fns.c (x_create_tip_frame): Use the uniscribe font backend if
 +      available.  (Bug#3379)
 +
 +2009-05-29  Kenichi Handa  <handa@m17n.org>
 +
 +      * coding.c (get_translation_table):
 +      Check Venable_character_translation.
 +
 +2009-05-26  David Reitter  <david.reitter@gmail.com>
 +
 +      * nsterm.m (ns_raise_frame): Only raise frame if visible.
 +      (x_make_frame_visible): Move frame to front rather than calling
 +      ns_raise_frame().
 +      (keyDown:): Do not swallow events that aren't re-sent if frame
 +      isn't key window.
 +      (drawRect:): Do not set visibility/iconified flags because
 +      drawRect may be called by NSView even if the frame is hidden.
 +
 +      * nsfns.m (Fx_create_frame): Follow other ports in
 +      determining visibility; default to t.  Ensure async_visible is set.
 +
 +2009-05-23  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * dired.c (Ffile_attributes): Doc fix.
 +
 +2009-05-22  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * m/mips.h [GNU_LINUX]: Don't define DATA_START (Bug#2685).
 +
 +2009-05-21  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * xfont.c (xfont_list_pattern): Don't initialize xfont_scripts_cache
 +      and xfont_scratch_props.
 +      (syms_of_xfont): Do it here instead.
 +      (xfont_find_ccl_program): Delete, unused.
 +      (xfont_open): Delete unused var `i'.
 +
 +2009-05-21  Kenichi Handa  <handa@m17n.org>
 +
 +      * fontset.c (Qlatin): Don't make it static.
 +
 +      * xfont.c (xfont_chars_supported, xfont_supported_scripts):
 +      New functions.
 +      (xfont_scripts_cache, xfont_scratch_props): New variables.
 +      (Qlatin, Vscalable_fonts_allowed): Extern it.
 +      (xfont_list_pattern): Argument changed.  Callers changed.
 +      Check Vscalable_fonts_allowed.  Check the support of a script.
 +      (xfont_list): Don't reject a font spec with :script property.
 +      (xfont_has_char): Fix setting of encoding.
 +      (syms_of_xfont): Staticpro and initialize xfont_scripts_cache and
 +      xfont_scratch_props.
 +
 +2009-05-19  Kenichi Handa  <handa@m17n.org>
 +
 +      * font.c (font_sort_entities): Rename from font_sort_entites.
 +      Callers changed.
 +
 +2009-05-18  Kenichi Handa  <handa@m17n.org>
 +
 +      * font.c (font_find_for_lface): Copy SPEC's FONT_TYPE too.
 +
 +2009-05-19  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * frame.c (do_switch_frame) [NS_IMPL_COCOA]: Don't raise any window.
 +      (delete_frame) [NS_IMPL_COCOA]: Instead, do it here.
 +
 +2009-05-19  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
 +
 +      * xterm.c (x_delete_display): Don't call XrmDestroyDatabase here.
 +      (x_delete_terminal): Dissociate resource database from display and
 +      then call XrmDestroyDatabase before closing display.
 +
 +2009-05-18  Adrian Robert  <Adrian.B.Robert@gmail.com>
 +
 +      * nsterm.m (ns_read_socket): Remove unused variable.
 +      * frame.c (do_switch_frame): Under NS_IMPL_COCOA section, check
 +      whether selected frame is viable before raising it (based on patch
 +      by David Reitter), and improve commentary.
 +      * nsfont.m (nsfont_make_fontset_for_font): Avoid a compiler warning.
 +
 +2009-05-15  Kenichi Handa  <handa@m17n.org>
 +
 +      * font.c (Ffont_spec): Check arguments.
 +
 +2009-05-14  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * xfaces.c (tty_supports_face_attributes_p): Recognize unspecified
 +      weight when testing attributes (Bug#3282).
 +
 +2009-05-11  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
 +
 +      * gtkutil.c (xg_frame_set_char_size): Set frame pixel width/height to
 +      what we expect to get in the next ConfigureNotify event.
 +
 +      * xftfont.c (xftfont_open): Make sure that Xrender extension is added
 +      before Xft one (Bug#1696).
 +
 +2009-05-07  David Reitter  <david.reitter@gmail.com>
 +
 +      * nsfns.m (Fx_display_planes): Compute bitplanes using
 +      NSBitsPerPixelFromDepth (Bug#3207).
 +
 +2009-05-10  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * editfns.c (Ftranspose_regions): Doc fix (Bug#3248).
 +
 +2009-05-10  Ulrich Mueller  <ulm@gentoo.org>
 +
 +      * s/gnu-linux.h: Make GCPROs and UNGCPRO no-ops also on SuperH.
 +
 +2009-05-07  David Reitter  <david.reitter@gmail.com>
 +
 +      * nsterm.m (ns_dumpglyphs_stretch, ns_dumpglyphs_image):
 +      Respect mouse face background.
 +
 +2009-05-07  David Reitter  <david.reitter@gmail.com>
 +
 +      * nsterm.m (note_mouse_movement, ns_frame_up_to_date):
 +      Mouse movement/highlight: bracket drawing operations
 +      in ns_update_begin and ns_update_end.
 +
 +2009-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * nsfns.m (ns_get_screen): Rewrite.
 +      Don't presume selected-frame is of type `ns'.
 +
 +      * font.c (font_update_drivers): Sanity fallback to avoid disabling
 +      all drivers.
 +
 +      * nsterm.m (-windowDidResize:): Avoid inf-loop under GNUStep.
 +
 +2009-05-06  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
 +
 +      * keyboard.h (add_user_signal): Fix typo in extern.
 +
 +      * lisp.h (add_user_signal): Remove extern.
 +
 +      * unexelf.c (unexec): Consider a section to precede the .bss section
 +      if its addresses overlap that of .bss.
 +      (unexec) [NS_IMPL_GNUSTEP]: Copy ObjC-related data from old file
 +      instead of dumping process.
 +
 +2009-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * keyboard.c (syms_of_keyboard): Staticpro pending_funcalls.
 +
 +2009-05-04  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * Makefile.in (ctagsfiles1, ctagsfiles2): Include ObjC files in TAGS.
 +
 +2009-05-02  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * xterm.c (x_handle_net_wm_state): Move declaration of lval before
 +      any statements.
 +
 +2009-05-02  Andreas Schwab  <schwab@linux-m68k.org>
 +
 +      * process.c (read_process_output): Make sure the current buffer is
 +      always restored.
 +
 +      * coding.c (record_conversion_result): Don't modify
 +      Vlast_code_conversion_error for successful result.
 +      (alloc_destination): Don't clobber conversion result.  (Bug#1650)
 +
 +2009-05-01  Emanuele Giaquinta  <emanuele.giaquinta@gmail.com>  (tiny change)
 +
 +      * charset.c (load_charset): Reformat X==Y==Z to (X==Y)==Z.
 +      (load_charset_map): Remove unnecessary code.
 +
 +2009-04-30  David Reitter  <david.reitter@gmail.com>
 +
 +      * nsterm.m (convert_ns_to_X_keysym): Define function keys f16
 +      through f24.
 +
 +2009-04-30  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * xfaces.c (face_at_buffer_position): New arg base_face_id.
 +
 +      * xdisp.c (handle_face_prop): Pass base_face_id of iterator to
 +      face_at_buffer_position.
 +      (face_before_or_after_it_pos, get_next_display_element)
 +      (note_mouse_highlight): Update face_at_buffer_position call.
 +
 +      * term.c (term_mouse_highlight):
 +      * msdos.c (IT_note_mouse_highlight):
 +      * fontset.c (Finternal_char_font):
 +      * font.c (font_at, font_range): Update face_at_buffer_position call.
 +
 +      * dispextern.h (face_at_buffer_position): Update prototype.
 +
 +2009-04-30  Kenichi Handa  <handa@m17n.org>
 +
 +      * fontset.c (fontset_find_font): Check if rfont_def is Qnil or not.
 +
 +2009-04-29  Andreas Schwab  <schwab@linux-m68k.org>
 +
 +      * callproc.c (Fcall_process): Fix GC protection.  Make sure
 +      current buffer is always restored.
 +
 +2009-04-29  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
 +
 +      * atimer.c (init_atimer): Also clear stopped_atimers.
 +
 +      * keyboard.c (init_keyboard) [POLL_FOR_INPUT]: Reset poll_timer.
 +
 +      * process.c (create_process): Clean up merger residues of
 +      2008-07-17 change.
 +
 +2009-04-29  Ulrich Mueller  <ulm@gentoo.org>
 +
 +      * lread.c (Vread_circle): New variable.
 +      (read1): Disable recursive read if Vread_circle is nil.
 +
 +2009-04-29  Kenichi Handa  <handa@m17n.org>
 +
 +      * fontset.h (set_default_ascii_font): Delete extern.
 +
 +      * fontset.c (set_default_ascii_font): Delete this unused function.
 +
 +      * frame.c (x_set_font): When ARG is a font-object, check if the
 +      font-object matches with the ASCII font-spec of the frame's
 +      fontset.  If not, create a new fontset for the frame.  (Bug #3075)
 +
 +2009-04-28  Andreas Schwab  <schwab@linux-m68k.org>
 +
 +      * fns.c (Flocale_info): Protect vector from GC during decoding.
 +
 +      * process.c (Fstart_process): Protect argv strings from GC during
 +      encoding.
 +
 +2009-04-27  Andreas Schwab  <schwab@linux-m68k.org>
 +
 +      * sysdep.c: Include <ctype.h>.
 +
 +2009-04-27  David Reitter  <david.reitter@gmail.com>
 +
 +      * nsfont.m (nsfont_open): Remove unused variable shrink.
 +      Remove commented-out code.
 +
 +2009-04-26  Johan Bockgård  <bojohan@gnu.org>
 +
 +      * keyboard.c (syms_of_keyboard) <input-decode-map>: Doc fix.
 +
 +2009-04-25  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32font.c (clear_cached_metrics): Remove, unused since 2008-08-02.
 +
 +2009-04-25  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
 +
 +      * fringe.c (init_fringe_bitmap) [HAVE_X_WINDOWS && WORDS_BIG_ENDIAN]:
 +      Swap bytes in short integer if fringe bitmap width > 8.
 +
 +2009-04-23  Kenichi Handa  <handa@m17n.org>
 +
 +      * xfaces.c (Fx_list_fonts): If a font size is specified in
 +      PATTERN, set it in returned scalable fonts.
 +
 +2009-04-22  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * keyboard.c (Fset_input_meta_mode): Doc fix.
 +
 +      * dispnew.c (Fsend_string_to_terminal): Doc fix.
 +
 +      * data.c (Fterminal_local_value, Fset_terminal_local_value): Doc fixes.
 +
 +      * coding.c (Fterminal_coding_system): Doc fix.
 +
 +      * xfns.c (Fx_display_grayscale_p, Fx_display_pixel_width)
 +      (Fx_display_pixel_height, Fx_display_planes)
 +      (Fx_display_color_cells, Fx_server_max_request_size)
 +      (Fx_server_vendor, Fx_server_version, Fx_display_screens)
 +      (Fx_display_mm_height, Fx_display_mm_width)
 +      (Fx_display_backing_store, Fx_display_visual_class)
 +      (Fx_display_save_under, Fx_close_connection, Fx_synchronize):
 +      Doc fixes, replacing "terminal id" with "terminal object".
 +      (check_x_display_info): Handle terminal objects instead of
 +      terminal ids.
 +
 +      * term.c (Ftty_display_color_p, Ftty_display_color_cells)
 +      (Ftty_type, Fcontrolling_tty_p, Ftty_no_underline, Fsuspend_tty)
 +      (Fresume_tty, Vsuspend_tty_functions, Vresume_tty_functions):
 +      Doc fixes, replacing "terminal id" with "terminal object".
 +
 +2009-04-21  Kenichi Handa  <handa@m17n.org>
 +
 +      * font.c (font_load_for_lface): Cancel previous change (bug#2994).
 +      (font_score): Check AVGWIDTH too.
 +
 +      * coding.c (decode_coding_utf_16): Reduce charbuf_end for the
 +      worst case.
 +      (decode_coding_sjis, decode_coding_big5, decode_coding_charset)
 +      (decode_coding_emacs_mule, decode_coding_iso_2022): Likewise.
 +
 +2009-04-19  Jason Rumney  <jasonr@gnu.org>
 +
 +      The following changes fix Bug#3005 for wide glyphs on each platform,
 +      without reintroducing Bug#1258 for stretch glyphs.
 +
 +      * xterm.c (x_draw_bar_cursor): Limit cursor width differently for
 +      BAR_CURSOR and HBAR_CURSOR.  Calculate width of HBAR_CURSOR using
 +      get_phys_cursor_geometry.
 +
 +      * w32term.c (x_draw_bar_cursor): Limit cursor width differently
 +      for BAR_CURSOR and HBAR_CURSOR.  Calculate width of HBAR_CURSOR
 +      using get_phys_cursor_geometry.
 +
 +      * nsterm.m (ns_draw_window_cursor): HBAR_CURSOR width already
 +      correctly calculated.
 +
 +2009-04-19  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * gtkutil.c (xg_tool_bar_menu_proxy, update_frame_tool_bar):
 +      Use G_CALLBACK instead of GTK_SIGNAL_FUNC which is deprecated.
 +      (xg_initialize): Use g_type_class_ref instead of gtk_type_class which
 +      is deprecated.
 +
 +2009-04-18  Andreas Schwab  <schwab@linux-m68k.org>
 +
 +      * font.c (font_put_frame_data): Use xfree instead of free.
 +
 +2009-04-17  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * w32font.c (Qja, Qko): Remove declarations.
 +      (syms_of_w32font): Don't DEFSYM them.
 +
 +2009-04-17  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * font.c (Qja, Qko): Move definitions here from ftfont.c.
 +
 +      * font.h (Qja, Qko): Extern them.
 +
 +      * ftfont.c (Qja, Qko): Remove declarations.
 +
 +      * xfont.c (Qja, Qko): Remove declarations.
 +
 +2009-04-17  Kenichi Handa  <handa@m17n.org>
 +
 +      * editfns.c (Ftranslate_region_internal): Use Fconcat to make a
 +      string from a vector to handle Latin-1 characters correctly.
 +
 +      * ftfont.c (ftfont_pattern_entity): Return a newly allocated
 +      entity even if the cache hits.
 +
 +2009-04-16  Andreas Schwab  <schwab@linux-m68k.org>
 +
 +      * search.c (boyer_moore): Use zero as marker value for a possible
 +      match instead of depending on overflow behavior.  (Bug#2844)
 +
 +      * search.c: Use EMACS_INT for buffer positions.  Add prototypes.
 +      * lisp.h: Adjust prototypes.
 +
 +2009-04-16  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * keyboard.c (adjust_point_for_property): Disable 2009-02-12
 +      change (Bug#3003).
 +
 +2009-04-16  Kenichi Handa  <handa@m17n.org>
 +
 +      * xfont.c (xfont_has_char): Special handling of `ja' and `ko' adstyle.
 +
 +      * xftfont.c (xftfont_has_char): Special handling of `ja' and `ko'
 +      adstyle.
 +
 +      * ftfont.c (Qja, Qko): Don't make them static.
 +      (enum ftfont_cache_for): New enum.
 +      (fc_charset_table): Undo the previous change.
 +      (ftfont_get_latin1_charset): Delete it.
 +      (ftfont_pattern_entity): Check cache by ftfont_lookup_cache.
 +      Set FONT_SIZE_INDEX of the entity to 0 for a scalable font.  For a
 +      non-scarable font, try to get AVERAGE_WIDTH.
 +      (ftfont_lookup_cache): Argument FOR-FACE is changed to CACHE_FOR.
 +      Change ft_face_cache from a list of a hash-table.  Don't check
 +      `ja' and `ko' adstyle here.
 +      (ftfont_get_fc_charset): Call ftfont_lookup_cache with
 +      FTFONT_CACHE_FOR_CHARET.
 +      (ftfont_get_charset): Undo the previous change.
 +      (ftfont_open): Call ftfont_lookup_cache with FTFONT_CACHE_FOR_FACE.
 +      (ftfont_close): Likewise.
 +      (ftfont_has_char): Special handling of `ja' and `ko' adstyle.
 +
 +      * font.c (font_sort_entites): Change the meaning of the arg
 +      BEST-ONLY.  Don't optimize for VEC of lenght 1.
 +      (font_select_entity): Just return the value of font_sort_entites.
 +
 +      * xfaces.c (merge_face_vectors): Reflect font properties in
 +      to[LFACE_FONT_INDEX] to the other face attributes.  Don't call
 +      font_clear_prop if a face attribute doesn't change.
 +
 +      * charset.h (charset_ksc5601): Extern it.
 +
 +      * charset.c (charset_ksc5601): New variable.
 +      (Fdefine_charset_internal): Set charset_ksc5601.
 +      (init_charset_once): Initialize charset_ksc5601 to -1.
 +
 +2009-04-15  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * fileio.c (history_delete_duplicates): Remove unused declaration.
 +
 +      * callint.c (history_delete_duplicates): New declaration.
 +      (Fcall_interactively): Remove command history duplicates when
 +      history_delete_duplicates is true.
 +
 +2009-04-14  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * buffer.c (syms_of_buffer) <line-spacing>: Doc fix.
 +
 +2009-04-14  Kenichi Handa  <handa@m17n.org>
 +
 +      * font.c (Ffont_info): Fix docstring.  Fix the second element of
 +      the returned value (bug#2949).
 +
 +2009-04-14  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * xdisp.c (Vwrap_prefix, Vline_prefix): Reflow docstrings.
 +
 +2009-04-14  Kenichi Handa  <handa@m17n.org>
 +
 +      * xfont.c (xfont_has_char): The font has C if C is ASCII and the
 +      encoding charset is ascii_compatible.
 +
 +      * charset.c (Fdefine_charset_internal): Make charset
 +      ascii-compatible if the method is CHARSET_METHOD_OFFSET, the
 +      code_offset is 0, and covers all ASCII characters.
 +
 +2009-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * nsselect.m (symbol_to_nsstring, clean_local_selection_data)
 +      (ns_string_to_pasteboard_internal):
 +      * nsmenu.m (process_dialog):
 +      * nsimage.m (ns_load_image): Use SDATA and ASET where appropriate.
 +      * nsfont.m (nsfont_open): Use XHASH to make it compile with LISP_UNION.
 +      * lisp.h (Fx_load_color_file): Declare.
 +
 +2009-04-13  Kenichi Handa  <handa@m17n.org>
 +
 +      * font.c (font_delete_unmatched): Preserve the order of list elements.
 +      (font_select_entity): Suppress the code to optimize for the same
 +      kind of fonts.
 +      (font_load_for_lface): Get a font that supports at least ASCII
 +      characters.
 +
 +      * ftfont.c (Qja, Qko): New variables.
 +      (fc_charset_table): Delete uniquifier data for iso8859-1.
 +      (ftfont_get_latin1_charset): New function.
 +      (get_adstyle_property): New function.
 +      (ftfont_pattern_entity): Set FONT_ADSTYLE_INDEX of entity for
 +      bitmap fonts.
 +      (ftfont_lookup_cache): Handle the case that KEY is a font-entity.
 +      Delete iso-8859-1 range from the charset of fonts whose adstyle is
 +      `ko' or `ja'.
 +      (ftfont_get_fc_charset): Call ftfont_lookup_cache with ENTITY.
 +      (ftfont_get_charset): For iso8859-1, call ftfont_get_latin1_charset.
 +      (ftfont_list): Don't refuse a font spec with non-nil `adstyle'
 +      property.
 +      (ftfont_open): Call ftfont_lookup_cache with ENTITY.
 +      (syms_of_ftfont): DEFSYM Qja and Qko.
 +
 +2009-04-09  Kenichi Handa  <handa@m17n.org>
 +
 +      * charset.c (map_charset_chars): For a charset of `superset'
 +      method, fix calculation of code range.
 +
 +      * font.c (font_put_extra): If VAL is nil, delete the slot for PROP
 +      from the list of extra properties.
 +      (font_clear_prop): Be sure to delete `:name' font property.
 +
 +2009-04-08  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
 +
 +      * dispnew.c (redraw_overlapping_rows): Fix detection of
 +      overlapping for topmost and bottommost rows.
 +
 +      * ftfont.c (ftfont_text_extents): Fix calculation of metrics->descent.
 +
 +2009-04-06  Jason Rumney  <jasonr@gnu.org>
 +
 +      * frame.c (x_set_font): Avoid C99 mid-block variable declaration.
 +
 +2009-04-06  Kenichi Handa  <handa@m17n.org>
 +
 +      * ftxfont.c (ftxfont_draw_backgrond): Fix args to XFillRectangle.
 +
 +      * xftfont.c (xftfont_open): Fix setting font->underline_thickness.
 +
 +2009-04-06  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
 +
 +      * ftfont.c (ftfont_open): Fix checking of the return value of
 +      FT_Load_Char.  Fix setting font->underline_thickness.
 +
 +2009-04-04  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * terminal.c (Fterminal_name, Fdelete_terminal, Fterminal_name)
 +      (Fterminal_parameters, Fterminal_parameter)
 +      (Fset_terminal_parameter): In doc string, refer to terminal
 +      objects rather than terminal ids.
 +
 +2009-04-04  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * dosfns.c (system_process_attributes) [SYSTEM_MALLOC]: Don't call
 +      ret_lim_data.  (Bug#2867)
 +
 +2009-04-03  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * term.c (produce_stretch_glyph): Reduce width of stretch glyphs
 +      so they don't get wider than the window, matching 2006-01-23
 +      change to the partner function in xdisp.c (Bug#2800).
 +
 +2009-04-03  Kenichi Handa  <handa@m17n.org>
 +
 +      * print.c (print_object): Make each lowest sub_char_table start a
 +      new line (Bug#2866).
 +
 +2009-04-02  Kenichi Handa  <handa@m17n.org>
 +
 +      * fontset.c (fontset_font): Record no-font when a fontset
 +      explicitly tells not to try another font-specs.
 +
 +2009-03-30  Pierre Poissinger  <pierre.poissinger@gmail.com>  (tiny change)
 +
 +      * charset.c (map_charset_for_dump): Add missing UNGCPRO.
 +
 +2009-03-30  Kenichi Handa  <handa@m17n.org>
 +
 +      * fontset.c (fontset_from_font): Specify only registry in a
 +      font-spec for all characters supported by that registry.
 +
 +      * ftfont.c: Fix previous change.  Define ftfont_variation_glyphs
 +      even if HAVE_M17N_FLT is not defined.
 +
 +2009-03-29  Sebastian Rose  <sebastian_rose@gmx.de>  (tiny change)
 +
 +      * ftfont.c: Conditionalize prototyping and use of
 +      ftfont_variation_glyphs.
 +
 +2009-03-28  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * frame.c (delete_frame): Work around compiler bug.
 +
 +      * editfns.c (general_insert_function): Adjust to insdel.c changes.
 +      * insdel.c (prepare_to_modify_buffer, signal_before_change):
 +      Some more EMACS_INT.
 +      * lisp.h (copy_text, count_size_as_multibyte): Fix last change.
 +
 +      * xdisp.c (dump_glyph): Fix typo.
 +
 +      * insdel.c (move_gap, move_gap_both, gap_left, gap_right)
 +      (adjust_markers_gap_motion, adjust_markers_for_delete)
 +      (adjust_markers_for_insert, adjust_point)
 +      (adjust_markers_for_replace, make_gap_larger, make_gap_smaller)
 +      (make_gap, copy_text, count_size_as_multibyte, insert)
 +      (insert_and_inherit, insert_before_markers)
 +      (insert_before_markers_and_inherit, insert_1)
 +      (count_combining_before, count_combining_after, insert_1_both)
 +      (insert_from_string, insert_from_string_before_markers)
 +      (insert_from_string_1, insert_from_gap, insert_from_buffer)
 +      (insert_from_buffer_1, adjust_after_replace)
 +      (adjust_after_replace_noundo, adjust_after_insert, replace_range)
 +      (replace_range_2, del_range, del_range_1, del_range_byte)
 +      (del_range_both, del_range_2, modify_region)
 +      (prepare_to_modify_buffer, signal_before_change)
 +      (signal_after_change, Fcombine_after_change_execute): Use EMACS_INT
 +      for buffer positions and sizes.
 +      * lisp.h: Adjust prototypes accordingly.
 +
 +      * fileio.c (adjust_markers_for_delete): Move declaration to lisp.h.
 +      (non_regular_inserted, non_regular_nbytes, read_non_regular)
 +      (Finsert_file_contents): Use EMACS_INT for buffer positions.
 +
 +      * fileio.c (Finsert_file_contents): Don't limit size to INT_MAX/4.
 +
 +2009-03-27  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * frame.c (x_set_font): If the fullscreen property is non-nil, adjust
 +      lines and columns so we keep the same pixel height and width.
 +
 +      * xterm.c (handle_one_xevent): Call x_handle_net_wm_state if
 +      the property _NET_WM_STATE has changed.
 +      (x_handle_net_wm_state): New function to update frame parameter
 +      fullscreen.
 +      (x_term_init): Initialize atoms for _NET_WM_STATE.
 +
 +      * xterm.h (struct x_display_info): Add atoms for _NET_WM_STATE.
 +
 +2009-03-27  Kevin Ryde  <user42@zip.com.au>
 +
 +      * keyboard.c (tty_read_avail_input): Don't treat a -1 return from
 +      Gpm_GetEvent as an error that justifies closing the filedescriptor.
 +      * term.c (close_gpm): Get the filedescriptor as a (new) parameter.
 +      (Fgpm_mouse_stop): Pass that new parameter.
 +      * termhooks.h (close_gpm): Adjust prototype.
 +
 +2009-03-26  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * lisp.h (Fx_focus_frame): Declare.
 +
 +      * callint.c (Fcall_interactively): For '^' just delegate the work to
 +      handle-shift-selection.
 +      (syms_of_callint): Move declaration of shift-select-mode to simple.el.
 +
 +2009-03-24  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * editfns.c (Ffloat_time): Doc fix (Bug#2768).
 +
 +      * data.c (Qinteractive_form): New variable.
 +      (Finteractive_form): Use it.
 +
 +      * eval.c (Fcommandp): Use Qinteractive_form.
 +
 +2009-03-24  Jason Rumney  <jasonr@gnu.org>
 +
 +      * fileio.c (Fsubstitute_in_file_name): Always work on a copy.
 +      Calculate total size precisely.  Decode environment variables
 +      before substituting.  (Bug#38)
 +
 +2009-03-24  Kenichi Handa  <handa@m17n.org>
 +
 +      * font.c (find_font_encoding): Return Qnil for unsupported
 +      encoding (Bug#2722).
 +
 +2009-03-23  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * gtkutil.c (xg_display_open): Assign a value to gdpy_def, check
 +      that gdpy is set.
 +
 +2009-03-22  Alan Mackenzie  <acm@muc.de>
 +
 +      * callint.c (Finteractive): Clarify the doc string - even
 +      promptless elements need \n separators.
 +
 +2009-03-22  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32term.c (syms_of_w32term): Doc fix for
 +      x-use-underline-position-properties.
 +
 +2009-03-21  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * w32.c (getpwuid): Change argument type to unsigned.
 +      (struct w32_id): Change type of `rid' member to unsigned.
 +      (w32_cached_id, w32_add_to_cache, get_name_and_id): Change type of
 +      argument ID to unsigned.  All callers changed.
 +      (getuid, geteuid, getgid, getegid): Change return type to unsigned.
 +
 +2009-03-20  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * editfns.c (Fuser_uid, Fuser_real_uid): If UID as EMACS_INT is
 +      negative, produce a float value.
 +
 +      * dired.c (make_uid, make_gid): New functions.
 +      (Ffile_attributes): Use them to avoid negative UID and GID.
 +
 +2009-03-20  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * keyboard.c (Fcurrent_idle_time): Reflow docstring.
 +      (syms_of_keyboard) <command-hook-internal, input-method-function>:
 +      Fix typos in docstrings.
 +
 +2009-03-19  Kenichi Handa  <handa@m17n.org>
 +
 +      * fontset.c (Fset_fontset_font): When a spec of ASCII font is
 +      changed, use font_load_for_lface to get a new font object.
 +      Call free_realized_fontset after handling ASCII font change.
 +
 +      * frame.c (x_set_font): Handle the case that ARG is a cons.
 +
 +2009-03-19  Glenn Morris  <rgm@gnu.org>
 +
 +      * fileio.c (Fsubstitute_in_file_name): Doc fix.
 +
 +2009-03-19  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * indent.c (Fvertical_motion): Undo 2005-01-19 change (Bug#2694).
 +
 +2009-03-19  Kenichi Handa  <handa@m17n.org>
 +
 +      * charset.c (load_charset_map_from_file): When a mapfile can't be
 +      loaded, signal an error.
 +
 +2009-03-18  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * dired.c (Ffile_attributes): Make sure UID and GID are always
 +      positive, even if the value is too large for a positive EMACS_INT.
 +      Doc fix.
 +
 +      * editfns.c (Fuser_login_name): Support float arguments.  Doc fix.
 +
 +2009-03-18  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
 +
 +      * xmenu.c (xdialog_show): Move Fredisplay call ...
 +      (Fx_popup_dialog): ... here.
 +
 +2009-03-18  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * dired.c (file_name_completion): Disable the first optimization just
 +      installed, since it is not implemented correctly.
 +
 +2009-03-17  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * dired.c (file_name_completion): Check completion-ignored-extensions
 +      only if the entry can affect bestmatch.
 +      Stop the search early, as Ftry_completion already does.
 +
 +2009-03-17  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * minibuf.c (Vminibuffer_completion_confirm): Doc fix.
 +
 +2009-03-15  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * keyboard.c (parse_menu_item): Don't display remappings as menu
 +      equivalent bindings (Bug#788).
 +
 +2009-03-15  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32term.h (WM_EMACS_PAINT): New message.
 +      * w32term.c (w32_read_socket): Use it instead of WM_PAINT.
 +      * w32fns.c (w32_wnd_proc): Change WM_PAINT to WM_EMACS_PAINT
 +      before passing to lisp thread.  (Bug#950)
 +
 +2009-03-14  David Reitter  <david.reitter@gmail.com>
 +
 +      * nsterm.m (ns_shutdown_properly, -terminate): Remove global state
 +      variable as it was never reset.
 +      (ns_term_init): Remove initialization of Lisp-settable defaults
 +      and ns_expand_space.
 +      (-setPanelFromDefaultValues): Remove ns_expand_space.
 +      (-showPreferencesWindow): Send new KEY_NS_SHOW_PREFS key.
 +      * nsfont.m (nsfont_open): Remove ns_expand_space, assume -0.5
 +      i.e. no additional spacing, similar to Carbon port.
 +
 +      * nsterm.h: Define KEY_NS_SHOW_PREFS key.
 +      * nsfns.m (ns-popup-prefs-panel): Remove.
 +
 +2009-03-14  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * sound.c (alsa_configure): Remove call to deprecated
 +      snd_pcm_sw_params_set_xfer_align.
 +
 +2009-03-14  Stephen Berman  <stephen.berman@gmx.net>
 +
 +      * gtkutil.c (xg_tool_bar_callback): Set focus back to the frame
 +      after clicking in a detached tool bar.
 +      (xg_tool_bar_proxy_callback): Remove call to Fx_focus_frame.
 +
 +2009-03-13  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * fontset.c (fontset_from_font, Ffontset_info): YAILOM (Yet another
 +      int/Lisp_Object mixup).
 +
 +2009-03-13  Kenichi Handa  <handa@m17n.org>
 +
 +      * fontset.c (Ffontset_info, check_fontset_name): New arg frame.
 +      Handle NAME nil and t correctly.  Callers changed.
 +      (font_def_arg, add_arg, from_arg, to_arg): Delete them.
 +      (set_fontset_font): Change ARG to a vector.  Handle range_list in
 +      ARG correctly.
 +      (Fset_fontset_font): Fix the case that TARGET is both a script
 +      name and charset name.  Adjust the arg to set_fontset_font for
 +      the above change.
 +      (fontset_from_font): Fix previous change.
 +      (Ffontset_info): Adjust for the 2008-07-09 change of fontset
 +      entry.  If FONTSET is the default fontset, don't set the extra
 +      slot of the returning char-table.
 +
 +2009-03-12  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * nsfns.m (Fx_close_connection): Doc fix.
 +      (Fns_do_applescript): Reflow docstring.
 +      (Fns_hide_others, Fns_hide_emacs, Fns_convert_utf8_nfd_to_nfc)
 +      (Fx_display_pixel_width, Fx_display_pixel_height)
 +      (Fns_display_usable_bounds, Fx_display_planes, Fx_show_tip):
 +      Fix typos in docstrings.
 +      (Fns_set_alpha): Fix typos in error messages.
 +
 +2009-03-12  David Reitter  <david.reitter@gmail.com>
 +
 +      * termhooks.h [HAVE_NS]: Define NS_NONKEY_EVENT to be used for
 +      non-key system events on NS.  Formerly, NON_ASCII_KEYSTROKE_EVENT
 +      were used for such events.
 +
 +      * nsterm.m (newFrame, openFile, fulfillService, changeFont)
 +      (toggleToolbar, performDragOperation, runHelp): Use it.
 +
 +      * keyboard.c (parse_menu_item) [HAVE_NS]: Treat new event like
 +      NON_ASCII_KEYSTROKE_EVENT, but set used_mouse_menu.
 +
 +2009-03-11  Kenichi Handa  <handa@m17n.org>
 +
 +      * font.h (font_open_by_spec): Extern it.
 +
 +      * font.c (font_open_by_spec): New function.
 +      (font_open_by_name): Use font_open_by_spec.
 +
 +      * frame.c (x_set_font): When ARG is a font-object, don't alter the
 +      fontset of the frame.
 +
 +      * fontset.c (Fset_fontset_font): When a font for ASCII is changed,
 +      modify the default font of frames that use this fontset.
 +      (num_auto_fontsets): New variable.
 +      (fontset_from_font): Use num_auto_fontsets to decide a fontset
 +      name.  Be sure to set FONTSET_ASCII to the correct font name.
 +      (update_auto_fontset_alist): New function.
 +
 +2009-03-11  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * makefile.w32-in: Update dependencies.
 +
 +2009-03-06  Adrian Robert  <Adrian.B.Robert@gmail.com>
 +
 +      * nsfns.m (syms_of_nsfns): Remove Qbuffered.
 +
 +2009-03-10  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * buffer.c (Fswitch_to_buffer): Revert part of 2008-10-21's change.
 +
 +2009-03-10  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * lread.c (Feval_buffer): Doc fix.
 +
 +2009-03-09  Kenichi Handa  <handa@m17n.org>
 +
 +      * charset.c (Qfile_name_handler_alist): Extern it.
 +      (load_charset_map_from_file): Temporarily bind
 +      `file-name-handler-alist' to nil while calling openp.  (Bug#2435)
 +
 +2009-03-06  Aaron Ecay  <aaronecay@gmail.com>  (tiny change)
 +
 +      * nsterm.m (ns_draw_vertical_window_border): Draw 1 pixel wide,
 +      not two, and use NSRectFill instead of NSDrawGroove.  (Bug#2352)
 +
 +2009-03-06  Adrian Robert  <Adrian.B.Robert@gmail.com>
 +
 +      * nsterm.m: Include <signal.h> for SIGTERM used in ns_term_shutdown.
 +      (x_set_window_size): Change back to calculated method of setting
 +      toolbar height under Cocoa.  (Bug#2546)
 +      (EmacsView-windowWillUseStandardFrame:defaultFrame:): New method.
 +      (EmacsView-drawRect:): Completely shortcircuit if ns_in_resize.
 +
 +      * nsfns.m (ns_appkit_version_int): Fix typo in the version macro.
 +
 +      * nsmenu.m (EmacsMenu-addItemWithWidgetValue:): Don't add
 +      accelerator in parens under GNUstep.
 +
 +2009-03-06  Kenichi Handa  <handa@m17n.org>
 +
 +      These changes are to detect incorrect composition sequence without
 +      looking ahead the source.  (Bug#2370)
 +
 +      * coding.h: Include "composite.h".
 +      (enum compisition_state): New enum.
 +      (struct compisition_status): New struct.
 +      (struct iso_2022_spec): New member cmp_status.
 +      (struct emacs_mule_spec): New struct.
 +      (struct coding_system): New members ctext_extended_segment_len and
 +      embedded_utf_8.  Change the union member
 +      spec.emacs_mule_full_support to spec.emacs_mule.
 +
 +      * coding.c (CODING_ISO_CMP_STATUS): New macro.
 +      (CODING_ISO_EXTSEGMENT_LEN, CODING_ISO_EMBEDDED_UTF_8): New macros.
 +      (MAX_ANNOTATION_LENGTH): Define to 5.
 +      (ADD_COMPOSITION_DATA): New arg nbytes.
 +      (emacs_mule_char): New arg cmp_status.
 +      (DECODE_EMACS_MULE_COMPOSITION_CHAR): Delete it.
 +      (DECODE_EMACS_MULE_COMPOSITION_RULE_20): New arg c.
 +      (DECODE_EMACS_MULE_COMPOSITION_RULE_21): New arg c.
 +      (DECODE_EMACS_MULE_21_COMPOSITION): Delete the arg c.
 +      (DECODE_EMACS_MULE_20_RELATIVE_COMPOSITION): Likewise.
 +      (DECODE_EMACS_MULE_20_RULEBASE_COMPOSITION): Likewise.
 +      (DECODE_EMACS_MULE_COMPOSITION_START): New macro.
 +      (EMACS_MULE_COMPOSITION_END): New macro.
 +      (emacs_mule_finish_composition): New function.
 +      (EMACS_MULE_MAYBE_FINISH_COMPOSITION): New macro.
 +      (decode_coding_emacs_mule): Avoid long looking ahead while
 +      handling composition.
 +      (DECODE_COMPOSITION_RULE): Argument changed to rule and nbytes.
 +      (ENCODE_COMPOSITION_RULE): New macro.
 +      (finish_composition): New function.
 +      (MAYBE_FINISH_COMPOSITION): Call finish_composition.
 +      (DECODE_COMPOSITION_START): New implementation.
 +      (DECODE_COMPOSITION_END): Likewise.
 +      (STORE_COMPOSITION_RULE): New macro.
 +      (decode_coding_iso_2022): Avoid long looking ahead while handling
 +      composition, CTEXT extended segment, and embedded UTF-8.
 +      (setup_coding_system): For a coding of type iso-2022, reset
 +      CODING_ISO_EXTSEGMENT_LEN (coding) and
 +      CODING_ISO_EMBEDDED_UTF_8 (coding).
 +      (get_translation): Delete arguments last_block, from_nchars,
 +      to_nchars.  Callers changed.
 +      (produce_chars): Don't modify charbuf.  Adjusted for the change of
 +      get_translation.
 +      (produce_composition): Adjust for the new annotation sequence.
 +      (handle_composition_annotation): Likewise.
 +      (consume_chars): Adjust for the change of get_translation.
 +
 +2009-03-05  Adrian Robert  <Adrian.B.Robert@gmail.com>
 +
 +      * nsterm.m (ns_select): Shortcircuit if reentrant call.  (Bug#2564)
 +
 +2009-03-05  Kenichi Handa  <handa@m17n.org>
 +
 +      * font.c (font_select_entity): New function.
 +      (font_find_for_lface): Use font_select_entity to select a font.
 +
 +      * fontset.c (fontset_find_font): If a font found without
 +      restricting to the characters C doesn't support C, try to find a
 +      font with C restriction.
 +
 +2009-03-04  Nikolaj Schumacher  <me@nschum.de>
 +
 +      * nsfont.m (nsfont_draw): Compare ns_antialias_text against lisp value.
 +
 +2009-03-04  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32fns.c (w32_wnd_proc): Only ignore IME messages for the
 +      characters that have already been read.  (Bug#2569)
 +
 +      * image.c (xbm_read_bitmap_data, png_load, svg_load_image):
 +      Log an error message if check_image_size failed.
 +      (xpm_load_image, pbm_load, jpeg_load, tiff_load, gif_load)
 +      (gs_load): Mention max-image-size in size error message.  (Bug#2560)
 +
 +2009-03-02  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * callproc.c (Fcall_process): Bind inhibit-modification-hooks to t
 +      when decoding process output.
 +
 +2009-03-01  Richard M Stallman  <rms@gnu.org>
 +
 +      * m/mips.h (DATA_SEG_BITS, XUINT, XSET): Definitions disabled.
 +
 +      * emacs.c (gdb_data_seg_bits) [USE_LSB_TAG]: Make it 0.
 +
 +2009-02-28  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * coding.c (decode_coding_utf_8, decode_coding_utf_16)
 +      (decode_coding_emacs_mule, decode_coding_iso_2022)
 +      (encode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
 +      (decode_coding_raw_text, decode_coding_charset)
 +      (setup_coding_system, decode_eol, decode_coding, consume_chars):
 +      Honor inhibit-eol-conversion.  (Bug #2186)
 +
 +2009-02-28  Jason Rumney  <jasonr@gnu.org>
 +
 +      * coding.c (detect_coding_charset): If not checking latin extra,
 +      fail on characters between 0x80 and 0xA0.  (Bug#2354)
 +
 +2009-02-28  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * coding.c (detect_coding_charset): Fix change from 2008-10-21.
 +      Also, check iso-latin-*, not only iso-8859-*.  (Bug#2497)
 +
 +2009-02-27  Glenn Morris  <rgm@gnu.org>
 +
 +      * callint.c (Finteractive): Doc fix.
 +
 +2009-02-27  Kenichi Handa  <handa@m17n.org>
 +
 +      * lread.c (read_escape): Signal an error for invalid \UXXXXXXXX.
 +
 +2009-02-27  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * font.c (font_style_to_value): Set value for unknown symbols to
 +      100 instead of 255.
 +      (weight_table, slant_table, width_table): Treat "unspecified" as
 +      the default value.
 +
 +2009-02-26  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * fileio.c (Fnext_read_file_uses_dialog_p): Fix typo in docstring.
 +
 +2009-02-25  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * lread.c (Fload): Stop checking Vloads_in_progress and signal
 +      error as soon as a recursive load is detected.
 +
 +2009-02-24  Adrian Robert  <Adrian.B.Robert@gmail.com>
 +
 +      * nsterm.m (ns_ring_bell): Convert rect to window coordinates
 +      before caching.
 +
 +2009-02-24  Kenichi Handa  <handa@m17n.org>
 +
 +      * fontset.c (fontset_find_font): Fix the condition for checking
 +      unavailable font.
 +
 +2009-02-24  Glenn Morris  <rgm@gnu.org>
 +
 +      * xfaces.c (Finternal_set_font_selection_order): Remove leading
 +      whitespace that confuses documentation.
 +
 +2009-02-23  Miles Bader  <miles@gnu.org>
 +
 +      * process.c (Flist_system_processes, Fprocess_attributes)
 +      (syms_of_process): Rename `system-process-attributes' to
 +      `process-attributes'.
 +
 +2009-02-22  Andreas Schwab  <schwab@linux-m68k.org>
 +
 +      * coding.h (struct coding_system): Make safe_charsets a pointer to
 +      unsigned char.
 +      * coding.c (CODING_ISO_REQUEST): Check for safe_charsets content
 +      being 255.
 +      (SAFE_CHARSET_P): Likewise.
 +      (setup_iso_safe_charsets): Properly setup safe_charsets.
 +      (Fdefine_coding_system_internal): Likewise.
 +      (setup_coding_system): Likewise.  Remove unneeded casts.
 +      (detect_coding_iso_2022): Compare Viso_2022_charset_list with
 +      CODING_ATTR_CHARSET_LIST, not CODING_ATTR_SAFE_CHARSETS.
 +      Remove unneeded casts.
 +
 +      * insdel.c (del_range_2): Don't modify gap contents when called
 +      from decode_coding_object.  (Bug#1809)
 +
 +2009-02-21  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * data.c (syms_of_data): Define Qfont_spec, Qfont_entity, and
 +      Qfont_object.
 +      (Ftype_of): Recognize font objects.
 +
 +      * lisp.h: Define Qfont_spec, Qfont_entity, Qfont_object extern.
 +
 +      * font.c (Qfont_spec, Qfont_entity, Qfont_object):
 +      Definitions moved to data.c.
 +
 +2009-02-20  Adrian Robert  <Adrian.B.Robert@gmail.com>
 +
 +      * nsterm.m (x_make_frame_invisible): Unset async_visible,
 +      async_iconified.  Based on a patch by Christian Lynbech
 +      <christian.lynbech@tieto.com>.
 +      (EmacsView-windowDidMiniaturize:): Unset async_visible.
 +
 +2009-02-20  Glenn Morris  <rgm@gnu.org>
 +
 +      * syntax.c (Fskip_chars_forward): Fix doc typo.
 +
 +2009-02-20  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * keymap.c (Fkeymap_parent): Doc fix (Bug#2391).
 +
 +2009-02-19  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * xfns.c (Fx_create_frame): Give Xft driver a higher priority.
 +
 +2009-02-19  Kenichi Handa  <handa@m17n.org>
 +
 +      * coding.c (detect_coding): Preserve coding->mode.
 +      Don't overflow coding->carryover.  (Bug#2370)
 +
 +2009-02-18  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * m/ibmrs6000.h (ADDR_CORRECT): Restore, removed by mistake on 2008-07-23.
 +
 +2009-02-18  Kenichi Handa  <handa@m17n.org>
 +
 +      * font.c (font_check_otf_features): Fix handling of `nil' element.
 +      (Ffont_spec): Describe :lang and :otf in the docstring.
 +
 +2009-02-16  Andreas Schwab  <schwab@suse.de>
 +
 +      * coding.c (Fcheck_coding_systems_region): Fix test for unibyte
 +      string.
 +
 +2009-02-16  Kenichi Handa  <handa@m17n.org>
 +
 +      * coding.c (Fcheck_coding_systems_region): Fix typo; Qt -> Qnil.
 +      (Bug#1723)
 +
 +2009-02-14  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * dispextern.h (struct iterator_stack_entry): New line_wrap member.
 +
 +      * xdisp.c (push_it, pop_it): Save and restore line_wrap.
 +      (handle_line_prefix): Suppress wrapping of wrap prefixes.
 +
 +2009-02-14  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * msdos.c (MAX_SCREEN_BUF): New macro.
 +      (IT_write_glyphs): Make screen_buf[] always be MAX_SCREEN_BUF-long.
 +      Encode the entire run of glyphs sharing the same face, instead of
 +      doing that one glyph at a time (fixes a bug with displaying
 +      double-size characters).
 +
 +2009-02-13  Adrian Robert  <Adrian.B.Robert@gmail.com>
 +
 +      * nsfns.m (ns-read-file-name): BLOCK_INPUT while showing dialog.
 +
 +      * nsmenu.m (pop_down_menu): Check popup_activated_flag.
 +      (ns_popup_dialog, EmacsDialogPanel-runDialogAt:): Let
 +      pop_down_menu do the cleanup work as it is always called.  (Bug#2154)
 +
 +      * nsfont.m (nsfont_make_fontset_for_font): For now, don't try to
 +      set fontset font for "mathematical-" sub-scripts.  (Bug #2218)
 +
 +2009-02-12  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * keyboard.c (adjust_point_for_property): Allow stopping between two
 +      invisible areas.
 +
 +2009-02-12  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32font.c (check_face_name): Check for fake helv.  (Bug#2275)
 +      (add_font_entity_to_list): Call check_face_name even when family
 +      is unspecified.
 +
 +      * w32term.c (x_display_pixel_height, x_display_pixel_width):
 +      Release DC when finished.  Use NULL window to refer to desktop.
 +      (w32_term_init): Use NULL window to refer to desktop.  (Bug#460)
 +
 +      * w32font.c (add_font_entity_to_list): Fix check for substituted
 +      raster fonts.  (Bug#2219)
 +
 +2009-02-12  Kenichi Handa  <handa@m17n.org>
 +
 +      * composite.c (MAX_AUTO_COMPOSITION_LOOKBACK): New macro.
 +      (composition_gstring_width): Fix handling of LGLYPH_YOFF.
 +      (autocmp_chars): Use fast_looking_at.  Don't compose more
 +      characters than MAX_COMPOSITION_COMPONENTS.
 +      (find_automatic_composition): While looking forward and backward,
 +      check static composition.  Fix where to stop looking forward.
 +      (composition_adjust_point): Fix checking of static composition.
 +      (Fcomposition_get_gstring): Pay attention to
 +      MAX_COMPOSITION_COMPONENTS.
 +
 +      * lisp.h (fast_looking_at): Extern it.
 +
 +      * search.c (fast_looking_at): New function.
 +
 +      * term.c (encode_terminal_code): Adjust for the change of
 +      <struct glyph>.u.cmp.to.
 +      (append_composite_glyph): Likewise.
 +
 +      * xdisp.c (fill_gstring_glyph_string): Adjust for the change of
 +      <struct glyph>.u.cmp.to.  Check if the glyph belongs to the same
 +      composition.
 +      (append_composite_glyph): Adjust for the change of
 +      <strcut glyph>.u.cmp.to.
 +
 +2009-02-11  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * casetab.c (init_casetab_once):
 +      * coding.c (ALLOC_CONVERSION_WORK_AREA):
 +      * font.c (font_update_lface):
 +      * fontset.c (Fnew_fontset):
 +      * ftfont.c (ftfont_drive_otf):
 +      * xfont.c (xfont_open):
 +      * xftfont.c (xftfont_get_xft_draw): Remove spurious semicolons.
 +
 +2009-02-11  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * fileio.c (Fwrite_region): !NILP -> CONSP.
 +
 +2009-02-10  Andreas Schwab  <schwab@suse.de>
 +
 +      * process.c (send_process): Properly relocate pointer into data
 +      when using encoded data.  (Bug#2272)
 +
 +2009-02-08  ARISAWA Akihiro  <ari@mbf.sphere.ne.jp>
 +
 +      * coding.c (detect_coding_charset): Fix previous change.
 +
 +2009-02-08  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32fns.c (w32_hide_hourglass): Handle case where frame
 +      disappeared while hourglass was displayed.  (Bug #2193)
 +
 +2009-02-07  Andreas Schwab  <schwab@suse.de>
 +
 +      * unexelf.c (unexec): Fix error message.
 +
 +2009-02-07  Adrian Robert  <Adrian.B.Robert@gmail.com>
 +
 +      * nsterm.m (EmacsApp-sendEvent:): Defer NSApplicationDefined event
 +      when modal window is active.  (Bug #2152)
 +      (applicationShouldTerminate:): Remove now-unneeded while loop
 +      around NSRunAlertPanel.
 +
 +      * nsmenu.m (popupSession): New file-global variable.
 +      (pop_down_menu): End the popupSession before closing dialog.
 +      (ns_popup_dialog): BLOCK_INPUT around dialog presentation.
 +      (EmacsDialogPanel-runDialogAt:): Don't place window (superfluous),
 +      don't query NSApp for events (just sleep instead).
 +
 +2009-02-07  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * coding.c (syms_of_coding) <translation-table-for-input>:
 +      Modify doc string to discourage use for character code unification.
 +
 +2009-02-07  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
 +
 +      * atimer.c (run_timers): Update pending_atimers.
 +
 +2009-02-06  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * image.c (svg_load_image): Fix last change.
 +
 +      * xfns.c (Fx_create_frame): Signal an error if no font is
 +      found (Bug#2147).
 +
 +2009-02-05  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * character.c (syms_of_character) <script-representative-chars>:
 +      Fix typo in docstring.
 +
 +2009-02-04  Adrian Robert  <Adrian.B.Robert@gmail.com>
 +
 +      * nsmenu.m (pop_down_menu): New function.
 +      (ns_popup_dialog): Call it on unwind.
 +      (EmacsDialogPanel-runDialogAt:): Check popup_activated_flag and
 +      call timer_check() (Bug#2154).
 +      (EmacsMenu-menuNeedsUpdate:): Don't call ns_update_menu if
 +      handling_signal is set.
 +      (EmacsMenu-fillWithWidgetValue:): Set submenu title.
 +
 +      * config.in: Get rid of COCOA_EXPERIMENTAL_CTRL_G.
 +
 +      * s/darwin.h: Same and NO_SOCK_SIGIO as well.
 +
 +      * nsterm.m (ns_read_socket): Same and don't set handling_signal.
 +
 +      * keyboard.c (poll_for_input_1, handle_async_input):
 +      Set handling_signal under HAVE_NS.
 +
 +2009-02-04  Glenn Morris  <rgm@gnu.org>
 +
 +      * fileio.c (Fwrite_region): Doc fix (mention annotate-functions).
 +
 +2009-02-04  Kenichi Handa  <handa@m17n.org>
 +
 +      * Makefile.in (composite.o): Depends on frame.h and termhooks.h.
 +
 +      * charset.c (Fchar_charset): New optional arg restriction.
 +
 +      * coding.h (coding_system_charset_list): Extern it.
 +
 +      * coding.c (coding_system_charset_list): New function.
 +
 +      * composite.c: Include coding.h and termhooks.h.
 +      (composition_gstring_p): Fix for the terminal case.
 +      (composition_gstring_width): Likewise.
 +      (fill_gstring_body): Likewise.
 +      (autocmp_chars): For terminal, call Fcomposition_get_gstring with
 +      the frame.
 +      (composition_compute_stop_pos): Adjust cmp_it->stop_pos if point
 +      is within a composition.
 +      (Fcomposition_get_gstring): Fix the terminal case.
 +
 +      * term.c (encode_terminal_code): Fix handling of composition.
 +      (produce_composite_glyph): For static composition, get pixel_width
 +      from struct composition.
 +
 +2009-02-02  Andreas Schwab  <schwab@suse.de>
 +
 +      * unexelf.c (unexec): Handle unaligned bss offset.
 +
 +2009-02-01  Adrian Robert  <Adrian.B.Robert@gmail.com>
 +
 +      * nsterm.m (ns_read_socket): Copy 2009-01-29 and 2009-01-30
 +      XT,w32read_socket changes to ns_read_socket.
 +
 +      * keyboard.c (handle_interrupt): Don't call
 +      quit_throw_to_read_char() under NS.
 +
 +      * blockinput.h: Remove NS-specific code.
 +
 +2009-01-30  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * dispnew.c (window_change_signal): Don't try to get the size of a
 +      suspended tty frame.
 +      * term.c (Fresume_tty): Resize if the size has changed while the
 +      tty was suspended.
 +
 +      * alloc.c (mark_stack): Properly conditionalize previous change.
 +
 +2009-01-30  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * w32inevt.c (w32_console_read_socket) [SYNC_INPUT]:
 +      * w32term.c (w32_read_socket) [SYNC_INPUT]:
 +      Remove; this code is not used on Windows.
 +
 +2009-01-30  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * coding.c (detect_eol, decode_eol): Handle text with DOS-style
 +      EOLs that also has stray ^M characters.
 +
 +2009-01-30  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * atimer.c (run_timers, alarm_signal_handler):
 +      * keyboard.c (pending_signals, handle_async_input, init_keyboard):
 +      * w32inevt.c (w32_console_read_socket):
 +      * w32term.c (w32_read_socket):
 +      * xterm.c (XTread_socket): Use "#ifdef SYNC_INPUT" where appropriate.
 +
 +2009-01-30  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * callproc.c (Vtemp_file_name_pattern): Remove DEFVAR_LISP.
 +      Initialize it as a relative filename pattern.
 +      (init_callproc): Don't initialize Vtemp_file_name_pattern here.
 +      (Fcall_process_region): Simplify temp file creation using
 +      temporary-file-directory.
 +
 +2009-01-29  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * msdos.c: Rename pending_signals to msdos_pending_signals.
 +      (sig_suspender, sigprocmask): Adjust.
 +
 +2009-01-29  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * keyboard.c (pending_signals): New var.
 +      (poll_for_input, input_available_signal, init_keyboard): Set it.
 +      (process_pending_signals): New function.
 +
 +      * lisp.h (QUIT): Check pending_signals instead of
 +      interrupt_input_pending.  Use process_pending_signals.
 +
 +      * atimer.c (run_timers, alarm_signal_handler): Update pending_signals.
 +
 +      * process.c (wait_reading_process_output): Use process_pending_signals.
 +
 +      * sysdep.c (emacs_write): Use process_pending_signals.
 +
 +      * xterm.c (XTread_socket): Update pending_signals.
 +
 +      * w32term.c (w32_read_socket): Update pending_signals.
 +
 +      * w32inevt.c (w32_console_read_socket): Update pending_signals.
 +
 +2009-01-29  Kenichi Handa  <handa@m17n.org>
 +
 +      * xftfont.c (xftfont_has_char): New function.
 +      (syms_of_xftfont): Register xftfont_has_char in xftfont_driver.
 +
 +2009-01-29  Adrian Robert  <Adrian.B.Robert@gmail.com>
 +
 +      * nsterm.h (EmacsPrefsController.cursorBlinkSlider): Only define
 +      under GNUstep.
 +      (ns_query_color): New declaration.
 +
 +      * nsterm.m (ns_confirm_quit): New variable.
 +      (ns_set_default_prefs, syms_of_nsterm, ns_term_init): Initialize it.
 +      (EmacsApp-applicationShouldTerminate:): Use it.
 +      (EmacsPrefsController): Let user set it.
 +      (ns_query_color): New function.
 +      (ns_defined_color): Use it.
 +      (ns_initialize): Drop.
 +      (ns_term_init): Add two lines from ns_initialize(), and set
 +      input_interrupt_mode to nil.
 +
 +      * image.c (svg_load_image): Don't right-shift background RGB when
 +      obtained from FRAME_BACKGROUND_PIXEL.  Under HAVE_NS use ns_query_color.
 +
 +2009-01-28  Kenichi Handa  <handa@m17n.org>
 +
 +      * fontset.c (font_for_char): Use assq_no_quit, not assoc_no_quit.
 +      (fontset_get_font_group): Remember that no font-group is specified
 +      for C.
 +
 +2009-01-27  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * fns.c (concat): Check for string overflow (bug#1787).
 +
 +      * undo.c (undo_limit, undo_strong_limit, Vundo_outer_limit):
 +      Quadruple undo limits (bug#1501).
 +
 +2009-01-27  Kenichi Handa  <handa@m17n.org>
 +
 +      * ftfont.c (ftfont_has_char): If the arg FONT is a font-object,
 +      directly use GT_Get_Char_index.
 +
 +      * xftfont.c (struct xftfont_info): New member `index'.
 +
 +      * fontset.c (font_for_char): Use assq_no_quit, not assoc_no_quit.
 +      (Ffontset_font): Adjust for the change of fontset entry.
 +
 +2009-01-26  Kenichi Handa  <handa@m17n.org>
 +
 +      * fontset.c (fontset_find_font): Fix handling of non-cons return
 +      value of fontset_get_font_group.
 +      (fontset_font): Revert last change.
 +
 +2009-01-26  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32font.c (w32font_list_internal): Return quickly if registry is
 +      unknown.  Simplify final return.
 +      (add_font_entity_to_list): Break complex logic down into more
 +      manageable chunks.  Move unknown registry check to
 +      w32font_list_internal.
 +
 +2009-01-25  Adrian Robert  <Adrian.B.Robert@gmail.com>
 +
 +      Changes to remove Feval calls from GUI under NS.
 +
 +      * nsterm.h: Move KEY_NS_... definitions here from nsterm.m.
 +      Add NS_TOGGLE_TOOLBAR, NS_PUT_WORKING_TEXT, NS_UNPUT_WORKING_TEXT.
 +      Remove NS_INSERT_WORKING_TEXT, NS_DELETE_WORKING_TEXT.
 +
 +      * nsterm.m: Move KEY_NS_... definitions to nsterm.h.
 +      (EmacsView-toggleToolbar:): Use KEY_NS_TOGGLE_TOOLBAR.
 +      (EmacsView-setMarkedText:,-deleteWorkingText:): Use NS_TEXT_EVENT
 +      instead of NON_ASCII_KEYSTROKE_EVENT.
 +      (EmacsApp-terminate:): Use KEY_NS_POWER_OFF instead of Feval.
 +      (EmacsApp-applicationShouldTerminate:): Query user.
 +      (EmacsPreferencesController-runHelp:): Use KEY_NS_INFO_PREFS
 +      instead of Feval.
 +
 +      * termhooks.h (NS_TEXT_EVENT): New event type under HAVE_NS.
 +
 +      * keyboard.c (kbd_buffer_get_event): Check for it.
 +      (keys_of_keyboard): Define lispy keys for
 +      ns-put/unput-working-text.
 +
 +      * nsmenu.m (ns_popup_dialog): Resync window setting with X and W32
 +      versions.
 +      (EmacsDialog-runDialogAt:): Use NSModalPanelRunLoopMode.
 +
 +2009-01-25  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * dispnew.c (buffer_posn_from_coords): Use Fset_buffer instead of
 +      setting current_buffer directly.  (Bug#2044)
 +
 +2009-01-24  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * fontset.c (fontset_font): If we know there is no font, don't do
 +      any work.  (Bug#1952, bug#1990).
 +
 +      * font.c (font_parse_xlfd): Handle patterns of length < 2.  (Bug#1802)
 +
 +2009-01-23  Adrian Robert  <Adrian.B.Robert@gmail.com>
 +
 +      * emacs.c (main): Do fork+exec under --daemon in Cocoa.
 +      (ns_no_defaults): New declaration.
 +      (main): Use it.
 +
 +      * nsterm.h (ns_no_defaults): New declaration.
 +
 +      * nsfns.m (x_get_string_resource): Don't read when ns_no_defaults.
 +
 +      * nsterm.m (ns_no_defaults): New variable.
 +      (ns_initialize): Don't read defaults when ns_no_defaults.
 +      (EmacsView-readSelectionFromPasteboard:)
 +      (writeSelectionToPasteboard:types:): New stubbed-out methods for
 +      NSServicesRequests protocol.  (Bug#1435)
 +      (ns_dumpglyphs_stretch): New function.
 +      (ns_draw_glyph_string): Use it, parallel Yamamoto Mitsuharu change
 +      of 2008-11-15 to other terms.  (Bug#615)
 +
 +      * nsimage.m (setPixmapData:): Set to ignore image DPI.
 +
 +2009-01-23  Giorgos Keramidas  <keramida@freebsd.org>  (tiny change)
 +
 +      * alloc.c (mark_stack): Use "flushw" instead of "ta 3" assembly
 +      call for Sparc64.
 +
 +2009-01-22  Adrian Robert  <Adrian.B.Robert@gmail.com>
 +
 +      * nsfns.m:
 +      * nsgui.h:
 +      * nsmenu.m:
 +      * nsselect.m:
 +      * nsterm.h:
 +      * nsterm.m: Remove '23' comments that indicated code added during
 +      update from emacs-20 -> emacs-23.
 +
 +2009-01-22  Adrian Robert  <Adrian.B.Robert@gmail.com>
 +
 +      * nsterm.m (EmavsView-keyDown:): Treat nil as Qnone for
 +      ns_alternate_modifier.  (Bug#1217)
 +
 +      * nsmenu.m (EmacsMenu-parseKeyEquiv:, addItemWithWidgetValue:):
 +      Display all shortcuts, including those w/o super modifier.
 +
 +      * nsfns.m (ns-read-file-name): Fix typo in assignment statement.
 +
 +2009-01-22  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * fileio.c (Vwrite_region_post_annotation_function)
 +      (Vwrite_region_annotation_buffers): New vars.
 +      (build_annotations_unwind): Just reset
 +      Vwrite_region_annotation_buffers.
 +      (Fwrite_region): Initialize Vwrite_region_annotation_buffers.
 +      Call write-region-post-annotation-function.
 +      (build_annotations): Add to Vwrite_region_annotation_buffers if
 +      buffer changes.
 +
 +2009-01-21  Adrian Robert  <Adrian.B.Robert@gmail.com>
 +
 +      * nsterm.h (EmacsApp-setAppleMenu:): Conditionalize more correctly on
 +      Tiger.
 +      * nsfns.m (ns_do_applescript):
 +      Conditionalize typeUTF16ExternalRepresentation on Tiger.
 +
 +2009-01-21  Wolfgang Lux  <wolfgang.lux@gmail.com>  (tiny change)
 +
 +      * nsterm.m (EV_TRAILER): Always use emacsframe for frame_or_window.
 +
 +2009-01-21  Adrian Robert  <Adrian.B.Robert@gmail.com>
 +
 +      * nsmenu.m (NSMENUPROFILE): Change #if style.
 +
 +      * nsterm.h (EmacsPrefsController): Add -setPanelFromDefaultValues.
 +
 +      * nsterm.m (x_set_frame_alpha): Add prototype.
 +      (ns_fake_keydown, EmacsView-keyUp:): New variable and function to
 +      handle Ctrl-tab.  (Bug#1841)
 +      (ns_get_color): Use unsigned long long for scanned hex string value.
 +      (ns_term_shutdown): Abort on non SIGTERM signals.
 +      (EmacsPrefsController-setDefaultFont:,-setColors:): Raise the frame.
 +      (EmacsPrefsController-setPanelFromDefaultValues): New function.
 +      (EmacsPrefsController-resetToDefaults:): Use it.  (Bug#1801)
 +      (ns_font_to_xlfd, ns_fontname_to_xlfd): Remove, unused.
 +      (ns_defined_color): Fix settings of the XColor variable fields:
 +      red,green,blue scale to 2-byte, pixel's parts to 1-byte.  (Bug#1663)
 +
 +      * nsimage.m (EmacsImage+allocInitFromFile:): Set to ignore image
 +      DPI.  (Bug#1316)
 +      (EmacsImage-setPixelAtX:Y:toRed:green:blue:alpha:): Fix color
 +      values in onTiger section.
 +
 +2009-01-19  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * xfaces.c (Finternal_set_lisp_face_attribute, Fx_list_fonts):
 +      Check return value of font_spec_from_name.
 +      (Fx_list_fonts): Doc fix.  (Bug#1951)
 +
 +      * font.c (font_spec_from_name): Return Qnil if font name could not
 +      be parsed.
 +      (font_parse_name): Treat a `?' character as part of an XLFD.
 +
 +      * fns.c (Fsubstring): Doc fix.
 +
 +2009-01-19  Kenichi Handa  <handa@m17n.org>
 +
 +      * ftfont.c (ftfont_lookup_cache): Check the return value of FcFontList.
 +      (ftfont_list): Likewise.
 +
 +2009-01-18  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * dbusbind.c (Fdbus_register_signal):
 +      * process.c (conv_sockaddr_to_lisp):
 +      * w32fns.c (Fw32_battery_status): Use empty_unibyte_string.
 +
 +      * callproc.c (Fgetenv_internal): Doc fix.
 +
 +2009-01-16  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * xfns.c (x_make_gc): Don't allocate stipple member for gc_values;
 +      it is not even used.
 +
 +2009-01-16  Glenn Morris  <rgm@gnu.org>
 +
 +      * font.c (Ffont_variation_glyphs): Silence compiler.
 +
 +2009-01-15  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * sound.c (SOUND_WARNING): Use _snprintf, for MSVC compatibility.
 +      Reported by David Robinow <drobinow@gmail.com>.
 +
 +2009-01-15  Kenichi Handa  <handa@m17n.org>
 +
 +      * coding.c (detect_coding_system): Fix handling of null_byte_found.
 +
 +2009-01-14  Jason Rumney  <jasonr@gnu.org>
 +
 +      * frame.c (x_set_font): Always store a font to the font parameter,
 +      never a fontset.  (Bug#1562)
 +
 +2009-01-14  Kenichi Handa  <handa@m17n.org>
 +
 +      * coding.c (TWO_MORE_BYTES): New macro.
 +      (detect_coding_utf_16): Use TWO_MORE_BYTES instead of ONE_MORE_BYTE.
 +
 +2009-01-13  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * font.c (font_clear_prop): If clearing the family, clear the font
 +      width index too.
 +
 +      * xfaces.c (Finternal_set_lisp_face_attribute): Revert last change.
 +
 +2009-01-12  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * sound.c [WINDOWSNT] (SOUND_WARNING): New macro.
 +      (do_play_sound): Use it.  Don't pass a hardcoded buffer size to mci
 +      functions, use sizeof.
 +
 +2009-01-12  Martin Rudalics  <rudalics@gmx.at>
 +
 +      * keyboard.c (read_char): Fix case where last_nonmenu_event
 +      returned a bad value with submenus.  (Bug#447)
 +
 +2009-01-12  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * xfaces.c (Finternal_set_lisp_face_attribute): If setting the
 +      family, clear the font width index too.
 +
 +2009-01-11  Jason Rumney  <jasonr@gnu.org>
 +
 +      * keyboard.c (cmd_error_internal): Exit when errors occur before
 +      frame creation and not in daemon mode.  (Bug#1836)
 +
 +2009-01-10  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * xdisp.c (pos_visible_p): When iterator stops on the last glyph
 +      of a display vector, backtrack.
 +      (try_window_reusing_current_matrix): Check glyph type before
 +      referencing charpos member.
 +
 +2009-01-10  Eli Zaretskii  <eliz@gnu.org>
 +
 +      Fix Bug #876:
 +
 +      * coding.c (inhibit_null_byte_detection): New variable.
 +      (detect_coding, detect_coding_system): Don't pay attention to null
 +      bytes if inhibit_null_byte_detection is non-zero.
 +      (syms_of_coding) <inhibit-null-byte-detection>: Declare and document.
 +      <inhibit-iso-escape-detection>: Doc fix.
 +
 +2009-01-09  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32font.c (add_font_entity_to_list): Don't report unknown
 +      Windows charset as any unrecognized registry.  (Bug#1548)
 +      Only report Unicode Plane 2 fonts as unicode-sip.
 +
 +2009-01-09  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * xfaces.c (Fx_font_family_list): Delete function.
 +      Move compatibility version to faces.el.
 +
 +      * font.c (Ffont_family_list): Return a list of strings, not symbols.
 +
 +2009-01-09  Martin Rudalics  <rudalics@gmx.at>
 +
 +      * frame.c (x_set_frame_parameters): Remember requested value for
 +      fullscreen before it's reset by the parameter handler.
 +
 +2009-01-09  Glenn Morris  <rgm@gnu.org>
 +
 +      * keyboard.c (last_command_char): For clarity, rename to...
 +      (last_command_event): ... and update all users.
 +      (last_input_char): For clarity, rename to...
 +      (last_input_event): ... and update all users.
 +      (last-command-char, last-input-char): Move to subr.el as aliases.
 +      * cmds.c, commands.h: Update for last_command_char rename.
 +
 +2009-01-08  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * font.c (font_open_for_lface): Handle unspecified height attribute.
 +
 +2009-01-08  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32fns.c (Vx_pointer_shape, Vx_nontext_pointer_shape)
 +      (Vx_mode_pointer_shape, Vx_window_horizontal_drag_shape)
 +      (Vx_hourglass_pointer_shape, Vx_sensitive_text_pointer_shape):
 +      Don't declare.
 +      (syms_of_w32fns): Don't define x-pointer-shape variable.  (Bug#1485)
 +      (x_create_tip_frame) [GLYPH_DEBUG]: Enable image debugging code.
 +
 +2009-01-07  Kenichi Handa  <handa@m17n.org>
 +
 +      * fileio.c (Finsert_file_contents): In the case of replace,
 +      remember the coding system used for decoding in
 +      coding_system (Bug#1039).
 +
 +      * coding.c (decode_coding_utf_8): Check byte_after_cr before
 +      breaking the loop.  (Bug#870)
 +      (decode_coding_utf_16, decode_coding_emacs_mule)
 +      (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
 +      (decode_coding_charset): Likewise.
 +
 +2009-01-05  Martin Rudalics  <rudalics@gmx.at>
 +
 +      * frame.c (x_set_frame_parameters): Make sure height (width) get
 +      applied when fullwidth (fullheight) is set.  (Bug#1522)
 +
 +2009-01-04  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * w32.c: Use 64-bit arithmetic to do FILETIME conversions.  (Bug#1766)
 +      (utc_base): Declare as ULONGLONG, not long double.
 +      (convert_time_raw): Delete.
 +      (FILETIME_TO_U64, U64_TO_LISP_TIME): New macros.
 +      (initialize_utc_base): New function.
 +      (convert_time): Use FILETIME_TO_U64, initialize_utc_base.
 +      (convert_from_time_t): Use initialize_utc_base; compute result with
 +      64-bit arithmetic.
 +      (process_times): Use FILETIME_TO_U64, U64_TO_LISP_TIME.
 +
 +2009-01-03  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * process.c (Qeuid, Qegid, Qcomm, Qstate, Qppid, Qpgrp, Qsess)
 +      (Qttname, Qminflt, Qmajflt, Qcminflt, Qcmajflt, Qutime, Qstime)
 +      (Qcutime, Qpri, Qnice, Qthcount, Qstart, Qvsize, Qrss, Qargs)
 +      (Quser, Qgroup, Qetime, Qpcpu, Qpmem, Qtpgid, Qcstime)
 +      [!subprocesses]: Define.
 +      (syms_of_process) [!subprocesses]: Intern and staticpro them.
 +      (Flist_system_processes, Fsystem_process_attributes)
 +      [!subprocesses]: Call list_system_processes and
 +      system_process_attributes instead of returning Qnil.
 +
 +      * dosfns.c (system_process_attributes, list_system_processes):
 +      New functions.
 +
 +      * vm-limit.c (ret_lim_data) [MSDOS]: New function.
 +
 +      * sysdep.c (list_system_processes, system_process_attributes) [MSDOS]:
 +      Don't use the default (no-op) implementation.
 +
 +2009-01-03  Jason Rumney  <jasonr@gnu.org>
 +
 +      * keyboard.c (parse_modifiers_uncached): Wheel events are
 +      clicks (bug#687).
 +
 +      * w32term.c (x_query_colors, x_query_color): New functions.
 +
 +      * image.c (x_to_xcolors, png_load): Eliminate W32 specific code.
 +      (svg_load_image): Cast returned pointers from dynamically loaded
 +      functions.  Eliminate W32 specific code.
 +
 +2009-01-02  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * nsfns.m (x_set_foreground_color, x_set_background_color)
 +      (x_set_cursor_color, x_set_icon_name, x_explicitly_set_name)
 +      (x_set_title, x_set_icon_type, x_set_cursor_type): Rename to use
 +      x_ prefix instead of ns_.  Update references.
 +      (syms_of_nsfns): Add a FIXME comment.
 +
 +      * nsterm.m (x_set_cursor_type): New prototype.
 +      (setValuesFromPanel): Use it instead of the old ns_ prefixed name.
 +
 +      * sysdep.c (system_process_attributes): Provide Qtime and Qctime
 +      for Solaris instead of incorrectly providing Qutime and Qcutime.
 +
 +2009-01-02  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * w32.c (process_times): Compute sum of utime and stime.
 +      (system_process_attributes): Add Qtime to the alist.
 +
 +      * sysdep.c (system_process_attributes): Compute Qtime and Qctime
 +      and add them to the alist.
 +
 +      * process.c (top level) <Qtime, Qctime>: New variables.
 +      (syms_of_process): staticpro them.
 +      (Fsystem_process_attributes): Add their documentation to the doc
 +      string.
 +
 +      * process.h: Declare Qtime and Qctime.
 +
 +2009-01-02  Jason Rumney  <jasonr@gnu.org>
 +
 +      * image.c (Qgobject): New symbol.
 +      (syms_of_image): Initialize it.
 +      (init_svg_functions): Load some functions from gobject library.
 +
 +2009-01-01  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * frame.c (make_terminal_frame): Remove redundant code and useless
 +      block.
 +
 +2009-01-01  Andreas Schwab  <schwab@suse.de>
 +
 +      * process.c (conv_sockaddr_to_lisp): Add workaround for
 +      getsockname bug on BSD.
 +
 +2009-01-01  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * xfns.c (x_create_tip_frame): Set border width of the X window.
 +
 +      * xfaces.c (Finternal_set_lisp_face_attribute): Improve error message.
 +
 +2009-01-01  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32term.c (x_new_font): Return font object, not fontset.  (Bug#119)
 +      Don't block input, as per earlier xterm.c changes.
 +
 +2008-12-31  Adrian Robert  <Adrian.B.Robert@gmail.com>
 +
 +      * nsfns.m (ns_appkit_version_str): Rename from ns_appkit_version.
 +      (ns_appkit_version_int): New function.
 +      (x-server-version): Use ns_appkit_version_int and follow 21+
 +      convention of returning 3 integers.
 +
 +2008-12-30  Kenichi Handa  <handa@m17n.org>
 +
 +      * character.h (CHAR_VARIATION_SELECTOR_P): New macro.
 +      (CHAR_SURROGATE_PAIR_P): New macro.
 +
 +      * font.h (struct font_driver): New member get_variation_glyphs.
 +
 +      * font.c (font_range): Don't require a font for a variation selector.
 +      (Ffont_variation_glyphs): New function.
 +      (syms_of_font): Defsubr it.
 +
 +      * ftfont.c (ftfont_driver): Set the member get_variation_glyphs to
 +      ftfont_variation_glyphs.
 +      (setup_otf_gstring): New function.
 +      (ftfont_drive_otf): Use it.
 +      (ftfont_shape_by_flt): Handle variation selector.
 +      (ftfont_variation_glyphs): New function.
 +
 +2008-12-30  Martin Rudalics  <rudalics@gmx.at>
 +
 +      * frame.c (Vemacs_iconified): Remove.
 +
 +2008-12-30  Jason Rumney  <jasonr@gnu.org>
 +
 +      * frame.c (store_frame_param, x_get_arg): Enable newer code on
 +      WINDOWSNT too, as related changes have already been synced.  (Bug#117)
 +
 +2008-12-30  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * indent.c (Fvertical_motion): Don't advance iterator if we have
 +      reseated to the desired position.
 +
 +      * xdisp.c (move_it_to): Handle GET_FROM_STRETCH method when
 +      checking for pos match.
 +
 +2008-12-30  Kenichi Handa  <handa@m17n.org>
 +
 +      * insdel.c (copy_text): To convert a non-ASCII char to unibyte,
 +      just get the low 8-bit of the code.
 +
 +      * font.c (font_intern_prop): Validate str as multibyte.
 +
 +2008-12-29  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * dispextern.h (struct face): Move lface and hash from the middle
 +      of bitfields.
 +
 +      * Makefile.in (INTERVALS_H): Rename from INTERVAL_SRC, update all users.
 +
 +2008-12-29  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * Makefile.in (INTERVAL_SRC): Also depend on dispextern.h.
 +      (coding.o, dispnew.o, keymap.o, msdos.o): Depend on INTERVAL_SRC
 +      instead of intervals.h.
 +
 +2008-12-26  Andreas Schwab  <schwab@suse.de>
 +
 +      * keymap.c (map_keymap_char_table_item): Make a copy of KEY if it is a
 +      cons.
 +
 +2008-12-26  Martin Rudalics  <rudalics@gmx.at>
 +
 +      * textprop.c (Qminibuffer_prompt): New variable.
 +      (syms_of_textprop): Initialize it.
 +      * callint.c (Fcall_interactively): For `c', `k', and `K' prompt
 +      in minibuffer-prompt face.  (Bug#1662)
 +
 +2008-12-25  Jason Rumney  <jasonr@gnu.org>
 +
 +      * buffer.c (Fbuffer_swap_text): Use POINTER_TYPE.
 +
 +2008-12-24  Jason Rumney  <jasonr@gnu.org>
 +
 +      * ralloc.c (r_alloc_reset_variable): New function.
 +
 +      * buffer.c (Fbuffer_swap_text) [REL_ALLOC]: Reset ralloc's internal
 +      record of what points where.  (Bug#716)
 +
 +2008-12-22  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * minibuf.c (read_minibuf): Follow the non-interactive case when
 +      running as a daemon, before detaching.
 +
 +2008-12-22  Andreas Schwab  <schwab@suse.de>
 +
 +      * buffer.c (init_buffer): Use realloc instead of xrealloc.
 +      * gtkutil.c (free_widget_value): Use xfree instead of free.
 +
 +2008-12-22  Martin Rudalics  <rudalics@gmx.at>
 +
 +      * frame.c (delete_frame): New function derived from
 +      Fdelete_frame to handle Qnoelisp value for FORCE argument.
 +      Delete last frame iff FORCE equals Qnoelisp.  (Bug#1450)
 +      (Fdelete_frame): Call delete_frame.  Remove line from doc-string
 +      saying that FORCE non-nil doesn't run `delete-frame-functions'.
 +      * frame.h: Extern delete_frame.
 +      * window.c (window_loop):
 +      * terminal.c (delete_terminal):
 +      * xterm.c (x_connection_closed):
 +      * xfns.c (Fx_hide_tip):
 +      * w32fns.c (Fx_hide_tip): Call delete_frame instead of Fdelete_frame.
 +
 +2008-12-21  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32uniscribe.c (uniscribe_encode_char): Return FONT_INVALID_CHAR
 +      when character maps to .notdef character.
 +
 +2008-12-21  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * keyboard.c (cmd_error_internal): Don't exit in daemon mode, bug#1310.
 +
 +2008-12-20  Jason Rumney  <jasonr@gnu.org>
 +
 +      * frame.c (Fmake_terminal_frame): Raise an error when called from
 +      a graphical frame on Windows.  (Bug#1325)
 +
 +2008-12-20  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * frame.c (Fdelete_frame): Set f->menu_bar_vector to Qnil.
 +
 +2008-12-20  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * minibuf.c (Fread_buffer): Doc fix.
 +
 +2008-12-20  Jason Rumney  <jasonr@gnu.org>
 +
 +      * fileio.c (Fexpand_file_name): Do not allow ../ to go beyond the
 +      server name in UNC paths.  (Bug#719)
 +
 +      * coding.c (decode_coding): Clear chars_at_source flag when using
 +      charbuf.  (Bug#1035)
 +
 +2008-12-19  Daniel Engeler  <engeler@gmail.com>
 +
 +      * sysdep.c (serial_configure): Fix typo.
 +
 +2008-12-19  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * sysdep.c: Include alloca.h.
 +      (system_process_attributes): Add implementation for Solaris.
 +
 +      * s/sol2-10.h (HAVE_PROCFS, _STRUCTURED_PROC): New defines.
 +
 +2008-12-19  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      Reorganize implementation of Flist_system_processes and
 +      Fsystem_process_attributes.  No functional changes.
 +      * process.c: Don't #include pwd.h, grp.h and limits.h.
 +      (Flist_system_processes): Just call list_system_processes.
 +      (Fsystem_process_attributes): Just call system_process_attributes.
 +      (procfs_list_system_processes, time_from_jiffies)
 +      (ltime_from_jiffies, get_up_time, procfs_ttyname, MAJOR, MINOR)
 +      (procfs_get_total_memory, procfs_system_process_attributes): Move ...
 +
 +      * sysdep.c: ... here.  Include pwd.h, grp.h and limits.h.
 +      (list_system_processes): Rename from
 +      procfs_list_system_processes.  Enclose in #ifdef HAVE_PROCFS.
 +      Provide a do nothing implementation.
 +      (system_process_attributes): Rename from
 +      procfs_list_system_processes.
 +      (ltime_from_jiffies, get_up_time, procfs_ttyname, MAJOR, MINOR)
 +      (procfs_get_total_memory): Enclose in #ifdef GNU_LINUX.
 +
 +      * w32.c (list_system_processes): Rename from
 +      w32_list_system_processes.
 +      (system_process_attributes): Rename from
 +      w32_system_process_attributes.
 +
 +      * s/gnu-linux.h (LISTPROC, PROCATTR): Remove.
 +
 +      * process.h (w32_list_system_processes)
 +      (w32_system_process_attributes): Remove.
 +      (list_system_processes, system_process_attributes):
 +      New prototypes.
 +
 +2008-12-19  Kenichi Handa  <handa@m17n.org>
 +
 +      * xfont.c (xfont_decode_coding_xlfd): New function.
 +      (xfont_encode_coding_xlfd): New function.
 +      (xfont_list_pattern): Decode XLFD by iso-8859-1.
 +      (xfont_list): Decode and encode XLFD by iso-8859-1.
 +      (xfont_match): Likewise.
 +      (xfont_list_family): Likewise.
 +      (xfont_open): Likewise.
 +
 +      * ftfont.c (ftfont_open): Generate a multibyte string if given
 +      names are utf-8.
 +
 +      * xftfont.c (xftfont_open): Generate a multibyte string if given
 +      names are utf-8.
 +
 +2008-12-18  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * gtkutil.c (xg_frame_resized): Remove check if rows/columns have
 +      changed.
 +      (xg_tool_bar_proxy_callback): Put focus on the frame after we have
 +      clicked on a detached tool bar button.
 +
 +2008-12-18  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * emacs.c (main): Print and error and exit when no data is read
 +      from the pipe.
 +
 +2008-12-17  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32font.c (w32font_has_char): Always return -1.
 +
 +2008-12-16  Kenichi Handa  <handa@m17n.org>
 +
 +      * font.c (font_open_entity): Fix previous change.
 +
 +2008-12-16  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * process.c: Include <limits.h>.
 +
 +2008-12-16  Chetan Pandya  <pandyacus@sbcglobal.net>  (tiny change)
 +
 +      * font.c (font_update_drivers): Fix mistake in reconstructing the
 +      driver list.
 +
 +2008-12-16  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * font.c (font_clear_cache): Fix format of font cache data.
 +
 +2008-12-15  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * xftfont.c (xftfont_open): Free Xft font pattern if
 +      XftFontOpenPattern fails.
 +
 +      * xterm.c (x_free_frame_resources): Remove extraneous call to
 +      free_frame_faces.
 +
 +2008-12-13  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * xterm.c (x_delete_display): Move xim_close_dpy call to
 +      x_delete_terminal.
 +      (x_delete_terminal): Call xim_close_dpy.
 +
 +2008-12-13  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32font.c (intern_font_name): New function.
 +      (add_font_name_to_list, w32_enumfont_pattern_entity): Use it.
 +      (w32font_open_internal, Fx_select_font): Decode font name.
 +      (fill_in_logfont, list_all_matching_fonts): Encode font name.
 +
 +      * w32font.h (intern_font_name): Declare new function.
 +
 +      * w32uniscribe.c (add_opentype_font_name_to_list):
 +      Use intern_font_name.
 +
 +2008-12-13  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * frame.c (Fdelete_frame): Call free_font_driver_list.
 +
 +      * font.c (free_font_driver_list): Implement missing function.
 +
 +      * w32term.c (w32_term_init): Don't initialize the image cache
 +      here; it will be done in init_frame_faces.
 +
 +      * xterm.h (struct xim_inst_t): Definition moved from xterm.c.
 +      (struct x_display_info): Remove unused member null_pixel.
 +      New member xim_callback_data.
 +
 +      * xterm.c (struct xim_inst_t): Definition moved to xterm.h.
 +      (xim_initialize): Save pointer to callback function data.
 +      (xim_close_dpy): Free callback function data.  Call XCloseIM,
 +      reverting 2008-11-04 change by David Smith.
 +      (x_term_init): Don't initialize the image cache here; it will be
 +      done in init_frame_faces.  Remove ancient "null_pixel" cruft.
 +      (x_delete_display): Free x_dnd_atoms member.
 +
 +2008-12-13  Kenichi Handa  <handa@m17n.org>
 +
-       * xfaces.c (font_rescale_ratio): Moved to font.c.
++      * font.c (font_rescale_ratio): Move from xfaces.c.
 +      Argument type changed.  Handle a font-spec too.
 +      (font_score): Check Vface_font_rescale_alist.
 +      (font_open_entity): Likewise.  (Bug#1547)
 +
-       * term.c (tty_free_frame_resources): Renamed from delete_tty_output;
++      * xfaces.c (font_rescale_ratio): Move to font.c.
 +
 +2008-12-13  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * xfns.c (Fx_wm_set_size_hint): Check if the frame is an X frame.
 +
 +2008-12-12  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32fns.c (x_display_info_for_name, Fx_open_connection):
 +      Set Vwindow_system_version to the real w32 major version.
 +
 +2008-12-12  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * term.c (init_tty): Move setting the terminal name before the
 +      potential user: maybe_fatal.
 +
 +2008-12-11  Chong Yidong  <cyd@stupidchicken.com>
 +
-       (FONT_ENCODING_NOT_DECIDED): Moved from fontset.h.
++      * term.c (tty_free_frame_resources): Rename from delete_tty_output;
 +      all callers changed.  Call free_frame_faces to free the face cache.
 +
 +2008-12-11  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32font.c (fill_in_logfont): Don't assume symbol script means
 +      SYMBOL_CHARSET.  (Bug#547)
 +
 +      * w32uniscribe.c (uniscribe_encode_char): Increase glyph buffer
 +      size for surrogates.  (Bug#1096, bug#872)
 +
 +2008-12-11  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * w32proc.c (Fw32_get_locale_info): Decode long form of locale name.
 +
 +2008-12-11  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * process.c (Fsystem_process_attributes, syms_of_process):
 +      Fix typo in name of Ssystem_process_attributes.
 +      Reported by Ulrich Mueller <ulm@kph.uni-mainz.de>.
 +
 +2008-12-11  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * syntax.c (Fmodify_syntax_entry): Doc fix.
 +
 +2008-12-10  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * font.c (Ffont_spec): Move usage to end of docstring.
 +
 +2008-12-10  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32font.c (Qcham): New symbol.
 +      (font_supported_scripts): Add cham, and comments for other new
 +      scripts in bitfield from OpenType spec.
 +      (add_font_entity_to_list): Limit unicode-sip fonts to those that
 +      contain characters beyond the bmp.
 +
 +2008-12-10  Kenichi Handa  <handa@m17n.org>
 +
 +      * ftfont.c (fc_charset_table): Add "unicode-sip".
 +      (ftfont_spec_pattern): Lookup fc_charset_table for the registry
 +      Qunicode_sip.
 +
 +2008-12-10  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * coding.c (QCdefault_char): Rename from QCdefalut_char.
 +      (Fcoding_system_put): Use QCdefault_char.
 +      (syms_of_coding): Set QCdefault_char, not QCdefalut_char.
 +
 +2008-12-09  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * xftfont.c (syms_of_xftfont): Fix typo.
 +
 +      * buffer.c (Fbuffer_swap_text): Signal error if swapping a dead buffer.
 +
 +2008-12-08  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * emacs.c (main): Close daemon_pipe on exec.
 +
 +2008-12-08  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * termchar.h (struct tty): New members termcap_term_buffer and
 +      termcap_strings_buffer.
 +
 +      * term.c (encode_terminal_code): Free any previous memory blocks
 +      before calling xmalloc for encode_terminal_src or encode_terminal_dst.
 +      (maybe_fatal): Buffer argument deleted.  Don't free buffer here.
 +      All callers changed.
 +      (init_tty): Store termcap data and string buffers in new struct
 +      tty members termcap_term_buffer and termcap_strings_buffer.
 +      (delete_tty): Free them.
 +      (syms_of_term): Initialize encode_terminal_src and encode_terminal_dst.
 +
 +2008-12-07  Seiji Zenitani  <zenitani@mac.com>
 +
 +      * nsfns.m (ns_set_background_color): Remove code duplication.
 +      It was a substitute for face-transparency on OS X 10.3.
 +
 +2008-12-06  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * coding.c (make_conversion_work_buffer): Disable buffer
 +      modification hooks in the work buffer.
 +
 +2008-12-05  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * process.c (procfs_system_process_attributes): If `nread' has a
 +      negative value, assign zero to it.
 +
 +2008-12-05  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * eval.c (Vdebug_on_error): Doc fix.
 +
 +2008-12-05  Kenichi Handa  <handa@m17n.org>
 +
 +      * ftfont.c (ftfont_shape_by_flt): Use "combining" flt if the
 +      second character is a combining character.
 +
 +2008-12-05  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * process.c (procfs_system_process_attributes): Don't use cmd,
 +      cmdsize, and q without initializing them first.
 +
 +2008-12-04  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32font.c (w32font_draw): Initialize orig_clip before getting
 +      it, and delete it when finished.
 +
 +2008-12-04  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * keyboard.c (kbd_buffer_get_event): Follow the non-interactive
 +      case when running as a daemon before detaching.
 +
 +2008-12-03  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * w32.c (init_environment): Don't unload library shell32.dll.
 +
 +2008-12-03  Kenichi Handa  <handa@m17n.org>
 +
 +      * font.c (font_at): Set `multibyte' at first.
 +
 +      * coding.c (decode_coding_charset): Check type of an element of
 +      vector VALIDS.
 +      (encode_coding_emacs_mule): Be sure to set `code'.
 +
 +      * fontset.c (face_for_char): Handle invalid charset property correctly.
 +      (font_for_char): Likewise.
 +
 +2008-12-03  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * font.c (Fopen_font): Compute pixel size correctly.
 +      (font_update_lface): Handle fonts with corrupted size specs,
 +      i.e. non-int and non-float.
 +
 +      * ftfont.c (ftfont_match): Initialize entity variable.
 +      (ftfont_resolve_generic_family): Avoid using uninitialized var.
 +      (ftfont_list_family): Initialize list var earlier.
 +
 +      * xselect.c (Fx_get_cut_buffer_internal): Fix memory leak.
 +
 +      * xterm.c (x_draw_glyph_string): Fall back on
 +      underline_minimum_offset for underline position.
 +
 +2008-12-03  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * keyboard.c (read_char_help_form_unwind): Specify the type for ARG.
 +
 +      * character.c (c_string_width): Specify the type for LEN.
 +
 +2008-12-03  Kenichi Handa  <handa@m17n.org>
 +
 +      * coding.c (decode_coding_utf_16): Initialize consumed_chars_base to 0.
 +      (decode_coding_utf_8): Likewise.
 +      (detect_coding_system): Initialize utf_16_le_eol to -1, val to Qnil.
 +      (produce_chars): Initialize consumed_chars to 0.
 +
 +2008-12-02  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * keyboard.c (make_lispy_position): Only use PT if the selected
 +      window is current.
 +
 +2008-12-02  Andreas Schwab  <schwab@suse.de>
 +
 +      * font.c (font_unparse_fcname): Fix use of uninitialized variable.
 +
 +      * doprnt.c (doprnt1): Fix size of charbuf.
 +
 +2008-12-02  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * keyboard.c (timer_check): Revert last change.
 +
 +2008-12-02  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * makefile.w32-in ($(BLD)/w32console.$(O)): Fix silly, silly typo.
 +
 +2008-12-01  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * makefile.w32-in: Update dependencies.
 +      (CONFIG_H): Add $(EMACS_ROOT)/nt/inc/sys/time.h.
 +
 +2008-12-01  Andreas Schwab  <schwab@suse.de>
 +
 +      * font.c (register_font_driver): Use xmalloc.
 +      (font_put_frame_data): Likewise.
 +
 +2008-12-01  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * xfaces.c (realize_x_face): Make abort condition clearer.
 +
 +      * gtkutil.c (update_frame_tool_bar): Initialize variable.
 +
 +2008-11-30  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * keyboard.c (timer_check): After a timer runs, ensure that the
 +      selected window's buffer is current.
 +
 +2008-11-30  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * makefile.w32-in ($(BLD)/abbrev.$(O)): Remove.
 +      It was accidentally restored by the Unicode merge.
 +
 +      * w32proc.c (Fw32_get_locale_info): Fix typo in docstring.
 +
 +2008-11-29  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * w32proc.c: Include "coding.h".
 +      (Fw32_short_file_name): Encode filename passed to Windows API.
 +      (Fw32_long_file_name): Encode filename passed to Windows API and
 +      decode back the result.  (Bug#1433)
 +
 +2008-11-29  Kenichi Handa  <handa@m17n.org>
 +
 +      * charset.h (CHAR_CHARSET_P): Check if the encoder is loaded or
 +      not before accessing it.
 +
 +      * charset.c (Fdefine_charset_internal): After calculating
 +      min_char, max_char, and fastmap, copy the charset structure again.
 +      (encode_char): Fix the previous change.
 +
 +2008-11-28  Seiji Zenitani  <zenitani@mac.com>
 +
 +      * frame.c (x_set_alpha) [NS_IMPL_COCOA]: Call x_set_frame_alpha.
 +
 +      * nsfns.m (ns_frame_parm_handlers): Set alpha handler.
 +
 +      * nsterm.m (x_set_frame_alpha): New function.
 +
 +2008-11-27  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * xfaces.c (Fx_font_family_list, syms_of_xfaces): Fix last change.
 +
 +2008-11-27  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * w32font.c (add_font_entity_to_list): Pass the right LOGFONT
 +      pointer to check_face_name.
 +
 +2008-11-27  Kenichi Handa  <handa@m17n.org>
 +
 +      * category.h (SET_CATEGORY_SET): Call set_category_set.
 +      (set_category_set): Extern it.
 +
 +      * category.c (hash_get_category_set): New function.
 +      (Fmodify_category_entry): Adjust for the change of
 +      char_table_ref_and_range.  Call hash_get_category_set to get a
 +      category set to store in the table.
 +
 +      * character.h (MAYBE_UNIFY_CHAR): Call maybe_unify_char instead of
 +      Funify_charset.
 +
 +      * charset.h (enum charset_method): Delete CHARSET_METHOD_MAP_DEFERRED.
 +      (DECODE_CHAR): Check if the decoder vector is ready.
 +      (ENCODE_CHAR): Check if the encoder char-table is ready.
 +      (maybe_unify_char): Extern it.
 +
 +      * charset.c (Vchar_unified_charset_table): Delete it.
 +      (inhibit_load_charset_map): New variable.
 +      (temp_charset_work): New variable.
 +      (SET_TEMP_CHARSET_WORK_ENCODER, GET_TEMP_CHARSET_WORK_ENCODER)
 +      (SET_TEMP_CHARSET_WORK_DECODER, GET_TEMP_CHARSET_WORK_DECODER):
 +      New macros.
 +      (load_charset_map): Meaning of control_flag changed.
 +      If inhibit_load_charset_map is nonzero, setup a table in
 +      temp_charset_work.
 +      (load_charset): New argument control_flag.
 +      (map_charset_for_dump): New function.
 +      (map_charset_chars): If inhibit_load_charset_map is nonzero, use
 +      map_charset_for_dump.
 +      (Fdefine_charset_internal): If the charset method is MAP, load
 +      mapping tables by calling load_charset.
 +      (Funify_charset): Don't load a mapping table but directly set
 +      Vchar_unify_table.
 +      (maybe_unify_char): New function.
 +      (decode_char): Don't handle the deleted method MAP_DEFERRED.
 +      Handle the case of inhibit_load_charset_map being nonzero.
 +      (encode_char): Don't handle the deleted method MAP_DEFERRED.
 +      Handle the case of inhibit_load_charset_map being nonzero.
 +      (Fclear_charset_maps): Just free temp_charset_work.
 +      (syms_of_charset): Make `inhibit-load-charset-map' a Lisp
 +      variable.
 +
 +      * chartab.c (sub_char_table_ref_and_range): Adjust for the
 +      change of char_table_ref_and_range.
 +      (char_table_ref_and_range): Change the meaning of argument FROM
 +      and TO.  Now the caller must provide initial values for *FROM
 +      and *TO.
 +
 +      * fontset.c (fontset_add): Adjust for the change of
 +      char_table_ref_and_range.
 +      (fontset_get_font_group): Likewise.
 +      (Ffontset_info): Likewise.
 +
 +      * keymap.c (describe_vector): Adjust for the change of
 +      char_table_ref_and_range.  For char-table, put boundary between
 +      non-ASCII and 8-bit characters.
 +
 +      * print.c (print_object): For bool-vector, delete unnecessary
 +      check of ASCII_BYTE_P.
 +
 +2008-11-26  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32font.c (w32font_open_internal): Don't include external
 +      leading in font height.  (Bug#879)
 +
 +2008-11-26  Glenn Morris  <rgm@gnu.org>
 +
 +      * xfaces.c (Fx_font_family_list): Replace lisp/term/pc-win.el
 +      redefinition with ifdef.  (Bug#1383)
 +
 +2008-11-24  Adrian Robert  <Adrian.B.Robert@gmail.com>
 +
 +      * nsterm.m (ns_get_color): Handle long hex strings (fixes bug #1044).
 +
 +2008-11-24  Wolfgang Lux  <wolfgang.lux@gmail.com>  (tiny change)
 +
 +      * nsterm.m (-otherMouseDown:, -otherMouseUp:, -otherMouseDragged):
 +      New EmacsView methods.
 +      (EV_UDMODIFIERS, EV_BUTTON): Add OtherMouse constants.
 +      Fixes bug #1048,1357,1414.
 +
 +2008-11-24  Adrian Robert  <Adrian.B.Robert@gmail.com>
 +
 +      Fix bug #1362.
 +      * image.c (x_clear_image_1): Do not free background under HAVE_NS, it
 +      is not an indexed color.
 +      * nsterm.m (free_indexed_color): Add argument checking.
 +      * nsfns.m: Move config.h to before system includes (advised by Dan N.).
 +
 +2008-11-24  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * minibuf.c (Fcompleting_read, Vminibuffer_completion_confirm):
 +      Document confirm-after-completion value for
 +      minibuffer-completion-confirm.
 +
 +2008-11-24  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32font.c (check_face_name): Use xstrcasecmp.  Avoid compiler
 +      warning.
 +
 +2008-11-23  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32uniscribe.c (uniscribe_encode_char): Ensure context is
 +      restored before returning.
 +
 +      * w32font.c (check_face_name): New function.
 +      (add_font_entity_to_list): Use it to filter out common substituted
 +      fonts.  (Bug#642)
 +
 +2008-11-22  Martin Rudalics  <rudalics@gmx.at>
 +
 +      * buffer.c (Fswitch_to_buffer): Reword and mention new option
 +      confirm-nonexistent-file-or-buffer in doc-string.
 +
 +2008-11-21  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * buffer.c (Fbuffer_swap_text): Remove redundant marker manipulation.
 +      Fix copy/paste typo.  Add checks.
 +
 +2008-11-21  Kenichi Handa  <handa@m17n.org>
 +
 +      * coding.c (detect_coding_iso_2022): Reject invalid composition
 +      sequence.
 +      (DECODE_COMPOSITION_START): If the current source is the last
 +      block, and the current composition doesn't end, regard this
 +      sequence as invalid.
 +      (decode_coding_iso_2022): Handle invalid composition sequence.
 +
 +2008-11-20  Martin Rudalics  <rudalics@gmx.at>
 +
 +      * window.c (coordinates_in_window): Don't return
 +      ON_VERTICAL_BORDER for the rightmost position of a mode/header
 +      line when the window is not the rightmost one.  (Bug#1372)
 +
 +2008-11-16  Ben North  <ben@redfrontdoor.org>  (tiny change)
 +
 +      * buffer.c (syms_of_buffer): Fix doc-string of cursor-type.
 +
 +2008-11-15  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * msdos.c (run_msdos_command): Don't call dos_ttcooked, dos_ttraw,
 +      and bright_bg if noninteractive is non-zero.
 +
 +2008-11-15  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
 +
 +      * xterm.c (x_draw_glyph_string): For stretch glyphs, don't call
 +      x_draw_glyph_string_background.
 +
 +      * w32term.c (x_draw_glyph_string): Likewise.
 +
 +2008-11-15  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * xterm.c (x_draw_glyph_string): Stop drawing the background of
 +      the next glyph string once past the overhang width.
 +
 +      * nsterm.m (ns_draw_glyph_string): Likewise.
 +
 +      * w32term.c (x_draw_glyph_string): Likewise.
 +
 +2008-11-14  Fabrice Popineau  <fabrice.popineau@supelec.fr>  (tiny change)
 +
 +      * fileio.c (Finsert_file_contents): Decrement specpdl_ptr to avoid
 +      double file close.
 +
 +2008-11-14  Martin Rudalics  <rudalics@gmx.at>
 +
 +      * window.c (window_loop): In DELETE_BUFFER_WINDOWS case, reset
 +      dedicated status of window before attempting to display another
 +      buffer in it.
 +
 +2008-11-14  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * msdos.c (Fmsdos_long_file_names):
 +      (syms_of_msdos) <dos-unsupported-char-glyph>:
 +      * dosfns.c (Fint86): Fix typos in docstrings.
 +
 +2008-11-14  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * makefile.w32-in (OBJ1, WIN32OBJ): Fix whitespace.
 +
 +2008-11-14  Katsumi Yamaoka  <yamaoka@jpl.org>
 +
 +      * puresize.h (BASE_PURESIZE): Increase to 1260000.
 +
 +2008-11-12  Michal Nazarewicz  <mina86@tlen.pl>  (tiny change)
 +
 +      * frame.c (x_set_alpha): Set alpha to -1 if nil given.
 +
 +      * frame.h: Negative alpha means "don't touch".
 +
 +      * w32term.c (x_set_frame_alpha): Do nothing if alpha is negative.
 +
 +      * xterm.c (x_set_frame_alpha): Do nothing if alpha is negative.
 +
 +2008-11-12  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * hftctl.c:
 +      * chpdef.h:
 +      * acldef.h: Remove files used only for systems no longer supported.
 +
 +      * Makefile.in: Fix .o alphabetical ordering.
 +      (hftctl.o): Remove dependency, file removed.
 +      (keymap.o, print.o): Depend on charset.h.
 +
 +2008-11-10  Kenichi Handa  <handa@m17n.org>
 +
 +      * character.c (Fget_byte): Fix and make it faster for unibyte target.
 +
 +2008-11-08  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * dired.c (file_name_completion): If completion_ignore_case is
 +      enabled, ignore case when checking completion-regexp-list.
 +
 +2008-11-08  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * vm-limit.c (get_lim_data): Fix last change.
 +
 +2008-11-08  Kenichi Handa  <handa@m17n.org>
 +
 +      * character.c (Fget_byte): New function.
 +      (syms_of_character): Defsubr Fget_byte.
 +
 +2008-11-07  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * xdisp.c (try_window_reusing_current_matrix): Ensure that window
 +      cursor position is valid after scrolling.
 +
 +2008-11-06  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * fns.c (Frandom): Rename arg N to LIMIT to match the docs; doc fix.
 +
 +2008-11-06  Glenn Morris  <rgm@gnu.org>
 +
 +      * xterm.c (handle_one_xevent): Don't let popup menus cause
 +      mouse-autoselect-window related window switching.  (Bug#1261)
 +
 +2008-11-04  David Smith  <davidsmith@acm.org>  (tiny change)
 +
 +      * xterm.c (xim_close_dpy): Avoid double-free on X11R6 XIM.
 +
 +2008-11-04  Andreas Schwab  <schwab@suse.de>
 +
 +      * xfns.c (Fx_wm_set_size_hint): Add missing return value.
 +
 +2008-11-03  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * xfns.c (Fx_wm_set_size_hint): New function.
 +
 +2008-11-03  Martin Rudalics  <rudalics@gmx.at>
 +
 +      * textprop.c (Fprevious_single_char_property_change): Return 0
 +      when there's no change in a string.  (Bug#1301)
 +
 +2008-11-02  Martin Rudalics  <rudalics@gmx.at>
 +
 +      * frame.c (do_switch_frame): New argument NORECORD passed to
 +      Fselect_window.
 +      (Fselect_frame): New argument NORECORD passed to
 +      do_switch_frame.
 +      (Fset_frame_selected_window): New argument NORECORD passed to
 +      Fselect_frame.
 +      (Fhandle_switch_frame, Fdelete_frame): Handle NORECORD argument
 +      in call of do_switch_frame.
 +      (Fset_mouse_position, Fset_mouse_pixel_position, Fraise_frame):
 +      Handle NORECORD argument in call of Fselect_frame.
 +      * lisp.h (do_switch_frame, Fselect_frame)
 +      (Fset_frame_selected_window): Adjust declarations.
 +      * window.c (select_frame_norecord): New function.
 +      (run_window_configuration_change_hook): Use it and call
 +      Fselect_frame with NORECORD set.
 +      (Fselect_window): Pass NORECORD to Fselect_frame.
 +      (Fset_window_configuration): Handle NORECORD argument in call of
 +      do_switch_frame.
 +      * minibuf.c (choose_minibuf_frame): Handle NORECORD in call of
 +      Fset_frame_selected_window.
 +      * keyboard.c (command_loop_1): Handle NORECORD in call of
 +      Fselect_frame (currently ifdefd).
 +
 +2008-11-02  Ulrich Mueller  <ulm@kph.uni-mainz.de>
 +
 +      * emacs.c (USAGE2): Untabify.
 +
 +2008-11-01  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * composite.c (fill_gstring_header): Fix copy/paste typo.
 +
 +2008-10-31  Martin Rudalics  <rudalics@gmx.at>
 +
 +      * window.c (Fnext_window, Fprevious_window): Rewrite doc-string.
 +      (Fother_window): Rename argument and rewrite doc-string.
 +      (select_window_norecord): Fix return value.  (Bug#1276)
 +
 +2008-10-30  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * w32fns.c (x_create_tip_frame): Prevent default foreground color for
 +      new frames overriding foreground for tooltips.  Based on similar patch
 +      from Martin Rudalics <rudalics@gmx.at>.  (Bug#1032)
 +
 +2008-10-29  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * emacs.c (Fdaemon_initialized): Initialize nfd.
 +
 +2008-10-29  Martin Rudalics  <rudalics@gmx.at>
 +
 +      * window.c (Fwindow_height, Fdelete_window, set_window_buffer)
 +      (Fwindow_text_height): Clarify doc-strings.
 +      * xdisp.c (syms_of_xdisp): Mention set-window-buffer in
 +      doc-string of window-scroll-functions.
 +
 +2008-10-28  Reiner Steib  <Reiner.Steib@gmx.de>
 +
 +      * category.c (syms_of_category): Fix typo in docstring.
 +
 +2008-10-28  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * window.c (Fwindowp, Fwindow_live_p, Fwindow_minibuffer_p)
 +      (Fcoordinates_in_window_p, Fscroll_left, Fscroll_right):
 +      Fix typos in docstrings.
 +
 +2008-10-28  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * emacs.c (daemon_pipe): Make non-static.
 +      (IS_DAEMON): Move definition ...
 +      * lisp.h (IS_DAEMON): ... here.
 +      (daemon_pipe): Declare.
 +      (is_daemon): Remove.
 +      * dispnew.c (init_display): Use IS_DAEMON.
 +
 +2008-10-28  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * xdisp.c (pos_visible_p, redisplay_internal, message3_nolog)
 +      (message2_nolog): Check FRAME_INITIAL_P instead of noninteractively.
 +
 +      * emacs.c (is_daemon): Remove.
 +      (main): Don't set is_daemon.
 +      (IS_DAEMON): New macro.
 +      (Fdaemonp, Fdaemon_initialized): Use it.
 +      (Fdaemon_initialized): Write a char into the pipe to make sure the
 +      parent exits.
 +      (syms_of_emacs): Explicitly initialize daemon_pipe[1].
 +
 +2008-10-27  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * nsterm.m (ns_draw_window_cursor): When hbar cursor is on
 +      over-sized glyph, draw it with the default glyph width.
 +
 +      * w32term.c (x_draw_bar_cursor): When hbar cursor is on over-sized
 +      glyph, draw it with the default glyph width.
 +
 +      * xterm.c (x_draw_bar_cursor): When hbar cursor is on over-sized
 +      glyph, draw it with the default glyph width.
 +
 +      * xdisp.c (try_scrolling): When computing the distance from the
 +      scroll margin to PT, try moving some distance past the window
 +      bottom before giving up.
 +
 +2008-10-27  Martin Rudalics  <rudalics@gmx.at>
 +
 +      * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p)
 +      (Fset_window_buffer): Explain in doc-string that a window can be
 +      "strongly" dedicated to its buffer.
 +
 +2008-10-27  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * emacs.c (daemon_name): New variable.
 +      (main): Deal with --daemon=SERVER_NAME.
 +      (Fdaemonp): Return a name if one was passed to --daemon.
 +
 +2008-10-26  Romain Francoise  <romain@orebokech.com>
 +
 +      * emacs.c (daemon_pipe): New variable.
 +      (main): Create a pipe before forking, make the parent exit only after
 +      the child has closed its end of the pipe.  Move closing the
 +      descriptors ...
 +      (Fdaemon_initialized): ... here.  New function.
 +
 +2008-10-26  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * chartab.c (Foptimize_char_table): Make sure `ascii' doesn't point to
 +      the previous unoptimized table.
 +
 +      * window.c (Fset_window_buffer): Undo 2008-10-18 change to re-instate
 +      the distinction between non-nil and non-t value of `dedicated'.
 +
 +2008-10-25  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * keyboard.c (read_char_minibuf_menu_prompt): Ensure that
 +      read_char_minibuf_menu_text is large enough to hold the menu string.
 +
 +2008-10-25  Martin Rudalics  <rudalics@gmx.at>
 +
 +      * window.c (Fget_buffer_window, Fdelete_windows_on)
 +      (Freplace_buffer_in_windows): Make buffer argument optional and
 +      rename to buffer_or_name.
 +
 +2008-10-24  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * xdisp.c (handle_single_display_spec, handle_display_prop):
 +      Undo 2005-05-16 change.
 +      (handle_stop): Pop iterator if it's loaded with an empty string.
 +      (get_overlay_strings_1): Don't save iterator if it's loaded with
 +      an empty string (bug#1201).
 +
 +2008-10-24  Kenichi Handa  <handa@m17n.org>
 +
 +      * ftfont.c (ftfont_otf_features): Fix previous change.
 +      (ftfont_otf_capability): Check FeatureList.FeatureCount before
 +      calling ftfont_otf_features.
 +
 +2008-10-24  Kenichi Handa  <handa@m17n.org>
 +
 +      * font.c (font_match_p): Fix for the case that a vector of
 +      characters is in script-representative-chars.
 +
 +2008-10-24  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * dbusbind.c (xd_in_read_queued_messages): New variable.
 +      (XD_SIGNAL1, XD_SIGNAL2, XD_SIGNAL3): New macros.  Throw Qdbus_error.
 +      (xd_read_queued_messages): Catch Qdbus_error from the macros.
 +      (all): Replace xsignal1, xsignal2, xsignal3 by the respective
 +      macro.  (Bug#1186)
 +
 +2008-10-23  Ali Bahrami  <ali_gnu@emvision.com>  (tiny change)
 +
 +      * s/sol2-10.h: New file.
 +
 +2008-10-23  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * xdisp.c (fill_glyph_string): Fix typo in source (though the
 +      poor beast has survived 9+ years and the jump from xterm.c!).
 +
 +2008-10-23  Martin Rudalics  <rudalics@gmx.at>
 +
 +      * buffer.c (Fget_buffer_create): Rename arg to buffer_or_name.
 +      Reword doc-string.
 +      (Fbury_buffer): In doc-string say what happens to the buffer's window.
 +
 +2008-10-23  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * character.c (syms_of_character) <script-representative-chars>:
 +      <unicode-category-table>: Doc fixes.
 +
 +2008-10-23  Noah Friedman  <friedman@splode.com>
 +
 +      * coding.c (make_conversion_work_buffer): Check that
 +      Vcode_conversion_reused_workbuf is a live buffer, otherwise call
 +      Fget_buffer_create.
 +
 +2008-10-23  Kenichi Handa  <handa@m17n.org>
 +
 +      * font.c (font_add_log): Check the values of extra properties.
 +
 +2008-10-22  Martin Rudalics  <rudalics@gmx.at>
 +
 +      * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p):
 +      Reword doc-string.
 +      (Fset_window_parameter): Use NILP.
 +      (Fscroll_up, Fscroll_down, Fminibuffer_selected_window)
 +      (Frecenter): Use "selected" instead of "current" window in doc-strings.
 +
 +2008-10-22  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * xdisp.c (next_element_from_buffer): Remove bogus xassert condition.
 +
 +2008-10-22  Adrian Robert  <Adrian.B.Robert@gmail.com>
 +
 +      * nsfns.m (ns_appkit_version): New function.
 +      (x-server-version): Use it.
 +      (syms_of_nsfns): Define ns-version-string here, not nsterm.m.
 +      (x-server-vendor): Don't check_ns().
 +
 +      * nsterm.m (syms_of_nsterm): Drop ns-version-string.
 +
 +2008-10-22  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * w32fns.c (unwind_create_frame) [!GLYPH_DEBUG]: Fix xassert.
 +      Copied from 2005-02-03 change to xfns.c by Kim F. Storm.
 +
 +2008-10-22  Kenichi Handa  <handa@m17n.org>
 +
 +      * syntax.c (scan_words): Call word_boundary_p instead of comparing
 +      scripts.
 +
 +      * category.c (word_boundary_p): Check scripts instead of charset.
 +      Handle nil value in word-separating-categories and
 +      word-combining-categories.
 +      (syms_of_category): Fix docstrings of word-separating-categories
 +      and word-combining-categories.
 +
 +2008-10-21  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * coding.c (Fencode_coding_region, Fdecode_coding_region)
 +      (Fdecode_coding_string, Fencode_coding_string): Doc fix.
 +
 +2008-10-21  Martin Rudalics  <rudalics@gmx.at>
 +
 +      * buffer.c (Fget_buffer, Fbury_buffer, switch_to_buffer_1):
 +      Rename arg "buffer" to "buffer_or_name".
 +      (Fkill_buffer): Rename arg "buffer" to "buffer_or_name" and make
 +      it optional.
 +      (no_switch_window): Remove since the return value is not used.
 +      (Fswitch_to_buffer): Rename arg "buffer" to "buffer_or_name".
 +      Consider window as dedicated when Fwindow_dedicated_p returns a
 +      non-nil value.
 +      * lisp.h: Remove prototype for no_switch_window.
 +
 +2008-10-21  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * emacs.c (main): Unconditionally set PER_LINUX32 and exec
 +      temacs when dumping if HAVE_PERSONALITY_LINUX32 is defined.
 +
 +2008-10-21  Kenichi Handa  <handa@m17n.org>
 +
 +      * coding.c (detect_coding_charset): For iso-8859-* coding systems,
 +      check Vlatin_extra_code_table.
 +
 +2008-10-20  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * fileio.c (Fset_file_modes): Doc fix.
 +
 +2008-10-19  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * dbusbind.c (XD_OBJECT_TO_DBUS_TYPE): Handle simple type symbols
 +      in arrays.
 +
 +2008-10-19  Martin Rudalics  <rudalics@gmx.at>
 +
 +      * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p):
 +      Mention kill-buffer in doc-string.
 +      (Fset_window_buffer): Reinsert tem check removed in last commit.
 +      (Fenlarge_window, Fshrink_window): Have argument names and
 +      doc-string follow Elisp manual more closely.
 +
 +2008-10-18  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * fileio.c (Fset_file_modes): Doc fix.
 +
 +2008-10-18  Martin Rudalics  <rudalics@gmx.at>
 +
 +      * window.c (Fwindow_width, Fset_window_start)
 +      (Fwindow_parameters, Fwindow_parameter, Fset_window_parameter)
 +      (Fdelete_windows_on, Freplace_buffer_in_windows):
 +      Make doc-strings follow code and Elisp manual more closely.
 +      (Fwindow_dedicated_p): Make window argument optional.
 +      (Fset_window_dedicated_p): Rename argument "arg" to "flag".
 +      (Fset_window_buffer): Respect any non-nil dedicated value for
 +      window.  Rename "buffer" argument to "buffer_or_name".
 +
 +2008-10-18  Ulrich Mueller  <ulm@gentoo.org>
 +
 +      * m/sh3.h: New file, machine description for SuperH.
 +
 +2008-10-17  Martin Rudalics  <rudalics@gmx.at>
 +
 +      * window.c (Fsplit_window): Rename arg horflag to horizontal.
 +
 +2008-10-17  Kenichi Handa  <handa@m17n.org>
 +
 +      * ftfont.c (ftfont_otf_features): Fix indexing
 +      gsub_gpos->FeatureList.Feature.  Check the validity of indices.
 +
 +2008-10-16  Magnus Henoch  <mange@freemail.hu>
 +
 +      * dbusbind.c (Fdbus_call_method): Unbreak usage line.
 +      (Fdbus_call_method_asynchronously): Ditto.
 +      This change makes C-h f display the argument list.
 +
 +2008-10-16  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * fileio.c (Fexpand_file_name): Doc fix.
 +
 +      * xfaces.c (Finternal_set_lisp_face_attribute): Make null values
 +      of :foreground and :background equivalent to unspecified (20.x
 +      compatibility).
 +
 +2008-10-15  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * buffer.c (syms_of_buffer): Doc fix.
 +
 +2008-10-14  Kenichi Handa  <handa@m17n.org>
 +
 +      * font.c (font_clear_prop): When clearing font width, clear the
 +      average width field too.
 +
 +2008-10-12  Andreas Schwab  <schwab@suse.de>
 +
 +      * ftfont.c (ftfont_shape_by_flt): Make static.
 +      * ftfont.h (ftfont_shape_by_flt): Don't declare.
 +
 +      * font.c: Don't include <m17n-flt.h>.
 +
 +2008-10-10  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Decrease to 10000.
 +
 +2008-10-09  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * frame.c (make_terminal_frame) [MSDOS]: Remove unused #ifdef'ed
 +      away code.
 +
 +2008-10-09  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * dispnew.c (update_text_area): Avoid looping due to large glyph
 +      overhangs (bug#1070).
 +
 +2008-10-09  Kenichi Handa  <handa@m17n.org>
 +
 +      * fontset.c (face_for_char): If face->fontset is negative, just
 +      return ascii_face.
 +
 +      * font.c (font_delete_unmatched): Fix previous change.
 +      Don't reject an entity if DPI and AVGWIDTH of an entity are 0.
 +
 +2008-10-09  Martin Rudalics  <rudalics@gmx.at>
 +
 +      * frame.c (Fraise_frame): On text-only terminals select frame in
 +      order to make it visible.  (Bug#1061)
 +
 +2008-10-08  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * fontset.c (fontset_find_font): Check frame validity.
 +
 +2008-10-07  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * gtkutil.c (xg_display_open): Reset default display if none exists.
 +      (xg_display_close): Allow Emacs to close all displays (bug#985).
 +
 +2008-10-06  Andreas Schwab  <schwab@suse.de>
 +
 +      * sysdep.c (sys_signal): Always set SA_RESTART when noninteractively.
 +
 +2008-10-06  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * emacs.c (Vbefore_init_time, Vafter_init_time): Move from startup.el.
 +
 +      * lisp.h (Vbefore_init_time, Vafter_init_time): Declare.
 +
 +      * gtkutil.c (x_wm_set_size_hint): Return immediately if called
 +      during initialization.
 +
 +2008-10-04  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * xdisp.c (redisplay_internal): If frame switched, redisplay the
 +      whole thing on MSDOS frames as well as on a TTY.
 +
 +      * dispnew.c (update_frame): Flush termscript for MSDOS frames as
 +      well as for TTY.
 +      (Fopen_termscript): Allow opening a termscript on MSDOS frames as
 +      well as on a TTY.
 +
 +      * sysdep.c (init_sys_modes): Set FRAME_GARBAGED_P for MSDOS frames
 +      as well as for TTY.
 +
 +      * systime.h (EMACS_TIME_CMP): Cast EMACS_SECS values to `long'.
 +
 +      * dispnew.c (change_frame_size_1): Set FrameRows and FrameCols for
 +      MSDOS frames as well.
 +
 +2008-10-02  Adrian Robert  <Adrian.B.Robert@gmail.com>
 +
 +      * image.c (x_clear_image_1): Under NS, call ns_free_indexed_color with
 +      correct arguments.
 +      * menu.c (find_and_return_menu_selection): Add cast.
 +
 +2008-10-03  Glenn Morris  <rgm@gnu.org>
 +
 +      * emacs.c (USAGE1): Add --daemon.
 +
 +2008-10-02  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * process.c (procfs_system_process_attributes): Multiply `pcpu' by
 +      100, so it's in percents as advertised.
 +
 +2008-10-02  Adrian Robert  <Adrian.B.Robert@gmail.com>
 +
 +      * nsterm.h (ns_cursor_types, ns_output.desired_cursor_color)
 +      (ns_output.current_cursor, ns_output.desired_cursor)
 +      (ns_output.last_inactive, FRAME_CURSOR, FRAME_NEW_CURSOR)
 +      (FRAME_NEW_CURSOR_COLOR): Remove.
 +
 +      * nsfns.m (ns_set_cursor_color): Use FRAME_CURSOR_COLOR.
 +      (ns_lisp_to_cursor_type, ns_cursor_type_to_lisp): Use core Emacs
 +      enumeration (HOLLOW_BOX_CURSOR, etc.).
 +
 +      * nsterm.m (ns_frame_rehighlight): Remove commented code.
 +      (draw_window_cursor): Simplify code.
 +      (EmacsView-windowDidBecomeKey:,-windowDidResignKey:):
 +      Don't change cursor type.  In latter, call rehighlight instead of doing
 +      updates manually.
 +      (EmacsPrefsController-setPanelFromValues,-setValuesFromPanel):
 +      Use core Emacs cursor types.
 +
 +      * xdisp.c (draw_glyphs): Don't call notice_overwritten_cursor under NS.
 +
 +2008-10-02  Martin Rudalics  <rudalics@gmx.at>
 +
 +      * process.c (Faccept_process_output): Fix doc-string.
 +
 +2008-10-02  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * gmalloc.c (__sbrk): Also define for uClibc.
 +
 +      * s/gnu-linux.h (GNU_LIBRARY_PENDING_OUTPUT_COUNT): Add definition
 +      for uClibc.
 +
 +2008-10-01  Adrian Robert  <Adrian.B.Robert@gmail.com>
 +
 +      * nsfont.m (nsfont_spec_to_traits): Use UnXX masks only for non-normal
 +      styles.
 +      (nsfont_open): Reenable the cache.
 +
 +2008-10-01  Adrian Robert  <Adrian.B.Robert@gmail.com>
 +
 +      * font.c (font_matching_entity): Reflect ATTRS in font selection.
 +      (font_find_for_lface) [HAVE_NS]: Don't ignore case.
 +
 +2008-09-30  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * dispnew.c (Fsend_string_to_terminal): Don't try to send a string to
 +      a suspended terminal.
 +
 +2008-09-30  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * dbusbind.c (xd_signature): Use strcat instead of sprintf.
 +
 +2008-09-30  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * Makefile.in (MSDOS_SUPPORT): Remove ccl.elc and codepage.elc.
 +
 +2008-09-30  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * xdisp.c (move_it_to): Don't advance the iterator if the last tab
 +      in a continued line coincides with a line beginning.
 +
 +2008-09-29  Adrian Robert  <Adrian.B.Robert@gmail.com>
 +
 +      * nsfont.m (nsfont_trait_distance): Fix bug.
 +      (nsfont_list): Return a list rather than a vector (syncs with Handa
 +      changes of 2008-05-14).
 +      (nsfont_open): Improve logging.
 +
 +2008-09-29  Andreas Schwab  <schwab@suse.de>
 +
 +      * keyboard.c (syms_of_keyboard) <input-decode-map>: Doc fix.
 +
 +2008-09-28  Martin Rudalics  <rudalics@gmx.at>
 +
 +      * character.c (Fchar_resolve_modifiers): Rewrite Elisp function
 +      name as char-resolve-modifiers.
 +      Reported by: Markus Triska <markus.triska@gmx.at>
 +
 +2008-09-28  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * dispnew.c (init_display): Return earlier when running as a daemon.
 +
 +2008-09-27  Adrian Robert  <Adrian.B.Robert@gmail.com>
 +
 +      * nsfont.m (nsfont_draw): Fix up composition rendering (cmp_from, ...).
 +
 +2008-09-27  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * composite.c (Fcomposition_get_gstring)
 +      (Fcompose_region_internal, Fcompose_string_internal)
 +      (Ffind_composition_internal): Doc fix.
 +      (syms_of_composite) <compose-chars-after-function>: Doc fix.
 +      (syms_of_composite) <auto-composition-function>: Doc fix.
 +      (syms_of_composite) <composition-function-table>: Doc fix.
 +
 +2008-09-25  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * search.c (wordify): New argument for lax word-ends.
 +      (Fword_search_forward_lax, Fword_search_backward_lax): New funs.
 +
 +2008-09-24  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * lisp.h (is_daemon): Declare.
 +      * dispnew.c (init_display): Do not try to initialize the terminal
 +      when running as a daemon.
 +
 +2008-09-22  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * nsfns.m (compute_tip_xy): Use x_display_pixel_width and
 +      x_display_pixel_height.
 +
 +2008-09-22  Martin Rudalics  <rudalics@gmx.at>
 +
 +      * undo.c (record_point): Don't call Fundo_boundary for first
 +      change.  (Bug#731)
 +
 +2008-09-22  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * emacs.c (Fdaemonp): Doc fix.
 +
 +2008-09-22  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * emacs.c (main): Place #ifdef in the proper place.
 +
 +2008-09-21  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * emacs.c (standard_args): Add --daemon.
 +      (main): Disconnect from the terminal when --daemon is passed.
 +      (is_daemon): New variable.
 +      (Fdaemonp): New function.
 +      (syms_of_emacs): Defsubr it.
 +
 +2008-09-20  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * xdisp.c (get_next_display_element): Handle string display
 +      correctly when checking for the end of a box run.
 +
 +2008-09-20  Glenn Morris  <rgm@gnu.org>
 +
 +      * fileio.c (Qdelete_by_moving_to_trash): New Lisp_Object.
 +      (syms_of_fileio): Add Qdelete_by_moving_to_trash.
 +      (Frename_file): Avoid copying to trash if a rename involves
 +      a delete.  (Bug#964).
 +
 +2008-09-20  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * keyboard.c (Fset_quit_char, Fset_input_meta_mode)
 +      (Fset_output_flow_control, Fcurrent_input_mode): Support MSDOS
 +      frames as well as termcap frames.
 +      (handle_interrupt): Remove "#ifndef MSDOS" around the call to
 +      get_named_tty.
 +
 +2008-09-19  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * process.c (procfs_system_process_attributes): Fix cmdline in
 +      case /proc/PID/cmdline is empty.
 +
 +      * xterm.c (x_wm_set_size_hint): Use x_display_pixel_width and
 +      x_display_pixel_height.
 +
 +2008-09-19  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * frame.c (x_fullscreen_adjust): Declare var as Display_Info.
 +
 +      * w32fns.c (Fx_display_pixel_width, Fx_display_pixel_height)
 +      (compute_tip_xy): Use x_display_pixel_width, x_display_pixel_height.
 +
 +2008-09-19  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * dispextern.h (struct it): Move line_wrap away from the middle of
 +      bitfields.  Move voffset in struct iterator_stack_entry after the
 +      bitfields.  Move tab_width near after another short.
 +
 +2008-09-18  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * frame.h (struct frame): Move alpha from the middle of bitfields.
 +
 +      * window.h (struct window): Move frozen_window_start_p after the
 +      rest of the bitfields to reduce padding.
 +
 +2008-09-18  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * xterm.h (x_display_info): Remove `height' and `width' members.
 +
 +      * nsterm.h (ns_display_info): Remove `height' and `width' members.
 +
 +      * w32term.h (w32_display_info): Remove `height', `width',
 +      `height_in', and `width_in' members.
 +
 +      * xterm.c (x_display_pixel_height, x_display_pixel_width):
 +      New functions.
 +      (x_calc_absolute_position): Use them.
 +      (x_term_init): Omit removed `height' and `width' members.
 +
 +      * w32term.c (x_display_pixel_height, x_display_pixel_width):
 +      New functions.
 +      (w32_read_socket, x_calc_absolute_position): Use them.
 +      (w32_initialize_display_info, w32_term_init): Omit removed members
 +      of w32_display_info.
 +
 +      * nsterm.m (x_display_pixel_height, x_display_pixel_width):
 +      New functions.
 +      (ns_initialize_display_info): Omit removed members of ns_display_info.
 +
 +      * xterm.c (x_display_pixel_height, x_display_pixel_width):
 +      New functions.
 +      (x_calc_absolute_position): Use them.
 +      (x_term_init): Omit removed `height' and `width' members.
 +
 +      * xfns.c (Fx_display_pixel_width, Fx_display_pixel_height)
 +      (compute_tip_xy):
 +      * frame.c (x_fullscreen_adjust):
 +      * xmenu.c (menu_position_func): Use x_display_pixel_height and
 +      x_display_pixel_width.
 +
 +2008-09-18  Kenichi Handa  <handa@m17n.org>
 +
 +      * composite.c (fill_gstring_header): Don't check FROM and TO here.
 +      (composition_compute_stop_pos): Fix handling of static composition.
 +      (Fcomposition_get_gstring): Check FROM and TO at first.
 +
 +2008-09-17  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * composite.c (Fcomposition_get_gstring): Yet another int/Lisp_Object
 +      mixup (YAILOM).
 +
 +2008-09-17  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * indent.c (Fvertical_motion): Use position reported by iterator
 +      instead of PT for determining screen motion (bug#943).
 +
 +2008-09-17  Romain Francoise  <romain@orebokech.com>
 +
 +      * composite.c (composition_adjust_point): Fix int/EMACS_INT mixup.
 +
 +2008-09-17  Kenichi Handa  <handa@m17n.org>
 +
 +      * ftfont.c (ftfont_shape_by_flt): Downcase family name.
 +
 +      * composite.c (Fcomposition_get_gstring): Make bigger gstring_work
 +      if necessary.
 +
 +2008-09-16  Kenichi Handa  <handa@m17n.org>
 +
 +      * coding.c (make_conversion_work_buffer): Avoid calling
 +      Fget_buffer_create if it is not necessary.
 +
 +2008-09-15  Martin Rudalics  <rudalics@gmx.at>
 +
 +      * window.c (Fselect_window): Don't update window_select_count and
 +      use_time when norecord is not nil.
 +
 +2008-09-14  Kenichi Handa  <handa@m17n.org>
 +
 +      * fileio.c (Finsert_file_contents): Delete incorrect decrement of
 +      specpdl_ptr.
 +
 +2008-09-12  Kenichi Handa  <handa@m17n.org>
 +
 +      * indent.c (scan_for_column): Don't handle automatic composition
 +      if the current buffer is not associated with a window.
 +
 +      * composite.c (composition_reseat_it): If the current buffer is
 +      not associated with a window, ignore the automatic composition.
 +      (find_automatic_composition): Likewise.
 +
 +2008-09-12  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * term.c (close_gpm): New fun extracted from Fgpm_mouse_stop.
 +      (Fgpm_mouse_stop): Use it.
 +      * termhooks.h (close_gpm): Declare.
 +      * keyboard.c (tty_read_avail_input): Forcefully close the gpm
 +      connection if Gpm_GetEvent fails.
 +
 +      * window.c (set_window_buffer): Always preserve current-buffer.
 +
 +2008-09-12  Glenn Morris  <rgm@gnu.org>
 +
 +      * charset.c (init_charset): Warn if etc/charsets not found.  (Bug#909)
 +
 +2008-09-11  Glenn Morris  <rgm@gnu.org>
 +
 +      * charset.c (charset-map-path): Doc fix.
 +
 +2008-09-10  Kenichi Handa  <handa@m17n.org>
 +
 +      * xdisp.c (handle_composition_prop): Set it->cmp_it.ch to -1.
 +
 +      * font.c (Ffont_shape_gstring): Make glyphs of non-nil adjustment
 +      compose a grapheme cluster with the preceding base glyph.
 +
 +      * composite.c (composition_compute_stop_pos): Fix previous change.
 +      Reset cmp_it->id to -1 at first.
 +
 +2008-09-10  Glenn Morris  <rgm@gnu.org>
 +
 +      * Makefile.in (character.o, chartab.o): Fix config.h typo.
 +
 +2008-09-09  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * keyboard.c (read_key_sequence): Reapply translation maps when
 +      switching keyboards.
 +
 +2008-09-09  Kenichi Handa  <handa@m17n.org>
 +
 +      * ftfont.c (ftfont_shape_by_flt): Use "combining" FLT for ASCII
 +      characters.
 +
 +      * composite.c (FORWARD_CHAR): Fix calculation
 +      of (POSITION).pos_byte.
 +      (composition_compute_stop_pos): Limit the search of composition to
 +      at most 500 characters ahead.  If we reach the limit or find a
 +      newline, set cmp_it->ch to -2 and return 0.
 +      (composition_reseat_it): Handle the case that cmp_it->ch is -2.
 +
 +2008-09-08  Kenichi Handa  <handa@m17n.org>
 +
 +      * indent.c (Fvertical_motion): Be sure to set
 +      it_overshoot_expected if it.cmp_it.id is non-negative.
 +
 +2008-09-07  Andreas Schwab  <schwab@suse.de>
 +
 +      * callproc.c (Fcall_process): Don't hold references to string data
 +      across garbage collection.  Move initialisation of new_argv down
 +      to avoid compiler bug.
 +
 +2008-09-07  Roland Winkler  <Roland.Winkler@physik.uni-erlangen.de>
 +
 +      * process.c (Fsystem_process_attributes): Doc fix.
 +
 +2008-09-07  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * callproc.c (Fcall_process): Canonicalize current directory name.
 +
 +      * xdisp.c (move_it_to): When moving by vpos, ensure that the
 +      iterator advances to the next line if the current line ends in a
 +      continued tab.
 +
 +2008-09-07  Teodor Zlatanov  <tzz@lifelogs.com>
 +
 +      * nsfont.m (nsfont_draw): Fix the references to missing gidx data
 +      member to point to cmp_from.
 +
 +      * xdisp.c: Doc fix for references to gidx data member.
 +
 +2008-09-07  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * buffer.c (Fbuffer_swap_text): Reset window->point markers.
 +
 +2008-09-07  Kenichi Handa  <handa@m17n.org>
 +
 +      * composite.c (FORWARD_CHAR): Check STOP after
 +      incrementing (POSITION).pos.
 +
 +2008-09-06  Roland Winkler  <Roland.Winkler@physik.uni-erlangen.de>
 +
 +      * process.c (Fsystem_process_attributes): Doc fix.
 +
 +2008-09-06  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * keyboard.c (Ftop_level): Doc fix.
 +
 +2008-09-06  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * xmenu.c (xmenu_show) [!HAVE_X_WINDOWS]: If frame has a
 +      minibuffer, don't let lower part of menu invade the echo area.
 +
 +      * msdos.c (IT_menu_display): Use STRING_CHAR_ADVANCE instead of a
 +      "char *q" to access menu text and advance through it.  Revert the
 +      change that displayed ">" instead of ASCII character 0x10.
 +
 +2008-09-05  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * menu.c (single_menu_item) [!HAVE_BOXES]: Enable emulation of
 +      toggle boxes and radio buttons on MS-DOS as well.
 +
 +2008-09-05  Kenichi Handa  <handa@m17n.org>
 +
 +      * composite.c (autocmp_chars): Check lookback count.
 +      (composition_compute_stop_pos): Set cmp_it->lookback.
 +      (composition_reseat_it): Check lookback count.
 +      (struct position_record): New struct.
 +      (FORWARD_CHAR, BACKWARD_CHAR, CHAR_COMPOSABLE_P): New macros.
 +      (find_automatic_composition): New function.
 +      (composition_adjust_point): Use find_automatic_composition.
 +
 +      * dispextern.h (struct composition_it): New member lookback.
 +
 +2008-09-02  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * indent.c (Fvertical_motion): Don't call move_it_by_lines again
 +      if moving by a single line.
 +
 +2008-09-02  Andreas Schwab  <schwab@suse.de>
 +
 +      * xterm.c (x_delete_display): Fix merge error.
 +
 +      * fileio.c (Fexpand_file_name): Remove unused variables.
 +
 +2008-09-02  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * fileio.c (Fexpand_file_name): Copy argument `name' into local
 +      storage on all platforms, not just on DOS_NT.
 +
 +2008-09-02  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32menu.c (Fx_popup_menu, Fx_popup_dialog, w32_menu_show):
 +      Ensure mouse is not grabbed after menu is finished.
 +
 +2008-09-01  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * xfaces.c (Finternal_set_alternative_font_family_alist)
 +      (Finternal_set_alternative_font_registry_alist): Properly copy
 +      entire alist structure.
 +
 +2008-09-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * ftfont.c (ftfont_spec_pattern): Don't create a charset if the
 +      representative chars of the script is a vector.
 +      (ftfont_list): Handle the case where the representative chars of
 +      the script is a vector.
 +
 +      * character.c (syms_of_character): Docstring of
 +      script-representative-chars fixed.
 +
 +2008-08-31  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * msdos.c (BUILD_CHAR_GLYPH): New macro.
 +      (IT_menu_display): Use it instead of SET_CHAR_GLYPH to construct
 +      the menu.  Allocate larger buffer for `text', to account for
 +      possible ^C characters.
 +
 +2008-08-31  Martin Rudalics  <rudalics@gmx.at>
 +
 +      * xdisp.c (prepare_menu_bars): Don't call
 +      Vwindow_size_change_functions with arg Qt.
 +
 +2008-08-31  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * font.h (font_range):
 +      * fileio.c (report_file_error):
 +      * composite.c (composition_update_it): Yet another int/Lisp_Object
 +      mixup (YAILOM).
 +
 +2008-08-30  Glenn Morris  <rgm@gnu.org>
 +
 +      * data.c (Fmake_variable_frame_local): Doc fix.
 +
 +      * frame.c (Fmodify_frame_parameters): Doc fix.
 +
 +2008-08-30  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * w32.c (init_user_info): Allocate buf[] with xmalloc using the size
 +      needed by GetTokenInformation.
 +      (w32_system_process_attributes): Check return values of all system
 +      APIs.
 +
 +      * msdos.c (IT_display_cursor): Write "CURSOR ON/OFF" to termscript
 +      only when the state changes.
 +      (IT_update_begin, IT_update_end): Add termscript trace.
 +
 +      * w16select.c (Fw16_set_clipboard_data): Don't encode text if
 +      clipboard is unavailable.  Set dst to NULL if it doesn't point to
 +      malloc'ed data.
 +      (Fw16_get_clipboard_data): Initialize htext to NULL, to avoid
 +      passing random values to xfree.
 +
 +      * dispnew.c (init_display): Set `tty's association in frame's
 +      parameters alist to the name of the terminal device, if that is known.
 +
 +2008-08-29  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32uniscribe.c (uniscribe_check_otf): Don't fallback on DFLT script.
 +
 +2008-08-29  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * composite.c (fill_gstring_body): Avoid compiler warnings.
 +
 +      * font.c (font_fill_lglyph_metrics): Use EMACS_INT in
 +      LGLYPH_SET_CODE to avoid compiler warnings.
 +
 +      * makefile.w32-in ($(BLD)/w32uniscribe.$(O)): Depend on composite.h.
 +
 +      * composite.h (LGLYPH_SET_CODE): Cast `val' to EMACS_INT.
 +
 +      * w32uniscribe.c (uniscribe_shape): Shut up compiler warning in
 +      LGLYPH_SET_CODE.
 +
 +2008-08-29  Kenichi Handa  <handa@m17n.org>
 +
 +      * fileio.c (report_file_error): Don't downcase the first character
 +      of errstring if it is still unibyte.
 +
 +2008-08-29  Kenichi Handa  <handa@m17n.org>
 +
 +      These changes are to re-implement the automatic composition so
 +      that it doesn't use text properties.
 +
 +      * Makefile.in (ftfont.o): Depend on composite.h.
 +      (composite.o): Depend dispextern.h, font.h, frame, and window.h.
 +
 +      * character.h (Vunicode_category_table): Extern it.
 +
 +      * character.c (Vunicode_category_table): New variable.
 +      (syms_of_character): DEFVAR_LISP Vunicode_category_table.
 +
 +      * chartab.c (optimize_sub_char_table): Perform more greedy
 +      optimization.
 +
 +      * composite.h (enum composition_method):
 +      Delete COMPOSITION_WITH_GLYPH_STRING.
 +      (COMPOSITION_METHOD): Don't check COMPOSITION_WITH_GLYPH_STRING.
 +      (Vcomposition_function_table): Extern it.
 +      (LGSTRING_XXX, LGLYPH_XXX): Macros moved from font.h.
 +      (composition_gstring_put_cache, composition_gstring_from_id)
 +      (composition_gstring_p, composition_gstring_width)
 +      (composition_compute_stop_pos, composition_reseat_it)
 +      (composition_update_it, composition_adjust_point): Extern them.
 +      (Fcomposition_get_gstring): EXFUN it.
 +
 +      * composite.c: Include window.h, frame.h, dispextern.h, font.h.
 +      (Vcomposition_function_table)
 +      (get_composition_id): Don't handle COMPOSITION_WITH_GLYPH_STRING.
 +      (gstring_hash_table, gstring_work, gstring_work_headers):
 +      New variables.
 +      (gstring_lookup_cache, composition_gstring_put_cache)
 +      (composition_gstring_from_id, composition_gstring_p)
 +      (composition_gstring_width, fill_gstring_header)
 +      (fill_gstring_body, autocmp_chars, composition_compute_stop_pos)
 +      (composition_reseat_it, composition_update_it)
 +      (composition_adjust_point, Fcomposition_get_gstring): New functions.
 +      (syms_of_composite): Initialize gstring_hash_table, gstrint_work,
 +      and gstring_work_headers.  DEFVAR_LISP composition-function-table.
 +      Defsubr composition_get_gstring.
 +
 +      * dispextern.h (struct glyph): New union u.cmp.  Delete the member
 +      cmp_id.
 +      (struct glyph_string): Delete the member gidx.  New members
 +      cmp_id, cmp_from, and cmp_to.
 +      (enum it_method): Delete GET_FROM_COMPOSITION.
 +      (struct composition_it): New struct.
 +      (struct it): New member cmp_it, and iterator_stack_entry.cmp_it.
 +      Delete c, len, cmp_id, cmp_len in u.comp.
 +
 +      * font.h (enum lgstring_indices): Delete it.
 +      (LGSTRING_XXX, LGLYPH_XXX): Move these macros to composite.h.
 +      (enum lglyph_indices): Likewise.
 +      (font_range): Adjust extern.
 +      (font_fill_lglyph_metrics): Extern it.
 +
 +      * font.c (QCf): New variable.
 +      (check_gstring): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
 +      (font_prepare_composition): Delete this function.
 +      (font_range): Type and arguments changed.
 +      (Ffont_make_gstring, Ffont_fill_gstring): Delete them.
 +      (font_fill_lglyph_metrics): New function.
 +      (Ffont_shape_text): Rename to Ffont_shape_gstring and change arguments.
 +      (syms_of_font): DEFSYM QCf.  Delete defsubr for
 +      Sfont_make_gstring, Sfont_fill_gstring, Sfont_shape_text.
 +      Defsubr Sfont_shape_gstring.
 +
 +      * fontset.h (font_for_char): Extern it.
 +
 +      * fontset.c (font_for_char): New function.
 +
 +      * ftfont.c: Include composite.h.
 +      (ftfont_resolve_generic_family): Add langset "en" to pattern.
 +      (ftfont_shape_by_flt): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
 +
 +      * indent.c: Include composite.h and dispextern.h.
 +      (check_composition): Delete this function.
 +      (scan_for_column): Handle composition by
 +      composition_compute_stop_pos, composition_reseat_it, and
 +      composition_update_it.
 +      (compute_motion): Likewise.
 +      (Fvertical_motion): Fix checking of composition.
 +
 +      * keyboard.c (adjust_point_for_property): Check composition by
 +      composition_adjust_point.
 +
 +      * nsterm.m (ns_draw_glyph_string): Adjust for the change of
 +      struct glyph_string.
 +
 +      * term.c (encode_terminal_code): Adjust for the change of struct glyph.
 +      (append_composite_glyph): Adjust for the change of struct it and
 +      struct glyph.
 +      (produce_composite_glyph): Likewise.
 +
 +      * w32term.c (x_draw_composite_glyph_string_foreground):
 +      Adjust for the change of struct glyph_string.
 +      (x_draw_glyph_string): Likewise.
 +
 +      * w32uniscribe.c (struct uniscribe_font_info): Include composite.h.
 +      (uniscribe_shape): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
 +
 +      * xdisp.c: Include font.h.
 +      (it_props): Delete the entry for Qauto_composed.
 +      (init_iterator): Initialize it->cmp_it.id to -1.
 +      (compute_stop_pos): Call composition_compute_stop_pos.
 +      (face_before_or_after_it_pos): Adjust for the change of struct it.
 +      (handle_auto_composed_prop): Delete it.
 +      (handle_composition_prop): Handle only static composition.
 +      (next_overlay_string): Remove it->method == GET_FROM_COMPOSITION
 +      from xassert.  Initialize it->cmp_it.stop_pos.
 +      (push_it): Adjust for the change of struct it.
 +      (pop_it): Likewise.
 +      (get_next_element): Delete next_element_from_composition.
 +      (CHAR_COMPOSED_P): New macro.
 +      (get_next_display_element): For automatic composition, get a face
 +      from the font in the glyph-string.
 +      (set_iterator_to_next): For GET_FROM_BUFFER and GET_FROM_STRING,
 +      check composition by it->cmp_it.id.  Delete GET_FROM_COMPOSITION case.
 +      (next_element_from_string): Check if the character at the current
 +      position is composed by CHAR_COMPOSED_P.
 +      (next_element_from_buffer): Likewise.
 +      (next_element_from_composition): Adjust for the change of struct it.
 +      Update it->cmp_it.
 +      (dump_glyph): Adjust for the change of struct glyph.
 +      (fill_composite_glyph_string): Adjust for the change of struct
 +      it and struct glyph.  Don't handle automatic composition here.
 +      (fill_gstring_glyph_string): New function.
 +      (x_get_glyph_overhangs): Handle automatic composition.
 +      (BUILD_COMPOSITE_GLYPH_STRING): Adjust for the change of struct glyph.
 +      (BUILD_GSTRING_GLYPH_STRING): New macro.
 +      (BUILD_GLYPH_STRINGS): Call BUILD_GSTRING_GLYPH_STRING for
 +      automatic composition.
 +      (append_composite_glyph): Adjust for the change of struct it and
 +      struct glyph.
 +      (x_produce_glyphs): Adjust for the change of struct it.
 +
 +      * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
 +      the change of struct glyph_string.
 +      (x_draw_glyph_string): Likewise.
 +
 +2008-08-29  Glenn Morris  <rgm@gnu.org>
 +
 +      * buffer.c (word-wrap): Doc fix.
 +      * xdisp.c (truncate-partial-width-windows): Doc fix.
 +      Increase default to 50.
 +
 +2008-08-29  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * xdisp.c (update_tool_bar_unwind): New function.
 +      (update_tool_bar): Temporarily set selected frame before building
 +      tool-bar items.
 +
 +2008-08-28  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * dbusbind.c (XD_ERROR, XD_DEBUG_MESSAGE): Use strncpy and
 +      snprintf, respectively.
 +      (xd_append_arg): Convert strings with Fstring_make_unibyte.
 +
 +2008-08-28  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * Makefile.in: Revert (undocumented) 2008-08-20 change adding
 +      LDFLAGS to GNUstep CC invocation.
 +
 +2008-08-27  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * indent.c (Fvertical_motion): Revert last change.  Handle the
 +      general case where we are moving forward, and PT spans multiple
 +      screen lines.
 +
 +      * eval.c (find_handler_clause): Temporarily increase
 +      max-lisp-eval-depth while printing the backtrace buffer, to
 +      guarantee that help-mode code can run.
 +
 +2008-08-27  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * msdos.c (Fmsdos_remember_default_colors): Don't reverse frame
 +      colors under -rv.
 +      (IT_set_frame_parameters): Don't swap foreground and background
 +      colors if `(reverse . t)' is present in the frame properties.
 +      (internal_terminal_init): Call init_frame_faces only for the
 +      initial frame.
 +
 +2008-08-27  Andreas Schwab  <schwab@suse.de>
 +
 +      * dired.c (Ffile_attributes): Avoid compiler warning in bitshift.
 +
 +2008-08-27  Andreas Schwab  <schwab@suse.de>
 +
 +      * search.c (search_buffer): Set char_base to zero only at the end.
 +
 +2008-08-27  Kenichi Handa  <handa@m17n.org>
 +
 +      * fileio.c (report_file_error): Fix handling of multibyte error string.
 +
 +2008-08-27  Andreas Seltenreich  <seltenreich@gmx.de>
 +
 +      * xterm.c (x_term_init): Temporarily hide the partially
 +      initialized terminal while calling vendor-specific-keysyms.
 +
 +2008-08-26  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * msdos.c (internal_terminal_init): Most initializations done only
 +      once, especially initial_screen_colors[] and termscript open.
 +
 +2008-08-26  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * eval.c (Fcondition_case): Doc fix.
 +
 +      * widgetprv.h (EmacsFramePart): Change font member to the new font
 +      struct.
 +
 +      * widget.c: Include character.h and font.h for XSETFONT.
 +      (setup_frame_gcs): Compute X font id from font struct, just once.
 +
 +2008-08-26  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * term.c (get_named_tty): Fix last change.
 +
 +2008-08-26  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * indent.c (Fvertical_motion): If moving forward starting from a
 +      multi-line string, move the iterator to the last line of that string.
 +
 +2008-08-25  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * frame.c (do_switch_frame): Mark previously displayed frame as
 +      obscured for FRAME_MSDOS_P frames as well.
 +
 +2008-08-24  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * frame.c (make_terminal_frame): Initialize f->terminal,
 +      f->terminal->reference_count, and scroll bars on MS-DOS as well.
 +      Set the top frame to newly created frame.
 +      (Fmake_terminal_frame): Reuse the_only_display_info.
 +
 +      * vm-limit.c (get_lim_data) [MSDOS]: Use alternative methods of
 +      estimating available memory.
 +
 +2008-08-23  David Reitter  <david.reitter@gmail.com>
 +
 +      * nsterm.m (ns_draw_window_cursor): Don't call
 +      NSDisableScreenUpdates and NSEnableScreenUpdates on
 +      non-NS_IMPL_COCOA systems.
 +
 +2008-08-23  Andreas Schwab  <schwab@suse.de>
 +
 +      * process.c (procfs_system_process_attributes): Fix use of
 +      uninitialized variables.
 +
 +2008-08-23  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * emacs.c (main) [MSDOS]: Call syms_of_xmenu.
 +
 +      * dispnew.c (init_display): Remove MS-DOS specific conditions for
 +      calling tty-set-up-initial-frame-faces.
 +
 +      * xmenu.c (Fx_popup_dialog, Fx_popup_menu, xmenu_show):
 +      Allow MSDOS frames along with X frames.
 +
 +      * termhooks.h (TERMINAL_ACTIVE_P): Handle output_msdos_raw in
 +      addition to output_termcap.
 +
 +      * xdisp.c (redisplay_internal) [MSDOS]: Don't call set_tty_color_mode.
 +
 +      * termchar.h (FRAME_TTY): Support output_msdos_raw.
 +      (struct tty_display_info) [MSDOS]: Add fields related to mouse
 +      highlight.
 +
 +      * process.c [!subprocesses]: Define QCname.
 +      (syms_of_process): Intern and staticpro it.
 +
 +      * w16select.c (Fw16_set_clipboard_data, Fw16_get_clipboard_data):
 +      Adjust for changes in encoding/decoding routines.
 +      Use encode_coding_object and decode_coding_object instead of
 +      encode_coding and decode_coding.
 +
 +      * sysdep.c (init_sys_modes): Call dos_ttraw with tty_out as argument.
 +
 +      * dosfns.c: Include frame.h before termhooks.h.
 +      (dos_cleanup): Use CURTTY ()->termscript instead of a global
 +      variable termscript.
 +
 +      * s/msdos.h (USER_FULL_NAME): Define.
 +      (SYSTEM_PURESIZE_EXTRA): Bump up to 100K.
 +
 +      * editfns.c (USER_FULL_NAME): Define to pw->pw_gecos if undefined.
 +      (Fuser_full_name): Use USER_FULL_NAME instead of a literal
 +      pw->pw_gecos.
 +
 +      * keyboard.c (handle_interrupt) [MSDOS]: Call cursor_to with
 +      SELECTED_FRAME as additional (1st) argument.
 +      (tty_read_avail_input): Handle output_msdos_raw in
 +      addition to output_termcap.
 +
 +      * msdos.c: Include frame.h before termhooks.h.
 +      (mouse_on, mouse_off, mouse_moveto, mouse_init)
 +      (msdos_set_cursor_shape, IT_set_face, IT_write_glyphs)
 +      (show_mouse_face, IT_clear_end_of_line, IT_clear_screen)
 +      (IT_clear_to_end, IT_cursor_to, IT_display_cursor, IT_cmgoto)
 +      (IT_set_terminal_modes, IT_reset_terminal_modes)
 +      (IT_set_frame_parameters): Use tty->termscript instead of a global
 +      variable termscript.
 +      (IT_write_glyphs): Use tty->terminal->terminal_coding instead of a
 +      global variable terminal_coding.  Don't refer to
 +      Vnonascii_translation_table.
 +      (internal_terminal_init): Set Vwindow_system in current_kboard.
 +      Don't use TTY_CHAR_INS_DEL_OK.  Set Vinitial_window_system.
 +      Announce date and time of session start, if termscript is open.
 +      Don't zero out the_only_display_info (it is done in
 +      term.c:init_tty).  Open termscript only of not already open.
 +      Log "SCREEN SAVED" here, instead of IT_set_terminal_modes.  Init mouse
 +      here instead of dos_ttraw.  Don't initialize display if this is an
 +      initial tty.  Don't set FRAME_FONT.
 +      (Vwindow_system_version): Bump to 23.
 +      (dos_ttraw): Accept a TTY argument; all callers fixed.  If mouse
 +      is available, set up mouse_position_hook.
 +      (dos_ttraw, IT_set_terminal_modes): If called with initial
 +      terminal, do nothing.
 +      (IT_set_frame_parameters): Handle the Qtty_type frame
 +      parameter by calling internal_terminal_init.
 +      (dos_set_window_size, show_mouse_face)
 +      (clear_mouse_face, IT_note_mode_line_highlight)
 +      (IT_note_mouse_highlight, IT_update_begin, IT_frame_up_to_date)
 +      (dos_rawgetc): Use tty_display_info instead of x_display_info.
 +      (initialize_msdos_display): New function.
 +      (IT_cursor_to, IT_clear_to_end, IT_clear_screen)
 +      (IT_clear_end_of_line, IT_insert_glyphs, IT_write_glyphs)
 +      (IT_delete_glyphs, IT_ring_bell, IT_reset_terminal_modes)
 +      (IT_set_terminal_modes, IT_set_terminal_window, IT_update_begin):
 +      Accept additional argument: a pointer to a frame.  Update all callers.
 +      (request_sigio, unrequest_sigio): Don't define, now defined on
 +      sysdep.c.
 +      (IT_write_glyphs): Rewrite to use encode_terminal_code.
 +
 +      * term.c [MSDOS]: Include msdos.h.
 +      (init_tty) [MSDOS]: Reuse most of WINDOWSNT branch.  Change cpp
 +      conditional to DOS_NT.  Allow only one call to this function in a
 +      session.  Don't allocate a new struct tty_display_info; instead,
 +      reuse the_only_display_info.  Call get_tty_size to get screen
 +      dimensions.  Call init_baud_rate to set bad_rate.
 +      (dissociate_if_controlling_tty) [MSDOS]: Ifdef away function body.
 +      (Fsuspend_tty) [MSDOS]: Don't close input and output.
 +      (Fresume_tty) [MSDOS]: Don't reopen the TTY; instead, use stdin/stdout.
 +      (get_tty_terminal, get_named_tty, Ftty_type)
 +      (Fcontrolling_tty_p): Handle output_msdos_raw in addition to
 +      output_termcap.
 +      (Fresume_tty, Fsuspend_tty, init_tty, delete_tty):
 +      Call add_keyboard_wait_descriptor and delete_keyboard_wait_descriptor
 +      only when subprocesses are supported.
 +
 +      * frame.c (make_terminal_frame) [MSDOS]: Adjust initialization of
 +      f->output_data.x.
 +      (Fmake_terminal_frame) [MSDOS]: Don't allow creation of new
 +      terminal devices.
 +
 +      * msdos.h: Remove definition of struct x_display_info and struct
 +      x_output.
 +      (FRAME_FONT): Use output_data.tty.
 +      (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL): Don't define.
 +      (struct x_display_info): Rename from display_info.  Update all users in
 +      msdos.c.
 +      (struct x_output): Remove background_pixel and foreground_pixel.
 +      (the_only_display_info): Rename from the_only_x_display.
 +      (dos_ttraw): Update prototype.
 +
 +      * Makefile.in (MSDOS_OBJ): Add xmenu.o.
 +      (SOME_MACHINE_LISP): Add ../lisp/term/pc-win.elc.
 +
 +2008-08-23  Jason Rumney  <jasonr@gnu.org>
 +
 +      * image.c (enum tiff_keyword_index, tiff_format): Add :index keyword.
 +      (fn_TIFFSetDirectory): New library function used.
 +      (init_tiff_functions) [HAVE_NTGUI]: Initialize it.
 +      (tiff_load): Use :index to select among multiple images.  Set count
 +      property when multiple images exist.
 +      (gif_format): Use :index, not :image.
 +
 +2008-08-23  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * xdisp.c (try_scrolling): Check INT_MAX instead of
 +      MOST_POSITIVE_FIXNUM for maximum integer value.  Include limits.h
 +      to obtain INT_MAX.
 +
 +2008-08-21  İsmail Dönmez  <ismail@namtrac.org>  (tiny change)
 +
 +      * xterm.c (x_delete_display): Don't call XrmDestroyDatabase on GTK+.
 +
 +2008-08-21  Christian Faulhammer  <opfer@gentoo.org>  (tiny change)
 +
 +      * Makefile.in (temacs${EXEEXT}): On GNUstep, link to appropriate
 +      GNUstep library location.
 +
 +2008-08-21  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * xfaces.c (x_update_menu_appearance): Check validity of menu font
 +      before using it.
 +
 +      * puresize.h (BASE_PURESIZE): Increase to 1250000.
 +
 +2008-08-20  Adrian Robert  <Adrian.B.Robert@gmail.com>
 +
 +      * nsfns.m (ns-read-file-name): Add casts to avoid warning.
 +      (ns-convert-utf8-nfd-to-nfc): Warn if cannot execute correctly.
 +      * nsfont.m (nsfont_draw): Compare indexed colors to 0, not nil.
 +      * nsterm.h (EmacsView-unlockFocusNeedsFlush:): Add declaration.
 +      (EmacsApp-cursor_blink_handler): Remove declaration.
 +      * nsterm.m (ns_draw_glyph_string): Update first conditional body to
 +      match 01 Feb 2008 changes in xterm.c.
 +      (ns_read_socket): Add cast to avoid warning.
 +      (EmacsApp-application:openFiles:): Don't call replyToOpenOrPrint: on
 +      GNUstep.
 +
 +2008-08-20  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * xselect.c (x_get_foreign_selection): Return nil if desired
 +      selection could not be obtained, instead of signalling an error.
 +
 +2008-08-20  David Reitter  <david.reitter@gmail.com>
 +
 +      * nsfns.m (ns_lisp_to_cursor_type): Replace with generic xfns.c.
 +      * nsterm.m: Remove ns-specific code for cursor blinking.
 +      (ns_draw_window_cursor): Clear cursor properly rather than
 +      redrawing the area.  Respect width of bar cursors.
 +      These changes enable the use of generic blink-cursor-mode and
 +      generic cursor types in NS and support smooth cursor movements (do
 +      not blink off after command).
 +      * xdisp.c (get_phys_cursor_geometry): Redraw wider rectangle on
 +      Nextstep, too.
 +
 +2008-08-19  Kenichi Handa  <handa@m17n.org>
 +
 +      * font.c (Vfont_log_deferred): New variable.
 +      (font_add_log): Check Vfont_log_deferred.
 +      (font_deferred_log): New function.
 +
 +      * font.h (font_deferred_log): Extern it.
 +
 +      * fontset.c (reorder_font_vector): Use encoding charset of fonts
 +      for sorting.
 +      (face_for_char): Use deferred log.
 +
 +2008-08-18  Kenichi Handa  <handa@m17n.org>
 +
 +      * fontset.c (face_for_char): Add font log.
 +
 +      * font.c (font_add_log): Add the font properties :script, :lang,
 +      and :otf in the log.
 +
 +2008-08-17  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * xdisp.c: Remove dead code.
 +      (handle_invisible_prop, next_overlay_string): Defer call to
 +      setup_for_ellipsis.
 +      (handle_stop, set_iterator_to_next): Call setup_for_ellipsis.
 +
 +2008-08-15  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * xfaces.c (lookup_derived_face): Properly handle possible zero
 +      return value of get_lface_attributes.
 +      (merge_faces): Don't tell lookup_derived_face to signal an error
 +      if face is not found.
 +
 +      * dired.c (Fdirectory_files): Doc fix.
 +
 +      * process.c (make_process): Initialize kill_without_query struct
 +      member.
 +
 +2008-08-15  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * w32.c (w32_system_process_attributes) [_MSC_VER < 1300]:
 +      Alternative calculation of totphys for Visual Studio 6.
 +
 +      * w32fns.c [_MSC_VER && _MSC_VER < 1300]: Declare HMONITOR.
 +
 +      * w32.c (_MEMORY_STATUS_EX, MEMORY_STATUS_EX, LPMEMORY_STATUS_EX):
 +      Rename from _MEMORYSTATUSEX, MEMORYSTATUSEX, LPMEMORYSTATUSEX.
 +      All users changed.
 +      (stat): Only root directory passed to GetDriveType.  Allow RAM
 +      disk as well as local fixed disk when w32-get-true-file-attributes
 +      is set to `local'.
 +      (CopySid_Proc, EqualSid_Proc, GetLengthSid_Proc): New typedefs.
 +      (equal_sid, get_length_sid, copy_sid): New wrapper functions.
 +      (w32_cached_id, w32_add_to_cache): New functions.
 +      (get_name_and_id): Look account names in the cache before calling
 +      lookup_account_sid.
 +      (g_b_init_get_length_sid, g_b_init_equal_sid, g_b_init_copy_sid):
 +      New initialization flags.
 +      (globals_of_w32): Initialize them to zero.
 +      (w32_system_process_attributes): Use w32_cached_id and
 +      w32_add_to_cache.
 +
 +2008-08-14  Lawrence Mitchell  <wence@gmx.li>
 +
 +      * lread.c (Fread_char, Fread_char_exclusive): If no character
 +      event is read before timeout is reached, return nil, rather than
 +      converting to a number.
 +
 +2008-08-14  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * fns.c (use_dialog_box): Doc fix.
 +
 +      * s/darwin.h: Undefine HAVE_RES_INIT, which appears to be harmful
 +      on OS X.
 +
 +2008-08-13  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * frame.c (Qns_parse_geometry): New var.
 +      (Fx_parse_geometry): For HAVE_NS, call ns-parse-geometry.
 +
 +2008-08-11  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * xdisp.c (x_produce_glyphs): Handle the case when font has no
 +      space character in calculating tabs.
 +
 +2008-08-11  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * Makefile.in (bootstrap-emacs): Use ln -f in the CANNOT_DUMP case.
 +
 +2008-08-10  Glenn Morris  <rgm@gnu.org>
 +
 +      * process.c (procfs_system_process_attributes): Use EMACS_INTs to
 +      silence gcc "limited range of data type" warnings in some
 +      make_fixnum_or_float calls.
 +
 +2008-08-09  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * w32.c (w32_system_process_attributes): If the process does not
 +      exist, return nil.
 +
 +      * w32.c: Include thelp32.h, psapi.h and coding.h.
 +      (_MEMORYSTATUSEX, _PROCESS_MEMORY_COUNTERS_EX): New struct
 +      declarations.
 +      (CreateToolhelp32Snapshot_Proc, Process32First_Proc)
 +      (Process32Next_Proc): New typedefs.
 +      (g_b_init_create_toolhelp32_snapshot, g_b_init_process32_first)
 +      (g_b_init_process32_next, g_b_init_open_thread_token)
 +      (g_b_init_impersonate_self, g_b_init_revert_to_self)
 +      (g_b_init_get_process_memory_info, g_b_init_global_memory_status)
 +      (g_b_init_get_process_working_set_size)
 +      (g_b_init_global_memory_status_ex): New static variables.
 +      (globals_of_w32): Initialize them.
 +      (create_toolhelp32_snapshot, process32_first, process32_next)
 +      (open_thread_token, impersonate_self, revert_to_self)
 +      (get_process_memory_info, get_process_working_set_size)
 +      (global_memory_status, global_memory_status_ex): New wrapper
 +      functions.
 +      (w32_list_system_processes, w32_system_process_attributes)
 +      (enable_privilege, restore_privilege, ltime, process_times):
 +      New functions.
 +      (convert_time_raw): New function.
 +      (convert_time): Remove conversion of FILETIME into time in 100
 +      nsec units, call convert_time_raw instead.
 +
 +      * process.h (w32_list_system_processes, w32_system_process_attributes):
 +      Add prototypes.
 +      (Qeuid, Qegid, Qcomm, Qstate, Qppid, Qpgrp, Qsess, Qttname)
 +      (Qminflt, Qmajflt, Qcminflt, Qcmajflt, Qutime, Qstime, Qcutime)
 +      (Qpri, Qnice, Qthcount, Qstart, Qvsize, Qrss, Qargs, Quser, Qgroup)
 +      (Qetime, Qpcpu, Qpmem, Qtpgid, Qcstime): Add extern declarations.
 +
 +      * process.c (Fsystem_process_attributes): Doc fix.
 +
 +2008-08-08  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * xdisp.c (move_it_to): When stopping at a charpos, check if that's
 +      a continued multi-char glyph; if so, advance to the actual glyph.
 +
 +2008-08-07  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * s/darwin.h (OTHER_FILES): Do not define here, defined in config.in.
 +
 +      * Makefile.in (ALL_OBJC_CFLAGS): New variable.
 +      (.m.o): Use it.
 +      * config.in: Regenerate.
 +
 +2008-08-07  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * xdisp.c (redisplay_window): Revert last change.
 +      (try_window): Check bottom scroll margin too.
 +
 +2008-08-06  Adrian Robert  <Adrian.B.Robert@gmail.com>
 +
 +      * config.in: Regenerate.
 +
 +      * Makefile.in (emacs): Remove ifndef NS conditional for 'emacs
 +      -list-load-path-shadows'.
 +      (nsgui.h): Reduce number of things depending on it.
 +
 +2008-08-06  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * xdisp.c (try_scrolling): Use iterator to find the scroll margin,
 +      instead of window-end which does the wrong thing at eob.
 +      (try_cursor_movement): Minor optimization.
 +      (redisplay_window): If scroll margin is defined, don't assume
 +      window doesn't need scrolling.
 +
 +2008-08-06  Adrian Robert  <Adrian.B.Robert@gmail.com>
 +
 +      * config.in: Regenerate.
 +
 +      * Makefile.in: Move nsXXX.m dependencies into big alphabetical list.
 +      (mostlyclean): Don't delete *.d under NS.
 +
 +      * nsterm.h (NS_HAVE_INTEGER): Change to NS_HAVE_NSINTEGER.
 +
 +2008-08-06  Kenichi Handa  <handa@m17n.org>
 +
 +      * xfont.c (xfont_list_family): Return a list of symbols, not strings.
 +
 +2008-08-06  Andreas Schwab  <schwab@suse.de>
 +
 +      * config.in: Regenerate.
 +
 +2008-08-05  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * xdisp.c (redisplay_window): Don't enforce scroll-margin when
 +      forcing a window start.
 +
 +      * fileio.c (Vauto_save_list_file_name): Move here from file.el.
 +      (auto_save_1): Update modtime when auto-save-list-file-name is on.
 +
 +2008-08-04  Adrian Robert  <Adrian.B.Robert@gmail.com>
 +
 +      * emacs.c (main): Under NS, set working dir to HOME when get a "psn"
 +      argument.
 +
 +2008-08-05  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * buffer.c (syms_of_buffer) <scroll-up-aggressively>:
 +      <scroll-down-aggressively, before-change-functions>:
 +      <after-change-functions>: Reflow docstrings.
 +
 +2008-08-04  Adrian Robert  <Adrian.B.Robert@gmail.com>
 +            Ken Raeburn  <raeburn@gnu.org>
 +
 +      Dock menu customization, based on a patch by Ken Raeburn, plus some
 +      other fixes.
 +      * nsmenu.m (dockMenu): New variable.
 +      (EmacsDialog -clicked:): Fix mistake in change of 2008-07-17.
 +
 +      * nsterm.h (dockMenu): Declare.
 +
 +      * nsterm.m (KEY_NS_NEW_FRAME): New definition.
 +      (ns_term_init): Initialize dockMenu.
 +      (EmacsApp -newFrame:, -applicationDockMenu:): New methods.
 +      (EmacsView -windowShouldClose:): Don't behave specially if <= 1 frame
 +      left.
 +
 +      * lisp.h (LSB_TAG): Use on DARWIN_OS, not NS_IMPL_COCOA.
 +
 +2008-08-04  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * nsterm.h: Test directly for NS_HAVE_INTEGER before defining it.
 +
 +      * config.in: Regenerate.
 +
 +2008-08-04  Seiji Zenitani  <zenitani@mac.com>
 +
 +      * nsfns.m (x-create-frame): Set the frame parameter alpha to nil.
 +
 +2008-08-04  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * nsterm.h (find_and_call_menu_selection): Fix prototype.
 +
 +2008-08-04  Adrian Robert  <Adrian.B.Robert@gmail.com>
 +
 +      * emacs.c (main: unexec_init_emacs_zone): Call if on DARWIN_OS.
 +
 +      * keyboard.h: Comment an #endif.
 +
 +      * lisp.h (have_menus_p): Adjust comment.
 +
 +      * menu.c (find_and_return_menu_selection): Fix comparison with
 +      client_data.
 +
 +      * nsmenu.m (popup_activated_flag): New variable.
 +      (popup_activated): New function.
 +      (menu-or-popup-active-p): New exported lisp definition.
 +      (ns_popup_menu): Set popup_activated_flag.  Call discard_menu_items()
 +      when popup done.
 +      (ns_popup_dialog): Set popup_activated_flag.
 +
 +      * nsterm.m (EmacsView -conversationIdentifier): Use NSInteger
 +      version for GNUstep (handled by conditional typedef in nsterm.m).
 +      (ns_get_color): Remove special-casing for "darkblue", "dark blue" (now
 +      in rgb.txt).
 +
 +      * process.c (init_process): Use DARWIN_OS, not DARWIN.
 +
 +      * sysselect.h: Conditionalize init_process undef on DARWIN_OS.
 +
 +      * syssignal.h (FORWARD_SIGNAL_TO_MAIN_THREAD): Do it also under NS.
 +
 +      * xdisp.c (redisplay_internal, note_mouse_highlight): Under NS,
 +      shortcircuit if popup_activated like GTK and X toolkit.
 +
 +      * m/inter386.h: Change DARWIN to DARWIN_OS.
 +
 +      * s/darwin.h: Add #define DARWIN_OS.  Get rid of C_SWITCH_SYSTEM def.
 +      Change LIBS_MACGUI to LIBS_NSGUI.  Move temacs-conditionalized defs
 +      closer to C_SWITCH_SYSTEM_TEMACS so usage is understood.
 +      Expand comment on NO_SOCK_SIGIO.
 +
 +2008-08-03  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * nsterm.m (windowDidResize): Remove stopModal call.
 +
 +2008-08-03  Andreas Schwab  <schwab@suse.de>
 +
 +      * vm-limit.c (get_lim_data) [HAVE_GETRLIMIT && RLIMIT_AS]: Define.
 +      (check_memory_limits): Don't handle HAVE_GETRLIMIT here.
 +
 +2008-08-02  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * vm-limit.c (check_memory_limits): Don't use getrlimit on cygwin.
 +      Don't use uninitialized pointer variable when using getrlimit.
 +
 +2008-08-02  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32font.c (compute_metrics): Don't mess with glyph_idx setting here.
 +
 +2008-08-02  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * alloc.c (NSTATICS): Bump to 0x640.
 +
 +      * s/gnu-linux.h (HAVE_PROCFS, LISTPROC, PROCATTR): New defines.
 +
 +      * lisp.h: Add prototype for directory_files_internal.
 +
 +      * process.c (Fsystem_processes_list, Fsystem_process_attributes):
 +      New functions.
 +      (syms_of_process): Defsubr them.  Add initializations for various
 +      Q* symbols used in procfs_system_process_attributes.
 +      (procfs_list_system_processes, procfs_system_process_attributes)
 +      [HAVE_PROCFS]: New functions.
 +      (time_from_jiffies, ltime_from_jiffies, get_up_time, procfs_ttyname)
 +      (procfs_get_total_memory): New functions.
 +
 +2008-08-01  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * xfaces.c (Fx_load_color_file): Fix previous change;
 +      it is #ifdef WINDOWSNT, not WINDOWS_NT.
 +
 +2008-08-01  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * dbusbind.c (xd_read_message): Handle D-Bus error messages.
 +
 +2008-08-01  Adrian Robert  <Adrian.B.Robert@gmail.com>
 +
 +      * nsterm.h (NSInteger, NSUInteger): Add defines for non-Leopard.
 +
 +2008-08-01  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * nsfns.m (ns_frame_parm_handlers): Add empty entry for x_set_alpha.
 +
 +      * nsterm.m (EmacsApp -application:openFiles:): GNUstep does not
 +      define NSApplicationDelegateReplySuccess.
 +      (EmacsView -converstationIdentifier): Use long instead of
 +      NSInteger for GNUstep, since it doesn't have NSInteger.
 +
 +      * xmenu.c: Revert last change.
 +
 +      * keyboard.h: Fix last change.
 +
 +2008-08-01  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * xfaces.c (x-load-color-file): Use RGB() instead of manually shifting
 +      on Windows.
 +
 +2008-08-01  Adrian Robert  <Adrian.B.Robert@gmail.com>
 +
 +      Warning clearing and clean-up in NS port.
 +      * keyboard.h (xmalloc_widget_value, digest_single_submenu):
 +      Add prototypes.
 +      * nsgui.h (FACE_DEFAULT): Remove, unused.
 +      (XGCValues): Change colors to unsigned long.
 +      * nsterm.h (EmacsApp): Add declaration of all methods implemented in
 +      nsterm.m.
 +      (EmacsMenu -addItemWithWidgetValue:): Change to use NSMenuItem class.
 +      (ns_list_fonts): Remove, unused.
 +      (ns_font_to_xlfd, ns_fontname_to_xlfd): Drop prototypes.
 +      * nsfns.m (interpret_services_menu): Use NSMenuItem class.
 +      * nsfont.m (nsfont_open): Fix cast error in glyphs,metrics alloc.
 +      (nsfont_draw): Compare face colors to 0, not nil.
 +      * nsmenu.m (struct widget_value): Drop unneeded declaration.
 +      (EmacsMenu -addItemWithWidgetValue:, -fillWithWidgetValue:)
 +      (-addSubmenuWithTitle:): Use NSMenuItem class.
 +      (ns_popup_menu): Use NO, not NULL, for enabled setting.
 +      * nsterm.m (ns_draw_glyph_string): Don't compare font to ~0.
 +      (ns_clip_to_row): Make gc arg a BOOL.
 +      (ns_draw_fringe_bitmap, ns_draw_window_cursor): Use YES, NO in
 +      ns_clip_to_row() call.
 +      (ns_draw_glyph_string): Drop face comparison to ~0 (no longer
 +      used).  Cast FRAME_FONT assignments.
 +      (ns_read_socket): Cast call to EmacsApp-fulfillService:withArg:.
 +      (ns_string_to_lispmod): Change arg to const char.
 +      (ns_term_init): Use NSMenuItem class.
 +      (EmacsApp -openFile:): Move to different section of file.
 +      (EmacsApp -application:openFiles:): Don't return a value, call
 +      -replyToOpenOrPrint:.
 +      (EmacsView -keyDown:): Fix up cast.
 +      (EmacsView -converstationIdentifier): Use NSInteger instead of long.
 +      (EmacsView -menuDown:): Cast tag in call to
 +      find_and_call_menu_selection().
 +      (ns_list_fonts): Remove, unused.
 +      (ns_font_to_xlfd): Make static.  Cast result of UTF8String.
 +      (ns_fontname_to_xlfd): Make static.
 +      * w32menu.c (xmalloc_widget_value, digest_single_submenu):
 +      Remove prototypes (now in keyboard.h).
 +      (next_menubar_widget_id): Remove, unused.
 +      * xmenu.c (xmalloc_widget_value, digest_single_submenu):
 +      Remove prototypes (now in keyboard.h).
 +      * xfaces.c (ns_list_fonts, w32_list_fonts): Remove, unused.
 +
 +2008-08-01  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * Makefile.in (dispnew.o, gtkutil.o, sound.o, atimer.o)
 +      (floatfns.o): Depend on syssignal.h.
 +      (term.o): Depend on syssignal.h, systty.h, and $(INTERVAL_SRC).
 +
 +      * systty.h: Fix previous change that removed BSD_TERMIOS.
 +      Add comments to #ifdefs.
 +
 +2008-08-01  Adrian Robert  <Adrian.B.Robert@gmail.com>
 +
 +      * w32fns.c (w32-load-color-file): Remove.
 +      (x-open-connection): Use renamed Fx_load_color_file.
 +      * xfaces.c (x-load-color-file): Add.
 +      * nsterm.m (ns_initialize): Load colors from etc/rgb.txt instead of
 +      Emacs.clr.
 +      (hide_hourglass): BLOCK_INPUT before UNBLOCK.
 +
 +2008-07-31  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * dbusbind.c (Fdbus_call_method_asynchronously)
 +      (Fdbus_method_error_internal): New defuns.
 +      (xd_read_message): Handle also reply messages.
 +      (Vdbus_registered_functions_table): Extend docstring.
 +
 +2008-07-31  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * keyboard.c (gobble_input): Fix previous change.
 +
 +2008-07-31  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * bitmaps/README:
 +      * xfns.c:
 +      * termcap.c:
 +      * term.c:
 +      * syswait.h:
 +      * systty.h:
 +      * systime.h:
 +      * syssignal.h:
 +      * sysdep.c:
 +      * process.h:
 +      * process.c:
 +      * print.c:
 +      * ndir.h:
 +      * lread.c:
 +      * keyboard.c:
 +      * getpagesize.h:
 +      * floatfns.c:
 +      * fileio.c:
 +      * emacs.c:
 +      * doc.c:
 +      * dispnew.c:
 +      * dired.c:
 +      * data.c:
 +      * callproc.c:
 +      * buffer.c:
 +      * README:
 +      * Makefile.in:
 +      * s/template.h:
 +      * s/msdos.h:
 +      * m/vax.h: Remove VMS support.
 +      * s/vms.h:
 +      * vlimit.h:
 +      * uaf.h:
 +      * temacs.opt:
 +      * param.h:
 +      * ioctl.h: Remove file.
 +
 +2008-07-31  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * s/ms-w32.h (MULTI_KBOARD): Remove.
 +      * xterm.c:
 +      * xselect.c:
 +      * xfns.c:
 +      * window.c:
 +      * w32term.c:
 +      * w32fns.c:
 +      * terminal.c:
 +      * termhooks.h:
 +      * term.c:
 +      * sysdep.c:
 +      * keyboard.h:
 +      * keyboard.c:
 +      * frame.h:
 +      * frame.c:
 +      * frame.c: Remove references to MULTI_KBOARD, it is now the default.
 +      * config.in: Regenerate.
 +
 +2008-07-30  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32font.h (struct w32font_info): Use unicode version of textmetrics.
 +
 +      * w32font.c (w32font_encode_char): Leave as unicode if in range.
 +      (w32font_open_internal): Get unicode version of textmetrics.
 +      Don't enable or disable glyph indices here.
 +      (w32font_open): Disable use of glyph indices.
 +
 +      * w32uniscribe.c (uniscribe_open): Enable use of glyph indices.
 +
 +2008-07-30  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * minibuf.c (Vread_buffer_function): Doc fix.
 +
 +2008-07-30  John Paul Wallington  <jpw@pobox.com>
 +
 +      * minibuf.c (read_buffer_completion_ignore_case): New var.
 +      (Fread_buffer): Use it.
 +
 +2008-07-30  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * systty.h (sensemode): Remove empty #if.  Remove reference to
 +      BSD_TERMIOS, unused.
 +
 +      * sysdep.c: Remove reference to DGUX.
 +      (closedir): Remove reference to BROKEN_CLOSEDIR, unused.
 +
 +      * config.in: Regenerate.
 +
 +2008-07-30  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32uniscribe.c (uniscribe_encode_char): Fix glyph buffer size.
 +
 +2008-07-29  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32uniscribe.c (uniscribe_shape): Avoid using context if cache
 +      is populated.
 +      (uniscribe_encode_char): Always use uniscribe.
 +      Avoid using context if cache is populated.
 +
 +2008-07-29  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * xmenu.c (Fx_menu_bar_open_internal): Use activate_item signal to
 +      open menu.
 +
 +      * gtkutil.c (menu_nav_ended): Remove.
 +      (create_menus): Remove signal connect for menu_nav_ended.
 +
 +2008-07-28  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * xdisp.c (redisplay_window): Check return value of
 +      compute_window_start_on_continuation_line before forcing a window
 +      start.
 +
 +2008-07-28  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32font.c (w32font_text_extents): Use w32_metric_cache consistently.
 +
 +      * w32term.c (w32_enable_unicode_output, cleartype_active):
 +      Remove obsolete display options.
 +      (x_draw_glyph_string_background): Don't use old cleartype_active
 +      workaround.
 +      (w32_initialize): Remove cleartype_active initialization.
 +      (syms_of_w32term): Remove w32_enable_unicode_output initialization.
 +
 +2008-07-28  Andreas Schwab  <schwab@suse.de>
 +
 +      * lisp.h (init_weak_hash_tables, syms_of_font)
 +      (xd_read_queued_messages, syms_of_dbusbind): Declare.
 +      (remove_hash_entry): Don't declare.
 +      * eval.c (maybe_call_debugger): Make static and move before use.
 +      * gtkutil.c: Include <X11/Xft/Xft.h> if HAVE_XFT.
 +      * xdisp.c: Include "gtkutil.h" if USE_GTK.
 +      * xterm.h (x_set_frame_alpha): Declare.
 +
 +2008-07-28  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * gtkutil.c (menu_nav_ended): Revert change from 2008-07-24.
 +      (create_menus): Connect selection-done to menu_nav_ended.
 +
 +2008-07-27  Adrian Robert  <Adrian.B.Robert@gmail.com>
 +
 +      * nsfns.m (x-create-frame): Add copy of parms argument to beginning.
 +      Set Vx_resource_name to a fallback.  Replace read of 'buffered'
 +      parameter with read of 'alpha' one.
 +      (Qns_frame_parameter): Remove.
 +      * nsselect.m (selection-coding-system)
 +      (next-selection-coding-system, Vselection_coding_system)
 +      (Vnext_selection_coding_system): Drop.
 +
 +2008-07-27  Adrian Robert  <Adrian.B.Robert@gmail.com>
 +
 +      * nsfns.m (do-applescript, do_applescript): Rename to
 +      ns-do-applescript, ns_do_applescript, and move within file.
 +
 +2008-07-27  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      Remove support for Mac Carbon.
 +      * mactoolbox.c:
 +      * macterm.h:
 +      * macterm.c:
 +      * macselect.c:
 +      * macmenu.c:
 +      * macgui.h:
 +      * macfns.c:
 +      * mac.c: Remove file.
 +      * s/darwin.h:
 +      * m/intel386.h:
 +      * xfaces.c:
 +      * xdisp.c:
 +      * window.c:
 +      * tparam.c:
 +      * termhooks.h:
 +      * termcap.c:
 +      * term.c:
 +      * syssignal.h:
 +      * sysselect.h:
 +      * sysdep.c:
 +      * process.c:
 +      * lread.c:
 +      * lisp.h:
 +      * keyboard.c:
 +      * image.c:
 +      * fringe.c:
 +      * frame.h:
 +      * frame.c:
 +      * fontset.c:
 +      * font.h:
 +      * font.c:
 +      * fns.c:
 +      * fileio.c:
 +      * emacs.c:
 +      * dispnew.c:
 +      * dispextern.h:
 +      * config.in:
 +      * atimer.c:
 +      * Makefile.in: Remove code for Carbon.
 +
 +2008-07-26  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
 +
 +      * macterm.c (XDrawLine) [USE_MAC_IMAGE_IO]: Remove spurious return.
 +
 +2008-07-26  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
 +
 +      * macterm.h (kCGBitmapByteOrder32Host): New define for
 +      non-universal SDKs.
 +
 +      * image.c (mac_create_cg_image_from_image, image_load_image_io)
 +      [USE_MAC_IMAGE_IO]: Remove conditionals for kCGBitmapByteOrder32Host.
 +
 +      * macterm.c (XDrawLine, XCreatePixmapFromBitmapData)
 +      [USE_MAC_IMAGE_IO]: Remove conditionals for kCGBitmapByteOrder32Host.
 +
 +2008-07-26  David Robinow  <drobinow@gmail.com>  (tiny change)
 +
 +      * w32inevt.c: Include dispextern.h.
 +
 +2008-07-26  Andreas Schwab  <schwab@suse.de>
 +
 +      * print.c (print_object): Fix off-by-one in last change.
 +
 +2008-07-25  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * term.c (syms_of_term): Don't initialize default_orig_pair,
 +      default_set_foreground and default_set_background on Windows.
 +
 +2008-07-25  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32uniscribe.c (uniscribe_shape): Pass NULL for control arg to
 +      ScriptItemize.  Clean up return value checking.  Remove unused
 +      variables.
 +      (uniscribe_encode_char): Encode non-BMP characters with uniscribe
 +      shaping engine.
 +
 +      * w32font.c (w32font_has_char): Handle the case where we can't
 +      determine the script for a character.
 +
 +2008-07-25  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * term.c (syms_of_term): Initialize default_orig_pair,
 +      default_set_foreground, and default_set_background.
 +
 +      * getloadavg.c (nl): Rename to name_list to avoid ncurses.h
 +      clash (bug#86).
 +      (getloadavg): Callers changed.
 +
 +      * image.c (svg_load_image): Fix last change.
 +      (svg_load_image): Use rsvg_handle_get_dimensions to check that
 +      image size is valid.  Use g_object_unref instead of deprecated
 +      rsvg_handle_free to free rsvg handle.
 +      (x_from_xcolors): Don't initialize pixmap (silence compiler).
 +
 +2008-07-25  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32font.c (w32font_encode_char): Encode characters outside BMP as
 +      surrogates before looking up glyph index.
 +      (w32font_text_extents): Encode as surrogates if falling back to
 +      functions that need UTF-16 wide chars.
 +
 +      * w32uniscribe.c (uniscribe_encode_char): Encode characters outside
 +      BMP as surrogates before looking up glyph index.
 +
 +2008-07-25  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * image.c (svg_load_image): Check for failure in return value of
 +      rsvg_handle_get_pixbuf.  Free rsvg handle when done.
 +
 +2008-07-25  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32font.c (Fx_select_font): Reverse sense of second arg.
 +
 +2008-07-24  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * syntax.c (struct lisp_parse_state, char_quoted, inc_bytepos)
 +      (dec_bytepos, find_defun_start): Use EMACS_INT for buffer positions.
 +
 +      * puresize.h (PURESIZE_CHECKING_RATIO): New macro.
 +      (PURESIZE): Use it.
 +
 +2008-07-24  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * m/amdx86-64.h (HAVE_LIB64_DIR): Consolidate ifdefs.
 +      * m/alpha.h (TEXT_END):
 +      * m/ibmrs6000.h (TEXT_END):
 +      * m/macppc.h (TEXT_END):
 +      * s/darwin.h (TEXT_END):
 +      * s/msdos.h (TEXT_END): Remove, unused.
 +      * s/gnu-linux.h (BSD_PGRPS): Add a comment.
 +      * s/cygwin.h: Remove comment.
 +
 +      * ecrt0.c (NODOT_GLOBAL_START): Remove code, unused.
 +      (DOT_GLOBAL_START): Remove conditional, redundant for CRT0_DUMMIES.
 +      * m/intel386.h (DOT_GLOBAL_START):
 +      * m/vax.h (DOT_GLOBAL_START): Remove, redundant with CRT0_DUMMIES.
 +      (USG): Remove, file not used on USG platforms.
 +
 +      * Makefile.in (HAVE_X11): Remove empty #else.
 +
 +2008-07-24  Andreas Schwab  <schwab@suse.de>
 +
 +      * fileio.c (Finsert_file_contents): Properly adjust undo list
 +      after format conversion.
 +
 +2008-07-24  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * gtkutil.c (xg_get_font_name): Cast w to GTK_FONT_SELECTION_DIALOG.
 +      (menu_nav_ended): Remove.
 +      (create_menus): Remove signal connect for menu_nav_ended.
 +      (xg_update_menubar): Also take deactivate_cb as parameter, pass it to
 +      create_menus.
 +      (xg_modify_menubar_widgets): Pass deactivate_cb to xg_update_menubar.
 +
 +2008-07-23  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32font.c (w32_enumfont_pattern_entity): Return height consistent
 +      with opened font.
 +      (w32font_open): Set font type to gdi.
 +
 +      * w32uniscribe.c (uniscribe_open): Set font type to uniscribe.
 +
 +2008-07-23  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * s/usg5-4.h (ADDR_CORRECT): Remove, unused.
 +      * unexaix.c (ADDR_CORRECT): Remove conditional, the only user
 +      defines it.
 +      * unexec.c (ADDR_CORRECT): Define unconditionally.
 +
 +      * m/ibmrs6000.h (C_SWITCH_MACHINE): Remove.
 +
 +      * unexec.c: Remove code depending on !COFF and USG, the file is
 +      not used for such systems.
 +
 +      * s/netbsd.h (A_TEXT_OFFSET, A_TEXT_SEEK):
 +      * s/freebsd.h (A_TEXT_OFFSET, A_TEXT_SEEK): Remove, unused.
 +      (LD_SWITCH_SYSTEM_1): Remove, update users.
 +
 +      * s/darwin.h (DATA_END):
 +      * m/intel386.h (DATA_END):
 +      * m/ibmrs6000.h (DATA_END):
 +      * m/alpha.h (DATA_END): Remove, unused.
 +
 +      * config.in: Regenerate.
 +      * s/ms-w32.h (subprocesses): Define unconditionally.
 +      * s/template.h (subprocesses): Update comment.
 +      * s/vms.h (subprocesses):
 +      * s/usg5-4.h (subprocesses):
 +      * s/hpux10-20.h (subprocesses):
 +      * s/gnu-linux.h (subprocesses):
 +      * s/cygwin.h (subprocesses):
 +      * s/bsd-common.h (subprocesses):
 +      * s/aix4-2.h (subprocesses):
 +      * s/darwin.h (subprocesses): Do not define, defined by default now.
 +
 +      * Makefile.in (C_SWITCH_SITE, LD_SWITCH_SITE): Remove, unused.
 +      Remove all references.
 +      (temacs): Add GNUstep specific ld flags.
 +
 +      * nsterm.m (syms_of_nsterm): Provide ns, not ns-windowing,
 +      similarly to what X does.
 +
 +2008-07-22  Adrian Robert  <Adrian.B.Robert@gmail.com>
 +
 +      * nsfns.m (x-list-fonts): Remove.
 +      (syms_of_nsfns): Drop the x-list-fonts declaration.
 +      * nsterm.m: Get rid of remaining "//" comments.
 +
 +2008-07-22  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * xselect.c (Fx_rotate_cut_buffers_internal): Doc fix.
 +
 +      * nsselect.m (Fns_selection_exists_p, Fns_selection_owner_p)
 +      (Fx_get_selection_internal, Fns_rotate_cut_buffers_internal)
 +      (Fns_own_selection_internal, Fx_disown_selection_internal)
 +      (Fns_get_cut_buffer_internal, Fns_store_cut_buffer_internal):
 +
 +      * nsmenu.m (Fns_reset_menu, Fx_popup_menu): Change to use 'doc: /*
 +      ... */' style of docstrings.  Doc fixes.
 +
 +2008-07-22  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * terminfo.c (UP, BC, PC): Undo previous change.
 +
 +      * nsfns.m: Rename ns prefixed functions/variables to the
 +      corresponding x versions.  Update references.
 +
 +2008-07-22  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * syntax.c (char_quoted): Check "charpos > beg" before decrementing.
 +
 +2008-07-22  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * nsfns.m (x_set_menu_bar_lines, x_set_tool_bar_lines):
 +      Remove forwarding functions.
 +      (ns_set_menu_bar_lines): Rename to x_set_menu_bar_lines, make
 +      non-static.
 +      (ns_set_tool_bar_lines): Rename to x_set_tool_bar_lines, make
 +      non-static.
 +      (ns_frame_parm_handlers): Use the new names.
 +      (syms_of_nsfns): Move to the end of file.
 +
 +      * nsterm.m (syms_of_nsterm): Move to the end of file.
 +
 +      * dispnew.c (init_display): Remove code for X10.
 +
 +2008-07-22  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32proc.c (Fw32_long_file_name): Don't append dir separator to
 +      bare drive.
 +
 +2008-07-22  Adrian Robert  <Adrian.B.Robert@gmail.com>
 +
 +      * nsterm.m (syms_of_nsterm): Remove debugging println.
 +
 +2008-07-22  David Reitter  <david.reitter@gmail.com>
 +
 +      * nsfns.m (do_applescript, F_do_applescript): NS version of the
 +      Carbon implementation of the same functionality: execute arbitrary
 +      AppleScript code.
 +
 +2008-07-21  Adrian Robert  <Adrian.B.Robert@gmail.com>
 +
 +      * nsfns.m (Fx_create_frame, Fx_read_file_name, Fx_get_resource)
 +      (Fx_set_resource, Fx_set_alpha, Fx_server_max_request_size)
 +      (Fx_server_vendor, Fx_server_version, Fx_display_screens)
 +      (Fx_display_mm_height, Fx_display_mm_width)
 +      (Fx_display_backing_store, Fx_display_visual_class)
 +      (Fx_display_save_under, Fx_open_connection)
 +      (Fx_close_connection, Fx_hide_emacs, Fx_font_name)
 +      (Fx_list_colors, Fx_perform_service, Fx_color_defined_p)
 +      (Fx_color_values, Fxw_display_color_p, Fx_display_grayscale_p)
 +      (Fx_display_pixel_width, Fx_display_pixel_height)
 +      (Fx_display_usable_bounds, Fx_display_planes)
 +      (Fx_display_color_cells, Vns_icon_type_alist): Change to use 'doc: /*
 +      ... */' style of docstrings.
 +
 +2008-07-21  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * m/mips.h (LOAD_AVE_TYPE, LOAD_AVE_CVT): Do not define, not used
 +      on this platform.
 +      (mips):
 +      * m/iris4d.h (mips): Do not define.
 +      * sysdep.c (init_sys_modes): Use __mips__ instead of mips.
 +
 +      * m/ibmrs6000.h (LD_SWITCH_SITE): Remove.
 +
 +      * image.c:
 +      * nsfns.m:
 +      * nsselect.m:
 +      * nsterm.h:
 +      * nsterm.m: Rename ns prefixed functions/variables to the
 +      corresponding x versions.  Update references.
 +
 +      * m/ibms390x.h (NO_REMAP): Do not undefine.
 +
 +      * m/amdx86-64.h: Use SOLARIS2 instead of sun.
 +
 +2008-07-21  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * nsfns.m: Change NS to Nextstep in docstrings and error messages.
 +      (Fns_create_frame, Fns_read_file_name, Fns_get_resource)
 +      (Fns_set_resource, Fns_set_alpha, Fns_server_max_request_size)
 +      (Fns_server_vendor, Fns_server_version, Fns_display_screens)
 +      (Fns_display_mm_height, Fns_display_mm_width)
 +      (Fns_display_backing_store, Fns_display_visual_class)
 +      (Fns_display_save_under, Fns_open_connection)
 +      (Fns_close_connection, Fns_hide_emacs, Fns_font_name)
 +      (Fns_list_colors, Fns_perform_service, Fns_color_defined_p)
 +      (Fns_color_values, Fxw_display_color_p, Fx_display_grayscale_p)
 +      (Fns_display_pixel_width, Fns_display_pixel_height)
 +      (Fns_display_usable_bounds, Fx_display_planes)
 +      (Fns_display_color_cells, Vns_icon_type_alist): Doc fixes.
 +
 +2008-07-21  Ami Fischman  <ami@fischman.org>  (tiny change)
 +
 +      * print.c (print_object): Check print_depth before searching for
 +      circularities.
 +
 +2008-07-21  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * dbusbind.c (Fdbus_register_signal): Use sprintf + strcat instead
 +      only sprintf.
 +
 +2008-07-21  Kenichi Handa  <handa@m17n.org>
 +
 +      * ftfont.c (adjust_anchor): Check if DeltaValue is not NULL.
 +
 +2008-07-20  Andreas Schwab  <schwab@suse.de>
 +
 +      * syntax.c (find_start_pos, find_start_value)
 +      (find_start_value_byte, find_start_begv, find_defun_start)
 +      (back_comment, scan_sexps_forward): Use EMACS_INT for buffer positions.
 +
 +2008-07-20  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * s/sol2-3.h: Insert contents of s/sol2.h.
 +      (LD_SWITCH_SYSTEM): Remove redundant definition.
 +      * s/sol2.h: Remove, unused.
 +
 +2008-07-20  Adrian Robert  <Adrian.B.Robert@gmail.com>
 +
 +      * nsterm.m (ns_get_color): Recognize HSB,AHSB be synonyms for HSV,AHSV.
 +
 +2008-07-20  Adrian Robert  <Adrian.B.Robert@gmail.com>
 +
 +      * Makefile.in (ns_appdir): Fix typo in find command.
 +
 +2008-07-20  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * m/intel386.h (NO_REMAP): Do no define for USG, not used.
 +
 +      * s/usg5-4.h (LIBS_SYSTEM): Remove, system for which this was
 +      added not supported anymore.
 +
 +      * s/usg5-4-2.h (LIBS_SYSTEM):
 +      * s/sol2.h (LIBS_SYSTEM): Do not undefine.
 +
 +      * s/netbsd.h (GETPGRP_NO_ARG, N_TRELOFF):
 +      * s/lynxos.h (GETPGRP_NO_ARG):
 +      * s/hpux10-20.h (NO_SIOCTL_H):
 +      * s/gnu.h (GETPGRP_NO_ARG):
 +      * s/gnu-linux.h (NO_SIOCTL_H):
 +      * s/freebsd.h (GETPGRP_NO_ARG, N_TRELOFF):
 +      * s/cygwin.h (GETPGRP_NO_ARG):
 +      * s/irix6-5.h (LIBS_SYSTEM, GETPGRP_NO_ARG): Remove, unused.
 +      (C_DEBUG_SWITCH): Remove duplicate definition.
 +
 +      * m/ibms390.h: Remove boilerplate comments.
 +
 +      * sysdep.c (closedir): Use SOLARIS2 instead of sun && USG5_4.
 +
 +      * process.c (HAVE_SERIAL): Consolidate ifdefs.
 +      (wait_reading_process_output): Remove code for SunOS, platform not
 +      supported anymore.  Use SOLARIS2 instead of sun.
 +
 +2008-07-19  Adrian Robert  <Adrian.B.Robert@gmail.com>
 +
 +      * font.c (font_open_by_name): Under NS, default lface height to zero.
 +      (font_open_for_lface): Under NS, set size based on frame fontsize.
 +      * nsterm.m (EmacsView-changeFont:): Remove some commented code.
 +      * frame.c (x_set_frame_parameters): Remove HAVE_NS ifdef.
 +
 +2008-07-19  Adrian Robert  <Adrian.B.Robert@gmail.com>
 +
 +      * nsterm.m (ns_antialias_text, ns_use_qd_smoothing)
 +      (ns_use_system_highlight_color): Switch these from DEFVAR_BOOL to
 +      DEFVAR_LISP and change all code accordingly to use Qt/Qnil instead of
 +      YES/NO.
 +      * nsterm.h (prevUseHighlightColor): Make a Lisp_Object.
 +      * nsfont.m (nsfont_draw): Treat ns_use_qd_smoothing as Lisp_Object.
 +      * Makefile.in (clean): Clear out build destination dir.
 +
 +2008-07-19  Adrian Robert  <Adrian.B.Robert@gmail.com>
 +
 +      * Makefile.in (nsgui.h-related dependencies): Remove abbrev, xfns,
 +      xterm, xselect.
 +      * lisp.h: Remove declaration of hash_remove.
 +      * nsgui.h: Remove redefinitions of hash_remove.
 +      * fns.c (hash_remove): Rename to hash_remove_from_table.
 +
 +2008-07-19  Seiji Zenitani  <zenitani@mac.com>
 +
 +      * nsfont.m (nsfont_fmember_to_entity, nsfont_make_fontset_for_font):
 +      strdup() the family UTF8String before modifying it.
 +
 +2008-07-19  Adrian Robert  <Adrian.B.Robert@gmail.com>
 +
 +      * nsterm.m (ns_maybe_dumpglyphs_background): Compare result from
 +      NS_FACE_BACKGROUND with 0 instead of nil.
 +      * nsfont.m (nsfont_draw): Same.
 +
 +2008-07-19  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * nsfns.m (ns_set_background_color): Fix crash.
 +
 +2008-07-18  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * Makefile.in (SOME_MACHINE_LISP): Remove ns-carbon-compat.elc.
 +
 +2008-07-18  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * puresize.h (BASE_PURESIZE): Increase to 1240000.
 +
 +2008-07-17  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
 +
 +      * gtkutil.c: Include <config.h> instead of "config.h".
 +
 +      * lisp.h (Foverlay_buffer): Add EXFUN.
 +
 +      * process.c (create_process) [!WINDOWSNT && FD_CLOEXEC]: Wait for
 +      child process to complete child_setup.  Undo 2005-09-21 change.
 +
 +      * s/darwin.h: Mention setsid after vfork.
 +
 +2008-07-17  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
 +
 +      * Makefile.in (frame.o, keyboard.o, xdisp.o, xfaces.o):
 +      Depend on macgui.h.
 +
 +      * macfns.c (Fx_server_version): Don't use gestaltSystemVersionMajor,
 +      gestaltSystemVersionMinor, or gestaltSystemVersionBugFix.
 +
 +      * macterm.c (keycode_to_xkeysym_table): Add entries for f17, f18,
 +      and f19.
 +      [MAC_OSX] (fn_keycode_to_keycode_table): Likewise.
 +
 +      * macterm.h (gestaltSystemVersionMajor, gestaltSystemVersionMinor)
 +      (gestaltSystemVersionBugFix) [MAC_OS_X_VERSION_MAX_ALLOWED < 1040]:
 +      Remove enumerators.
 +
 +      * mactoolbox.c [USE_MAC_TSM] (mac_handle_text_input_event):
 +      Check if FACE_FROM_ID returns NULL.
 +
 +2008-07-17  David Robinow  <drobinow@gmail.com>  (tiny change)
 +
 +      * w32inevt.c (change_frame_size): Remove extern declaration.
 +      (resize_event, maybe_generate_resize_event): Pass SAFE arg to
 +      change_frame_size.
 +
 +2008-07-17  Adrian Robert  <Adrian.B.Robert@gmail.com>
 +
 +      * getloadavg.c: Revert last change (2008-07-15).
 +
 +2008-07-17  Adrian Robert  <Adrian.B.Robert@gmail.com>
 +
 +      * Makefile.in: Replace emacsapp, emacsbindir, emacsappsrc variables
 +      set here with ns_appdir, ns_appresdir, ns_appbindir, ns_appsrc set
 +      from configure.
 +
 +2008-07-17  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * s/sol2.h:
 +      * s/sol2-4.h: Reorganize conditionals.
 +
 +      * ecrt0.c: Remove code depending on m68000, not used anymore.
 +
 +      * fns.c (hash_remove): Make static.
 +      * lisp.h (hash_remove): Don't prototype.
 +
 +      * m/ibmrs6000.h:
 +      * m/ibms390x.h:
 +      * m/macppc.h: Remove boilerplate comments.
 +
 +      * m/sparc.h (A_TEXT_OFFSET, A_TEXT_SEEK): Remove, only used on
 +      Solaris, which does not need them.
 +
 +      * m/vax.h: Remove comments about unsupported systems.
 +
 +      * s/darwin.h: Reorganize ifdefs.
 +
 +2008-07-17  Andreas Schwab  <schwab@suse.de>
 +
 +      * s/cygwin.h (LIB_STANDARD_LIBSRC): Don't define.
 +
 +2008-07-17  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      Use SDATA.  Follow coding convention of placing operators at
 +      beginning of next line rather than end of previous line, and placing
 +      spaces around infix operators.
 +
 +      * Makefile.in: Undef LIB_STANDARD before defining it to silence warning
 +      in case it was defined already.
 +      USE @GNUSTEP_MAKEFILES@ rather than envvars.
 +      * nsterm.m (ns_term_init): Pass Qt and Qnil rather than YES/NO to
 +      ns_default.
 +      (applicationShouldTerminate, setValuesFromPanel): Use EQ to compare
 +      Lisp_Objects.
 +      * nsterm.h (Fx_display_grayscale_p, Fx_display_planes)
 +      (ns_defined_color, ns_color_to_lisp): Declare.
 +      * nsselect.m (ns_handle_selection_request, ns_handle_selection_clear)
 +      (Fns_own_selection_internal): Make the big ugly hack more explicit, so
 +      it's accepted even with USE_LISP_UNION_TYPE.
 +      * nsmenu.m (ns_update_menubar): Use EQ to compare Lisp_Objects.
 +      (update_frame_tool_bar): Remove apparently obsolete tests for
 +      non-integerness of f->tool_bar_lines.
 +      (windowShouldClose, addButton, clicked, runDialogAt): Make the big ugly
 +      hack more explicit, so it's accepted even with USE_LISP_UNION_TYPE.
 +      * nsfont.m (nsfont_driver): Use just 0 rather than an invalid cast.
 +      (nsfont_open): Don't confuse NULL for Qnil.
 +      * nsfns.m (ns_implicitly_set_icon_type): Use EQ to compare Lisp_Objects.
 +      * menu.h (find_and_call_menu_selection):
 +      * menu.c (find_and_call_menu_selection): Use just int for vector size.
 +      (find_and_return_menu_selection): Always return something.
 +      * frame.h: Include dispextern.h for Display_Info.
 +      (display_x_get_resource): Declare.
 +
 +2008-07-16  Adrian Robert  <Adrian.B.Robert@gmail.com>
 +
 +      * syntax.c: Remove stdio.h include accidentally introduced in
 +      Emacs.app commit.
 +      * Makefile.in: Change GNUSTEP to NS_IMPL_GNUSTEP, COCOA to
 +      NS_IMPL_COCOA.
 +      * keyboard.c (handle_async_input, input_available_signal): Remove
 +      BSD4_1 conditional code, introduced accidentally in Emacs.app commit.
 +
 +2008-07-16  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * nsterm.m (lisp_to_mod): Use parse_solitary_modifier instead.
 +      (ns_lisp_to_color): Don't mess with internal Lisp data fields.
 +      (ns_term_init, ns_term_shutdown, initFrameFromEmacs, ns_list_fonts):
 +      Use SDATA.
 +
 +      * keymap.c: Remove all NS-specific code.
 +      (where_is_preferred_modifier, Vwhere_is_preferred_modifier): New vars.
 +      (preferred_sequence_p): Rename from ascii_sequence_p; pay attention to
 +      where_is_preferred_modifier, return a different value depending on how
 +      preferred is the binding.
 +      (where_is_internal): Adjust accordingly.
 +      (Fwhere_is_internal): Refresh where_is_preferred_modifier.
 +      Adjust to new preferred_sequence_p.
 +      (syms_of_keymap): Declare `where-is-preferred-modifier'.
 +      * keyboard.c (parse_solitary_modifier): Not static any more.
 +      * keyboard.h (parse_solitary_modifier): Declare.
 +
 +2008-07-16  Andreas Schwab  <schwab@suse.de>
 +
 +      * Makefile.in (SOME_MACHINE_LISP): Remove easy-mmode, fix spelling
 +      of easymenu.
 +
 +2008-07-16  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * xdisp.c (move_it_in_display_line): Account for word wrap, so
 +      that we don't move off the line.
 +
 +2008-07-16  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * keyboard.c (Qsuper): Remove.
 +      (parse_menu_item): Don't call where_is_internal specially for NS.
 +
 +2008-07-16  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * s/gnu-linux.h: Remove boilerplate comments.
 +
 +      * m/alpha.h (__ELF__): Consolidate conditions.
 +
 +      * m/m68k.h (linux): Use GNU_LINUX instead.
 +      Remove boilerplate comments.
 +
 +      * m/intel386.h: Undo refactoring from previous change.
 +      (LIB_STANDARD): All systems that define USG define LIB_STANDARD
 +      too, remove dead code.
 +      (linux): Use GNU_LINUX instead.
 +
 +2008-07-16  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32gui.h: Repeat 26 June changes lost by last change.
 +
 +2008-07-16  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * systty.h: Remove code for Aix on 386, unsupported platform.
 +
 +      * s/ms-w32.h: Remove boilerplate comments.
 +      (fcloseall, fgetchar, flushall, fputchar, getw, putw): Remove, unused.
 +
 +      * s/gnu-linux.h (TERM): Remove support.
 +      (HAVE_SYSVIPC): Remove, unused.
 +      (A_TEXT_OFFSET, A_TEXT_SEEK, ADJUST_EXEC_HEADER): Remove, not used
 +      for this system.
 +
 +      * process.c: Remove support for IRIS, unused.
 +      Remove support for TERM, not relevant anymore.
 +
 +      * unexalpha.c (DEFAULT_ENTRY_ADDRESS): Remove, replace the only
 +      used with the definition.
 +
 +      * s/aix4-2.h (static): Do not undef.
 +
 +      * m/ibmrs6000.h: Remove code depending on USG5_4, this file is
 +      only used on Aix.
 +      (HAVE_SYSVIPC): Remove, unused.
 +
 +      * m/hp800.h (CANNOT_DUMP): Do not undef.
 +
 +      * m/alpha.h: Fix comment.
 +
 +      * s/usg5-4.h (HAVE_SYSVIPC): Remove, unused.
 +      (USG_SHARED_LIBRARIES): Remove, only used in unexec.c which is not
 +      used by this configuration.
 +      * emacs.c: Remove code depending on USG_SHARED_LIBRARIES.
 +      * unexec.c: Remove code depending on HPUX and
 +      USG_SHARED_LIBRARIES, not used with this file.  Remove code
 +      depending on IRIS, unused.  Remove if 0-ed code.
 +
 +      * s/template.h: Remove comments about static.
 +
 +      * sysdep.c: Remove code depending on NEED_PTEM_H, unused.
 +      Remove if 0-ed code.
 +      (baud_convert): Don't depend on BAUD_CONVERT, all definitions the
 +      were the same as the default.
 +      * s/vms.h (BAUD_CONVERT): Remove, same as the default.
 +      Remove boilerplate comments.
 +      * s/hpux10-20.h (BAUD_CONVERT): Remove, same as the default.
 +      (HAVE_SYSVIPC): Remove, unused.
 +      (LD_SWITCH_SYSTEM_TEMACS): Simplify, hp9000s700 not supported anymore.
 +
 +      * m/ia64.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
 +      Remove boilerplate comments.
 +      * m/amdx86-64.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
 +      Remove boilerplate comments.
 +      * m/ibms390x.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
 +      Remove boilerplate comments.
 +      * lisp.h (PNTR_COMPARISON_TYPE): Define it unconditionally.
 +
 +      * m/intel386.h (DATA_SEG_BITS): Remove definitions, only used on
 +      USG systems which do not use DATA_SEG_BITS.
 +      Refactor code.  Remove boilerplate comments.
 +
 +      * m/ibms390.h:
 +      * m/m68k.h:
 +      * s/bsd-common.h:
 +      * s/cygwin.h:
 +      * s/darwin.h:
 +      * s/freebsd.h:
 +      * s/gnu.h:
 +      * s/msdos.h: Remove boilerplate comments.
 +
 +      * m/iris4d.h: Remove boilerplate comments and code for systems that
 +      do not use this file.
 +      (IRIS_4D): Remove, unused.
 +
 +      * m/mips.h: Remove boilerplate comments and code for systems that
 +      do not use this file.
 +      (SIGN_EXTEND_CHAR):
 +      * m/arm.h (SIGN_EXTEND_CHAR): Remove, unused.
 +      * unexmips.c: Remove file, unused.
 +
 +      * editfns.c (Fuser_full_name): Replace the only use of
 +      USER_FULL_NAME with its value.
 +      * config.in: Regenerate.
 +
 +2008-07-16  David Reitter  <david.reitter@gmail.com>
 +
 +      * Makefile.in: Add ns-win, ns-carbon-compat, easy-mmode and
 +      easy-menu to SOME_MACHINE_LISP for the new NeXTstep port.
 +
 +2008-07-16  Glenn Morris  <rgm@gnu.org>
 +
 +      * emacs.c (system-type): Doc fix.
 +
 +2008-07-15  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * keyboard.c (parse_menu_item): Don't use cachelist, even under NS.
 +      If the cache doesn't work, let's fix it, rather than work around it.
 +
 +2008-07-15  Adrian Robert  <Adrian.B.Robert@gmail.com>
 +
 +      * Makefile.in: Correct additions for nsfont.o in last commit.
 +      * nsfont.m: New file (forgot last commit).
 +
 +2008-07-15  Chris Hall  <chris@web.workinglinux.com>  (tiny change)
 +
 +      * callproc.c (set_initial_environment):
 +      Initialize Vprocess_environment under CANNOT_DUMP (fixes crash when
 +      batch-compiling for bootstrap).
 +
 +2008-07-15  Chris Hall  <chris@web.workinglinux.com>  (tiny change)
 +            YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
 +
 +      * frame.c (make_initial_frame): Call init_frame_faces(f) in
 +      CANNOT_DUMP case -- fix crash due to different init order.
 +
 +2008-07-15  Adrian Robert  <Adrian.B.Robert@gmail.com>
 +
 +      Changes and additions for NeXTstep windowing system (Cocoa and
 +      GNUstep) support.
 +
 +      * Makefile.in:
 +      * config.in: Support defines and build commands for NS port.
 +      * blockinput.h (BLOCK_INPUT, UNBLOCK_INPUT, TOTALLY_UNBLOCK_INPUT)
 +      (UNBLOCK_INPUT_TO): Don't use under NS unless EXPERIMENTAL_CONTROL_G.
 +      * dispextern.h: Include nsgui.h and add needed typedefs under NS
 +      windowing.
 +      (struct face): Add synth_ital field.
 +      * dispnew.c: Include nsterm.h when compiling under NS windowing.
 +      (init_display): Initialize Vinitial_window_system to "ns" when so
 +      compiled.
 +      * emacs.c: Include GSConfig.h when compiling under GNUstep.
 +      (display_arg): Use under NS.
 +      (main): Under NS, allocate autorelease pool and handle command line
 +      args.  Move syms_of_xmenu() call under #ifdef HAVE_X_WINDOWS.
 +      (standard_args): Add NS-specific args.
 +      (shut_down_emacs): Shut down NS terminal if compiled under NS.
 +      * font.c (DEFAULT_ENCODING): New variable.
 +      (font_find_for_lface): Use it.
 +      (syms_of_font): Load syms_of_nsfont under NS.
 +      * font.h: Declare nsfont_driver when compiled under NS.
 +      * fontset.c: When compiling under NS, include nsterm.h.
 +      (fontset_from_font): Autoconstruct fontset under NS.
 +      * frame.c (various): Under NS, include nsterm.h, add Qns window system
 +      symbol, document and use it.
 +      (do_switch_frame): When for_deletion under Cocoa, add
 +      Fraise_frame(Qnil).
 +      (x_set_frame_parameters): Ensure font attribute changes are picked up.
 +      (x_get_arg): Allow "yes" and "no" as boolean values.
 +      (syms_of_frame): Declare Qns.  Init Vdefault_frame_scroll_bars to
 +      Qright under Cocoa.
 +      (focus-follows-mouse): Default to 0 under NS.
 +      * frame.h (enum output_method): Add output_ns.
 +      (external_tool_bar, external_menu_bar, FRAME_EXTERNAL_TOOLBAR)
 +      (FRAME_EXTERNAL_MENU_BAR): Use under NS.
 +      (FRAME_WINDOW_P): NS-specific definition.
 +      * fringe.c (max_used_fringe_bitmap): Make public.
 +      * getloadavg.c (mach/mach.h): Include it under NeXT descendant OS's.
 +      (getloadavg): Use NeXT code under descendant OS's.
 +      * image.c (includes and header section, x_create_bitmap_from_data)
 +      (x_create_bitmap_from_file, free_bitmap_record, image_background)
 +      (image_background_transparent, x_clear_image_1)
 +      (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
 +      (Create_Pixmap_From_Bitmap_Data, xpm_load_image, lookup_rgb_color)
 +      (x_to_xcolors, x_from_xcolors, x_disable_image)
 +      (x_build_heuristic_mask, syms_of_image): Add NS support parallel to
 +      other GUIs, including XPM support using code originally written for
 +      Carbon GUI.
 +      (png_load, jpeg_load, tiff_load, gif_load): Add implementations
 +      using NS API.
 +      (image_ascent): Use font metrics macros instead of direct struct field
 +      access.
 +      * keyboard.c (includes): Add nsterm.h when compiling under NS.
 +      (kbd_buffer_get_event): Handle NS as other GUI windowing systems.
 +      Also, handle NS as GTK for menu bar purposes.
 +      (make_lispy_event): Handle NS as other GUI windowing systems, and as X
 +      toolkit where they differ.
 +      (parse_menu_item): Prefer keybindings using 'super' modifier.  Also,
 +      use cachelist, still needed under NS.
 +      * keyboard.h (ENCODE_MENU_STRING, XtPointer, Boolean): Handle as NTGUI.
 +      (struct widget_value): Define it here for menu.c.
 +      * keymap.c (includes): Include modifier internals.
 +      (lisp_to_mod, modifier_sequence_p): New functions, compiled only under
 +      NS.
 +      (where_is_internal, Fwhere_is_internal): When compiled under NS, add
 +      support for preferring sequences using certain modifiers, specified by
 +      the FIRSTONLY argument.
 +      * lisp.h (hash_remove): Rename to avoid name clash when compiling
 +      under NS GNUstep implementation.
 +      (USE_LSB_TAG): Use it under Cocoa when compiling under NS.
 +      * lread.c (init_lread): Treat NS as HAVE_CARBON for turn_off_warning.
 +      * menu.c: Include nsterm.h under NS.
 +      (single_menu_item, parse_single_submenu, xmalloc_widget_value)
 +      (free_menubar_widget_tree_value, update_submenu_strings)
 +      (find_and_call_menu_selection): Treat NS as X and NT.
 +      (find_and_return_menu_selection): New function, used for popup menus.
 +      * nsgui.h:
 +      * nsterm.h:
 +      * nsfns.m:
 +      * nsimage.m:
 +      * nsmenu.m:
 +      * nsselect.m:
 +      * nsterm.m: New files.
 +      * process.c (wait_reading_process_output): Under NS, call ns_select()
 +      instead of plain select().
 +      * syntax.c (char_quoted): Under NS, avoid a crash when called near
 +      beginning of buffer.
 +      * sysselect.h (init_process): Rename when compiling under Cocoa to
 +      avoid name conflict.
 +      * termhooks.h (display_info): Add ns_display_info to union.
 +      * terminal.c (Fterminal_live_p): Add ns to terminal types.
 +      * terminfo.c (UP, BC, PC): Don't declare when compiling under NS in
 +      COCOA environment.
 +      * unexnext.c: Update to work with mach API on Mac OS X, and to use new
 +      unexec() signature.  (Note, this will dump, but the resulting file
 +      crashes; unexosx is used instead; keeping around for reference and
 +      possible aid in getting dump working under GNUstep.)
 +      * w32gui.h (button_type, widget_value): Remove definitions (now in
 +      keyboard.h).
 +      * window.c: Include nsterm.h when compiling under NS.
 +      * xdisp.c (includes): Include nsterm.h when compiling under NS.
 +      (set_frame_menubar, update_menu_bar, display_menu_bar): Handle NS as
 +      other GUI windowing systems.
 +      (update_tool_bar, redisplay_tool_bar, redisplay_window): Handle NS as
 +      GTK.
 +      (x_consider_frame_title): Under NS, set icon type and frame
 +      modified-state indicator; use ns_set_name_as_filename() when using
 +      formatted title.
 +      (update_window_cursor): Make public when compiling under NS.
 +      (display_hourglass_p, syms_of_xdisp, hourglass_shown_p)
 +      (hourglass_atimer, Vhourglass_delay
 +      * xfaces.c (header section, init_frame_faces, clear_font_table)
 +      (defined_color, unload_color, x_face_list_fonts)
 +      (prepare_face_for_display): Add NS support parallel to other GUIs.
 +      Emulate GCs like other non-X GUIs.
 +      (split_font_name): Don't lowercase font name under NS.
 +      (merge_face_ref, Finternal_set_lisp_face_attribute): Support stippling
 +      under NS.
 +      * s/darwin.h: Add support for compilation under NS.
 +
 +2008-07-15  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32fns.c (Fx_create_frame): Remove duplicate unwind_protect.
 +      (w32_show_hourglass): Rename from show_hourglass.
 +      (w32_hide_hourglass): Rename from hide_hourglass.
 +      (DEFAULT_HOURGLASS_DELAY): Revert from last change.
 +      (Vhourglass_delay): Declare extern.
 +      (hourglass_started): Remove.
 +
 +      * xdisp.c (Vhourglass_delay): Remove static.
 +      (hourglass_started, start_hourglass, cancel_hourglass):
 +      Don't include these versions on WINDOWSNT.
 +
 +2008-07-15  Adrian Robert  <Adrian.B.Robert@gmail.com>
 +
 +      * dispextern.h (hourglass_shown_p, hourglass_atimer): New extern
 +      variables (formerly in xfns.c).
 +      (show_hourglass, hide_hourglass): New prototypes (same).
 +      * xdisp.c (display_hourglass_p, hourglass_shown_p, hourglass_atimer)
 +      (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY): New variables (formerly
 +      in xfns.c).
 +      (syms_of_xdisp): Declare/initialize display-hourglass,
 +      hourglass-delay.  Initialize hourglass_atimer, hourglass_shown_p.
 +      (hourglass_started, start_hourglass, cancel_hourglass): New functions,
 +      formerly in xfns.c.
 +      * xfns.c (display_hourglass_p, hourglass_atimer, hourglass_shown_p)
 +      (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY, hourglass_started)
 +      (start_hourglass, cancel_hourglass): Remove.
 +      (show_hourglass, hide_hourglass): Remove prototypes and static
 +      modifiers.
 +      (syms_of_xfns): Remove display-hourglass, hourglass-delay,
 +      hourglass_atimer, hourglass_shown_p declaration/initialization.
 +      * macfns.c (display_hourglass_p, hourglass_atimer, hourglass_shown_p)
 +      (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY, hourglass_started)
 +      (start_hourglass, cancel_hourglass): Remove.
 +      (show_hourglass, hide_hourglass): Remove prototypes and static
 +      modifiers.
 +      (syms_of_macfns): Remove display-hourglass, hourglass-delay,
 +      hourglass_atimer, hourglass_shown_p declaration/initialization.
 +      * w32fns.c (display_hourglass_p, Vhourglass_delay)
 +      (DEFAULT_HOURGLASS_DELAY): Remove.
 +      (syms_of_w32fns): Remove display-hourglass, hourglass-delay,
 +      hourglass_shown_p declaration/initialization.
 +
 +2008-07-14  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32fns.c (w32_get_arg): Remove wrapper function.
 +      (w32_createwindow, x_icon, x_create_tip_frame): Use x_get_arg
 +      directly.
 +      (Fx_create_frame): Sync with xfns.c.  Use x_get_arg directly.
 +
 +2008-07-14  Kenichi Handa  <handa@m17n.org>
 +
 +      * xfont.c (xfont_open): Add workaround for X's bug.
 +
 +2008-07-14  Emanuele Giaquinta  <emanuele.giaquinta@gmail.com>  (tiny change)
 +
 +      * fontset.c: Include <stdio.h> unconditionally.
 +
 +2008-07-13  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * dbusbind.c (Fdbus_register_signal): Allow also signal arguments
 +      for filtering.
 +
 +2008-07-13  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * s/vms.h: Use __GNUC__ instead of _GNUC_.
 +
 +      * m/macppc.h:
 +      * m/alpha.h: Use GNU_LINUX instead of LINUX.  Reorganize conditionals.
 +
 +      * m/ibms390x.h (XINT, XUINT): Don't define, same as the default.
 +      (SPECIAL_EMACS_INT):
 +      * m/ia64.h (SPECIAL_EMACS_INT):
 +      * m/amdx86-64.h (SPECIAL_EMACS_INT):
 +      * s/gnu.h (NLIST_STRUCT):
 +      * s/aix4-2.h (X11R5_INHIBIT_I18N):
 +      * s/gnu-linux.h (LINUX):
 +      * s/msdos.h (HAVE_FACES):
 +      * s/ms-w32.h (HAVE_FACES): Don't define, unused.
 +
 +      * systty.h:
 +      * sysdep.c (setup_pty): Don't depend on SYSV_PTYS, it is not used
 +      anymore.
 +
 +2008-07-12  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * syswait.h: Remove old if 0 code.  Do not define WAITTYPE, it was
 +      always defined as int.
 +
 +      * s/netbsd.h (HAVE_UNION_WAIT, HAVE_WAIT_HEADER, WAIT_USE_INT):
 +      * s/gnu.h (HAVE_WAIT_HEADER, WAIT_USE_INT, HAVE_UNION_WAIT):
 +      * s/gnu-linux.h (HAVE_WAIT_HEADER):
 +      * s/freebsd.h (HAVE_WAIT_HEADER):
 +      * s/bsd-common.h (HAVE_UNION_WAIT):
 +      * s/aix4-2.h (HAVE_WAIT_HEADER):
 +      * m/mips.h (HAVE_UNION_WAIT):
 +      * s/usg5-4.h (HAVE_WAIT_HEADER, WAITTYPE): Do not define, not used.
 +      (COFF, static): Do not define, they are undefined later in the file.
 +
 +      * process.c (update_status): Don't use a union.
 +      (status_convert):
 +      (sigchld_handler): Use int instead of WAITTYPE.
 +
 +2008-07-12  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * indent.c (Fvertical_motion): Restore hscroll before moving to
 +      goal column.
 +
 +2008-07-11  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * lisp.h: Remove left over code.
 +
 +2008-07-11  Andreas Schwab  <schwab@suse.de>
 +
 +      * lisp.h: Fix logic in last change.
 +
 +      * menu.h: New file.
 +      * menu.c: Include it.
 +      * xmenu.c: Likewise.
 +      * Makefile.in: Update dependencies.
 +
 +2008-07-11  Kenichi Handa  <handa@m17n.org>
 +
 +      * fontset.c (fontset_from_font): Cancel the previous change.
 +
 +2008-07-11  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * lisp.h:
 +      * w32heap.c:
 +      * emacs.c:
 +      * alloc.c: Replace all references of NO_UNION_TYPE with
 +      USE_LISP_UNION_TYPE.
 +
 +      * m/xtensa.h (NO_UNION_TYPE):
 +      * m/vax.h (NO_UNION_TYPE):
 +      * m/template.h (NO_UNION_TYPE):
 +      * m/sparc.h (NO_UNION_TYPE):
 +      * m/mips.h (NO_UNION_TYPE):
 +      * m/macppc.h (NO_UNION_TYPE):
 +      * m/m68k.h (NO_UNION_TYPE):
 +      * m/iris4d.h (NO_UNION_TYPE):
 +      * m/intel386.h (NO_UNION_TYPE):
 +      * m/ibms390x.h (NO_UNION_TYPE):
 +      * m/ibms390.h (NO_UNION_TYPE):
 +      * m/ibmrs6000.h (NO_UNION_TYPE):
 +      * m/ia64.h (NO_UNION_TYPE):
 +      * m/hp800.h (NO_UNION_TYPE):
 +      * m/arm.h (NO_UNION_TYPE):
 +      * m/amdx86-64.h (NO_UNION_TYPE):
 +      * m/alpha.h (NO_UNION_TYPE): Remove definition, all platform were
 +      defining it the same.
 +
 +2008-07-10  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * xdisp.c (move_it_to): Backtrack if past the edge of a wrapped line.
 +
 +2008-07-10  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * fileio.c:
 +      * sysdep.c:
 +      * systty.h:
 +      * m/ibmrs6000.h:
 +      * m/iris4d.h:
 +      * s/aix4-2.h:
 +      * s/freebsd.h:
 +      * s/gnu-linux.h:
 +      * s/hpux10-20.h:
 +      * s/hpux11.h:
 +      * s/netbsd.h:
 +      * s/sol2-3.h:
 +      * s/sol2-4.h:
 +      * s/sol2.h:
 +      * s/usg5-4.h:
 +      * s/vms.h: Remove references to unused variables.
 +
 +2008-07-10  Andreas Schwab  <schwab@suse.de>
 +
 +      * ftfont.c (ftfont_resolve_generic_family): Remove foundry from
 +      pattern before matching the generic family.
 +
 +2008-07-10  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * unexec.c:
 +      * s/vms.h:
 +      * s/usg5-4-2.h:
 +      * s/sol2-5.h:
 +      * s/freebsd.h:
 +      * s/darwin.h: Remove dead code.
 +
 +      * m/template.h:
 +      * m/sparc.h:
 +      * m/mips.h:
 +      * m/m68k.h:
 +      * m/iris4d.h:
 +      * m/intel386.h:
 +      * m/ibms390x.h:
 +      * m/ibms390.h:
 +      * m/ia64.h:
 +      * m/hp800.h:
 +      * m/arm.h:
 +      * m/amdx86-64.h: Remove dead code and references to unused
 +      and compiler defined symbols.
 +
 +      * unexmips.c:
 +      * unexelf.c: Remove references to desupported systems.
 +
 +      * m/powermac.h: Remove file, it is now identical to m/macppc.h.
 +
 +      * m/powermac.h: Remove boilerplate comments.
 +      (NO_REMAP): Remove unused definition.
 +
 +      * m/macppc.h (UNEXEC, NO_TERMIO): Don't define, the s/ files
 +      define them.
 +
 +2008-07-10  Kenichi Handa  <handa@m17n.org>
 +
 +      * xfont.c (xfont_open): Log the reason of failure.
 +
 +2008-07-09  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * fontset.c (fontset_get_font_group):
 +      * font.c (font_check_otf): Specify argument types.
 +
 +2008-07-09  Kenichi Handa  <handa@m17n.org>
 +
 +      * coding.c (detect_coding_utf_8): Set detect_info->found only when
 +      non-ASCII char is found.
 +
 +      * fontset.c (fontset_compare_rfontdef): Fix plus/minus.
 +      (reorder_font_vector): Change the arg preferred_family to font.
 +      Prefer the spec matching with font.
 +      (fontset_get_font_group): New function.
 +      (fontset_find_font): Change the format of an element of a realized
 +      fontset.  Use fontset_get_font_group.
 +      (fontset_font): Try the current fontset, the default fontset, the
 +      fallbacks of the current fontset, and the fallbacks of the default
 +      fontset in this order.
 +      (face_for_char): Delete the shortcut to use the current font.
 +      (fontset_from_font): Don't set fonts for Latin in the fontset.
 +
 +      * font.h (font_make_object, font_match_p): Adjust prototypes.
 +
 +      * ftfont.h [FT_BDF_H]: Include FT_BDF_H.
 +
 +      * font.c (font_make_object): New arg entity and pixelsize.
 +      (font_check_otf_features, font_check_otf): New functions.
 +      (font_match_p): Check :lang, :script, and :otf properties.
 +
 +      * xfont.c (xfont_open): Adjust it for the change of
 +      font_make_object.
 +      (xfont_text_extents): Fix initial setting of metrics.
 +
 +      * ftfont.c (struct ftfont_info): New member index, delete member
 +      fc_charset_idx.  Make the member order compatible with struct
 +      xftfont_info.
 +      (fc_charset_table): Change charset names to registry names.
 +      (ftfont_pattern_entity): Delete the args registry and
 +      fc_charset_idx.  Change the value of :font-entity property
 +      to (FONTNAME . INDEX).  Always set :registry property to
 +      `iso10646-1'.
 +      (struct ftfont_cache_data): New struct.
 +      (ftfont_lookup_cache): New arg for_face.
 +      (ftfont_get_fc_charset, ftfont_get_otf): New functions.
 +      (ftfont_driver): Set the member otf_capability.
 +      (ftfont_get_charset): Adjust it for the change of
 +      fc_charset_table.
 +      (OTF_TAG_SYM): New macro.
 +      (ftfont_spec_pattern): Delete the arg fc_charset_idx.  Adjust it
 +      for the change of fc_charset_table.
 +      (ftfont_list): Adjust it for the change of ftfont_spec_pattern and
 +      ftfont_pattern_entity.  Add FC_INDEX to objset.
 +      (ftfont_match): Adjust it for the change of ftfont_spec_pattern
 +      and ftfont_pattern_entity.
 +      (ftfont_open): Adjust it for the change of ftfont_lookup_cache,
 +      font_make_object, struct ftfont_info.
 +      (ftfont_has_char): Use ftfont_get_fc_charset.
 +      (ftfont_otf_features, ftfont_otf_capability): New functions.
 +      (ftfont_shape): Use ftfont_get_otf.
 +      (ftfont_text_extents): Fix initial setting of metrics.
 +
 +      * xftfont.c (struct xftfont_info): New member ft_size.  Make the
 +      member order compatible with struct ftfont_info.
 +      (xftfont_open): Add FC_CHARSET to the pattern.
 +      Set xftfont_info->ft_size.  Don't unlock the face.  Check BDF
 +      properties if appropriate.
 +      (xftfont_close): Unlock the face.
 +      (xftfont_anchor_point, xftfont_shape): Deleted.
 +      (syms_of_xftfont): Don't set members anchor_point and shape of
 +      xftfont_driver.
 +
 +      * w32uniscribe.c (uniscribe_open): Adjust it for the change of
 +      font_make_object.
 +
 +      * w32font.c (w32font_open): Adjust it for the change of
 +      font_make_object.
 +      (w32font_open_internal): Don't set properties of font_object here.
 +
 +2008-07-08  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * macfns.c (x_create_tip_frame):
 +      * w32fns.c (x_create_tip_frame):
 +      * xfns.c (x_create_tip_frame): Pass parameter argument to
 +      face-set-after-frame-default.
 +
 +      * xfaces.c (Finternal_merge_in_global_face): Save merged
 +      attributes for the default face back into the face vector.
 +
 +2008-07-08  Andreas Schwab  <schwab@suse.de>
 +
 +      * fontset.h: Declare fontset_from_font.  Don't declare
 +      new_fontset_from_font and fontset_from_font_name.
 +      * xterm.c: Include "fontset.h".
 +      * Makefile.in (xterm.o): Update dependencies.
 +
 +2008-07-08  Glenn Morris  <rgm@gnu.org>
 +
 +      * m/sparc.h: Define __sparc__ rather than sparc.  (Bug#507.)
 +      * alloc.c, ecrt0.c: Use __sparc__ rather than sparc.
 +
 +2008-07-07  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * frame.c (Qinhibit_face_set_after_frame_default): Var deleted.
 +      (x_set_frame_parameters): Don't bind it.
 +
 +2008-07-07  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * w32fns.c (map_w32_filename): Declare extern.
 +
 +2008-07-07  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32term.c (WS_EX_LAYERED): Define if not already.
 +
 +2008-07-06  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * xfaces.c (set_font_frame_param): Don't try to set the font
 +      parameter if it is still unspecified in the lface.
 +
 +2008-07-05  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * xfaces.c (Finternal_merge_in_global_face): Don't realize default
 +      face if it didn't already exist.
 +
 +      * xdisp.c (try_window_id): Give up if word-wrapping is on.
 +
 +2008-07-05  Andreas Schwab  <schwab@suse.de>
 +
 +      * xdisp.c (get_it_property): Move out of HAVE_WINDOW_SYSTEM section.
 +
 +2008-07-05  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * xdisp.c (IT_OVERFLOW_NEWLINE_INTO_FRINGE): Turn it off if
 +      word-wrapping.
 +      (IT_DISPLAYING_WHITESPACE): New macro.
 +      (move_it_in_display_line_to): Handle MOVE_TO_X requests properly
 +      when word-wrapping.  Simplify word-wrapping logic.  Use correct
 +      pixel positions when saving copies of the iterator.
 +      (display_line): Use proper wrap point if the last character on a
 +      line was preceded by whitespace.
 +
 +2008-07-04  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * Makefile.in (${etc}DOC): Depend on ${lisp} rather than ${shortlisp}.
 +
 +2008-07-04  Kenichi Handa  <handa@m17n.org>
 +
 +      * fns.c (Fstring_to_unibyte): Delete the arg ACCEPT-LATIN-1.
 +
 +      * lisp.h: EXFUN adjusted for the change of Fstring_to_unibyte.
 +
 +2008-07-02  Jason Rumney  <jasonr@gnu.org>
 +
 +      * xfns.c (syms_of_xfns): Only define x-select-font when both
 +      HAVE_FREETYPE and USE_GTK.
 +
 +      * xdisp.c (next_element_from_display_vector): Move assignment out
 +      of if statement.
 +
 +2008-07-02  Toru Tsuneyoshi  <t_tuneyosi@hotmail.com>
 +
 +      * lisp.h (Qdelete_file, Qdelete_directory): Declare extern.
 +
 +      * fileio.c (delete_by_moving_to_trash, Qmove_file_to_trash): New vars.
 +      (syms_of_fileio): Initialize and export them.
 +      (Fdelete_directory, Fdelete_file): Optionally delete via trash.
 +
 +      * w32fns.c (FOF_NO_CONNECTED_ELEMENTS): Define if not already.
 +      (Fsystem_move_file_to_trash): New function.
 +      (syms_of_w32fns): Export it to lisp.
 +
 +2008-07-01  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32font.c (w32font_text_extents): Don't count overhang as part
 +      of width.
 +
 +2008-06-30  Miles Bader  <miles@gnu.org>
 +
 +      * dispextern.h (struct glyph, struct it, struct iterator_stack_entry):
 +      Add `avoid_cursor_p' field.
 +
 +      * xdisp.c (push_it, pop_it): Save/restore avoid_cursor_p field.
 +      (set_cursor_from_row): Skip glyphs with avoid_cursor_p set.
 +      (append_glyph, append_composite_glyph, produce_image_glyph)
 +      (append_stretch_glyph): Initialize avoid_cursor_p.
 +      (get_it_property): Rename from `get_line_height_property'.
 +      (x_produce_glyphs): Use get_it_property.
 +      (handle_line_prefix, push_display_prop): New functions.
 +      (display_line, move_it_in_display_line_to): Handle line/wrap prefixes.
 +      (Vwrap_prefix, Qwrap_prefix, Vline_prefix, Qline_prefix):
 +      New variables.
 +      (syms_of_xdisp): Initialize them.
 +
 +2008-06-30  Kenichi Handa  <handa@m17n.org>
 +
 +      * xftfont.c (xftfont_open): Don't call FcConfigSubstitute and
 +      XftDefaultSubstitute (they are called in XftFontMatch).
 +      (xftfont_open): Fix args to ftfont_font_format.
 +
 +      * ftfont.c (fc_charset_table): New member lang.
 +      (ftfont_resolve_generic_family): New arg pattern.
 +      (ftfont_spec_pattern): Check fc_charset_table[]->lang.
 +      (ftfont_list): Call ftfont_resolve_generic_family with `pattern'.
 +      (ftfont_open): Fix args to ftfont_font_format.
 +      (ftfont_font_format): New arg filename.
 +
 +2008-06-30  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * xfaces.c (Finternal_merge_in_global_face): If default face was
 +      modified, realize it again.  Update the font face attribute.
 +
 +2008-06-29  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32term.c (x_set_frame_alpha): Fix logic.
 +
 +2008-06-29  Kenichi Handa  <handa@m17n.org>
 +
 +      * fontset.c (Finternal_char_font): Return font-object instead of
 +      font-name.
 +
 +      * composite.c (get_composition_id): Fix the width calculation for TAB.
 +
 +2008-06-29  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * indent.c (Fvertical_motion): Properly handle float column arg.
 +
 +2008-06-28  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32term.c (pfnGetFontUnicodeRanges): Remove unused function pointer.
 +      (pfnSetLayeredWindowAttributes): New function pointer.
 +      (w32_initialize): Initialize it when supported.
 +      (x_set_frame_alpha): New function.
 +
 +      * w32fns.c (Fx_create_frame): Initialize frame parameter `alpha'.
 +      (w32_frame_parm_handlers): Set alpha handler.
 +
 +      * frame.c (x_set_alpha) [HAVE_NTGUI]: Call x_set_frame_alpha.
 +
 +2008-06-27  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32fns.c (x_to_w32_font, w32_to_x_font, x_to_w32_weight)
 +      (w32_to_x_weight, w32_to_all_x_charsets): Remove obsolete functions.
 +      (w32_to_x_charset, x_to_w32_charset)
 +      (Qw32_charset_ansi, Qw32_charset_symbol, Qw32_charset_default)
 +      (Qw32_charset_shiftjis, Qw32_charset_hangeul, Qw32_charset_johab)
 +      (Qw32_charset_chinesebig5, Qw32_charset_gb2312, Qw32_charset_oem)
 +      (Qw32_charset_easteurope, Qw32_charset_turkish, Qw32_charset_baltic)
 +      (Qw32_charset_russian, Qw32_charset_arabic, Qw32_charset_greek)
 +      (Qw32_charset_hebrew, Qw32_charset_vietnamese, Qw32_charset_thai)
 +      (Qw32_charset_mac, Vw32_charset_info_alist): Move to w32font.c.
 +      (Qw32_charset_unicode): Remove.
 +      (syms_of_w32fns): Update for above changes.
 +
 +      * w32font.c (w32_to_x_charset, x_to_w32_charset)
 +      (Qw32_charset_ansi, Qw32_charset_symbol, Qw32_charset_default)
 +      (Qw32_charset_shiftjis, Qw32_charset_hangeul, Qw32_charset_johab)
 +      (Qw32_charset_chinesebig5, Qw32_charset_gb2312, Qw32_charset_oem)
 +      (Qw32_charset_easteurope, Qw32_charset_turkish, Qw32_charset_baltic)
 +      (Qw32_charset_russian, Qw32_charset_arabic, Qw32_charset_greek)
 +      (Qw32_charset_hebrew, Qw32_charset_vietnamese, Qw32_charset_thai)
 +      (Qw32_charset_mac, Vw32_charset_info_alist): Move from w32fns.c.
 +      (syms_of_w32font): Update for above changes.
 +
 +2008-06-27  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * s/usg5-4.h: Fix previous change: keep the correct branch of a
 +      removed #if.
 +      (USG_SHARED_LIBRARIES): Remove duplicate definition.
 +
 +2008-06-26  Juanma Barranquero  <lekktu@gmail.com>
 +            Eli Zaretskii  <eliz@gnu.org>
 +
 +      * makefile.w32-in (LOCAL_FLAGS):
 +      Don't include WINDOWSNT, DOS_NT and _UCHAR_T.
 +
 +      * sysdep.c (_spawnlp, _getpid):
 +      Declare with explicit _cdecl instead of _CRTAPI1.
 +
 +      * editfns.c (Fget_internal_run_time):
 +      Check for WINDOWSNT with #ifdef, not #if.
 +
 +2008-06-26  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32font.h (FONT_HANDLE, FONT_TEXTMETRIC): New macros.
 +
 +      * w32term.c (x_draw_glyph_string_foreground)
 +      (x_draw_composite_glyph_string_foreground): Sync with xterm.c.
 +      Use FONT_HANDLE macro.
 +      (x_draw_glyph_string): Use FONT_TEXTMETRIC macro.
 +
 +      * w32uniscribe.c (uniscribe_otf_capability, uniscribe_shape)
 +      (uniscribe_encode_char): Use FONT_HANDLE macro.
 +
 +      * w32font.c (Fx_select_font): Use FONT_HANDLE macro.
 +      (w32font_text_extents): Use precast w32_font.
 +      (w32font_close): Free cached metrics.
 +      (w32font_open_internal): Allocate space for name on stack.
 +
 +2008-06-26  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * xdisp.c (extend_face_to_end_of_line): Fix last change.
 +
 +2008-06-26  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32term.h (FONT_AVG_WIDTH): Remove obsolete macro.
 +      (CP_8BIT, CP_UNICODE, CP_UNKNOWN): Remove obsolete constants.
 +
 +2008-06-26  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * Makefile.in (SOME_MACHINE_OBJECTS): Remove w32bdf.o.
 +
 +2008-06-26  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32bdf.c, w32bdf.h: Remove obsolete files.
 +
 +      * makefile.w32-in: Remove refs to w32bdf.h and w32bdf.c.
 +
 +      * w32gui.h: Don't include w32bdf.h.
 +      (XCharStruct, enum w32_char_font_type, W32FontStruct):
 +      Remove obsolete font support.
 +
 +      * w32font.h (struct w32font_info): Remove compat_w32_font.
 +      Add hfont member.
 +      (FONT_COMPAT): Remove obsolete macro.
 +
 +      * w32font.c (w32font_close): Remove compat code.  Delete hfont member.
 +      (w32font_encode_char, w32font_text_extents): Use new hfont member.
 +      (w32font_open_internal): Remove compat code.  Set new hfont member.
 +      (Fx_select_font): Use new hfont member.
 +
 +      * w32uniscribe.c (uniscribe_otf_capability, uniscribe_shape)
 +      (uniscribe_encode_char): Use new hfont member.
 +
 +      * w32term.c (x_draw_glyph_string_foreground)
 +      (x_draw_composite_glyph_string_foreground): Use new hfont member.
 +      (x_draw_glyph_string): Use metrics in w32font_info.
 +
 +2008-06-26  Kenichi Handa  <handa@m17n.org>
 +
 +      * xdisp.c (handle_auto_composed_prop): Fix for the terminal case.
 +
 +2008-06-26  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * unexnext.c:
 +      * m/ews4800.h:
 +      * m/hp9000s300.h:
 +      * m/ibm370aix.h:
 +      * m/mips-siemens.h:
 +      * m/ncr386.h:
 +      * m/next.h:
 +      * m/pmax.h:
 +      * m/powerpcle.h:
 +      * m/tandem-s2.h:
 +      * s/386bsd.h:
 +      * s/bsd386.h:
 +      * s/bsd4-1.h:
 +      * s/bsd4-2.h:
 +      * s/bsdos2-1.h:
 +      * s/bsdos2.h:
 +      * s/bsdos3.h:
 +      * s/bsdos4.h:
 +      * s/nextstep.h:
 +      * s/ultrix4-3.h:
 +      * s/usg5-0.h:
 +      * s/usg5-2-2.h:
 +      * s/usg5-2.h:
 +      * s/usg5-4-3.h:
 +      * s/ux4800.h:
 +      * s/uxpds.h:
 +      * s/uxpv.h: Remove support for obsolete systems.
 +      * s/hpux.h, s/hpux10.h, s/hpux8.h, s/hpux9.h, s/hpux9shr.h:
 +      Remove, insert contents in s/hpux10-20.h.
 +      * s/aix3-1.h, s/aix3-2-5.h, s/aix3-2.h, s/aix4-1.h, s/aix4.h:
 +      Remove, insert contents in s/aix4-2.h.
 +      * s/usg5-3.h: Remove, insert contents in s/usg5-4.h.
 +      * s/bsd4-3.h: Rename to ...
 +      * s/bsd-common.h: ... this.
 +      * data.c:
 +      * doc.c:
 +      * ecrt0.c:
 +      * emacs.c:
 +      * fileio.c:
 +      * floatfns.c:
 +      * keyboard.c:
 +      * mem-limits.h:
 +      * print.c:
 +      * process.c:
 +      * sysdep.c:
 +      * syssignal.h:
 +      * systty.h:
 +      * syswait.h:
 +      * term.c:
 +      * unexec.c:
 +      * unexelf.c:
 +      * unexhp9k800.c:
 +      * m/hp800.h:
 +      * m/ibmrs6000.h:
 +      * m/mips.h:
 +      * m/vax.h:
 +      * s/darwin.h:
 +      * s/freebsd.h:
 +      * s/gnu.h:
 +      * s/ms-w32.h:
 +      * s/msdos.h:
 +      * s/netbsd.h:
 +      * s/template.h: Remove references to obsolete variables.
 +
 +      * Makefile.in: Add dependencies for all unexec files.
 +      (admindir): Remove unused variable.
 +      (UNEXEC_SRC): Remove references.
 +
 +2008-06-25  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * xfns.c (x_default_font_parameter): If Xft is available, first
 +      try Monospace-12 for the default font.
 +
 +2008-06-25  Jason Rumney  <jasonr@gnu.org>
 +
 +      * xdisp.c (get_glyph_face_and_encoding): Encode invalid glyphs as 0.
 +
 +2008-06-25  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * bytecode.c (Fbyte_code): Disable debugging code that doesn't compile.
 +
 +      * buffer.c (syms_of_buffer): Remove default-word-wrap.
 +
 +2008-06-25  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * xdisp.c (syms_of_xdisp) <truncate-partial-width-windows>: Doc fix.
 +      <scroll-conservatively>: Fix typo in docstring.
 +
 +      * xselect.c (Fx_send_client_event): Doc fix.
 +
 +2008-06-25  Kenichi Handa  <handa@m17n.org>
 +
 +      * xfaces.c (Fx_list_fonts): Call Flist_fonts with the arg PREFER.
 +
 +      * font.c (font_parse_fcname): Remove unused variables.
 +      (font_sort_entites): Delete the arg SPEC.  Caller changed.
 +      Fix for the case of ! best_only.
 +      (font_delete_unmatched): Check DPI and AVGWIDTH too.
 +
 +      * lisp.h (Fstring_to_unibyte): EXFUN it.
 +
 +      * character.h (str_to_unibyte): Extern it.
 +
 +      * character.c (str_to_unibyte): New function.
 +
 +      * fns.c (Fstring_to_unibyte): New function.
 +      (syms_of_fns): Defsubr it.
 +
 +2008-06-24  Kenichi Handa  <handa@m17n.org>
 +
 +      * font.c (font_score): Even if the PIXEL_SIZE is the same, check
 +      DPI too.
 +      (font_sort_entites): Setup prefer_prop[FONT_DPI_INDEX] too.
 +
 +2008-06-24  Andreas Schwab  <schwab@suse.de>
 +
 +      * Makefile.in (${lispsource}loaddefs.el): Rename from
 +      ../lisp/loaddefs.el.
 +      (bootstrap-clean): Do what distclean does but don't remove
 +      Makefile.
 +      (distclean): Depend on bootstrap-clean and remove Makefile.
 +
 +2008-06-24  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * buffer.h (struct buffer): New member word_wrap.
 +
 +      * buffer.c (syms_of_buffer): New variables default-word-wrap and
 +      word-wrap.
 +      (init_buffer_once): Initialize them.
 +
 +      * dispextern.h (struct it): Replace bool truncate_lines_p with a
 +      line_wrap enum possessing three possible values.
 +
 +      * termopts.h: Replace truncate_partial_width_windows with
 +      Vtruncate_partial_width_windows.
 +
 +      * dispnew.c (direct_output_for_insert): Avoid direct output when
 +      inserting a space with word wrap on.
 +
 +      * indent.c (compute_motion): Obey integer values of
 +      truncate-partial-width-windows.
 +
 +      * xdisp.c (Vtruncate_partial_width_windows): New Lisp_Object,
 +      replacing truncate_partial_width_windows.
 +      (init_iterator): If Vtruncate_partial_width_windows is an integer,
 +      truncate only if the window width is below that integer.
 +      (start_display, resize_mini_window, produce_stretch_glyph)
 +      (display_string, move_it_in_display_line_to): Use line_wrap.
 +      (back_to_previous_visible_line_start, reseat_1):
 +      Reset string_from_display_prop_p.
 +      (display_line): Extend default face to end of line when wrapping.
 +
 +2008-06-24  Kim F. Storm  <storm@cua.dk>
 +
 +      * xdisp.c (display_line, move_it_in_display_line_to): Add ability
 +      to wrap continued lines at word boundaries.
 +
 +2008-06-24  Jason Rumney  <jasonr@gnu.org>
 +
 +      * font.c (Ffont_face_attributes): Multiply pixel size before point
 +      conversion to avoid multiplying rounding error.
 +
 +2008-06-23  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32term.c (x_draw_glyph_string_background)
 +      (x_draw_glyph_string): Remove old bdf font code.
 +
 +      * w32term.h (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): Remove.
 +
 +2008-06-22  Kenichi Handa  <handa@m17n.org>
 +
 +      * font.c (font_find_for_lface): Try the adstyle specified in
 +      the property of LFACE_FONT of LFACE (if any).
 +
 +2008-06-21  Seiji Zenitani  <zenitani@mac.com>
 +            Ryo Yoshitake  <ryo@shiftmode.net>
 +
 +      * xterm.c (x_set_frame_alpha): Add x_catch_errors for bug#437.
 +
 +2008-06-22  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * Makefile.in (${lisp} ${SOME_MACHINE_LISP}, ../lisp/loaddefs.el):
 +      Use $(BOOTSTRAPEMACS) rather than witness-emacs.
 +      (bootstrap-emacs${EXEEXT}): Merge witness-emacs into it.
 +      (witness-emacs): Remove.
 +      (lisp, shortlisp): Move loaddefs.el earlier.
 +      (mostlyclean): Forget about witness-emacs.
 +
 +2008-06-22  Glenn Morris  <rgm@gnu.org>
 +
 +      * Makefile.in (witness-emacs): Depend on temacs${EXEEXT}.
 +      (.SUFFIXES): Declare .el.elc as a suffix rule, for non-GNU makes.
 +
 +2008-06-21  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * Makefile.in (PRECOMP): Remove.
 +      (${lisp} ${SOME_MACHINE_LISP}): Remove pseudo dependency on PRECOMP.
 +      (witness-emacs): Run `compile-first'.
 +      (.el.elc): Use the new compile-onefile target.
 +
 +2008-06-21  Kenichi Handa  <handa@m17n.org>
 +
 +      * xftfont.c (xftfont_open): Handle QCembolden only when
 +      FC_EMBOLDEN is defined.
 +
 +2008-06-21  Andreas Schwab  <schwab@suse.de>
 +
 +      * Makefile.in (witness-emacs): Use ../lisp, not $(lispsource).
 +      (.el.elc): Likewise.
 +
 +2008-06-21  Miles Bader  <miles@gnu.org>
 +
 +      * Makefile.in (../lisp/loaddefs.el): Build autoloads in the lisp
 +      build dir, not the lisp source dir.
 +
 +2008-06-21  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * Makefile.in (emacs${EXEEXT}): Link the new emacs to bootstrap-emacs.
 +      (bootstrapclean): Remove.
 +      (.el.elc): New rule.
 +      (PRECOMP): New var.
 +      (../lisp/subdirs.el): Remove.
 +      (bootstrap-emacs${EXEEXT}): Remove subdirs.el and charpro.el dependency.
 +      (witness-emacs): New target.
 +      (mostlyclean): Remove witness-emacs as well.
 +      (../lisp/loaddefs.el, ${lisp} ${SOME_MACHINE_LISP}):
 +      Add witness-emacs dependency.
 +
 +2008-06-20  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * font.c (Ffont_face_attributes): Omit key-attribute pairs not
 +      defined by the font.
 +
 +2008-06-20  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * Makefile.in (emacs${EXEEXT}): Depend on the machine-specific files.
 +      (bootstrap-clean): New target that keeps TAGS around.
 +      (../lisp/subdirs.el, ../lisp/loaddefs.el): New targets.
 +      (bootstrap-emacs${EXEEXT}): Depend on subdirs.el.
 +
 +2008-06-20  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32fns.c, w32term.c, w32term.h, w32gui.h [OLD_FONT]:
 +      Remove obsolete font code.
 +
 +      * w32font.c (font_matches_spec): Use csb bitfield from font signature
 +      to determine language support.
 +
 +2008-06-20  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * sysdep.c (cfsetspeed): New fun extracted from the code.
 +      (cfmakeraw): Move before first use.
 +
 +2008-06-20  Angelo Graziosi  <angelo.graziosi@alice.it>  (tiny change)
 +
 +      * sysdep.c (cfmakeraw): Provide fallback implementation.
 +      (serial_configure): Provide fallback implementation of cfsetspeed.
 +
 +2008-06-20  Kenichi Handa  <handa@m17n.org>
 +
 +      * xftfont.c (xftfont_open): Add FOUNDRY, SPACING, DPI, SCALABLE to
 +      the pattern.
 +
 +      * fontset.c (fontset_from_font): Copy font_spec before changing
 +      the elements.
 +
 +      * xfns.c (x_default_font_parameter): Try "monospace-12" too.
 +
 +2008-06-20  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * w32fns.c, xfns.c (x_default_font_parameter): Only set `font-param'
 +      for explicit `font' parameters.
 +
 +      * frame.c (x_set_font): Remove unexplained call to fix inf-recursion.
 +
 +2008-06-19  Kenichi Handa  <handa@m17n.org>
 +
 +      * frame.c: Include <ctype.h>.
 +      (x_set_font_backend): Allow spacing characters in the X resource
 +      for FontBackend.
 +
 +2008-06-19  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * w32fns.c, xfns.c (Qfont_param): New var.
 +      (syms_of_w32fns): Initialize it.
 +      (x_default_font_parameter): Record explicit `font' into
 +      `font-parameter'.
 +
 +2008-06-18  Kenichi Handa  <handa@m17n.org>
 +
 +      * font.c (font_parse_xlfd): Fix previous change.
 +      (font_parse_fcname): Don't use :fc-unknown-spec.
 +      (FRAME_X_DISPLAY_INFO): Be sure to have at least 1 pixel height.
 +      (Fcopy_font_spec): Preserve the order of elements in FONT_EXTRA.
 +      (font_add_log): Prepend the driver name to the resulting fonts.
 +
 +      * ftfont.c (ftfont_pattern_entity): New arg extra.  Caller changed.
 +      (ftfont_spec_pattern): Don't check QCfc_unknown_spec and QCname.
 +      (ftfont_list) [FC_FONTFORMAT]: Include FC_FONTFORMAT in objset.
 +
 +      * xftfont.c (QChinting , QCautohint, QChintstyle, QCrgba)
 +      (QCembolden): New variables.
 +      (syms_of_xftfont): DEFSYM them.
 +      (xftfont_open): Call XftFontMatch.  Don't trust the result of
 +      XftTextExtents8 if the pixel_size is less than 5.
 +
 +2008-06-18  Andreas Schwab  <schwab@suse.de>
 +
 +      * font.c (Ffont_face_attributes): Only define if HAVE_WINDOW_SYSTEM.
 +      (syms_of_font): Only defsubr if HAVE_WINDOW_SYSTEM.
 +
 +2008-06-18  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32font.c (w32font_list, w32font_match): Add logging.
 +
 +      * w32uniscribe.c (uniscribe_list, uniscribe_match): Add logging.
 +
 +2008-06-17  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * font.c (font_parse_fcname): Store divider characters for
 +      unknown-spec list.  For known key symbols, intern using correct
 +      symbol name.
 +
 +2008-06-17  Kenichi Handa  <handa@m17n.org>
 +
 +      * xfaces.c (realize_default_face): If the frame is not on window
 +      system, set the fontset of face to nil.
 +
 +2008-06-17  Naohiro Aota  <nao.aota@gmail.com>  (tiny change)
 +
 +      * fontset.c (fontset_pattern_regexp): Escape some reg-expr characters.
 +
 +2008-06-16  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * dispextern.h (lookup_non_ascii_face, split_font_name_into_vector)
 +      (build_font_name_from_vector): Delete externs.
 +
 +      * xfaces.c (struct font_name): Don't declare.
 +
 +2008-06-16  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * font.c (font_unparse_gtkname): Use EQ to compare Lisp_Objects.
 +
 +2008-06-16  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * font.c (font_parse_fcname): Fix handling of unknown-spec string.
 +
 +2008-06-16  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * font.c (Ffont_spec): Fix usage in docstring.
 +      (Ffont_face_attributes): Doc fix.
 +
 +2008-06-16  Andreas Schwab  <schwab@suse.de>
 +
 +      * font.c (Ffont_face_attributes): Fix definition.
 +
 +2008-06-16  Jason Rumney  <jasonr@gnu.org>
 +
 +      * font.h (font_style_symbolic_from_value): Remove.
 +
 +      * font.c (font_style_symbolic_from_value): Remove.
 +      (font_style_symbolic): Revert to pre 2008-06-13 version.
 +
 +      * w32font.c (w32_to_fc_weight): New function.
 +      (w32font_full_name, logfont_to_fcname): Use it.
 +
 +2008-06-16  Kenichi Handa  <handa@m17n.org>
 +
 +      * font.c (font_check_object): Delete it.
 +      (font_clear_cache): Check if a font-object is alive.
 +      (font_open_entity): Likewise.  Set FONT_OBJLST_INDEX of a
 +      font-object to nil.
 +      (font_close_object): Don't check FONT_CLOSE_OBJECT.
 +      (font_at): Don't call font_check_object.
 +      (Ffont_get): Return a symbol for :weight, :slant, and :width.
 +
 +2008-06-16  Katsumi Yamaoka  <yamaoka@jpl.org>
 +
 +      * puresize.h (BASE_PURESIZE): Increase to 1230000.
 +
 +2008-06-16  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * font.c (font_parse_fcname): Correctly parse KEY=VAL values.
 +
 +2008-06-15  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * font.c (font_parse_fcname): Only one decimal point.
 +      (font_unparse_fcname): Handle data in family and foundry indices
 +      as symbols, not strings.
 +      (font_unparse_gtkname, Ffont_face_attributes): New functions.
 +
 +      * xfns.c (Fx_select_font): Give GTK font dialog the default font name.
 +
 +      * font.h (font_unparse_gtkname): Add prototype.
 +
 +2008-06-15  Naohiro Aota  <nao.aota@gmail.com>  (tiny change)
 +
 +      * fontset.c (fontset_pattern_regexp): Escape `+' characters in pattern.
 +
 +2008-06-15  Andreas Schwab  <schwab@suse.de>
 +
 +      * font.c (font_update_drivers): Fix crash when no drivers match.
 +
 +2008-06-15  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * xfns.c (Fx_create_frame): internal-border-width default to 0 for Gtk.
 +      * gtkutil.c (xg_create_frame_widgets): Don't set internal_border_width.
 +
 +2008-06-14  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * xdisp.c (syms_of_xdisp): Default underline-minimum-offset to 1.
 +
 +2008-06-13  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * process.c (Fserial_process_configure, Fprocess_send_eof):
 +      Use EQ to compare Lisp_Objects.
 +
 +2008-06-13  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32fns.c (Fw32_select_font): Remove old font API function.
 +
 +      * w32font.c (logfont_to_fcname): New function.
 +      (Fx_select_font): New font dialog function compatible with
 +      GTK/fontconfig version.
 +
 +      * font.c (font_style_symbolic_from_value): New function.
 +      (font_style_symbolic): Use it.
 +
 +      * font.h (font_style_symbolic_from_value): Declare new function.
 +
 +2008-06-13  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * font.c (syms_of_font) <font-weight-table, font-slant-table>:
 +      <font-width-table>: Fix typos in docstrings.
 +
 +2008-06-13  Daniel Engeler  <engeler@gmail.com>
 +
 +      These changes add serial port access.
 +      * process.c: Add HAVE_SERIAL.
 +      (Fdelete_process, Fprocess_status, Fset_process_buffer)
 +      (Fset_process_filter, Fset_process_sentinel, Fprocess_contact)
 +      (list_processes_1, select_wrapper, Fstop_process)
 +      (Fcontinue_process, Fprocess_send_eof, kill_buffer_processes)
 +      (status_notify): Modify to handle serial processes.
 +      [HAVE_SERIAL] (Fserial_process_configure)
 +      [HAVE_SERIAL] (make_serial_process_unwind, Fmake_serial_process):
 +      New functions.
 +      * process.h (struct Lisp_Process): Add `type'.
 +      * sysdep.c [HAVE_TERMIOS] (serial_open, serial_configure):
 +      New functions.
 +      * w32.c (_sys_read_ahead, sys_read, sys_write): Modify to handle
 +      serial ports.
 +      (serial_open, serial_configure): New functions.
 +      * w32.h: Add FILE_SERIAL.
 +      (struct _child_process): Add ovl_read, ovl_write.
 +
 +2008-06-13  Kenichi Handa  <handa@m17n.org>
 +
 +      * dispextern.h (enum lface_attribute_index): New member
 +      LFACE_FOUNDRY_INDEX.
 +
 +      * font.c (font_score): Delete arg alternate_families.  Check only
 +      weight, slant, width, and size.  Ignore the difference of alias
 +      style symbols.
 +      (font_sort_entites): Adjust for the above change.  Reflect the
 +      order of font-driver to scores.
 +      (font_list_entities): Don't check alternate_familes here.
 +      (font_clear_prop): Handle foundry.
 +      (font_update_lface): Don't parse "foundry-family" form here.
 +      Handle FONT_FOUNDRY_INDEX.
 +      (font_find_for_lface): Likewise.  Handle alternate families here.
 +      If registry is nil, try iso8859-1 and ascii-0.
 +      (font_open_for_lface): Pay attention to size in ENTITY.
 +      (font_open_by_name): Simplify by calling font_load_for_lface.
 +      (free_font_driver_list): Delete it.
 +      (font_update_drivers): Preserve the order of backends.
 +      (syms_of_font): Setting of sort_shift_bits adjusted for the change
 +      of font_score and font_sort_entites.
 +      (font_update_sort_order): Likewise.
 +
 +      * xfaces.c (LFACE_FOUNDRY): New macro.
 +      (check_lface_attrs): Check foundry.
 +      (set_lface_from_font): Don't parse "FOUNDRY-FAMILY" form.
 +      (merge_face_vectors): Check foundry.
 +      (merge_face_ref): Likewise.
 +      (Finternal_set_lisp_face_attribute): Likewise.
 +      (x_update_menu_appearance): Likewise.
 +      (Finternal_get_lisp_face_attribute): Likewise.
 +      (lface_hash): Likewise.
 +      (lface_same_font_attributes_p): Likewise.
 +      (x_supports_face_attributes_p): Likewise.
 +      (tty_supports_face_attributes_p): Likewise.
 +      (Finternal_set_alternative_font_family_alist): Intern strings.
 +      (Finternal_set_alternative_font_registry_alist): Downcase strings.
 +      (realize_default_face): Set LFACE_FOUNDRY (lface).
 +
 +      * xfns.c (Fx_create_frame, x_create_tip_frame): Register X
 +      font-driver at first.
 +
 +      * ftfont.c (ftfont_font_format) [! FC_FONTFORMAT]: Declare "int len;".
 +
 +2008-06-12  Emanuele Giaquinta  <emanuele.giaquinta@gmail.com>  (tiny change)
 +
 +      * lread.c (Fload): Use xfree, not free on saved_doc_string.
 +
 +2008-06-12  Jim Meyering  <meyering@redhat.com>
 +
 +      Make unexec_free handle NULL the same way free does.
 +      * unexmacosx.c (unexec_free): Ignore a NULL argument.
 +
 +2008-06-12  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * character.h (CHAR_TO_BYTE_SAFE): New macro.
 +      * character.c (Fmultibyte_char_to_unibyte): Obey the docstring.
 +      * regex.c (RE_CHAR_TO_UNIBYTE): Use the new macro.
 +      (WEAK_ALIAS): Simplify.
 +      * syntax.c (skip_chars): Don't mark non-byte chars in the fastmap
 +      when searching a unibyte buffer.
 +
 +2008-06-12  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * xfns.c (Fx_select_font): Rename from x-font-dialog.
 +
 +2008-06-12  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * w32font.c: Include ctype.h.
 +
 +2008-06-11  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32font.c (w32font_encode_char): Detect missing glyphs that are
 +      misreported as space.
 +      (add_font_entity_to_list): Support unicode-bmp and unicode-sip
 +      as aliases for registry iso10646-1.
 +
 +2008-06-11  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * buffer.c (clone_per_buffer_values): Skip `name'.
 +
 +2008-06-11  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * font.c (font_parse_fcname): Fix last change; accept decimal
 +      points in font size.
 +
 +2008-06-10  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32uniscribe.c (add_opentype_font_name_to_list):
 +      Skip non unicode fonts.
 +
 +2008-06-10  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * xfns.c (Fx_font_dialog): New function.
 +
 +      * gtkutil.c (xg_dialog_response_cb): Rename from
 +      xg_file_response_callback.
 +      (pop_down_dialog): Rename from pop_down_file_dialog.
 +      (xg_get_file_name): Callers changed.
 +      (xg_get_font_name): New function.
 +
 +      * gtkutil.h (xg_get_font_name): Insert prototype.
 +
 +2008-06-10  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * xdisp.c (underline_minimum_offset): Rename from xterm.c's
 +      x_underline_minimum_display_offset.
 +      (syms_of_xdisp): Declare it here rather than in xterm.c.
 +      * dispextern.h (underline_minimum_offset): Declare it.
 +      * w32term.c (x_draw_glyph_string): Use it.
 +      * xterm.c (x_underline_minimum_display_offset): Move to xdisp.c.
 +      (syms_of_xterm): Don't declare it any more.
 +      (x_draw_glyph_string): Adjust to the new name.
 +
 +2008-06-10  David De La Harpe Golden  <david@harpegolden.net>
 +
 +      * xterm.c (x_underline_minimum_display_offset): New var.
 +      (x_draw_glyph_string): Use it.
 +      (syms_of_xterm): Declare it.
 +
 +2008-06-10  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * font.c (font_parse_fcname): Accept GTK-style font names too.
 +
 +2008-06-10  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * dired.c (file_name_completion): Don't return t if the match is exact
 +      but with different capitalization.
 +      * minibuf.c (Ftry_completion): Simplify.
 +
 +      * window.c (Vwindow_point_insertion_type): New var.
 +      (set_window_buffer): Use it.
 +      (syms_of_window): Init and export it to Lisp.
 +
 +2008-06-10  Kenichi Handa  <handa@m17n.org>
 +
 +      * font.h (font_intern_prop): Prototype adjusted.
 +
 +      * font.c (font_intern_prop): New arg force_symbol.
 +      (font_parse_xlfd, font_parse_fcname, font_parse_family_registry):
 +      Adjust for the change of font_intern_prop.
 +
 +      * ftfont.c (ftfont_pattern_entity):
 +      * w32font.c (add_font_name_to_list, w32_enumfont_pattern_entity)
 +      (w32_registry):
 +      * w32uniscribe.c (add_opentype_font_name_to_list): Adjust for
 +      the change of font_intern_prop.
 +
 +2008-06-09  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * w32menu.c (digest_single_submenu): Declare extern.
 +
 +2008-06-09  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32term.c (x_make_frame_visible): Use alternate restore flags.
 +
 +      * w32menu.c (Fx_popup_menu): Unwind protect while building menu.
 +      (parse_single_submenu): Remove.
 +      (digest_single_submenu): Remove.
 +      (syms_of_w32menu): Don't initialise variables that have moved
 +      to menu.c.
 +      (set_frame_menubar): Sync with version in xmenu.c.
 +      (w32_menu_show): Sync with xmenu_show in xmenu.c.
 +
 +      * menu.c (single_keymap_panes, push_menu_pane, push_menu_item):
 +      Make static again.
 +
 +2008-06-09  Jason Rumney  <jasonr@gnu.org>
 +
 +      Changes to w32 files related to the move of common menu code
 +      to menu.c on 2008-06-08 by Chong Yidong.
 +
 +      * menu.c [HAVE_NTGUI]: Include w32term.h, move widget related
 +      defs to w32gui.h.
 +      (single_keymap_panes, push_menu_item, push_menu_pane):
 +      Make globally visible.
 +
 +      * w32menu.c (enum button_type, widget_value, local_heap, local_alloc)
 +      (local_free, malloc_widget_value, free_widget_value)
 +      (MENU_ITEMS_ITEM_NAME, MENU_ITEMS_ITEM_ENABLE, MENU_ITEMS_ITEM_VALUE)
 +      (MENU_ITEMS_ITEM_EQUIV_KEY, MENU_ITEMS_ITEM_DEFINITION)
 +      (MENU_ITEMS_ITEM_TYPE, MENU_ITEMS_ITEM_SELECTED, MENU_ITEMS_ITEM_HELP)
 +      (MENU_ITEMS_ITEM_LENGTH, enum menu_item_idx): Remove defs.
 +      (menu_items, menu_items_allocated, menu_items_used)
 +      (menu_items_n_panes, menu_items_submenu_depth): Remove global vars.
 +      (init_menu_items, finish_menu_items, discard_menu_items)
 +      (grow_menu_items, push_submenu_start, push_submenu_end)
 +      (push_left_right_boundary, push_menu_pane, push_menu_item)
 +      (keymap_panes, single_keymap_panes, list_of_panes, list_of_items)
 +      (free_menubar_widget_tree_value, parse_single_submenu)
 +      (update_submenu_strings): Remove functions.
 +      (xmalloc_widget_value): Remove and declare extern.
 +
 +      * makefile.w32-in ($(SRC)/menu.$(O)): New target.
 +      (OBJ1): Build it.
 +
 +      * w32gui.h (widget_value, XtPointer, Boolean, enum button_type)
 +      (local_heap, local_alloc, local_free, malloc_widget_value)
 +      (free_widget_value): Define here.
 +
 +2008-06-09  Kenichi Handa  <handa@m17n.org>
 +
 +      * font.h (Qascii_0): Extern it.
 +
 +      * font.c (Qascii_0): New variable.
 +      (syms_of_font): DEFSYM it.
 +      (font_open_by_name): If the registry "iso8859-1" fails, try also
 +      "ascii-0".
 +
 +      * ftfont.c (ftfont_spec_pattern): Accept the registry `ascii-0'.
 +
 +2008-06-08  Kenichi Handa  <handa@m17n.org>
 +
 +      * .gdbinit (xfont): New command.
 +
 +2008-06-08  Andreas Schwab  <schwab@suse.de>
 +
 +      * menu.c [HAVE_X_WINDOWS]: Include "xterm.h".
 +      * Makefile.in (menu.o): Update dependencies.
 +
 +      * Makefile.in (obj): Always add menu.o.
 +      * emacs.c (main): Always call syms_of_menu.
 +      * keyboard.h: Remove extra #ifdef HAVE_X_WINDOW.
 +
 +2008-06-08  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * Makefile.in: Compile menu.c.
 +
 +      * lisp.h: Declare syms_of_menu.
 +
 +      * emacs.c (main): Call syms_of_menu.
 +
 +      * keyboard.h: Relocate platform-independent menu definitions from
 +      xmenu.c.
 +
 +      * menu.c: New file.  Relocate platform-independent menu
 +      definitions from xmenu.c.  Suggested by Adrian Robert.
 +
 +      * xmenu.c: Remove platform-independent menu definitions.
 +      (menu_items, menu_items_inuse, menu_items_allocated)
 +      (menu_items_used, menu_items_n_panes)
 +      (menu_items_submenu_depth): Move to keyboard.h.
 +      (init_menu_items, finish_menu_items, unuse_menu_items)
 +      (discard_menu_items, restore_menu_items, save_menu_items)
 +      (grow_menu_items, push_submenu_start, push_submenu_end)
 +      (push_left_right_boundary, push_menu_pane, push_menu_item)
 +      (keymap_panes, single_keymap_panes, single_menu_item)
 +      (list_of_panes, list_of_items, find_and_call_menu_selection)
 +      (xmalloc_widget_value, free_menubar_widget_value_tree)
 +      (parse_single_submenu, digest_single_submenu)
 +      (update_submenu_strings): Move to menu.c.
 +
 +2008-06-07  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * dispnew.c (Flast_nonminibuf_frame): Handle the NULL case.
 +
 +2008-06-06  Miles Bader  <miles@gnu.org>
 +
 +      * xdisp.c (x_produce_glyphs): Calculate tab width based on current
 +      face, not frame default.
 +
 +2008-06-05  Martin Rudalics  <rudalics@gmx.at>
 +
 +      * window.c (pop_up_windows, pop_up_frames)
 +      (display_buffer_reuse_frames, Vpop_up_frame_function)
 +      (Vdisplay_buffer_function, Veven_window_heights)
 +      (Vspecial_display_buffer_names, Vspecial_display_regexps)
 +      (Vspecial_display_function, Vsame_window_buffer_names)
 +      (Vsame_window_regexps, split_height_threshold)
 +      (Vsplit_window_preferred_function): Move those vars to window.el.
 +      (display_buffer_1, Fspecial_display_p, Fsame_window_p)
 +      (Fdisplay_buffer): Move those functions to window.el.
 +      (syms_of_window): Remove corresponding declarations.
 +      (display_buffer): New function.
 +      (temp_output_buffer_show, Fother_window_for_scrolling): Use it.
 +      * dispnew.c (Flast_nonminibuf_frame): New function.
 +      * buffer.c (Fpop_to_buffer): Move to window.el.
 +
 +2008-06-05  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * data.c (set_internal): Fix up call to let_shadows_buffer_binding_p.
 +
 +2008-06-05  Kenichi Handa  <handa@m17n.org>
 +
 +      * coding.c (detect_coding): Fix previous change.
 +      (detect_coding_system): Likewise.
 +
 +2008-06-05  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * character.h (MAKE_CHAR_MULTIBYTE): Check the arg is a (uni)byte.
 +
 +      * keymap.c (Vminibuffer_local_filename_must_match_map):
 +      Rename from Vminibuffer_local_must_match_filename_map.
 +      (syms_of_keymap):
 +      * minibuf.c (Fcompleting_read): Adjust accordingly.
 +      * commands.h: Rename declaration as well.
 +
 +2008-06-05  Kenichi Handa  <handa@m17n.org>
 +
 +      * font.c (Ffont_spec): Don't use font_parse_family_registry for
 +      family name.
 +      (Ffont_put): Likewise.
 +
 +      * fontset.c (fontset_find_font): Call font_open_for_lface with the
 +      current font-spec.
 +
 +      * xfont.c (xfont_list): Don't set registry to iso8859-1 even if it
 +      is unspecified.
 +
 +      * xfaces.c (realize_x_face): If the font-related face attributes
 +      are the same as those of default face, realize a new fontset from
 +      default->fontset.
 +      (Fx_family_fonts): Use font_parse_family_registry instead of Ffont_put.
 +
 +2008-06-05  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * xdisp.c (move_it_in_display_line_to): Improve the type of its args.
 +      (move_it_in_display_line): New wrapper.
 +
 +      * window.c (window_scroll_pixel_based_preserve_x)
 +      (window_scroll_preserve_hpos, window_scroll_preserve_vpos): New vars.
 +      (window_scroll_pixel_based, window_scroll_line_based):
 +      Use them to preserve column positions.
 +      (syms_of_window): Initialize them.
 +
 +      * indent.c (Fvertical_motion): Extend first arg to allow passing an
 +      (HPOS . VPOS) pair.
 +
 +      * dispextern.h (move_it_in_display_line): Declare.
 +
 +2008-06-05  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * window.c (Fwindow_parameter): Return VALUE, not (PARAMETER . VALUE).
 +      (Fwindow_parameters): Return copy of parameter alist.  Doc fix.
 +      (Fset_window_parameter): Return VALUE, not parameter alist.  Doc fix.
 +
 +2008-06-04  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * window.c (Fset_window_parameter): Doc fix.
 +      (Fwindow_parameters, Fwindow_parameter): Remove redundant check.
 +
 +2008-06-04  Joakim Verona  <joakim@verona.se>
 +
 +      * window.h (struct window): Add new member window_parameters.
 +
 +      * window.c (Fwindow_parameters, Fwindow_parameter)
 +      (Fset_window_parameter): New defuns.
 +      (syms_of_window): Defsubr the new defuns.
 +      (make_window): Initialize window_parameters to nil.
 +
 +2008-06-04  John Paul Wallington  <jpw@pobox.com>
 +
 +      * eval.c (Fdefmacro): Doc fix.
 +
 +2008-06-04  Kenichi Handa  <handa@m17n.org>
 +
 +      * coding.c (detect_coding): Fix handling of coding->head_ascii.
 +      Be sure to call setup_coding_system when we find a proper coding system.
 +      (detect_coding_system): Fix handling of coding->head_ascii.
 +
 +2008-06-03  Andreas Schwab  <schwab@suse.de>
 +
 +      * font.c (font_prop_validate_spacing): Fix last change.
 +
 +2008-06-03  Kenichi Handa  <handa@m17n.org>
 +
 +      * font.c (font_prop_validate_spacing): Handle uppercase symbols.
 +      (font_parse_fcname): Fix handling of unknown key.
 +
 +      * xfont.c (xfont_list): Try an alias.
 +
 +      * charset.c (char_charset): Return NULL if the arg charset_list is
 +      specified and C doesn't belong to any of them.
 +
 +2008-06-02  Chip Coldwell  <coldwell@redhat.com>
 +
 +      * font.c (font_pixel_size): Don't take cdr of an integer.
 +
 +2008-06-02  Jim Meyering  <meyering@redhat.com>
 +
 +      Make "xfree (NULL)" a no-op; remove useless if-before-xfree.
 +      * alloc.c (xfree): Return right away for a NULL arg.
 +      * lread.c (nosuffix): Remove now-useless if-before-xfree tests.
 +      * gtkutil.c (xg_gtk_scroll_destroy): Likewise.
 +      * mac.c (create_apple_event_from_event_ref): Likewise.
 +      (create_apple_event_from_drag_ref, cfstring_create_normalized):
 +      Likewise.
 +      * doprnt.c (doprnt1): Likewise.
 +      * frame.c (frame): Likewise.
 +      * keyboard.c (wipe_kboard): Likewise.
 +      * macterm.c (x_free_frame_resources, xlfdpat_destroy, XFreePixmap)
 +      (init_font_name_table, mac_unload_font, x_delete_display): Likewise.
 +      * term.c (tty_default_color_capabilities, maybe_fatal)
 +      (delete_tty): Likewise.
 +      * w16select.c (string): Likewise.
 +      * w32.c (w32_get_resource, SET_ENV_BUF_SIZE): Likewise.
 +      * w32bdf.c (w32_free_bdf_font): Likewise.
 +      * w32fns.c (w32_unload_font): Likewise.
 +      * w32font.c (w32font_close): Likewise.
 +      * window.c (size_window): Likewise.
 +      * xselect.c (receive_incremental_selection): Likewise.
 +      * xterm.c (x_free_frame_resources, x_delete_display): Likewise.
 +      * mactoolbox.c (create_apple_event_from_drag_ref): Likewise.
 +      * w32.c (stat): Likewise.
 +
 +      Remove useless if-before-free tests.
 +      * editfns.c (Fset_time_zone_rule): Likewise.
 +      * lread.c (nosuffix): Likewise.
 +      * ralloc.c (get_bloc): Likewise.
 +      * regex.c (reg_free): Likewise.
 +      * xftfont.c (xftfont_open, xftfont_close): Likewise.
 +      * xrdb.c (get_user_app, get_environ_db, x_load_resources): Likewise.
 +      * xsmfns.c (smc_save_yourself_CB): Likewise.
 +
 +2008-06-02  Kenichi Handa  <handa@m17n.org>
 +
 +      * font.c (font_find_for_lface): Handle float font size.
 +      (font_open_for_lface): Likewise.
 +
 +      * xfaces.c (x_supports_face_attributes_p): Check face->font before
 +      comparing the properties.
 +
 +2008-06-01  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32font.c (w32_enumfont_pattern_entity): Use requested registry.
 +      Treat iso10646-1 and Windows DEFAULT_CHARSET specially.
 +      Duplicate iso8859-1 fonts as iso10646-1 if no registry specified.
 +      Don't add empty script list.
 +      (w32_registry): Only map DEFAULT_CHARSET to iso10646-1 here.
 +
 +2008-06-01  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * Makefile.in (dot, dotdot): Remove, update users.
 +      ".." has been used elsewhere in the file for a long time.
 +      (LIBXT_STATIC): Remove conditional based on unused variable.
 +
 +2008-06-01  Miles Bader  <miles@gnu.org>
 +
 +      * xfaces.c (Vface_remapping_alist): New variable.
 +      (syms_of_xfaces): Initialize it.
 +      (enum named_merge_point_kind): New type.
 +      (struct named_merge_point): Add `named_merge_point_kind' field.
 +      (push_named_merge_point): Make cycle detection respect different
 +      named-merge-point kinds.
 +      (lface_from_face_name_no_resolve): Rename from `lface_from_face_name'.
 +      Remove face-name alias resolution.
 +      (lface_from_face_name): New definition using
 +      `lface_from_face_name_no_resolve'.
 +      (get_lface_attributes_no_remap): Rename from `get_lface_attributes'.
 +      Call lface_from_face_name_no_resolve instead of lface_from_face_name.
 +      (get_lface_attributes): New definition that layers face-remapping on
 +      top of get_lface_attributes_no_remap.  New arg `named_merge_points'.
 +      (lookup_basic_face): New function.
 +      (lookup_derived_face): Pass new last arg to `get_lface_attributes'.
 +      (realize_named_face): Call `get_lface_attributes_no_remap' instead of
 +      `get_lface_attributes'.
 +      (face_at_buffer_position): Use `lookup_basic_face' to lookup
 +      DEFAULT_FACE_ID if necessary.  When optimizing the default-face case,
 +      return default_face's face-id instead of the constant DEFAULT_FACE_ID.
 +
 +      * xdisp.c (init_iterator): Pass base_face_id through
 +      `lookup_basic_face' when we actually use it as a face-id.
 +      (handle_single_display_prop): Use `lookup_basic_face' to lookup
 +      DEFAULT_FACE_ID.
 +
 +      * fontset.c (Finternal_char_font): Use `lookup_basic_face' to
 +      lookup the initial face-id.
 +
 +      * dispextern.h (lookup_basic_face, Vface_remapping_alist): New decls.
 +
 +2008-06-01  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * textprop.c (syms_of_textprop) <text-property-default-nonsticky>:
 +      (Fremove_text_properties): Fix typos in docstrings.
 +
 +2008-05-31  Kenichi Handa  <handa@m17n.org>
 +
 +      * font.c (font_list_entities): Fix the car part of data to be
 +      stored in the cache.
 +
 +      * ftfont.c (ftfont_font_format): Don't use strcasestr.
 +
 +2008-05-30  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * chartab.c (Foptimize_char_table, optimize_sub_char_table):
 +      Add a `test' argument so another predicate than `equal' can be used.
 +      (map_sub_char_table): Use `eq' rather than `equal' to merge ranges.
 +      (map_char_table): Remove unused vars `c' and `i'.
 +      * lisp.h (Foptimize_char_table): Adjust declaration.
 +      * charset.c (Fclear_charset_maps): Adjust call to Foptimize_char_table.
 +
 +2008-05-30  Kenichi Handa  <handa@m17n.org>
 +
 +      * font.c (Ffont_info): Define only if HAVE_WINDOW_SYSTEM is defined.
 +      (syms_of_font): Defsubr Sfont_info only if HAVE_WINDOW_SYSTEM is
 +      defined.
 +
 +2008-05-30  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
 +      (Fmake_variable_frame_local): Disallow mixing buffer-local and
 +      frame-local settings for the same variable.
 +
 +2008-05-30  Kenichi Handa  <handa@m17n.org>
 +
 +      * fontset.c (Ffont_info): Move to font.c.
 +      (syms_of_fontset): Delete defsubr of Sfont_info.
 +
 +      * font.c (font_style_to_value, font_score): Delete casting of the
 +      args to xstcasecmp.
 +      (register_font_driver): Increment num_font_drivers only when
 +      registering the driver globally.
 +      (Ffont_info): Move from fontset.c.  Handle a font object too.
 +      (syms_of_font): Defsubr Sfont_info.
 +
 +2008-05-29  Kenichi Handa  <handa@m17n.org>
 +
 +      * coding.h (enum define_coding_utf8_arg_index): New enum.
 +      (enum coding_attr_index): Change coding_attr_utf_16_bom to
 +      coding_attr_utf_bom.
 +      (enum utf_bom_type): Rename from utf_16_bom_type.
 +      (struct utf_16_spec): Adjust for the above change.
 +      (struct coding_system): Add utf_8_bom in `spec' union.
 +
 +      * coding.c (CODING_UTF_8_BOM): New macro.
 +      (enum coding_category): Delete coding_category_utf_8, add
 +      coding_category_utf_8_auto, coding_category_utf_8_nosig, and
 +      coding_category_utf_8_sig.
 +      (CATEGORY_MASK_UTF_8): Delete it.
 +      (CATEGORY_MASK_UTF_8_AUTO, CATEGORY_MASK_UTF_8_NOSIG)
 +      (CATEGORY_MASK_UTF_8_SIG): New macros.
 +      (CATEGORY_MASK_ANY): Delete CATEGORY_MASK_UTF_8, add
 +      CATEGORY_MASK_UTF_8_AUTO, CATEGORY_MASK_UTF_8_NOSIG, and
 +      CATEGORY_MASK_UTF_8_SIG.
 +      (CATEGORY_MASK_UTF_8): New macro.
 +      (UTF_BOM, UTF_8_BOM_1, UTF_8_BOM_2, UTF_8_BOM_3): New macros.
 +      (detect_coding_utf_8): Check BOM.
 +      (decode_coding_utf_8, encode_coding_utf_8): Handle BOM.
 +      (decode_coding_utf_16): Adjust for the change of enum utf_bom_type.
 +      (encode_coding_utf_16): Likewise.
 +      (setup_coding_system): Likewise.  Set CODING_UTF_8_BOM (coding).
 +      (detect_coding, detect_coding_system): Handle utf-8-auto.
 +      (Fdefine_coding_system_internal): Handle `bom' property for utf-8.
 +      (syms_of_coding): Fix setting up of Vcoding_category_table.
 +
 +2008-05-29  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * process.c (Faccept_process_output): If `millisec' is non-nil,
 +      `seconds' default to 0.
 +      (wait_reading_process_output): Also return non-nil if we read output
 +      from a non-running process.
 +
 +2008-05-29  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32font.c (w32font_open_internal): Prefer truetype fonts unless
 +      `raster' specified.
 +      (add_font_entity_to_list): Allow non-opentype truetype fonts back
 +      in the uniscribe backend, but disallow any font that has no
 +      unicode subrange support.
 +
 +2008-05-29  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * xfaces.c (Fx_list_fonts, Finternal_copy_lisp_face):
 +      Fix typos in docstrings.
 +
 +2008-05-29  Kenichi Handa  <handa@m17n.org>
 +
 +      * xfaces.c (Fx_list_fonts): Make it return a list of font names.
 +      (Fx_family_fonts): Set frame correctly.
 +
 +2008-05-28  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32term.c (x_draw_glyph_string): Use clipmask if specified.
 +
 +2008-05-28  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * fileio.c (Fwrite_region): Delay the defaulting to beg&z to after
 +      calling build_annotations.
 +
 +2008-05-28  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * coding.c (Fdecode_coding_region, Fencode_coding_region)
 +      (Fencode_coding_string):
 +      (syms_of_coding) <coding-system-for-read, coding-system-for-write>:
 +      <latin-extra-code-table>: Fix typos in docstrings.
 +      (syms_of_coding) <coding-system-alist>: Doc fix.
 +      (syms_of_coding) <translation-table-for-input>: Reflow docstring.
 +
 +2008-05-28  Kenichi Handa  <handa@m17n.org>
 +
 +      * fontset.c (Ffont_info): Don't call font_close_object.
 +
 +      * font.c (font_parse_family_registry): Use Ffont_put to validate
 +      foundry and family.
 +      (font_delete_unmatched): Don't check spacing.
 +      (font_list_entities): Add spacing to the spec to list fonts.
 +
 +      * ftfont.c (ftfont_spec_pattern): Don't set FC_SPACING to pattern.
 +      (ftfont_list): Check spacing here.  Don't include FC_CHARSET in objset.
 +
 +      * coding.c (encode_coding_raw_text): Fix previous change.
 +      (encode_coding_object): When the dst_object is a buffer and is
 +      different from src_object, move gap to PT.
 +
 +2008-05-27  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * xterm.c (x_draw_glyph_string): If a clipmask is specified, use it.
 +
 +2008-05-27  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * coding.c (encode_coding_raw_text): Set coding->produced_char for
 +      all branches.  Compute it differently.
 +
 +      * xdisp.c [!HAVE_WINDOW_SYSTEM]: Include font.h for --without-x.
 +
 +2008-05-27  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * w32font.c (compute_metrics): Rewrite an "else { if () ... else ... }"
 +      into "else if () ... else ...".
 +
 +2008-05-27  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32font.c (w32font_open_internal): Determine if glyph indices
 +      are likely to work here.
 +
 +2008-05-27  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * xdisp.c (draw_glyphs): If mouse-highlighting is on, attempt to
 +      draw overlap glyphs with appropriate highlighting.
 +
 +2008-05-27  Kenichi Handa  <handa@m17n.org>
 +
 +      * xfont.c (xfont_open): Fix calculation of font->average_width.
 +
 +2008-05-27  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * casefiddle.c (casify_object): Try to guess better whether the
 +      argument is a byte or a char.
 +
 +2008-05-26  Andreas Schwab  <schwab@suse.de>
 +
 +      * xselect.c (x_reply_selection_request): Properly handle format == 32.
 +      Always send multiples of format size.
 +
 +      * xterm.c (x_set_frame_alpha): Fix type mismatch.
 +
 +2008-05-26  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32font.c (w32font_text_extents): Zero whole metrics struct first.
 +      (compute_metrics): Don't set failure if we just cleared the cache.
 +      (w32_weight_table): Remove unused variable.
 +      (w32_enumfont_pattern_entity): Use FONT_SPACING_CHARCELL for
 +      backwards compatibility.
 +
 +2008-05-25  Kenichi Handa  <handa@m17n.org>
 +
 +      * w32term.c (x_draw_glyph_string):
 +      * xterm.c (x_draw_glyph_string): Fix calculation of underline position.
 +
 +      * xfaces.c: Delete unused function prototypes.
 +      (xstrlwr, font_frame): Delete them.
 +      (clear_face_cache): Delete unused variable.
 +
 +      * xftfont.c (xftfont_open): Delete unused variable.
 +      If underline_thickness is not 1, adjust underline_position.
 +
 +      * ftxfont.c (ftxfont_open): Delete unused variable.
 +
 +      * fontset.c (face_for_char): Optimize for the case of no charset
 +      property.
 +
 +      * font.c (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE)
 +      (check_gstring, check_otf_features, otf_list, otf_tag_symbol)
 +      (otf_open, font_otf_capability, generate_otf_features)
 +      (font_otf_DeviceTable, font_otf_ValueRecord, font_otf_Anchor):
 +      Comment out by surrounding "#if 0" and "#endif" for the moment.
 +      (Ffont_drive_otf, Ffont_otf_alternates): Likewise.
 +      (syms_of_font): Codes for accessing above commented out.
 +
 +2008-05-24  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * w32proc.c: Include dispextern.h.
 +
 +      * w32.c: Include dispextern.h.
 +
 +2008-05-23  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * charset.c (Fencode_char, Fsplit_char): Doc fixes.
 +      (Fget_unused_iso_final_char, Fdecode_char, Fiso_charset):
 +      Fix typos in docstrings.
 +
 +2008-05-23  Jason Rumney  <jasonr@gnu.org>
 +
 +      * xsmfns.c: Remove includes that are already included by config.h.
 +
 +2008-05-23  Kenichi Handa  <handa@m17n.org>
 +
 +      * charset.c (Qemacs, charset_emacs): New variables.
 +      (char_charset): Fix for non-Unicode characters.
 +      (syms_of_charset): Define charset_emacs.
 +
 +      * w32term.c (x_draw_glyph_string): Be sure to update
 +      s->underline_thickness and s->underline_position.  Be sure to draw
 +      underline within the current line area.
 +
 +      * xterm.c (x_draw_glyph_string): Be sure to update
 +      s->underline_thickness and s->underline_position.  Be sure to draw
 +      underline within the current line area.
 +
 +      * fontset.c: Delete unused variables and add casting for char *
 +      throughout the file.
 +      (fontset_font): Try the fallback fonts of the current fontset
 +      before consulting the default fontset.
 +
 +      * ftfont.c (ftfont_spec_pattern): Free charset if necessary.
 +
 +      * xfont.c (xfont_list_pattern): Free names returned from XListFonts.
 +
 +2008-05-22  Jason Rumney  <jasonr@gnu.org>
 +
 +      * font.c: Don't include strings.h.
 +
 +      * dispextern.h, xfaces.c (xstrcasecmp): Rename from xstricmp.
 +
 +      * dosfns.c, fileio.c, font.c, fontset.c, image.c, macfns.c:
 +      * macterm.c, process.c, w32.c, w32fns.c, w32proc.c, xfaces.c:
 +      * xfns.c, xfont.c: All callers of stricmp and strcasecmp changed
 +      to call xstrcasecmp.
 +
 +      * xfont.c (xfont_list_pattern, compare_font_names): Use xstrcasecmp.
 +
 +      * fontset.c (fs_query_fontset): Use xstrcasecmp.
 +
 +      * font.c (font_style_to_value, font_score): Use xstrcasecmp.
 +
 +      * dosfns.c (msdos_stdcolor_idx): Use xstrcasecmp.
 +
 +2008-05-22  Kenichi Handa  <handa@m17n.org>
 +
 +      * puresize.h (BASE_PURESIZE): Increase to 1220000.
 +
 +      * font.c (font_prop_validate_style): Adjust for the format
 +      change of font_style_table.
 +
 +      * w32font.c (w32font_open_internal): Call Ffont_xlfd_name with
 +      two args.
 +
 +      * xfaces.c (x_update_menu_appearance): Call Ffont_xlfd_name with
 +      two args.
 +
 +2008-05-22  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * minibuf.c (keys_of_minibuf): Delete.
 +      * lisp.h (keys_of_minibuf): Delete.
 +      * emacs.c (main): Don't call keys_of_minibuf.
 +
 +2008-05-22  Kenichi Handa  <handa@m17n.org>
 +
 +      * ftfont.c (ftfont_resolve_generic_family): Rename from
 +      ftfont_list_generic_family.  Return a single family for each
 +      generic family.
 +      (ftfont_spec_pattern): Add FC_FAMILY to pattern.
 +      (ftfont_list): Adjust for the change of ftfont_resolve_generic_family.
 +      Call font_add_log.
 +      (ftfont_match): Call font_add_log.
 +
 +      * font.h (Ffont_xlfd_name): EXFUN adjusted.
 +      (FONT_DEBUG): Define it.
 +      (font_add_log): Extern it.
 +      (font_assert): Rename from xassert.
 +
 +      * xfont.c (xfont_get_pcm): Change xassert to font_assert.
 +      (xfont_list_family): Call font_add_log.
 +      (xfont_match): Likewise.
 +      (memq_no_quit): Delete.
 +
 +      * fontset.c (fontset_from_font, Ffontset_info): Add the 2nd arg in
 +      call of Ffont_xlfd_name.
 +
 +      * xfaces.c (struct table_entry, slant_table, weight_table)
 +      (swidth_table): Move to font.c.
 +
 +      * font.c: Checking of FONT_DEBUG is moved to font.h.  All calls of
 +      xassert are changed to font_assert.  Delete many unused variables.
 +      (Vfont_weight_table, Vfont_slant_table, Vfont_width_table):
 +      New variables.
 +      (struct table_entry): Move from xfaces.c and modified.
 +      (weight_table, slant_table, width_table): Move from xfaces.c and
 +      contents adjusted for the change of struct table_entry.
 +      (font_style_to_value, font_style_symbolic): Adjust for the
 +      format change of font_style_table.
 +      (font_parse_family_registry): Don't overwrite existing foundry and
 +      family of font_spec.
 +      (font_score): Fix calculation of diff for sizes.
 +      (font_sort_entites): Call font_add_log.
 +      (font_delete_unmatched): Return a newly created list.
 +      (font_list_entities): Fix previous change.  Call font_add_log.
 +      (font_matching_entity, font_open_entity, font_close_entity):
 +      Call font_add_log.
 +      (Ffont_xlfd_name): New arg FOLD-WILDCARDS.
 +      (Finternal_set_font_style_table): Delete.
 +      (BUILD_STYLE_TABLE): New macro.
 +      (build_style_table): New function.
 +      (Vfont_log, font_log_env_checked): New variables.
 +      (font_add_log): New function.
 +      (syms_of_font): Delete defsubr Sinternal_set_font_style_table.
 +      Declare Lisp variables "font-weight-table", "font-slant-table",
 +      "font-width-table", and "font-log".  Initialize font_style_table.
 +
 +2008-05-21  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * xterm.c (x_set_frame_alpha): Move declarations before statements.
 +
 +2008-05-21  Seiji Zenitani  <zenitani@mac.com>
 +            Ryo Yoshitake  <ryo@shiftmode.net>
 +
 +      * frame.c (Qalpha): Add a new frame parameter `alpha'.
 +      (Vframe_alpha_lower_limit): New variable.
 +      (x_set_alpha): New function.
 +
 +      * frame.h (Qalpha, Vframe_parameter_lower_limit): Export them.
 +
 +      * xfns.c (x-create-frame, Qalpha):
 +      Initialize the frame parameter `alpha'.
 +      * xterm.c (OPAQUE, OPACITY): New.
 +      (x_set_frame_alpha): New function.
 +      (frame_highlight, frame_unhighlight): Call x_set_frame_alpha.
 +
 +      * macfns.c (mac_frame_parm_handlers): A null handler for x_set_alpha.
 +      * w32fns.c (w32_frame_parm_handlers): Likewise.
 +
 +2008-05-20  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32font.c (add_font_entity_to_list): Don't add non-opentype
 +      truetype fonts to opentype list.
 +
 +2008-05-20  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * fontset.c (Ffontset_info): Doc fix.
 +      (syms_of_fontset) <font-encoding-charset-alist, use-default-ascent>:
 +      <ignore-relative-composition>: Fix typos in docstrings.
 +
 +      * font.c (syms-of-font) <font-encoding-alist>:
 +      (Ffontp, Ffont_make_gstring): Fix typos in docstrings.
 +      (Flist_fonts, Ffont_family_list, Ffont_fill_gstring, Fquery_font)
 +      (Ffont_otf_alternates): Doc fixes.
 +
 +2008-05-20  Kenichi Handa  <handa@m17n.org>
 +
 +      * Makefile.in (FONTSRC): Delete it.  Change all $(FONTSRC) to
 +      font.h through out the file.
 +      (FONT_DRIVERS): Rename from FONTOBJ.
 +      (obj): Change $(FONTOBJ) to $(FONT_DRIVERS).  Add font.o.
 +      (SOME_MACHINE_OBJECTS): Change $(FONTOBJ) to $(FONT_DRIVERS).
 +
 +      * emacs.c (main): Call syms_of_font unconditionally.
 +
 +      * font.h (find_font_encoding): Extern it.
 +
 +      * font.c (Vfont_encoding_alist, find_font_encoding): Move from
 +      fontset.c.
 +      (font_pixel_size) [! HAVE_WINDOW_SYSTEM]: Return 1.
 +      (font_open_entity): Update FRAME_X_DISPLAY_INFO (f)->n_fonts,
 +      FRAME_SMALLEST_CHAR_WIDTH (f), and FRAME_SMALLEST_FONT_HEIGHT (f)
 +      only when HAVE_WINDOW_SYSTEM is defined.
 +      (font_close_object): Update FRAME_X_DISPLAY_INFO (f)->n_fonts only
 +      when HAVE_WINDOW_SYSTEM is defined.
 +
 +      * fontset.c (Vfont_encoding_alist, find_font_encoding): Move to font.c.
 +      (syms_of_fontset): Move declaration of font-encoding-alist to font.c.
 +
 +      * xfaces.c: Include font.h unconditionally.
 +      (merge_face_ref, merge_face_vectors)
 +      (Finternal_set_lisp_face_attribute): Cancel the previous change.
 +
 +2008-05-20  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * xdisp.c (select_frame_for_redisplay): Adjust for last change to
 +      indirect_variable.
 +      * eval.c (lisp_indirect_variable): New fun.
 +      (Fuser_variable_p): Use it.
 +
 +2008-05-19  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * lisp.h (indirect_variable):
 +      * data.c (indirect_variable, let_shadows_buffer_binding_p):
 +      Use Lisp_Symbol pointers rather than Lisp_Object.
 +      Adjust callers.
 +      * buffer.c (buffer_slot_type_mismatch): Use wrong-type-argument.
 +      To this end, change calling-convention.
 +
 +      * minibuf.c (Finternal_complete_buffer): Only strip out hidden buffers
 +      if some non-hidden buffers are selected by string&pred.
 +
 +2008-05-19  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * process.c (wait_reading_process_output): Always check status
 +      when in batch mode.
 +
 +2008-05-19  Kenichi Handa  <handa@m17n.org>
 +
 +      * font.c (font_list_entities): Fix handling of cache.
 +      (font_matching_entity): Likewise.
 +
 +      * ftfont.c (cs_iso8859_1): Delete.
 +      (ft_face_cache): New variable.
 +      (struct ftfont_info): New member fc_charset_idx.
 +      (ftfont_build_basic_charsets): Delete.
 +      (fc_charset_table): New variable.
 +      (ftfont_pattern_entity): New arg fc_charset_idx.  Store (FILENAME
 +      . FC_CHARSET_IDX) as :font-entity property in the font entity.
 +      Callers changed.
 +      (ftfont_lookup_cache, ftfont_get_charset): New functions.
 +      (ftfont_spec_pattern): New argument fc_charset_idx.
 +      Check registry more rigidly.  Change callers.
 +      (ftfont_open, ftfont_close, ftfont_has_char): Adjust for the
 +      change of :font-entity property of the font.
 +
 +      * xftfont.c (xftfont_open): Adjust for the change of :font-entity
 +      property of the font.
 +
 +2008-05-18  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * coding.c (Fcoding_system_p): Rename argument to match docstring.
 +      (Funencodable_char_position, Fcheck_coding_systems_region)
 +      (Fdecode_coding_string, Fencode_coding_string): Fix typos in docstrings.
 +      (Fdetect_coding_region, Fdetect_coding_string, Fencode_coding_region)
 +      (Ffind_operation_coding_system, Fset_coding_system_priority)
 +      (Fcoding_system_eol_type): Doc fixes.
 +
 +2008-05-17  Glenn Morris  <rgm@gnu.org>
 +
 +      * sysdep.c (child_setup_tty): Handle systems with NLDLY, without FFDLY.
 +
 +2008-05-16  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * dired.c (Ffile_attributes): Shut up GCC warnings about st_uid
 +      and st_gid.
 +
 +      * frame.c (Fdelete_frame): Don't call font_update_drivers if
 +      HAVE_WINDOW_SYSTEM is not defined.
 +
 +      * xfaces.c (merge_face_ref, merge_face_vectors)
 +      (Finternal_set_lisp_face_attribute): Use FONT_*_INDEX only when
 +      HAVE_WINDOW_SYSTEM is defined.
 +      (Fface_font): Fix non-HAVE_WINDOW_SYSTEM case.
 +
 +2008-05-16  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * keyboard.c (parse_menu_item): Do not cache key shortcut any more.
 +
 +2008-05-15  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
 +
 +      * macterm.c (x_draw_relief_rect): Remove unused variable `dpy'.
 +
 +2008-05-15  Kenichi Handa  <handa@m17n.org>
 +
 +      * font.c (font_find_for_lface): Reflect LFACE_FONT in the font
 +      preference.
 +
 +2008-05-15  Glenn Morris  <rgm@gnu.org>
 +
 +      * emacs.c (USAGE1, standard_args): Remove -disable-font-backend.
 +
 +2008-05-15  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * fns.c (init_fns): Don't initialize weak_hash_tables here.
 +      (init_weak_hash_tables): New fun.  Initialize weak_hash_tables.
 +
 +      * alloc.c (init_alloc_once): Call init_weak_hash_tables.
 +
 +2008-05-15  Kenichi Handa  <handa@m17n.org>
 +
 +      * ftfont.c (ftfont_list): Downcase family name to check generic
 +      families.
 +
 +      * xfaces.c (Finternal_set_lisp_face_attribute): Be sure to make a
 +      font-spec for QCfont value.
 +
 +      * fontset.c (Fnew_fontset): Call font_unparse_xlfd with 256-byte
 +      buffer.  Check the return value of it.
 +
 +2008-05-14  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32term.c (w32_get_glyph_overhangs): Remove.
 +      (w32_redisplay_interface): Use x_get_glyph_overhangs instead.
 +
 +2008-05-14  Kenichi Handa  <handa@m17n.org>
 +
 +      * font.c (font_prop_validate): Make nil a valid value.
 +      (font_clear_cache): Check if the cached vector of entities is nil
 +      or not.
 +
 +2008-05-14  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
 +
 +      * emacs.c (main_thread): Conditionalize on
 +      FORWARD_SIGNAL_TO_MAIN_THREAD instead of HAVE_GTK_AND_PTHREAD.
 +      (main) [FORWARD_SIGNAL_TO_MAIN_THREAD]: Initialize it.
 +
 +      * syssignal.h (FORWARD_SIGNAL_TO_MAIN_THREAD): New define.
 +      (main_thread, SIGNAL_THREAD_CHECK): Conditionalize on
 +      FORWARD_SIGNAL_TO_MAIN_THREAD instead of HAVE_GTK_AND_PTHREAD.
 +
 +2008-05-14  Kenichi Handa  <handa@m17n.org>
 +
 +      * coding.c (detect_coding_iso_2022): Ignore a coding category that
 +      has no corresponding coding system.
 +
 +2008-05-14  Jason Rumney  <jasonr@gnu.org>
 +
 +      * font.h (struct font) [WINDOWSNT]: Remove codepage member.
 +
 +      * w32font.h (w32font_open_internal): Update declaration.
 +
 +      * w32font.c (w32font_open_internal): Change last argument from
 +      w32font_info struct to font object.  Fill in font object from
 +      font_entity.  Get Outline metrics if possible.  Use them to
 +      calculate underline position and thickness.  Use xlfd name as name
 +      property.  Don't set codepage.
 +      (w32font_open): Pass font_object to w32font_open_internal.  Don't
 +      update dpyinfo->smallest_font_height and dpyinfo->smallest_char_width.
 +      (w32font_draw): Use s->font.
 +      (clear_cached_metrics): Don't clear non-existent blocks.
 +
 +      * w32term.c (w32_compute_glyph_string_overhangs): Don't compute if
 +      font was not found.
 +      (x_draw_glyph_string): Use underline position and thickness from font.
 +
 +      * w32uniscribe.c (uniscribe_open): Pass font_object to
 +      w32font_open_internal.
 +
 +2008-05-14  Kenichi Handa  <handa@m17n.org>
 +
 +      These changes are to delete all legacy font-handling codes, and
 +      make Emacs use only font-backends.
 +
 +      * Makefile.in: Delete USE_FONT_BACKEND conditionals.
 +      (frame.o, image.o, print.o): Depend on $(FONTSRC).
 +
 +      * makefile.w32-in (WIN32OBJ): Add w32reg.$(O), remove w32bdf.$(O).
 +
 +      * charset.h (Vcharset_non_preferred_head)
 +      (Vcurrent_iso639_language): Extern them.
 +
 +      * charset.c (Vcharset_non_preferred_head): New variable.
 +      (Vcurrent_iso639_language): New variable.
 +      (syms_of_charset): Declare it as a Lisp variable.
 +      (char_charset): Don't check non preferred charsets.  As a last
 +      resort, return charset_unicode.
 +      (Fset_charset_priority): Update Vcharset_non_preferred_head.
 +
 +      * composite.c: Throughout the file, delete all USE_FONT_BACKEND
 +      conditionals.  Don't check enable_font_backend.  Delete all codes
 +      used only when USE_FONT_BACKEND is not defined.
 +
 +      * dispextern.h (struct glyph_string): Change type of `font' to
 +      `struct font *'.
 +      (struct glyph_string): New member underline_position and
 +      underline_thickness.
 +      (enum lface_attribute_index): Remove LFACE_AVGWIDTH_INDEX.
 +      (struct face): Change type of `font' to `struct font *'.
 +      Remove members `font_name', `font_info_id'.
 +      (per_char_metric, encode_char): Delete externs.
 +      (calc_pixel_width_or_height): Adjust the prototype.
 +
 +      * emacs.c (enable_font_backend): Delete extern.
 +      (main): Don't set enable_font_backend.  Don't check the command
 +      line argument "-disable-font-backend".
 +
 +      * font.h (Qfont_spec, Qfont_entity, Qfont_object): Extern them.
 +      (enum font_property_index): New members FONT_DPI_INDEX,
 +      FONT_SPACING_INDEX, FONT_AVGWIDTH_INDEX, FONT_NAME_INDEX,
 +      FONT_FULLNAME_INDEX, FONT_FILE_INDEX, FONT_FORMAT_INDEX,
 +      FONT_OBJECT_MAX.  Delete FONT_FRAME_INDEX.
 +      (FONT_WEIGHT_NUMERIC, FONT_SLANT_NUMERIC, FONT_WIDTH_NUMERIC)
 +      (FONT_WEIGHT_SYMBOLIC, FONT_SLANT_SYMBOLIC, FONT_WIDTH_SYMBOLIC)
 +      (FONT_WEIGHT_FOR_FACE, FONT_SLANT_FOR_FACE, FONT_WIDTH_FOR_FACE)
 +      (FONT_WEIGHT_NAME_NUMERIC, FONT_SLANT_NAME_NUMERIC)
 +      (FONT_WIDTH_NAME_NUMERIC, FONT_SET_STYLE): New macros.
 +      (struct font_spec, struct font_entity): New structs.
-       (PT_PER_INCH, POINT_TO_PIXEL, PIXEL_TO_POINT): Moved from font.h.
++      (FONT_ENCODING_NOT_DECIDED): Move from fontset.h.
 +      (struct font): Many members from old "struct font_info" moved to
 +      here.  Members font and entity deleted.
 +      (FONT_SPEC_P, FONT_ENTITY_P, FONT_OBJECT_P, FONTP): Modified for
 +      the new font-related objects.
 +      (CHECK_FONT_SPEC, CHECK_FONT_ENTITY, CHECK_FONT_OBJECT)
 +      (CHECK_FONT_GET_OBJECT): Likewise.
 +      (XFONT_SPEC, XFONT_ENTITY, XFONT_OBJECT, XSETFONT): New macros.
-       (PT_PER_INCH, POINT_TO_PIXEL, PIXEL_TO_POINT): Moved to font.h.
++      (PT_PER_INCH, POINT_TO_PIXEL, PIXEL_TO_POINT): Move from font.h.
 +      (struct font_driver): New members case_sensitive anc check.
 +      Type of the member list and open changed.
 +      (enable_font_backend, font_symbolic_weight, font_symbolic_slant)
 +      (font_symbolic_width, font_find_object, font_get_spec)
 +      (font_set_lface_from_name): Delete extern.
 +      (Fcopy_font_spec, Fmerge_font_spec, Ffont_family_list): New EXFUNs.
 +
 +      * font.c: Include <strings.h>.
 +      (enable_font_backend): Delete it.
 +      (Qfont_spec, Qfont_entity, Qfont_object): New variables.
 +      (CHECK_VALIDATE_FONT_SPEC): Delete it.
-       (font_intern_prop): Renamed from intern_downcase.  Don't downcase
++      (PT_PER_INCH, POINT_TO_PIXEL, PIXEL_TO_POINT): Move to font.h.
 +      (null_string): Delete it.
 +      (null_vector): Make it static.
 +      (font_family_alist): Delete it.
 +      (Qnormal): Extern it.
 +      (QCextra, QClanguage): Delete it.
 +      (QClang, QCavgwidth, QCfont_entity, QCfc_unknown_spec): New variables.
 +      (font_make_spec, font_make_entity, font_make_object)
-       (font_parse_family_registry): Renamed from font_merge_old_spec.
++      (font_intern_prop): Rename from intern_downcase.  Don't downcase
 +      the string.  Callers changed.
 +      (font_pixel_size): Adjust for the format change of font-related
 +      objects.
 +      (prop_name_to_numeric, prop_numeric_to_name): Delete them.
 +      (font_style_to_value, font_style_symbolic): New function.
 +      (build_font_family_alist): Delete it.
 +      (font_registry_charsets): Use Fassoc_string instead of
 +      assq_no_quit.
 +      (font_prop_validate_symbol): Don't return null_string.
 +      (font_prop_validate_style): Adjust for the change of
 +      style-related values in a font vector.
 +      (font_property_table): Delete entries for QClanguage and
 +      QCantialias, add entries for QCavgwidth.
 +      (get_font_prop_index): Delete the 2nd argument FROM.
 +      (font_prop_validate): Arguments changed.
 +      (font_put_extra): Adjust for the change of font-related objects.
 +      (font_expand_wildcards, font_parse_xlfd, font_unparse_xlfd)
 +      (font_parse_fcname, font_unparse_fcname)
 +      (font_prepare_composition): Likewise.
-       (Ffont_family_list): Renamed from list-families.
++      (font_parse_family_registry): Rename from font_merge_old_spec.
 +      (otf_open): Delete the 1st arg entity.
 +      (font_otf_capability): Adjust for the above change.
 +      (font_score): New arg alternate_families.  Adjusted for the change
 +      of font-related objects.
 +      (font_sort_entites): New arg best_only.
 +      (font_symbolic_weight, font_symbolic_slant, font_symbolic_width):
 +      Delete them.
 +      (font_match_p): Check alternate families.
 +      (font_find_object): Delete it.
 +      (font_check_object): New function.
 +      (font_clear_cache): Adjust for the change of font-related objects.
 +      (font_delete_unmatched): New arg.
 +      (font_list_entities): Call font_driver->list with a spec that
 +      doesn't specify style-related properties.
 +      (font_matching_entity): Arguments changed.  Caller changed.
 +      (font_open_entity): Adjust for the change of font-related objects.
 +      (font_close_object, font_has_char, font_encode_char)
 +      (font_get_name, font_get_spec): Likewise.
 +      (font_spec_from_name, font_clear_prop, font_update_lface):
 +      New functions.
 +      (font_find_for_lface, font_open_for_lface, font_load_for_lface)
 +      (font_prepare_for_face, font_done_for_face, font_open_by_name)
 +      (font_at): Adjust for the change of font-related objects.
 +      (font_range): New function.
 +      (Ffontp, Ffont_spec, Ffont_get, Ffont_put, Flist_fonts)
 +      (Ffont_xlfd_name): Adjust for the change of font-related objects.
 +      (Fcopy_font_spec, Fmerge_font_spec): New function.
-       (FONT_ENCODING_NOT_DECIDED): Moved to font.h.
++      (Ffont_family_list): Rename from list-families.
 +      (Finternal_set_font_style_table): Arguments changed.
 +      (Ffont_fill_gstring, Ffont_shape_text, Fopen_font)
 +      (Ffont_drive_otf, Fquery_font, Ffont_match_p): Adjust for the
 +      change of font-related objects.
 +      (syms_of_font): Delete "ifdef USE_FONT_BACKEND".  DEFSYM new symbols.
 +
 +      * fontset.h (struct font_info): Delete it.  Most members go to
 +      struct font.
-       (fontset_from_font): Renamed from new_fontset_from_font.  Check if
++      (FONT_ENCODING_NOT_DECIDED): Move to font.h.
 +      (enum FONT_SPEC_INDEX): Delete it.
 +      (font_info, list_fonts_func, load_font_func, query_font_func)
 +      (set_frame_fontset_func, find_ccl_program_func)
 +      (get_font_repertory_func, new_fontset_from_font_name):
 +      Delete externs.
 +      (fontset_from_font_name): Extern it.
 +      (FS_LOAD_FONT, FONT_INFO_ID, FONT_INFO_FROM_ID)
 +      (FONT_INFO_FROM_FACE): Deleted.
 +      (face_for_font): Adjust prototype.
 +
 +      * fontset.c: Throughout the file, delete all USE_FONT_BACKEND
 +      conditionals.  Don't check enable_font_backend.  Delete all codes
 +      used only when USE_FONT_BACKEND is not defined.
 +      (get_font_info_func, list_font_func, load_font_func)
 +      (query_font_func, set_frame_fontset_func, find_ccl_program_func)
 +      (get_font_repertory_func): Delete them.
 +      (FONTSET_SPEC, FONT_DEF_NEW, FONT_DEF_SPEC, FONT_DEF_ENCODING)
 +      (FONT_DEF_REPERTORY, RFONT_DEF_FACE, RFONT_DEF_SET_FACE)
 +      (RFONT_DEF_FONT_DEF, RFONT_DEF_SPEC, RFONT_DEF_REPERTORY)
 +      (RFONT_DEF_OBJECT, RFONT_DEF_SET_OBJECT, RFONT_DEF_SCORE)
 +      (RFONT_DEF_SET_SCORE, RFONT_DEF_NEW): New macros.
 +      (fontset_compare_rfontdef): New function.
 +      (reorder_font_vector): Remove the argument CHARSET-ID.  Sort
 +      rfont-defs by qsort.  Adjusted for the change of font-group vector.
 +      (load_font_get_repertory): Deleted.
 +      (fontset_find_font): Use new macros to ref/set elements of
 +      font-def and rfont-def.
 +      (fontset_font): Fix the timing of remembering that no font for C.
 +      (free_face_fontset): Do nothing if the face has no fontset.
 +      (face_suitable_for_char_p): Use new macros to ref/set elements of
 +      rfont-def.
 +      (face_for_char): Likewise.  Call face_for_char with font_object.
 +      (fs_load_font): Delete.  Delete #pragma surrounding it.
 +      (fs_query_fontset): Use strcasecmp instead of strcmp.
 +      (generate_ascii_font_name): Adjust for the format change of
 +      font-spec.
 +      (Fset_fontset_font): Likewise.  Use new macros to set elements of
 +      font-def.
 +      (Fnew_fontset): Use font_unparse_xlfd to generate
 +      FONTSET_ASCII (fontset).
 +      (new_fontset_from_font_name): Deleted.
-       (set_lface_from_font): Renamed from
++      (fontset_from_font): Rename from new_fontset_from_font.  Check if
 +      a fontset is already created for the font.  FIx updating of
 +      Vfontset_alias_alist.
 +      (fontset_ascii_font): Deleted.
 +      (Ffont_info): Adjust for the format change of font-spec.
 +      (Finternal_char_font): Likewise.
 +      (Ffontset_info): Likewise.
 +      (syms_of_fontset): Don't check load_font_func.
 +
 +      * fns.c (internal_equal): Handle PREV_FONT.
 +
 +      * frame.h: Delete USE_FONT_BACKEND conditional.
 +
 +      * frame.c: Throughout the file, delete all USE_FONT_BACKEND
 +      conditionals.  Don't check enable_font_backend.  Delete all codes
 +      used only when USE_FONT_BACKEND is not defined.
 +      (x_set_font): Call x_new_font, not x_new_fontset2.
 +      (x_set_font_backend): Use FRAME_FONT macro to check if a font is
 +      already set for the frame.
 +
 +      * ftfont.c (ftfont_pattern_entity): Argument FRAME removed.
 +      Make a font-entity by font_make_entity.  Use font_intern_prop instead
 +      of intern_downcase.  Use FONT_SET_STYLE to set a style-related
 +      font property.  If a font is scalable, set avgwidth property to 0.
 +      Set font-entity property by font_put_extra.
 +      (ftfont_list_generic_family): Argument SPEC and REGISTRY removed.
 +      (ffont_driver): Adjust for the change of struct font_driver.
 +      (ftfont_spec_pattern): New function.
 +      (ftfont_list): Return a list, not vector.
 +      (ftfont_match): Use ftfont_spec_pattern to get a pattern.
 +      (ftfont_list_family): Don't downcase names.
 +      (ftfont_free_entity): Deleted.
 +      (ftfont_open): Return a font-object.  Adjusted for the change of
 +      struct font.  Get underline_thickness and underline_position from
 +      font property.  Don't update dpyinfo->smallest_font_height and
 +      dpyinfo->smallest_char_width.
 +      (ftfont_close): Don't free `struct font'.
 +      (ftfont_has_char): Adjust for the format change of font-entity.
 +      (ftfont_encode_char, ftfont_text_extents): Likewise.
 +
 +      * ftxfont.c (ftxfont_list): Return a list, not vector.
 +      (ftxfont_open): Return a font-object.  Adjusted for the change of
 +      struct font.  Get underline_thickness and underline_position from
 +      font property.  Don't update dpyinfo->smallest_font_height and
 +      dpyinfo->smallest_char_width.
 +      (ftxfont_close): Don't decrease FRAME_X_DISPLAY_INFO (f)->n_fonts.
 +      (ftxfont_draw): Adjust for the change of struct font.
 +
 +      * image.c (image_ascent): Don't include "charset.h".
 +      Include "character.h" and "font.h".
 +
 +      * lisp.h (enum pvec_type): New member PREV_FONT.
 +      (Fassoc_string): EXFUN it.
 +
 +      * print.c: Include font.h.
 +      (print_object): Handle font-related objects.
 +
 +      * xdisp.c: Throughout the file, delete all USE_FONT_BACKEND
 +      conditionals.  Don't check enable_font_backend.  Delete all codes
 +      used only when USE_FONT_BACKEND is not defined.
 +      (handle_auto_composed_prop): Do nothing if it->f is not on a
 +      window system.  Check how many following characters can be
 +      displayed by the same font.
 +      (calc_pixel_width_or_height): Type of the 4th arg is changed to
 +      'struct font *'.
 +      (get_char_face_and_encoding): Assign the whole encoding task to
 +      the `encode-char' method of a font driver.
 +      (fill_composite_glyph_string): Adjust for the change of `struct
 +      face' and `struct glyph_string'.
 +      (fill_glyph_string): Likewise.
 +      (get_per_char_metric): Arguments changed.
 +      (x_get_glyph_overhangs): Adjust for the change of `struct face'
 +      and `struct glyph_string'.
 +      (produce_stretch_glyph, calc_line_height_property)
 +      (x_produce_glyphs): Likewise.
 +
 +      * xfaces.c: Throughout the file, delete all USE_FONT_BACKEND
 +      conditionals.  Don't check enable_font_backend.  Delete all codes
 +      used only when USE_FONT_BACKEND is not defined.
 +      Use FONT_XXX_NAME_NUMERIC instead of face_numeric_xxx.
 +      (QCfoundry, QCadstyle, QCregistry, QCspacing, QCsize, QCavgwidth)
 +      (Qp): Extern them.
 +      (clear_font_table, load_face_font, xlfd_lookup_field_contents):
 +      Deleted.
 +      (struct font_name): Deleted.
 +      (xlfd_numeric_value, xlfd_symbolic_value): Deleted.
 +      (compare_fonts_by_sort_order): New function.
 +      (xlfd_numeric_slant, xlfd_symbolic_slant, xlfd_numeric_weight)
 +      (xlfd_symbolic_weight, xlfd_numeric_swidth, xlfd_symbolic_swidth):
 +      Deleted.
 +      (Fx_family_fonts): Use font_list_entities, and sort fonts by
 +      compare_fonts_by_sort_order.
 +      (Fx_font_family_list): Call Ffont_family_list.
 +      (face_numeric_value, face_numeric_weight, face_numeric_slant)
 +      (face_numeric_swidth, face_symbolic_value, face_symbolic_weight)
 +      (face_symbolic_slant, face_symbolic_swidth)
 +      (split_font_name_into_vector, build_font_name_from_vector)
 +      (xlfd_fixed_p, xlfd_point_size, pixel_point_size)
 +      (font_rescale_ratio, split_font_name, build_font_name)
 +      (free_font_names, sort_fonts, x_face_list_fonts)
 +      (face_font_available_p, sorted_font_list, cmp_font_names)
 +      (font_list_1, concat_font_list, font_list, remove_duplicates):
 +      Deleted.
 +      (Fx_list_fonts): Use Ffont_list.
 +      (LFACE_AVGWIDTH): Deleted.
 +      (check_lface_attrs): Don't check LFACE_AVGWIDTH.  Check LFACE_FONT
 +      by FONTP.
 +      (lface_fully_specified_p): Don't check LFACE_AVGWIDTH.
 +      (set_lface_from_font_name): Delete it.
-       (xfont_find_ccl_program): Renamed from x_find_ccl_program and
++      (set_lface_from_font): Rename from
 +      set_lface_from_font_and_fontset.  Caller changed.  Don't set
 +      LFACE_AVGWIDTH.  Use FONT_XXX_FOR_FACE to get a symbol suitable
 +      for face.
 +      (merge_face_vectors): Copy font-spec if necessary.
 +      Clear properties of the font-spec if necessary.
 +      (merge_face_ref): Clear properties of the font-spec if necessary.
 +      (Finternal_set_lisp_face_attribute): Likewise.
 +      (set_font_frame_param): Use font_load_for_lface to load a
 +      font-object, and call Fmodify_frame_parameters with it.
 +      (x_update_menu_appearance): Don't check LFACE_AVGWIDTH.  Get XLFD
 +      font name by Ffont_xlfd_name.
 +      (Finternal_lisp_face_attribute_values): Don't check QCweight,
 +      QCslant, and QCwidth.
 +      (Fface_font): Get a font name from font->props[FONT_NAME_INDEX].
 +      (lface_same_font_attributes_p): Don't check LFACE_AVGWIDTH.
 +      Compare fonts by EQ.
 +      (lookup_non_ascii_face): Deleted.
 +      (face_for_font): The 2nd argument changed.
 +      (x_supports_face_attributes_p): Don't check LFACE_AVGWIDTH.
 +      Check atomic font properties by case insensitive.
 +      (realize_non_ascii_face): Set face->overstrike correctly.
 +      (realize_x_face): Likewise.  Check if LFACE_FONT is a font_object.
 +      (dump_realized_face): Get font name from
 +      font->props[FONT_NAME_INDEX].  Don't print font_info_id.
 +
 +      * xfns.c: Throughout the file, delete all USE_FONT_BACKEND
 +      conditionals.  Don't check enable_font_backend.  Delete all codes
 +      used only when USE_FONT_BACKEND is not defined.
 +      (xic_create_xfontset): Original code deleted and renamed from
 +      xic_create_xfontset2.  Use FRAME_FONT, not FRAME_FONT_OBJECT.
 +      (x_make_gc): Don't set GCFont in GCs.
 +      (Fx_create_frame) [USE_LUCID]: Set xlwmenu_default_font to a font
 +      opened by "fixed".
 +      (syms_of_xfns): Don't set get_font_info_func, load_font_func,
 +      find_ccl_program_func, query_font_func, set_frame_fontset_func,
 +      get_font_repertory_func.
 +
 +      * xfont.c: Include <stdlib.h> and "ccl.h".
 +      (struct xfont_info): New structure.
 +      (xfont_query_font): Deleted.
-       (xfont_list_pattern): Sort font names case insensitively.  Make
-       font_entity by calling font_make_entity.  Avoid auto-scaled fonts.
++      (xfont_find_ccl_program): Rename from x_find_ccl_program and
 +      moved from xterm.c.
 +      (xfont_driver): Adjust for the change of struct font_driver.
 +      (compare_font_names): New function.
-       (x_new_font): Renamed from x_new_fontset2.
++      (xfont_list_pattern): Sort font names case insensitively.
++      Make font_entity by calling font_make_entity.  Avoid auto-scaled fonts.
 +      (xfont_list): Return a list, not vector.
 +      (xfont_match): If the font doesn't have QCname property, generate
 +      a name from the other font properties.
 +      (xfont_open): Return a font-object.  Adjusted for the change of
 +      struct font.  Get underline_thickness and underline_position from
 +      font property.  Don't update dpyinfo->smallest_font_height and
 +      dpyinfo->smallest_char_width.
 +      (xfont_close): Don't free struct font.
 +      (xfont_prepare_face): Adjust for the change of struct font.
 +      (xfont_done_face): Deleted.
 +      (xfont_has_char): Adjust for the change of struct font.
 +      (xfont_encode_char, xfont_draw): Likewise.
 +      (xfont_check): New function.
 +
 +      * xftfont.c (xftfont_list): Adjust for the change of `list'
 +      callback function.
 +      (xftfont_match): Adjust for the format change of font-entity.
 +      (xftfont_open): Adjust for the format change of font-entity and
 +      font-object.  Adjusted for the change of struct font.  Return a
 +      font-object.  Don't update dpyinfo->smallest_font_height and
 +      dpyinfo->smallest_char_width.
 +      (xftfont_close): Block input while calling XftFontClose.
 +      (xftfont_prepare_face): Don't block input while calling
 +      xftfont_get_colors.  Adjusted for the change of struct font.
 +      (xftfont_shape): Return value of error case fixed.
 +
 +      * xrdb.c (x_load_resources): Don't setup a fontset resource.
 +
 +      * xterm.h: Throughout the file, delete all USE_FONT_BACKEND
 +      conditionals.
 +      (FONT_WIDTH): Return (f)->max_width.
 +      (struct x_display_info): Delete member `font'.
 +      (x_list_fonts, x_get_font_info, x_load_font, x_query_font)
 +      (x_find_ccl_program, x_get_font_repertory): Delete externs.
 +      (struct x_output): Change type of `font' to `struct font *'.
 +
 +      * xterm.c: Throughout the file, delete all USE_FONT_BACKEND
 +      conditionals.  Don't check enable_font_backend.  Delete all codes
 +      used only when USE_FONT_BACKEND is not defined.  Don't include ccl.h.
 +      (x_per_char_metric, x_encode_char): Deleted.
 +      (x_set_cursor_gc, x_set_mouse_face_gc): Don't set GCFont.
 +      (x_compute_glyph_string_overhangs): Adjust for the change of
 +      `struct face'.
 +      (x_draw_glyph_string_foreground)
 +      (x_draw_composite_glyph_string_foreground): Likewise.
 +      (x_draw_glyph_string): Likewise.  Use font->underline_position and
 +      font->underline_thickness.
-       (x_find_ccl_program): Renamed and moved to xfont.c.
++      (x_new_font): Rename from x_new_fontset2.
 +      (x_new_fontset, x_get_font_info, x_list_fonts): Deleted.
 +      (x_check_font): Call `check' method of a font driver.
 +      (x_font_min_bounds, x_compute_min_glyph_bounds, x_load_font)
 +      (x_query_font, x_get_font_repertory): Deleted.
-       Adjusted for the change of struct w32font_info.
++      (x_find_ccl_program): Rename and moved to xfont.c.
 +      (x_redisplay_interface): Adjust for the change of `struct
 +      redisplay_interface'.
 +
 +      * w32fns.c: Throughout the file, delete all USE_FONT_BACKEND
 +      conditionals.  Don't check enable_font_backend.  Delete all codes
 +      used only when USE_FONT_BACKEND is not defined.  Surround non-used
 +      code by "#ifdef OLD_FONT" and "endif".
 +      (Fw32_select_font): Use FONT_COMPAT to get old font structure.
 +
 +      * w32font.h (struct w32font_info): New member.
 +      (FONT_COMPAT): New macro.
 +      (w32font_open_internal): Prototype adjusted.
 +
 +      * w32gui.h (XGCValues): Surround `XFontStruct *font' by "if
 +      OLD_FONT" and "endif".
 +
 +      * w32font.c: Throughout the file, delete all USE_FONT_BACKEND
 +      conditionals.  Don't check enable_font_backend.  Delete all codes
 +      used only when USE_FONT_BACKEND is not defined.
 +      (w32font_open): Return a font-object.  Make a font-object by
 +      font_make_object.  Adjusted for the change of struct w32font_info.
 +      (w32font_close): Don't free struct font.  Adjusted for the change
 +      of struct w32font_info.
 +      (w32font_encode_char, w32font_text_extents, w32font_draw):
-       * gtkutil.h (xg_frame_resized): Renamed from xg_resize_widgets.
++      Adjust for the change of struct w32font_info.
 +      (w32font_draw): Likewise.
 +      (w32font_list_internal): Return a list, not vector.
 +      (w32font_open_internal): Change the 4th arg to font-object.
 +      Adjusted for the change of struct w32font_info and font-object format.
 +      (add_font_name_to_list): Don't downcase names.
 +      (w32_enumfont_pattern_entity): Make a font-entity by
 +      font_make_entity.  Adjusted for the format change of font-entity.
 +      Use FONT_SET_STYLE to set a style-related font property.  If a
 +      font is scalable, set avgwidth property to 0.  Set font-entity
 +      property by font_put_extra.
 +      (font_matches_spec): Adjust for the format change of font-entity.
 +      (w32_weight_table, w32_decode_weight): New variables.
 +      (w32_encode_weight): New function.
 +      (fill_in_logfont): Adjust for the format change of font-spec.
 +      (w32font_full_name): Use FONT_WEIGHT_SYMBOLIC to get a symbol
 +      weight value.
 +      (w32font_driver): Adjust for the change of struct font_driver.
 +
 +      * w32term.h: Throughout the file, delete all USE_FONT_BACKEND
 +      conditionals.  Don't check enable_font_backend.  Surround non-used
 +      code by "#ifdef OLD_FONT" and "endif".
 +      (FONT_WIDTH, FONT_HEIGHT, FONT_BASE, FONT_DESCENT)
 +      (FONT_AVG_WIDTH): Adjust for the change of struct font.
 +
 +      * w32term.c: Throughout the file, delete all USE_FONT_BACKEND
 +      conditionals.  Don't check enable_font_backend.  Delete all codes
 +      used only when USE_FONT_BACKEND is not defined.  Surround non-used
 +      code by "#ifdef OLD_FONT" and "endif".
 +
 +      * w32uniscribe.c: Delete USE_FONT_BACKEND conditional.
 +      (uniscribe_open): Return value changed to font-object.
 +      Adjusted for the format change of font-object.
 +      (uniscribe_otf_capability): Adjust for the change of struct font.
 +      (add_opentype_font_name_to_list): Don't downcase names.
 +      (uniscribe_font_driver): Adjust for the change of struct
 +      font_driver.
 +
 +2008-05-13  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * dispnew.c (update_frame_1): Check if tty output is still valid
 +      before flushing it.
 +
 +2008-05-13  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * xterm.c (handle_one_xevent): Don't pass buttons higher than 3
 +      to Gtk+ menus.
 +
 +2008-05-13  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * dired.c (file_name_completion): Tweak the code so as to always do it
 +      in a single pass.  Tighten the scope of some variables.
 +
 +      * dired.c (Qdefault_directory): New var.
 +      (file_name_completion): Use it instead of Fexpand_file_name.
 +      (syms_of_dired): Initialize it.
 +
 +2008-05-12  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * fileio.c (double_dollars): Remove dead code.
 +
 +2008-05-10  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * dired.c (Ffile_attributes, Fdirectory_files_and_attributes):
 +      Mention w32-get-true-file-attributes in doc string.
 +
 +      * w32proc.c (syms_of_ntproc) <w32-get-true-file-attributes>: Doc fix.
 +
 +2008-05-09  Glenn Morris  <rgm@gnu.org>
 +
 +      * fileio.c (Fread_file_name): Remove reference to insdef, deleted
 +      2008-04-23.
 +
 +2008-05-09  Eli Zaretskii  <eliz@gnu.org>
 +
 +      Support for reporting owner and group of each file on MS-Windows:
 +      * dired.c (stat_uname, stat_gname): New functions, with special
 +      implementation for w32.
 +      (Ffile_attributes): Use them instead of getpwuid and getgrgid.
 +
 +      * w32.c: Rename the_passwd_* to dflt_passwd_*.
 +      (dflt_group_name): New static variable.
 +      (dflt_group): Rename from the_group.
 +      (init_user_info): Init dflt_group fields.  Get user's group name
 +      from LookupAccountSid.
 +      (g_b_init_get_file_security, g_b_init_get_security_descriptor_owner)
 +      (g_b_init_get_security_descriptor_group, g_b_init_is_valid_sid):
 +      New initialization states.
 +      (globals_of_w32): Initialize them to zero.  Initialize the default
 +      group name to "None".
 +      (GetFileSecurity_Name): New global var, the name of the function
 +      to call for GetFileSecurity.
 +      (GetFileSecurity_Proc, GetSecurityDescriptorOwner_Proc)
 +      (GetSecurityDescriptorGroup_Proc, IsValidSid_Proc): New typedefs.
 +      (get_file_security, get_security_descriptor_owner)
 +      (get_security_descriptor_group, is_valid_sid)
 +      (get_file_security_desc, get_rid, get_name_and_id)
 +      (get_file_owner_and_group): New functions.
 +      (stat): Use get_file_security_desc and get_file_owner_and_group to
 +      report the owner and primary group of each file.  Don't ignore the
 +      high 32 bits of file's size, now that st_size is 64-bit wide.
 +      Fix test when to get true file attributes.
 +      (init_user_info): Use get_rid instead of equivalent inline code.
 +      (fstat): Don't ignore the high 32 bits of file's size.
 +
 +2008-05-09  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * image.c (png_load): Use correct bit-depth for setting background
 +      color.
 +
 +2008-05-08  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * Makefile.in (lisp, shortlisp): Rename epa-file-hook.elc to
 +      epa-hook.elc.
 +
 +2008-05-08  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * font.c (Ffont_match_p): Don't use `iff' in docstring.
 +
 +2008-05-07  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * macfns.c (Fx_create_frame): Make a copy of frame parameters
 +      because the original parameters are in pure storage now.
 +      (mac_window): Remove unused params.  Update callers.
 +
 +2008-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * lread.c (substitute_object_recurse): Use lower-level primitives.
 +      Don't signal errors when traversing sub-char-tables.
 +      Don't loop over all the possible characters when traversing char-tables.
 +
 +      * print.c (print_preprocess): Add sub-char-tables to the print-table,
 +      just like we do in print.c.
 +
 +2008-05-05  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * minibuf.c (Ftry_completion): Remove code left over from when we used
 +      scmp instead of Fcompare_strings.
 +
 +2008-05-04  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * w32fns.c (Fw32_battery_status): Fix computation of %t (h:min) format.
 +
 +2008-05-04  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
 +
 +      * image.c [USE_MAC_IMAGE_IO] (image_load_image_io):
 +      Create bitmap context in native byte order.
 +
 +      * macterm.c (XDrawLine)
 +      (XCreatePixmapFromBitmapData) [USE_MAC_IMAGE_IO]: Create bitmap
 +      context in native byte order.
 +
 +2008-05-04  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
 +
 +      * config.in: Regenerate.
 +
 +      * image.c (PIX_MASK_DRAW, PIX_MASK_RETAIN) [USE_MAC_IMAGE_IO]:
 +      New definitions for Image I/O support.
 +      (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
 +      (mac_create_cg_image_from_image, x_create_x_image_and_pixmap)
 +      [USE_MAC_IMAGE_IO]: Add implementations for Image I/O support.
 +      (mac_data_provider_release_data, image_load_image_io)
 +      [USE_MAC_IMAGE_IO]: New functions.
 +      (CGImageCreateWithPNGDataProviderProcType) [MAC_OSX]: Remove typedef.
 +      (MyCGImageCreateWithPNGDataProvider) [MAC_OSX]: Remove variable.
 +      (init_image_func_pointer) [MAC_OSX]: Remove function.
 +      (image_load_quartz2d) [MAC_OSX]: Check availability of
 +      CGImageCreateWithPNGDataProvider at compile time.
 +      Use lowercase `false' for boolean constant.
 +      (png_load, jpeg_load, tiff_load, gif_load) [USE_MAC_IMAGE_IO]:
 +      Use image_load_image_io.
 +      (png_load) [!USE_MAC_IMAGE_IO && MAC_OSX]:
 +      Don't check MyCGImageCreateWithPNGDataProvider.
 +      (init_image) [MAC_OSX && TARGET_API_MAC_CARBON]:
 +      Don't call init_image_func_pointer.
 +
 +      * macgui.h (Pixmap) [USE_MAC_IMAGE_IO]: New definition for Image I/O.
 +
 +      * macterm.c (mac_cg_color_space_rgb) [USE_CG_DRAWING]:
 +      Make variable non-static.
 +      (XDrawLine, XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
 +      [USE_MAC_IMAGE_IO]: Add implementations for Image I/O support.
 +
 +      * macterm.h (ARGB_TO_ULONG, ALPHA_FROM_ULONG): New macros.
 +      (RED_FROM_ULONG): Mask off higher bits.
 +      (mac_cg_color_space_rgb) [USE_MAC_IMAGE_IO]: New extern.
 +
 +      * s/darwin.h [HAVE_CARBON && HAVE_AVAILABILITYMACROS_H]:
 +      Include AvailabilityMacros.h.
 +      (USE_MAC_IMAGE_IO, LIBS_IMAGE) [HAVE_CARBON]: New defines.
 +      (LIBS_CARBON) [HAVE_CARBON]: Use LIBS_IMAGE.
 +
 +2008-05-03  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * chartab.c (Fset_char_table_range): If range is t, really set all
 +      chars to that value.
 +
 +2008-05-03  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * dired.c (Ffile_attributes): Don't allow the device number become
 +      negative.
 +
 +2008-05-02  Daiki Ueno  <ueno@unixuser.org>
 +
 +      * Makefile.in (lisp, shortlisp): Add epa-file-hook.elc.
 +
 +2008-05-02  Juri Linkov  <juri@jurta.org>
 +
 +      * minibuf.c (Fread_from_minibuffer, Fread_string, Fread_command)
 +      (Fread_variable, Fread_buffer, Fcompleting_read): Document the
 +      DEFAULT argument as a list of default values in docstrings.
 +
 +2008-05-01  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * puresize.h (BASE_PURESIZE): Increase to 1210000.
 +
 +2008-05-01  Martin Rudalics  <rudalics@gmx.at>
 +
 +      * dispnew.c (change_frame_size_1): Preserve small windows when
 +      shrinking frames by calling set_window_height|width with third
 +      arg 2.
 +
 +      * window.h (struct window): Replace field too_small_ok by field
 +      resize_proportionally.
 +
 +      * window.c (make_window): Initialize resize_proportionally.
 +      (enlarge_window): Temporarily set resize_proportionally to make
 +      sure that shrink_windows does scale the window proportionally.
 +      (shrink_windows): When window has resize_proportionally set try
 +      to shrink it proportionally by stealing from other windows.
 +      (struct saved_window, Fset_window_configuration)
 +      (compare_window_configurations): Handle resize_proportionally.
 +      (WINDOW_TOTAL_SIZE): New macro.
 +      (window_min_size, shrink_windows, size_window): Use it.
 +      (check_min_window_sizes): Remove.  Invalid values of
 +      window-min-height|width are handled by window_min_size_2 now.
 +      (size_window, Fsplit_window, enlarge_window)
 +      (adjust_window_trailing_edge, grow_mini_window): Don't call
 +      check_min_window_sizes.
 +      (window_min_size_2, window_min_size_1, window_min_size):
 +      New argument safe_p for retrieving "safe" minimum sizes.
 +      (Fdisplay_buffer, Fsplit_window, enlarge_window)
 +      (adjust_window_trailing_edge, grow_mini_window):
 +      Adjust arguments of window_min_size... functions.
 +      (shrink_windows): Argument min_size removed.  New argument
 +      safe_p allows shrinking windows to their safe minimum sizes.
 +      Calculate minimum size and decide whether a window shall be
 +      deleted for each window individually.
 +      (size_window): When nodelete_p equals 2, tell shrink_windows to
 +      delete windows only if their new minimum size is no more safe.
 +      (shrink_window_lowest_first): Call window_min_size_1 to make
 +      sure to preserve modeline of bottom-most window when resizing
 +      the minibuffer.
 +      (Fset_window_configuration, Fcurrent_window_configuration)
 +      (compare_window_configurations): Do not handle
 +      window-min-height|width any more.
 +      (syms_of_window): Clarify window-min-height|width doc-strings.
 +
 +2008-04-30  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * dired.c (file_name_completion): Fix up the encoding/decoding issue
 +      some more.  Copy some of the code from Ftry_completions.
 +      Remove special case code that dates back to initial revision when the
 +      slash was only added when necessary and that can't trigger nowadays.
 +
 +2008-04-27  Kenichi Handa  <handa@m17n.org>
 +
 +      * font.c (font_prop_validate): Signal `error' instead of `font'.
 +
 +2008-04-29  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32fns.c (Fw32_battery_status): New defun.
 +      (syms_of_w32fns): Defsubr it.
 +
 +2008-04-28  Andreas Schwab  <schwab@suse.de>
 +
 +      * dired.c (file_name_completion): Fix another mixing of encoded
 +      and decoded names.
 +
 +2008-04-28  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * w32fns.c (Fw32_define_rgb_color): Fix typo in docstring.
 +
 +2008-04-27  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * fringe.c (Fdefine_fringe_bitmap): Doc fix.
 +
 +2008-04-27  Andreas Schwab  <schwab@suse.de>
 +
 +      * dired.c (file_name_completion): Fix inappropriate mixing of
 +      encoded and decoded names.
 +
 +      * xterm.c (XTread_socket): Fix use of uninitialized variable.
 +
 +      * puresize.h (BASE_PURESIZE): Increase to 1200000.
 +
 +2008-04-26  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * dired.c (Ffile_attributes) [WINDOWSNT]: Undo change from
 +      2008-03-31, it's not needed anymore with `struct stat' definition
 +      on nt/inc/sys/stat.h.  Undo changes from 2007-01-12 and 2007-01-13
 +      for the same reasons.
 +
 +2008-04-25  Dennis Gilmore  <ausil@fedoraproject.org>  (tiny change)
 +
 +      * m/sparc.h: Additional redefinitions for GNU/Linux.
 +
 +2008-04-23  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
 +
 +      * macterm.c (Vmac_ts_active_input_buf) [USE_MAC_TSM]: New variable.
 +      (syms_of_macterm) [USE_MAC_TSM]: Defvar it.
 +      (Qmouse_drag_overlay) [MAC_OSX]: New variable.
 +      (syms_of_macterm) [MAC_OSX]: Intern and staticpro it.
 +      (mac_get_selected_range, mac_store_buffer_text_to_unicode_chars)
 +      (mac_ax_selected_text_range) [MAC_OSX]: New functions.
 +      (mac_ax_number_of_characters) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
 +      Likewise.
 +
 +      * mactoolbox.c (Vmac_ts_active_input_buf) [USE_MAC_TSM]: Add extern.
 +      (fast_find_position, x_y_to_hpos_vpos, mac_ax_selected_text_range)
 +      (mac_ax_number_of_characters): Add externs.
 +      (mac_get_selected_range, mac_store_buffer_text_to_unicode_chars)
 +      [USE_MAC_TSM]: Likewise.
 +      (mac_handle_text_input_event) [MAC_OSX]:
 +      Handle kEventTextInputOffsetToPos for no active input area case.
 +      Handle kEventTextInputPosToOffset and kEventTextInputGetSelectedText.
 +      (mac_handle_document_access_event)
 +      [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: New function.
 +      (install_application_handler) [MAC_OSX]: Register handlers for
 +      kEventTextInputPosToOffset and kEventTextInputGetSelectedText.
 +      (install_application_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
 +      Register mac_handle_document_access_event.
 +
 +      * xdisp.c (x_y_to_hpos_vpos, fast_find_position) [HAVE_CARBON]:
 +      Make functions non-static.
 +
 +2008-04-23  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * fileio.c (Vread_file_name_function, Vread_file_name_predicate)
 +      (read_file_name_completion_ignore_case, insert_default_directory)
 +      (Qdefault_directory): Move to minibuffer.el.
 +      (Fread_file_name): Call the new `read-file-name' instead.
 +
 +2008-04-23  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
 +
 +      * mac.c (create_apple_event) [TARGET_API_MAC_CARBON]:
 +      Make function non-static.
 +      (create_apple_event_from_event_ref) [TARGET_API_MAC_CARBON]:
 +      Remove function.
 +      (create_apple_event_from_drag_ref) [TARGET_API_MAC_CARBON]:
 +      Move to mactoolbox.c.
 +      (mac_event_parameters_to_lisp) [TARGET_API_MAC_CARBON]: New function.
 +
 +      * macgui.h (CGFloat) [!CGFLOAT_DEFINED]: New typedef.
 +      (mac_rect_make): New macro.
 +
 +      * macterm.c (mac_draw_image_string_atsui) [MAC_OSX]: Use CGFloat
 +      instead of float.
 +      (mac_draw_image_string_cg) [USE_CG_TEXT_DRAWING]: Likewise.
 +      (init_cg_color, mac_draw_line, mac_draw_cg_image, XSetForeground)
 +      (XSetBackground) [USE_CG_DRAWING]: Likewise.
 +      (mac_draw_image_string_atsui) [MAC_OSX]: Use mac_rect_make instead of
 +      CGRectMake.
 +      (mac_draw_image_string_cg) [USE_CG_TEXT_DRAWING]: Likewise.
 +      (mac_erase_rectangle, mac_draw_cg_image, mac_fill_rectangle)
 +      (mac_set_clip_rectangles) [USE_CG_DRAWING]: Likewise.
 +      (XCreatePixmap, XCreatePixmapFromBitmapData): Use Window
 +      instead of WindowRef in argument type.
 +      (XCreatePixmap) [!MAC_OS8]: Don't call SetPortWindowPort.
 +      (mac_invert_rectangle): Use CGContextSetBlendMode if available.
 +      (mac_set_clip_rectangles, mac_reset_clip_rectangles): Take argument F
 +      instead of DISPLAY.  All uses changed.
 +      (mac_handle_size_change): Don't call SET_FRAME_GARBAGED.
 +      (x_calc_absolute_position): Simplify so as not to use
 +      FRAME_PIXEL_WIDTH/FRAME_PIXEL_HEIGHT.
 +
 +      * macterm.h (XCreatePixmap, XCreatePixmapFromBitmapData): Use Window
 +      instead of WindowRef in argument type.
 +      (create_apple_event_from_event_ref, create_apple_event_from_drag_ref)
 +      [TARGET_API_MAC_CARBON]: Remove externs.
 +      (create_apple_event, mac_event_parameters_to_lisp)
 +      [TARGET_API_MAC_CARBON]: Add externs.
 +
 +      * mactoolbox.c (Vmac_ts_script_language_on_focus)
 +      (saved_ts_script_language_on_focus) [USE_MAC_TSM]: Remove externs.
 +      (XTread_socket) [USE_MAC_TOOLBAR]: Select window if its structure part
 +      is clicked.
 +      (x_activate_menubar): Remove extern for saved_menu_event_location.
 +      (create_apple_event_from_drag_ref) [TARGET_API_MAC_CARBON]:
 +      Move from mac.c.
 +
 +2008-04-23  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
 +
 +      * alloc.c [!SYSTEM_MALLOC && !SYNC_INPUT] (uninterrupt_malloc)
 +      [HAVE_GTK_AND_PTHREAD && !DOUG_LEA_MALLOC]: Don't use recursive mutex.
 +
 +2008-04-23  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32.c (stat): When Vw32_get_true_file_attributes is Qlocal, get
 +      attributes only for local files.
 +
 +      * w32proc.c (syms_of_ntproc): Change Vw32_get_true_file attributes
 +      default to Qlocal.
 +
 +2008-04-22  Juri Linkov  <juri@jurta.org>
 +
 +      * buffer.c (Fswitch_to_buffer): Change interactive spec to call
 +      read-buffer-to-switch instead of using the letter "B".
 +
 +2008-04-21  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * fileio.c (Qdefault_directory): New variable.
 +      (Fread_file_name): Use it to pass `dir' to the completion functions.
 +
 +2008-04-20  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * xdisp.c (pos_visible_p): Check if iterator stops on a display string.
 +
 +2008-04-19  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * keyboard.c (Vpre_help_message): Remove.
 +      (show_help_echo): Remove default C code.
 +
 +      * dired.c (directory_files_internal, file_name_completion):
 +      Only call ENCODE_FILE if the string is indeed decoded.
 +
 +2008-04-18  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * Makefile.in (TOOLKIT_DEFINES): Remove.
 +      (LIBW): Use a bit less #if, remove left over OPEN_LOOK stuff.
 +
 +2008-04-18  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
 +
 +      * Makefile.in (MAC_OBJ): Add mactoolbox.o.
 +      (mactoolbox.o): New target.
 +
 +      * mac.c [MAC_OSX] (select_and_poll_event, sys_select):
 +      Use mac_run_loop_run_once instead of CFRunLoopRunInMode.
 +
 +      * macfns.c (x_set_background_color, mac_window, x_create_tip_frame):
 +      Use mac_set_frame_window_background instead of XSetWindowBackground.
 +      (x_set_tool_bar_lines) [USE_MAC_TOOLBAR]:
 +      Use mac_is_window_toolbar_visible instead of IsWindowToolbarVisible.
 +      (x_set_name_internal) [TARGET_API_MAC_CARBON]: Use mac_set_window_title
 +      instead of SetWindowTitleWithCFString.
 +      (mac_update_proxy_icon) [TARGET_API_MAC_CARBON]: Remove BLOCK_INPUT.
 +      Move function to mactoolbox.c.
 +      (mac_update_title_bar) [TARGET_API_MAC_CARBON]:
 +      Use mac_set_window_modified instead of SetWindowModified.
 +      Add BLOCK_INPUT around mac_set_window_modified/mac_update_proxy_icon.
 +      (mac_window, x_create_tip_frame): Use mac_create_frame_window.
 +      (Fx_focus_frame): Use mac_front_non_floating_window instead of
 +      FrontNonFloatingWindow.  Use mac_activate_window instead of
 +      ActivateWindow.  Use mac_active_non_floating_window instead of
 +      ActiveNonFloatingWindow.
 +      (show_hourglass, hide_hourglass) [TARGET_API_MAC_CARBON]:
 +      Use mac_show_hourglass and mac_hide_hourglass.
 +      (compute_tip_xy) [TARGET_API_MAC_CARBON]: Use mac_get_global_mouse
 +      instead of GetGlobalMouse.
 +      (Fx_show_tip): Use mac_move_window/mac_size_window/mac_show_window
 +      instead of MoveWindow/SizeWindow/ShowWindow, respectively.
 +      Use mac_bring_window_to_front instead of BringToFront.
 +      (Qfile_name_history) [TARGET_API_MAC_CARBON]: Move extern to
 +      mactoolbox.c.
 +      (Fx_file_dialog) [TARGET_API_MAC_CARBON]: Move function body to
 +      mac_file_dialog in mactoolbox.c.  Use mac_file_dialog.
 +      (mac_nav_event_callback) [TARGET_API_MAC_CARBON]: Move function to
 +      mactoolbox.c.
 +
 +      * macgui.h [!HAVE_CARBON]: Include Quickdraw.h instead of QuickDraw.h.
 +      (XtPointer): Move typedef from macmenu.c.
 +      (enum button_type): Move enum from macmenu.c.
 +      (widget_value): Move typedef from macmenu.c.
 +      (M_APPLE, I_ABOUT, EXTRA_STACK_ALLOC, ARGV_STRING_LIST_ID)
 +      (DIALOG_LEFT_MARGIN, DIALOG_TOP_MARGIN, DIALOG_RIGHT_MARGIN)
 +      (DIALOG_BOTTOM_MARGIN, DIALOG_MIN_INNER_WIDTH, DIALOG_MAX_INNER_WIDTH)
 +      (DIALOG_BUTTON_BUTTON_HORIZONTAL_SPACE)
 +      (DIALOG_BUTTON_BUTTON_VERTICAL_SPACE, DIALOG_BUTTON_MIN_WIDTH)
 +      (DIALOG_TEXT_MIN_HEIGHT, DIALOG_TEXT_BUTTONS_VERTICAL_SPACE)
 +      (DIALOG_ICON_WIDTH, DIALOG_ICON_HEIGHT, DIALOG_ICON_LEFT_MARGIN)
 +      (DIALOG_ICON_TOP_MARGIN): Move defines from macmenu.c.
 +      (Selection): Move typedef from macselect.c.
 +      (RAM_TOO_LARGE_ALERT_ID, ABOUT_ALERT_ID) [MAC_OS8]: Move defines from
 +      macterm.c.
 +      (mac_set_window_title, mac_set_window_modified, mac_is_window_visible)
 +      (mac_is_window_collapsed, mac_bring_window_to_front)
 +      (mac_send_window_behind, mac_hide_window, mac_show_window)
 +      (mac_collapse_window, mac_front_non_floating_window)
 +      (mac_active_non_floating_window, mac_activate_window)
 +      (mac_move_window_structure, mac_move_window, mac_size_window)
 +      (mac_get_global_mouse, mac_is_window_toolbar_visible): New defines.
 +
 +      * macmenu.c [!TARGET_API_MAC_CARBON]: Move includes to mactoolbox.c.
 +      (enum mac_menu_kind): Move enum to mactoolbox.c.
 +      (min_menu_id): Move variable to mactoolbox.c.
 +      (quit_dialog_event_loop) [TARGET_API_MAC_CARBON]: Likewise.
 +      (DIALOG_WINDOW_RESOURCE): Move define to mactoolbox.c.
 +      (DIALOG_BUTTON_COMMAND_ID_OFFSET, DIALOG_BUTTON_COMMAND_ID_P)
 +      (DIALOG_BUTTON_COMMAND_ID_VALUE, DIALOG_BUTTON_MAKE_COMMAND_ID)
 +      [TARGET_API_MAC_CARBON]: Likewise.
 +      (XtPointer): Move typedef to macgui.h.
 +      (enum button_type): Move enum to macgui.h.
 +      (widget_value): Move typedef to macgui.h.
 +      (DIALOG_LEFT_MARGIN, DIALOG_TOP_MARGIN, DIALOG_RIGHT_MARGIN)
 +      (DIALOG_BOTTOM_MARGIN, DIALOG_MIN_INNER_WIDTH, DIALOG_MAX_INNER_WIDTH)
 +      (DIALOG_BUTTON_BUTTON_HORIZONTAL_SPACE)
 +      (DIALOG_BUTTON_BUTTON_VERTICAL_SPACE, DIALOG_BUTTON_MIN_WIDTH)
 +      (DIALOG_TEXT_MIN_HEIGHT, DIALOG_TEXT_BUTTONS_VERTICAL_SPACE)
 +      (DIALOG_ICON_WIDTH, DIALOG_ICON_HEIGHT, DIALOG_ICON_LEFT_MARGIN)
 +      (DIALOG_ICON_TOP_MARGIN): Move defines to macgui.h.
 +      (popup_activated_flag): Make variable non-static.
 +      (x_activate_menubar, install_menu_quit_handler, pop_down_menu)
 +      (add_menu_item, fill_menu, dispose_menus):
 +      Move functions to mactoolbox.c.
 +      (restore_show_help_function, menu_target_item_handler)
 +      (install_menu_target_item_handler, mac_handle_dialog_event)
 +      (install_dialog_event_handler, pop_down_dialog, create_and_show_dialog)
 +      [TARGET_API_MAC_CARBON]: Likewise.
 +      (menu_quit_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: Likewise.
 +      (mac_dialog) [!TARGET_API_MAC_CARBON]: Likewise.
 +      (find_and_call_menu_selection, name_is_separator): Make function
 +      non-static.
 +      (Vshow_help_function, timer_check) [TARGET_API_MAC_CARBON]: Move extern
 +      to mactoolbox.c.
 +      (set_frame_menubar): Don't call install_menu_quit_handler.
 +      (menu_item_selection): New variable.
 +      (mac_menu_show): Use create_and_show_popup_menu.
 +      (create_and_show_dialog) [TARGET_API_MAC_CARBON]: Don't return
 +      selection but set variable menu_item_selection.  All uses changed.
 +      (mac_fill_menubar): Rename from fill_menubar.  All uses changed.
 +      Call install_menu_quit_handler.  Move to mactoolbox.c.
 +
 +      * macselect.c [!TARGET_API_MAC_CARBON]: Don't include Scrap.h.
 +      (Selection): Move typedef to macgui.h.
 +      (Vselection_converter_alist, Qmac_scrap_name, Qmac_ostype)
 +      (Vmac_apple_event_map, Qmac_apple_event_class, Qmac_apple_event_id):
 +      Make variables non-static.
 +      (Vmac_dnd_known_types) [TARGET_API_MAC_CARBON]: Likewise.
 +      (mac_handle_apple_event, cleanup_all_suspended_apple_events):
 +      Make functions non-static.
 +      (Vmac_service_selection) [MAC_OSX]: Likewise.
 +      (mac_get_selection_from_symbol, get_flavor_type_from_symbol)
 +      (mac_valid_selection_target_p, mac_clear_selection)
 +      (mac_get_selection_ownership_info, mac_valid_selection_value_p)
 +      (mac_put_selection_value, mac_selection_has_target_p)
 +      (mac_get_selection_value, mac_get_selection_target_list)
 +      (init_apple_event_handler, install_drag_handler, remove_drag_handler):
 +      Move functions to mactoolbox.c.
 +      (mac_do_track_drag, mac_do_receive_drag) [TARGET_API_MAC_CARBON]:
 +      Likewise.
 +      (copy_scrap_flavor_data, mac_handle_service_event)
 +      (install_service_handler) [MAC_OSX]: Likewise.
 +      (syms_of_macselect) <Vmac_dnd_known_types>:
 +      Use mac_dnd_default_known_types.
 +
 +      * macterm.h (FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y):
 +      Move to mactoolbox.c.
 +      (HOURGLASS_WIDTH, HOURGLASS_HEIGHT): Change to 15.
 +      (Fx_selection_owner_p): Add EXFUN.
 +      (install_window_handler, remove_window_handler, XSetWindowBackground):
 +      Remove externs.
 +      (do_apple_menu) [!TARGET_API_MAC_CARBON]: Likewise.
 +      (mac_prepare_for_quickdraw) [USE_CG_DRAWING]: Likewise.
 +      (x_raise_frame, x_lower_frame, mac_alert_sound_play)
 +      (install_application_handler, mac_get_frame_bounds, mac_get_frame_mouse)
 +      (mac_convert_frame_point_to_global, mac_set_frame_window_background)
 +      (mac_update_begin mac_update_end, mac_frame_up_to_date, x_flush)
 +      (mac_create_frame_window, mac_dispose_frame_window, mac_begin_clip)
 +      (mac_end_clip, mac_create_scroll_bar, mac_dispose_scroll_bar)
 +      (mac_set_scroll_bar_bounds, mac_redraw_scroll_bar, mac_fill_menubar)
 +      (create_and_show_popup_menu, mac_get_selection_from_symbol)
 +      (mac_valid_selection_target_p, mac_clear_selection)
 +      (mac_get_selection_ownership_info, mac_valid_selection_value_p)
 +      (mac_put_selection_value, mac_selection_has_target_p)
 +      (mac_get_selection_value, mac_get_selection_target_list): Add externs.
 +      (mac_update_proxy_icon, mac_show_hourglass, mac_hide_hourglass)
 +      (mac_reposition_hourglass, mac_file_dialog, create_and_show_dialog)
 +      (mac_dnd_default_known_types) [TARGET_API_MAC_CARBON]: Likewise.
 +      (mac_run_loop_run_once) [MAC_OSX]: Likewise.
 +      (mac_dialog) [!TARGET_API_MAC_CARBON]: Likewise.
 +      (mac_begin_cg_clip, mac_end_cg_clip) [USE_CG_DRAWING]: Likewise.
 +      (x_set_toolkit_scroll_bar_thumb) [!USE_TOOLKIT_SCROLL_BARS]: Likewise.
 +      (x_scroll_bar_set_handle) [!USE_TOOLKIT_SCROLL_BARS]: Likewise.
 +
 +      * mactoolbox.c: New file.
 +
 +2008-04-18  Jason Rumney  <jasonr@gnu.org>
 +
 +      * dired.c (Ffile_attributes) [WINDOWSNT]: Cast uid and gid to unsigned.
 +
 +2008-04-18  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * character.c (Fmultibyte_char_to_unibyte):
 +      Return latin1 chars unchanged.
 +
 +      * fileio.c (Fexpand_file_name): Refine last fix so `nm' is only
 +      relocated if it points to `name'.
 +
 +2008-04-17  Kenichi Handa  <handa@m17n.org>
 +
 +      * data.c (Faset): Allow setting a multibyte character in an
 +      ASCII-only unibyte string.
 +
 +      * lisp.h (STRING_SET_MULTIBYTE): New macro.
 +
 +2008-04-16  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * Makefile.in: Don't use HAVE_GTK and don't -DUSE_GTK since it's now
 +      done in config.h.
 +
 +2008-04-16  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * character.c (Fchar_bytes, Fchar_width, Fstring_width)
 +      (Fchar_direction): Add usage in the docstring.
 +
 +2008-04-15  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * keyboard.c (read_key_sequence): Remove always-true checks.
 +
 +2008-04-14  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32font.c (w32font_open_internal): Set max_bounds.descent in
 +      compatibility struct, for better underline positioning.
 +
 +2008-04-13  David Hansen  <david.hansen@gmx.net>
 +
 +      * dbusbind.c (dbus-get-unique-name): Remove extra copying of name
 +      string.
 +
 +2008-04-12  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * m/hp800.h (XUINT, XSET): Remove.
 +
 +2008-04-12  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * fileio.c (Fexpand_file_name): Add declaration for `p' missing in
 +      previous change.
 +
 +2008-04-12  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * fileio.c (Fexpand_file_name): Tighten the scope of `p' and `o' vars.
 +      Relocate `nm' after calling DECODE_FILE, in case the GC was run.
 +
 +2008-04-11  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * keymap.h (map_keymap_canonical): Declare.
 +      * xmenu.c (single_keymap_panes): Use it.
 +
 +2008-04-11  Glenn Morris  <rgm@gnu.org>
 +
 +      * eval.c (Fdefvaralias): If the alias is bound and the target is not,
 +      set the target's value to that of the alias.
 +
 +2008-04-11  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * term.c (set_tty_color_mode): Left over typo.
 +
 +2008-04-10  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * fileio.c (Fmake_symbolic_link): Surround code by #ifdef S_IFLNK
 +      only after check for file name handler functions.  Signal, when
 +      native functionality is not supported.
 +      (syms_of_fileio): Declare it unconditionally.
 +
 +2008-04-10  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32menu.c (is_simple_dialog, simple_dialog_show): New functions.
 +      (Fx_popup_dialog): Handle simple yes/no questions as dialogs.
 +
 +      * w32.c (logon_network_drive): Also logon to remote drives that
 +      are mapped to drive letters.
 +
 +2008-04-10  Glenn Morris  <rgm@gnu.org>
 +
 +      * xdisp.c (truncate-partial-width-windows): Doc fix.
 +
 +2008-04-10  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * fileio.c (read_file_name_cleanup, Fread_file_name_internal):
 +      Move functions to minibuffer.el.
 +      (syms_of_fileio): Don't declare them.
 +
 +2008-04-09  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * minibuf.c (Vcompletion_auto_help): Move to minibuffer.el.
 +      (syms_of_minibuf): Remove its initialization.
 +
 +      * minibuf.c (temp_echo_area_glyphs): Remove unused function.
 +
 +2008-04-09  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * editfns.c (Ffield_string_no_properties): Fix typo in docstring.
 +
 +2008-04-09  Jason Rumney  <jasonr@gnu.org>
 +
 +      * makefile.w32-in (distclean): Delete makefile too.
 +      (maintainer-clean): New target.
 +
 +      * xdisp.c (redisplay_internal) [!WINDOWSNT]: Conditionalize last change.
 +
 +      * w32term.c (w32_compute_glyph_string_overhangs): Compute overhangs
 +      for new font backend and composite cases.
 +
 +2008-04-09  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * atimer.c (alarm_signal_handler): Call run_timers if not SYNC_INPUT.
 +      Most of the code moved to run_timers.
 +      (do_pending_atimers): Call run_timers.
 +      (run_timers): New function.
 +
 +      * sysdep.c (emacs_write): If SYNC_INPUT and pending_atimers,
 +      run atimers.
 +
 +      * process.c (wait_reading_process_output): The same as above.
 +
 +2008-04-09  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * minibuf.c (last_exact_completion): Remove variable.
 +      (Fdelete_minibuffer_contents, do_completion, Fminibuffer_complete)
 +      (complete_and_exit_1, complete_and_exit_2)
 +      (Fminibuffer_complete_and_exit, Fminibuffer_complete_word)
 +      (Fdisplay_completion_list, display_completion_list_1)
 +      (Fminibuffer_completion_help, Fself_insert_and_exit)
 +      (Fexit_minibuffer, Fminibuffer_message): Move functions to
 +      minibuffer.el.
 +      (syms_of_minibuf): Remove corresponding initializations.
 +
 +      * keyboard.c (Qdeactivate_mark): New var.
 +      (command_loop_1): Use it to call `deactivate-mark'.
 +      (syms_of_keyboard): Initialize it.
 +
 +      * xdisp.c (redisplay_internal): Reset tty's color_mode when switching
 +      to another frame.
 +      * frame.c (do_switch_frame): Refine the top_frame/async_visible code.
 +      Don't call set_tty_color_mode.
 +      (store_frame_param): Reset previous_frame rather than call
 +      set_tty_color_mode.
 +      * term.c (set_tty_color_mode): Rewrite.
 +      * dispextern.h (set_tty_color_mode): New type.
 +      * termchar.h (struct tty_display_info): Add `previous_color_mode'.
 +
 +2008-04-08  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * keymap.c (access_keymap): Remove the value 2 for t_ok which was used
 +      for generic chars, which do not exist any more in emacs-unicode.
 +
 +2008-04-08  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * coding.c (detect_coding_emacs_mule)
 +      (Ffind_operation_coding_system): Fix typo.
 +
 +2008-04-08  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32uniscribe.c (SNAME): Extract only symbol name.
 +
 +      * w32font.h (struct w32_metric_cache): New struct.
 +      (w32font_info): Use it.
 +      (W32METRIC_NO_ATTEMPT, W32METRIC_SUCCESS, W32METRIC_FAIL)
 +      (CACHE_BLOCKSIZE): New constants.
 +
 +      * w32font.c (Qja, Qko, Qzh): New symbols.
 +      (syms_of_w32font): Initialise them.
 +      (font_matches_spec): Use them to filter by language.
 +      (recompute_cached_metrics): Remove function.
 +      (compute_metrics, clear_cached_metrics): New functions.
 +      (w32font_encode_char): Use them to manage metric cache.
 +      (w32font_text_extents): Cache metrics for all glyphs on demand.
 +      Delay converting glyph indices to WORD until needed.
 +      (w32font_open_internal): Initialize metric cache to empty.
 +      (registry_to_w32_charset): Charset should always be a symbol.
 +      (fill_in_logfont, list_all_matching_fonts): Family should
 +      always be a symbol.
 +
 +2008-04-06  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32uniscribe.c (uniscribe_shape): Increase items buffer size.
 +      Give up if glyph indices not supported.  Use uniscribe obtained
 +      ABC widths for individual metrics.  Map glyph clusters back to
 +      characters using fClusterStart flag.  Return number of glyphs
 +      produced, not chars processed.
 +      (uniscribe_shape): Map char at FROM to current glyph.
 +
 +2008-04-05  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
 +
 +      * macmenu.c (fill_menu) [TARGET_API_MAC_CARBON]:
 +      Use SetMenuItemHierarchicalMenu.
 +
 +2008-04-05  Jason Rumney  <jasonr@gnu.org>
 +
 +      * image.c (pbm_load): Allow color values up to 65535.
 +      Throw an error if max_color_idx is outside the supported range.
 +      Report an error when image size is invalid.
 +      Read two bytes at a time when raw images have max_color_idx above 255.
 +
 +2008-04-05  Kenichi Handa  <handa@ni.aist.go.jp>
 +
 +      * ccl.c (ccl_driver): If ccl->quit_silently is nonzero, don't
 +      append "CCL: Quitted" when the CCL program is quitted.
 +      (setup_ccl_program): Initialize ccl->quit_silently to zero.
 +
 +      * ccl.h (struct ccl_program): New member quit_silently.
 +
 +2008-04-05  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * search.c (compile_pattern_1): Treat non-nil and non-string of
 +      search-spaces-regexp as nil.
 +
 +      * minibuf.c (Fassoc_string): Tweak docstring.
 +
 +2008-04-05  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * dired.c (Ffile_attributes): Support inode numbers wider than 32
 +      bits.  Remove ugly WINDOWSNT-specific kludge introduced on
 +      2008-03-14 to force inode be positive.
 +
 +      * w32.c (sys_chown, stat, fstat): Use S_* constants instead of
 +      _S_* ones, since we now use our own sys/stat.h.
 +      (stat, fstat): Don't mangle the inode number.
 +      (init_user_info): Don't restrict UID and GID to 0-60000 range.
 +
 +2008-04-04  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * frame.h (struct frame): Give one more bit to `visible' since we use
 +      values larger than 1 to indicate obscured frames on ttys.
 +
 +      * keymap.c (Qkeymap_canonicalize): New var.
 +      (Fmap_keymap_internal): New fun.
 +      (describe_map): Use keymap-canonicalize.
 +
 +      * undo.c (last_boundary_buffer, last_boundary_position): New vars.
 +      (Fundo_boundary): Set them.
 +      (syms_of_undo): Initialize them.
 +      (record_point): Use them instead of last_point_position*.
 +      (last_undo_buffer): Change type.
 +
 +2008-04-04  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32font.c (w32font_text_extents): Use font's ascent and descent.
 +      (recompute_cached_metrics): Don't set ascent and descent per char.
 +
 +      * w32uniscribe.c (uniscribe_check_otf): Fix last change.
 +      (uniscribe_check_otf): Add GC protection before consing.
 +      Rearrange loop for counting features.
 +
 +2008-04-03  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * insdel.c (insert_from_buffer_1): Don't compare bytes in destination
 +      buffer with byte-size of source buffer.
 +
 +2008-04-03  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * callint.c (Fcall_interactively): Handle temporary region even
 +      when shift-select-mode is off.
 +
 +2008-04-03  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32uniscribe.c (uniscribe_check_otf): Sanity check otf_spec.
 +
 +2008-04-03  Kenichi Handa  <handa@m17n.org>
 +
 +      * coding.c (CATEGORY_MASK_ANY): Add CATEGORY_MASK_UTF_16_AUTO.
 +      (CATEGORY_MASK_UTF_16): Likewise.
 +      (detect_coding_utf_16): Add heuristics to reject utf-16 for a
 +      binary file.
 +      (detect_coding): Add null-byte detection for a binary file.
 +      (detect_coding_system): Likewise.
 +
 +2008-04-03  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32uniscribe.c: New file.
 +
 +      * font.h (uniscribe_font_driver) [WINDOWSNT]: Declare for w32fns.c.
 +
 +      * w32font.h (uniscribe_check_otf): Declare for w32font.c.
 +
 +      * w32font.c (Qbalinese, Qbuginese, Qbuhid, Qcuneiform, Qcypriot)
 +      (Qdeseret, Qglagolitic, Qgothic, Qhanunoo, Qkharoshthi)
 +      (Qlimbu, Qlinear_b, Qold_italic, Qold_persian, Qosmanya)
 +      (Qphags_pa, Qphoenician, Qshavian, Qsyloti_nagri)
 +      (Qtagalog, Qtagbanwa, Qtai_le, Qtifinagh, Qugaritic)
 +      (Qphonetic): New symbols.
 +      (syms_of_w32font): Initialize them.
 +      (font_supported_scripts): Use them.
 +      (w32font_list_family): List all charsets.
 +      (w32font_text_extents, recompute_cached_metrics): Fix metric
 +      calculations.
 +      (w32_enumfont_pattern_entity): Make full_type a DWORD.
 +      Give opentype fonts their own format.
 +      (font_matches_spec): New arguments backend and logfont.
 +      Handle :otf spec for uniscribe backend.
 +      (add_font_entity_to_list): Match truetype fonts in uniscribe backend.
 +      (fill_in_logfont): Use DEFAULT_CHARSET when charset not supplied.
 +
 +      * w32fns.c (Fx_create_frame): Conditionally register uniscribe
 +      font backend.
 +      (globals_of_w32fns): Initialize uniscribe font backend.
 +
 +      * makefile.w32-in (CONFIG_H): New variable.  Use it to clean up
 +      dependencies.
 +      (w32uniscribe.$(O)): New file to build.
 +      (FONT_OBJ): Include w32uniscribe.$(O).
 +      (LIBS): Add uniscribe libraries.
 +
 +      * ftfont.c (ftfont_get_open_type_spec): Check spec->script, not val.
 +
 +2008-04-02  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * callint.c (Vshift_select_mode): New var.
 +      (Finteractive): Document new ^ spec.
 +      (Fcall_interactively): Call handle-shift-selection if the ^ spec
 +      is present.
 +
 +      * keyboard.c (Vthis_command_keys_shift_translated): New var.
 +      (command_loop_1): Avoid running the direct display versions of
 +      forward-char and backward-char if shift-selection may occur.
 +      (read_key_sequence): Set Vthis_command_keys_shift_translated if
 +      shift-translation takes place.
 +
 +      * buffer.c (Vtransient_mark_mode): Move docstring to simple.el to
 +      avoid clobbering by define-minor-mode.
 +
 +      * cmds.c (Fforward_char, Fbackward_char, Fforward_line)
 +      (Fbeginning_of_line, Fend_of_line): Add ^ interactive spec.
 +
 +      * syntax.c (Fforward_word): Add ^ interactive spec.
 +
 +      * window.c (Fscroll_up, Fscroll_down, Fscroll_left)
 +      (Fscroll_right): Add ^ interactive spec.
 +
 +2008-04-01  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * xdisp.c (try_window_id): Don't forget to reset delta_bytes.
 +
 +      * casefiddle.c (casify_object): Fix up int/EMACS_INT mixup.
 +
 +      * charset.c (Funibyte_charset, Fset_unibyte_charset): Remove.
 +
 +2008-03-31  Juri Linkov  <juri@jurta.org>
 +
 +      * window.c (Fdisplay_buffer): Reinitialize `tem' to nil.
 +
 +2008-03-30  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * gtkutil.c (xg_set_geometry): Fix indentation.
 +      (xg_resize_outer_widget): Remove.
 +      (x_wm_size_hint_off): Fix indentation.
 +      (xg_frame_set_char_size): Call flush_and_sync after
 +      gtk_window_resize.
 +      (x_wm_set_size_hint): Pass NULL as geometry window to
 +      gtk_window_set_geometry_hints due to Gtk+ bug nr 68668.
 +      Add menu bar and tool bar height to base height.
 +      (xg_update_frame_menubar, free_frame_menubar)
 +      (xg_tool_bar_detach_callback, xg_tool_bar_attach_callback)
 +      (update_frame_tool_bar, free_frame_tool_bar):
 +      Change xg_resize_outer_widget to xg_frame_set_char_size.
 +
 +2008-03-30  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * dbusbind.c (QCdbus_timeout): New D-Bus internal symbol.
 +      (Fdbus_call_method): New parameter TIMEOUT.
 +      (dbus-send-signal): Optimize UNGCPRO call.
 +
 +2008-03-29  Juri Linkov  <juri@jurta.org>
 +
 +      * window.c (Fdisplay_buffer): Move call to
 +      Vsplit_window_preferred_function out of conditions that check
 +      if window is eligible for vertical splitting.
 +      When Vsplit_window_preferred_function is non-nil, call it and use
 +      its non-nil return value as window.  Otherwise, continue doing
 +      vertical splitting using Fsplit_window with arg horflag=nil.
 +      (syms_of_window) <Vsplit_window_preferred_function>: Change the
 +      default value from `split-window' to nil.
 +
 +2008-03-29  Juri Linkov  <juri@jurta.org>
 +
 +      * callint.c (Fcall_interactively): Revert 2008-03-16 change
 +      for interactive code letters 'b' and 'B'.
 +
 +2008-03-29  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * fileio.c (Fexpand_file_name): Convert the value of $HOME to a
 +      multibyte string.
 +
 +2008-03-29  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * keyboard.c (pending_funcalls): New var.
 +      (timer_check): Run it.
 +      (syms_of_keyboard): Initialize it.
 +      * terminal.c (Qrun_hook_with_args, Qdelete_terminal_functions)
 +      (Vdelete_terminal_functions): New vars.
 +      (syms_of_terminal): Initialize them.
 +      (Fdelete_terminal): Run delete-terminal-functions.
 +      * xdisp.c (safe_eval): Rewrite.
 +      (safe_call2): New fun.
 +      * frame.c (Qdelete_frame_functions): New var.
 +      (syms_of_frame): Initialize it.
 +      (Fdelete_frame): Use it and use safe_call2 and pending_funcalls.
 +      * lisp.h (safe_call2, pending_funcalls): Declare.
 +
 +2008-03-28  Andreas Schwab  <schwab@suse.de>
 +
 +      * indent.c (Fmove_to_column): Move declaration before statements.
 +
 +2008-03-27  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * frame.h (enum fullscreen_type): Give it a name.  Move it before use.
 +      (struct frame): Use bit fields for boolean vars.
 +
 +      * process.c (server_accept_connection): Simplify naming.
 +      (emacs_get_tty_pgrp): Use SDATA.
 +
 +      * coding.c (decode_coding_object): Fix last change.
 +
 +2008-03-27  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32fns.c (start_hourglass): Suppress hourglass on tty frames.
 +
 +2008-03-27  Kenichi Handa  <handa@ni.aist.go.jp>
 +
 +      * charset.c (Fdefine_charset_internal): Change the way of
 +      registering charsets in Vcharset_order_list.
 +      (syms_of_charset): Make the charset `eight-bit' supplementary.
 +
 +2008-03-26  Alexandre Oliva  <aoliva@redhat.com>  (tiny change)
 +
 +      * regex.c (EXTEND_BUFFER): Change order of pointer addition
 +      operations, to avoid having the difference between pointers
 +      overflow.
 +
 +2008-03-26  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * indent.c (check_display_width): New fun.
 +      (scan_for_column): Use it.
 +
 +      * data.c (syms_of_data): Mark most-positive-fixnum and
 +      most-negative-fixnum as constants.
 +
 +      * xdisp.c (redisplay_internal): Reset selected_frame earlier.
 +
 +      * indent.c (scan_for_column): Extract from current_column_1.
 +      Merge with the same code from Fmove_to_column.
 +      (current_column_1, Fmove_to_column): Use it.
 +
 +2008-03-25  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * keymap.c (map_keymap_internal): New fun.
 +      (map_keymap): Use it.
 +      (Fmap_keymap_internal): New fun.
 +      (Fmap_keymap): Remove left-out test from before make_save_value.
 +
 +      * keymap.c (Fmap_keymap): Use `map-keymap-sorted.
 +
 +      * frame.c (Fmodify_frame_parameters, x_set_frame_parameters):
 +      Use XCAR/XCDR.
 +
 +      * process.h (struct Lisp_Process): Remove filter_multibyte.
 +      * process.c (QCfilter_multibyte): Remove.
 +      (setup_process_coding_systems): Don't use filter_multibyte.
 +      (Fstart_process, Fmake_network_process): Don't set filter_multibyte.
 +      (read_process_output): Don't adjust multibyteness to filter_multibyte.
 +      (Fset_process_filter_multibyte): Change the coding-system to
 +      approximate the previous behavior.
 +      (Fprocess_filter_multibyte_p): Get the multibyteness straight from the
 +      coding-system.
 +
 +      * coding.c (decode_coding_object): When not decoding into a buffer,
 +      obey the coding system's preference of (uni|multi)byte.
 +
 +2008-03-24  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * casefiddle.c (casify_object): Avoid pathological N^2 worst case if
 +      every char is changed and has a different byte-length.
 +      (Fupcase_word, Fdowncase_word, Fcapitalize_word, operate_on_word):
 +      Fix int -> EMACS_INT.
 +
 +2008-03-23  David Hansen  <david.hansen@gmx.net>
 +
 +      * dbusbind.c (xd_read_message): Remove extra copying of message
 +      strings.  Check for NULL `interface' or `member'.
 +
 +2008-03-22  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * w32.c (readdir): If FindFirstFile/FindNextFile return in
 +      cFileName a file name that includes `?' characters, use the 8+3
 +      alias in cAlternateFileName instead.
 +
 +2008-03-21  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * buffer.c (enlarge_buffer_text): Fix int -> EMACS_INT.
 +
 +2008-03-20  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * intervals.c (temp_set_point, temp_set_point_both): Use EMACS_INT.
 +      (set_point, set_point_both): Use EMACS_INT.  Remove `buffer' arg,
 +      work on current_buffer only instead (that was already the case
 +      for some of the code anyway).
 +      * buffer.h (set_point, set_point_both): Remove buffer arg, use long int.
 +      (temp_set_point, temp_set_point_both): Use EMACS_INT.
 +      (SET_PT, SET_PT_BOTH): Adjust.
 +      * intervals.h (set_point, temp_set_point, set_point_both)
 +      (temp_set_point_both): Remove redundant declarations.
 +
 +2008-03-20  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * fileio.c (Finsert_file_contents):
 +      * lread.c (Feval_buffer): Use BUF_TEMP_SET_PT.
 +      * buffer.h (BUF_SET_PT): Remove.  set_point_both doesn't work right
 +      when buffer != current_buffer anyway.
 +
 +2008-03-20  Andreas Schwab  <schwab@suse.de>
 +
 +      * callint.c (Fcall_interactively) [case 'B']: Use other-buffer
 +      as default.
 +
 +2008-03-19  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32fns.c (hourglass_timer, hourglass_hwnd): New variables.
 +      (syms_of_w32fns): Initialize them.
 +      (HOURGLASS_ID): New constant.
 +      (x_window_to_frame): Don't check hourglass_window.
 +      (w32_wnd_proc) <WM_TIMER>: Handle hourglass_timer.
 +      (w32_wnd_proc) <WM_EXITMENULOOP>: Set pending hourglass cursor.
 +      (w32_wnd_proc) <WM_SETCURSOR>: Set the hourglass or current cursor.
 +      (w32_wnd_proc) <WM_EMACS_SETCURSOR>: Set frame's current_cursor.
 +      Only change the cursor if hourglass is not active.
 +      (Fx_create_frame): Initialize frame's current_cursor.
 +      (hourglass_atimer): Remove.
 +      (hourglass_started): New function.
 +      (start_hourglass, cancel_hourglass, hide_hourglass): Adapt to w32.
 +      (show_hourglass): Adapt to w32, changing argument to frame.
 +
 +      * w32term.h (struct w32_output): Remove hourglass_window.
 +      Add current_cursor.
 +
 +      * eval.c (call_debugger, Fsignal):
 +      * keyboard.c (recursive_edit_1, cmd_error, Ftop_level)
 +      (command_loop_1, Fread_key_sequence, Fread_key_sequence_vector)
 +      (Fexecute_extended_command, cancel_hourglass_unwind):
 +      * minibuf.c (read_minibuf):
 +      * fns.c (Fy_or_n_p): Enable hourglass when HAVE_WINDOW_SYSTEM.
 +
 +2008-03-19  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * window.c (run_funs): New fun.
 +      (run_window_configuration_change_hook): Use it to run the buffer-local
 +      and the global part of the hook.
 +
 +      * xdisp.c (format_mode_line_unwind_data): Add window argument.
 +      (unwind_format_mode_line): Restore selected window.
 +      (x_consider_frame_title, Fformat_mode_line): Set selected window.
 +
 +2008-03-17  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * editfns.c (Fchar_equal): Check they are valid characters.
 +
 +      * buffer.h (Fbuffer_list): Declare (for use in callint.c).
 +
 +2008-03-17  Andreas Schwab  <schwab@suse.de>
 +
 +      * regex.c (re_match_2_internal): Properly match raw 8-bit bytes
 +      against a charset.
 +
 +      * lisp.h (Fbuffer_list): Declare.
 +
 +2008-03-17  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * gtkutil.c (free_frame_tool_bar): Only call gtk_container_remove if
 +      handlebox_widget is != 0.
 +
 +2008-03-16  Juri Linkov  <juri@jurta.org>
 +
 +      * callint.c (Fcall_interactively): For interactive code letters
 +      'b' and 'B' put the buffer list into the list of default "future"
 +      values of the minibuffer.
 +
 +2008-03-16  Andreas Schwab  <schwab@suse.de>
 +
 +      * keyboard.c (read_key_sequence): Fix downcasing of letters with
 +      modifiers.
 +
 +      * regex.c (re_match_2_internal): Correct matching of a charset
 +      against latin-1 characters.
 +
 +2008-03-16  Kenichi Handa  <handa@m17n.org>
 +
 +      * coding.c (CHAR_STRING_ADVANCE_NO_UNIFY)
 +      (STRING_CHAR_ADVANCE_NO_UNIFY): New macros.
 +      (coding_alloc_by_making_gap): Fix the way to preserve data in the gap.
 +      (alloc_destination): Fix the 2nd arg to coding_alloc_by_making_gap.
 +      (encode_coding_utf_8): Use CHAR_STRING_ADVANCE_NO_UNIFY instead of
 +      CHAR_STRING_ADVANCE.
 +      (produce_chars): Fix for the case that the source and the
 +      destination are the same buffer.  Use CHAR_STRING_ADVANCE_NO_UNIFY
 +      instead of CHAR_STRING_ADVANCE.
 +      (consume_chars): Use STRING_CHAR_ADVANCE_NO_UNIFY instead of
 +      STRING_CHAR_ADVANCE.
 +
 +2008-03-15  Andreas Schwab  <schwab@suse.de>
 +
 +      * regex.c (re_match_2_internal): Correct matching of eight bit
 +      characters in unibyte strings.
 +
 +2008-03-15  Martin Rudalics  <rudalics@gmx.at>
 +
 +      * buffer.c (overlays_in, Foverlays_in): Include empty overlays
 +      at end of range when it coincides with the end of the buffer.
 +
 +2008-03-14  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * dired.c (Ffile_attributes) [WINDOWSNT]: Force inode be positive.
 +
 +      * w32fns.c (globals_of_w32fns, Fx_create_frame): Fix last change.
 +
 +2008-03-14  Jason Rumney  <jasonr@gnu.org>
 +
 +      * editfns.c (initial_tz): New variable.
 +      (syms_of_editfns): Initialize it.
 +      (Fset_time_zone_rule): Set it when first called.
 +      Use it when TZSTRING is nil.
 +
 +      * w32fns.c (MONITOR_DEFAULT_TO_NEAREST, struct MONITOR_INFO)
 +      (MonitorFromPoint_Proc, GetMonitorInfo_Proc): New definitions.
 +      (monitor_from_point_fn, get_monitor_info_fn): New globals.
 +      (globals_of_w32fns): Initialize them.
 +      (compute_tip_xy): Use them to position tooltips.
 +
 +2008-03-14  Glenn Morris  <rgm@gnu.org>
 +
 +      * emacs.c (main): Revert previous change.
 +      (standard_args): Revert -internal-script back to -scriptload,
 +      and remove the long-option form.
 +
 +2008-03-13  Glenn Morris  <rgm@gnu.org>
 +
 +      * emacs.c (main, standard_args): Rename -scriptload to -internal-script.
 +      Remove option -enable-font-backend.
 +
 +2008-03-12  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * buffer.c (Fswitch_to_buffer): Fall back on pop-to-buffer.
 +
 +2008-03-11  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * xterm.c (x_connection_closed): For GTK: If this is the last
 +      terminal just exit without closing the display.
 +
 +2008-03-11  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32font.c (w32font_full_name): Use floor to round.
 +
 +2008-03-10  Dhruva Krishnamurthy  <dhruvakm@gmail.com>  (tiny change)
 +
 +      * sound.c (alsa_configure): Declare vol at beginning of block.
 +
 +      * fontset.c (Ffontset_info): Remove extra semicolon.
 +
 +2008-03-10  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * fileio.c (Fsubstitute_in_file_name): Fix up computation of maximum
 +      size of resulting string.
 +
 +2008-03-10  Jason Rumney  <jasonr@gnu.org>
 +
 +      * dispnew.c (adjust_glyph_matrix): Initialize window_height.
 +
 +2008-03-10  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
 +
 +      * xdisp.c (handle_single_display_spec): Undo 2007-10-16 changes.
 +      Don't pretend as if characters with display property haven't been
 +      consumed for string-replacing-string case.
 +
 +2008-03-08  Kim F. Storm  <storm@cua.dk>
 +
 +      * xdisp.c (GET_NEXT_DISPLAY_ELEMENT): New macro.
 +      (get_next_display_element, next_element_from_string)
 +      (next_element_from_ellipsis, next_element_from_buffer): Use it.
 +
 +2008-03-08  Andreas Schwab  <schwab@suse.de>
 +
 +      * process.h (struct Lisp_Process): Declare bit fields as unsigned.
 +
 +2008-03-06  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32font.c (w32_registry): Take font_type argument.  Use ANSI
 +      when charset not specified.  Only translate ANSI to unicode when
 +      font_type is truetype.
 +      (w32font_coverage_ok): New function.
 +      (add_font_entity_to_list): Use it to filter unsuitable fonts.
 +
 +2008-03-05  Kenichi Handa  <handa@ni.aist.go.jp>
 +
 +      * lread.c (Fread_char): Resolve modifiers.
 +      (Fread_char_exclusive): Likewise.
 +
 +      * character.c (char_resolve_modifier_mask): New function.
 +      (char_string): Use char_resolve_modifier_mask.
 +      (Fchar_resolve_modifiers): New function.
 +      (syms_of_character): Declare Fchar_resolve_modifiers as Lisp
 +      function.
 +
 +2008-03-04  Jason Rumney  <jasonr@gnu.org>
 +
 +      * makefile.w32-in: Always include w32font.c in the build.
 +      * w32font.c: Wrap in USE_FONT_BACKEND conditional.
 +
 +2008-03-04  Andreas Schwab  <schwab@suse.de>
 +
 +      * Makefile.in (clean): Remove emacs-*.*.* instead of emacs-*.
 +      (versionclean): Likewise.
 +
 +2008-03-04  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * .cvsignore: Add oo.
 +
 +2008-03-03  Andreas Schwab  <schwab@suse.de>
 +
 +      * coding.c (decode_coding_object): Inhibit gap shrinking while
 +      decoding in place.
 +
 +2008-03-03  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * w32term.c: Remove unused include "gnu.h".
 +      * makefile.w32-in (w32term.o): Don't depend on gnu.h.
 +
 +      * gnu.h: Rename to ...
 +      * emacs-icon.h: ... this.
 +      * xterm.c: Use emacs-icon.h instead of gnu.h.
 +      * Makefile (xterm.o): Depend on emacs-icon.h, not gnu.h.
 +
 +2008-03-03  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * w32font.c: Include math.h.
 +
 +2008-03-03  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32font.c (recompute_cached_metrics): Change font arg to w32font_info.
 +      Compute options separately.
 +      (w32font_open_internal): Set glyph_idx before caching metrics.
 +
 +      * w32font.h (NTM_PS_OPENTYPE, NTM_TT_OPENTYPE, NTM_TYPE1):
 +      Define if system headers don't.
 +      (struct w32font_info): Enlarge ascii_metrics.  Add glyph_idx.
 +      (w32font_encode_char): Don't declare here.
 +
 +      * w32font.c (Quniscribe, QCformat): New symbols.
 +      (syms_of_w32font): Define them.
 +      (w32font_has_char): Indicate uncertainty.
 +      (w32font_encode_char): Encode as glyph point.  Make static.
 +      (recompute_cached_metrics): New function.
 +      (w32font_open_internal): Use it.  Set font to use glyph points
 +      initially.  Set format based on type of font.
 +      (w32font_text_extents, w32font_draw): Optionally use glyph points.
 +      (w32_enumfont_pattern_entity): Accept backend arg.  Set type based
 +      on it.  Set format based on information available here.
 +      (add_font_entity_to_list): Identify backend based on opentype_only.
 +
 +2008-03-02  Andreas Schwab  <schwab@suse.de>
 +
 +      * ftfont.c (ftfont_pattern_entity): Fix aliasing violations.
 +
 +      * coding.c (decode_coding_big5, produce_chars):
 +      Fix typos in last change.
 +
 +2008-03-02  Kentaro Ohkouchi  <nanasess@fsm.ne.jp>
 +
 +      * gnu.h: New icon.
 +
 +2008-03-02  Kenichi Handa  <handa@m17n.org>
 +
 +      * coding.c (decode_coding_utf_8): When eol-type of CODING is
 +      `dos', don't decode '\r' if that is the last in the source.
 +      (decode_coding_utf_16, decode_coding_emacs_mule)
 +      (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
 +      (decode_coding_raw_text, decode_coding_charset): Likewise.
 +      (produce_chars): Don't decode EOL here.  Use EMACS_INT.
 +
 +2008-03-01  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32font.c (w32font_full_name): Report point size for scalable fonts.
 +
 +2008-03-01  Kim F. Storm  <storm@cua.dk>
 +
 +      * dispextern.h (CHAR_GLYPH_SPACE_P): Check for default face.
 +
 +2008-03-01  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32font.c (w32font_full_name): New function.
 +      (w32font_open_internal): Use it.
 +
 +2008-03-01  Kim F. Storm  <storm@cua.dk>
 +
 +      * dispnew.c (line_draw_cost): Fix invalid glyph check.
 +
 +2008-03-01  Jason Rumney  <jasonr@gnu.org>
 +
 +      * font.c (font_unparse_fcname): Increase len when style is a symbol.
 +
 +2008-03-01  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * xterm.c (handle_one_xevent): For Gtk+ and ConfigureNotify, call
 +      xg_frame_resized when the event is for the edit widget.
 +
-       (xg_frame_resized): Renamed from xg_resize_widgets.  Remove all
++      * gtkutil.h (xg_frame_resized): Rename from xg_resize_widgets.
 +
 +      * gtkutil.c (xg_resize_outer_widget): Only do one of set_geometry or
 +      set_char_size.
-       (intern_font_field): Changed argument.  Change caller.  If digits
++      (xg_frame_resized): Rename from xg_resize_widgets.  Remove all
 +      operations on widgets here.  Just set frame size if needed.
 +      (flush_and_sync, x_wm_size_hint_off, xg_pack_tool_bar): New functions.
 +      (xg_frame_set_char_size): Call x_wm_size_hint_off before resizing.
 +      (x_wm_set_size_hint): Set size hints on the edit widget only, not
 +      the whole frame.
 +      (xg_create_tool_bar): Move attachment of the tool bar to
 +      xg_pack_tool_bar.  Do not attach the tool bar if there are no items.
 +      (free_frame_tool_bar): Remove call to SET_FRAME_GARBAGED.
 +
 +2008-03-01  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32fns.c (w32_msg_pump): Disable debug code.
 +
 +2008-03-01  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
 +
 +      * m/intel386.h [MAC_OSX || DARWIN]: Define NO_ARG_ARRAY if _LP64.
 +
 +2008-02-29  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * xdisp.c (next_overlay_string): Don't set
 +      overlay_strings_at_end_processed_p if we're currently reading from
 +      a display string.
 +
 +2008-02-29  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * xdisp.c (get_overlay_strings_1): Fix typo.
 +
 +2008-02-29  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * xdisp.c (get_overlay_strings_1): Add missing argument type.
 +
 +2008-02-28  Kenichi Handa  <handa@ni.aist.go.jp>
 +
 +      * ftfont.c (ftfont_match): Explicitly set pixelsize in pattern.
 +
 +      * xdisp.c (display_mode_element): Cancel the previous change.
 +      (decode_mode_spec): Likewise.
 +      (handle_auto_composed_prop): Don't make composition if it->string
 +      is a string.
 +
 +2008-02-27  Kim F. Storm  <storm@cua.dk>
 +
 +      * lisp.h (GLYPH): Change type from int to struct with separate char
 +      and face_id members.
 +      (GLYPH_MASK_FACE, GLYPH_MASK_CHAR): Delete macros.
 +      (GLYPH_CHAR, GLYPH_FACE): Remove slow versions with frame arg.
 +      (FAST_GLYPH_CHAR, FAST_GLYPH_FACE): Rename macros to ...
 +      (GLYPH_CHAR, GLYPH_FACE): ... these.  Change users.
 +      (FAST_MAKE_GLYPH, MAKE_GLYPH): Remove.  Rewrite users to use ...
 +      (SET_GLYPH, SET_GLYPH_CHAR, SET_GLYPH_FACE): ... these macros instead.
 +      (GLYPH_CODE_CHAR, GLYPH_CODE_FACE, GLYPH_CODE_P)
 +      (GLYPH_CODE_CHAR_VALID_P, SET_GLYPH_FROM_GLYPH_CODE): New macros to
 +      handle new Lisp glyph code encoding, either an integer or a cons.
 +
 +      * disptab.h (GLYPH_SIMPLE_P): Rewrite.
 +      (GLYPH_ALIAS): Delete.
 +      (GLYPH_ALIAS_P, GLYPH_FOLLOW_ALIASES): Rewrite.
 +      (GLYPH_LENGTH, GLYPH_STRING): Use GLYPH_CHAR.
 +      (GLYPH_FROM_CHAR): Replace macro by ...
 +      (SET_GLYPH_FROM_CHAR): ... this macro.  Change users.
 +
 +      * dispextern.h (CHAR_GLYPH_SPACE_P): Simplify.
 +      (GLYPH_FROM_CHAR_GLYPH): Replace macro by ...
 +      (SET_GLYPH_FROM_CHAR_GLYPH): ... this macro.  Change users.
 +      (GLYPH_INVALID_P): New macro.
 +      (spec_glyph_lookup_face): Update prototype.
 +
 +      * dispnew.c (line_draw_cost): Adapt to new glyph type.
 +      (build_frame_matrix_from_leaf_window): Adapt to new glyph type and
 +      new glyph code encoding.
 +      (spec_glyph_lookup_face): No return value; update passed glyph instead.
 +      (init_display): Use SET_CHAR_GLYPH to initialize space_glyph.
 +
 +      * xdisp.c (get_next_display_element, next_element_from_display_vector):
 +      Adapt to new glyph type and new glyph code encoding.
 +
 +      * term.c (encode_terminal_code, produce_special_glyphs): Likewise.
 +
 +      * indent.c (current_column, current_column_1, Fmove_to_column)
 +      (compute_motion): Adapt to new glyph code encoding.
 +
 +      * msdos.c (IT_write_glyphs): Adapt to new glyph type.
 +
 +2008-02-27  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * process.c (wait_reading_process_output): Check for window
 +      changes caused by timers.
 +      Suggested by Johan Bockgård.
 +
 +2008-02-27  Glenn Morris  <rgm@gnu.org>
 +
 +      * emacs.c (USAGE1): Add `--disable-font-backend'.
 +
 +2008-02-27  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * fileio.c (Finsert_file_contents): Don't reset undo_list if no change
 +      is made to the buffer.
 +
 +2008-02-26  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * dispextern.h (face_at_buffer_position, face_for_overlay_string)
 +      (face_at_string_position):
 +      * xfaces.c (face_at_buffer_position, face_for_overlay_string)
 +      (face_at_string_position):
 +      * xdisp.c (display_string, next_overlay_change):
 +      * buffer.h (overlays_at):
 +      * buffer.c (overlays_at): Use EMACS_INT for buffer positions.
 +      Update callers.
 +
 +2008-02-26  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * editfns.c (Fformat): Doc fix.
 +
 +2008-02-26  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * font.c (Ffont_spec, Ffont_at): Fix typos in docstrings.
 +      (Ffont_put, Flist_families, Ffont_fill_gstring, Ffont_drive_otf)
 +      (Ffont_otf_alternates, Fquery_font): Doc fixes.
 +
 +2008-02-25  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * buffer.c (Fbuffer_swap_text): New function.
 +      (syms_of_buffer): Defsubr it.
 +
 +2008-02-25  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * keyboard.c (command_loop_1): Revert 2006-10-09 change.
 +
 +2008-02-25  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32font.c (w32font_draw): Draw one character at a time when padding.
 +
 +2008-02-25  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * window.c (Fdelete_window, Fadjust_window_trailing_edge):
 +      Handle a nil arg.  Use run_window_configuration_change_hook.
 +      (delete_window, adjust_window_trailing_edge): Don't handle nil any more.
 +      (Fenlarge_window, Fshrink_window, Fset_window_configuration):
 +      Use run_window_configuration_change_hook.
 +
 +2008-02-25  Kenichi Handa  <handa@ni.aist.go.jp>
 +
 +      * xdisp.c (x_produce_glyphs): For a visible glyph, assure at least
 +      1-pixel width.
 +
 +2008-02-25  Kenichi Handa  <handa@ni.aist.go.jp>
 +
 +      * xdisp.c (fill_glyph_string): Pay attention to glyph->padding_p.
 +      (append_glyph): Set glyph->pixel_width and glyph->padding_p to 1
 +      if the glyph in the font is zero pixel with.
 +
 +      * dispextern.h (struct glyph_string): New member padding_p.
 +
 +      * w32font.c (w32font_draw): Pay attention to s->padding_p.
 +
 +      * ftxfont.c (ftxfont_draw): Pay attention to s->padding_p.
 +
 +      * xfont.c (xfont_draw): Pay attention to s->padding_p.
 +
 +      * xftfont.c (xftfont_draw): Pay attention to s->padding_p.
 +
 +      * font.c: If the font driver doesn't have `shape' function, return Qnil.
 +
 +2008-02-25  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32fns.c (enum_font_cb2): Don't use raster fonts for Unicode.
 +
 +2008-02-24  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      Allow fine-grained image-cache flushing.
 +      * dispextern.h (struct image): Add `dependencies' field.
 +      (clear_image_caches): Change arg to Lisp_Object.
 +      * image.c (make_image): Initialize `dependencies' field.
 +      (clear_image_cache): Change arg to allow fine-grained flushing.
 +      Perform the flush even if image-cache-eviction-delay is nil.
 +      (clear_image_caches): Change arg to Lisp_Object.
 +      (Fclear_image_cache): Expand meaning of the argument.
 +      (mark_image): Mark `dependencies' field.
 +      * xfaces.c (clear_face_cache): Adapt arg to call to clear_image_caches.
 +      (lface_hash): Use XHASH rather than XFASTINT.
 +      (face_at_buffer_position): Fix int -> EMACS_INT position.
 +      * xdisp.c (next_overlay_change): Fix int -> EMACS_INT position.
 +      (select_frame_for_redisplay): Remove code duplication.
 +      (redisplay_internal): Adapt arg to call to clear_image_caches.
 +
 +2008-02-24  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * s/vms4-0.h:
 +      * s/vms4-2.h:
 +      * s/vms4-4.h:
 +      * s/vms5-5.h: Remove, unused.
 +
 +      * s/irix5-2.h:
 +      * s/irix6-0.h:
 +      * s/riscos5.h:
 +      * s/mach-bsd4-3.h:
 +      * m/mips4.h: Remove files for obsolete systems.
 +
 +      * Makefile.in:
 +      * filelock.c:
 +      * unexmips.c:
 +      * m/hp9000s300.h:
 +      * m/iris4d.h:
 +      * s/aix3-1.h:
 +      * s/hpux.h:
 +      * s/msdos.h:
 +      * s/usg5-0.h:
 +      * s/usg5-2-2.h:
 +      * s/usg5-2.h:
 +      * s/usg5-3.h: Remove references to obsolete variables.
 +
 +      * s/irix5-0.h: Remove, move all the contents ...
 +      * s/irix6-5.h: ... here.  Simplify.
 +      * config.in: Regenerate.
 +
 +2008-02-24  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32term.c (x_draw_glyph_string_background): Clear the background
 +      manually when cleartype is in use.
 +      (x_draw_glyph_string_foreground): Draw text transparently when
 +      cleartype is in use.
 +
 +      * w32font.c (w32font_text_extents): Avoid getting HDC and selecting
 +      a font into it unless we have to.
 +
 +2008-02-19  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * intervals.h (INT_LISPLIKE): Remove.  It may misfire.
 +      (NULL_INTERVAL_P, SET_INTERVAL_PARENT): Don't use it.
 +
 +2008-02-18  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32fns.c (Fw32_shell_execute): Encode parameters.
 +
 +2008-02-09  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * fileio.c (syms_of_fileio) <insert-default-directory>: Doc fix.
 +
 +2008-02-05  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * unexhp9k800.c (read_header): Replace `legal' with `valid'.
 +
 +2008-02-24  Ulrich Neumerkel  <ulrich@complang.tuwien.ac.at>  (tiny change)
 +
 +      * xterm.c (x_set_offset): Don't change the gravity if
 +      CHANGE_GRAVITY is -1.
 +
 +2008-02-23  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * fileio.c (auto_save_error_occurred): New var.
 +      (auto_save_error): Set it.
 +      (Fdo_auto_save): Don't overwrite the error message if an auto-save
 +      error occurred.
 +
 +2008-02-23  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * w32.c (globals_of_w32): Add initializations for
 +      g_b_init_get_sid_sub_authority and
 +      g_b_init_get_sid_sub_authority_count.
 +
 +2008-02-22  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * font.c (font_match_xlfd, font_check_xlfd_parse): New funs.
 +      (font_parse_xlfd): Use them for sanity check.
 +      (Finternal_set_font_style_table): Make sure the table is bijective.
 +
 +      Consolidate the image_cache to the terminal struct.
 +      * termhooks.h (P_): Remove redundant def.
 +      (struct terminal): New field `image_cache'.
 +      * frame.h (FRAME_IMAGE_CACHE): New macro.  Use it everywhere in place
 +      of FRAME_X_IMAGE_CACHE.
 +      * xterm.h (struct x_display_info): Remove image_cache field.
 +      (FRAME_X_IMAGE_CACHE): Remove.  Use FRAME_IMAGE_CACHE instead.
 +      * w32term.h (struct w32_display_info): Remove image_cache field.
 +      (FRAME_X_IMAGE_CACHE): Remove.  Use FRAME_IMAGE_CACHE instead.
 +      * macterm.h (struct mac_display_info): Remove image_cache field.
 +      (FRAME_X_IMAGE_CACHE): Remove.  Use FRAME_IMAGE_CACHE instead.
 +      * xterm.c (x_term_init):
 +      * w32term.c (w32_term_init):
 +      * macterm.c (mac_term_init): Set the image_cache in the terminal.
 +      * dispextern.h (clear_image_cache, forall_images_in_image_cache):
 +      Remove declarations.
 +      (clear_image_caches, mark_image_cache): New declarations.
 +      * xfaces.c (clear_face_cache):
 +      * xdisp.c (redisplay_internal): Use clear_image_caches.
 +      * image.c (clear_image_cache): Don't check that a frame is on
 +      a window-system before checking if it shares the same cache.
 +      (clear_image_caches): New function.
 +      (Fclear_image_cache): Use it.
 +      (mark_image): Move from allo.c.
 +      (mark_image_cache): Move from alloc.c and forall_images_in_image_cache.
 +      * alloc.c (mark_image, mark_image_cache): Move to image.c.
 +      (mark_object): Don't call mark_image_cache for frames.
 +      (mark_terminals): Call mark_image_cache.
 +
 +      * lisp.h (Fdelete_terminal): Declare.
 +
 +      * charset.h (CHECK_CHARSET, CHECK_CHARSET_GET_ID)
 +      (CHECK_CHARSET_GET_ATTR): Don't use the inexistent return value of
 +      wrong_type_argument.
 +
 +2008-02-22  Kenichi Handa  <handa@ni.aist.go.jp>
 +
 +      * Makefile.in (lisp): Remove devanagari.el, kannada.el,
 +      malayalam.el, and tamil.el.  Add sinhala.el.
 +
 +2008-02-21  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * xterm.c (x_connection_closed): Consolidate identical tests.
 +      (x_delete_terminal): Don't crash if called via x_connection_closed.
 +
 +2008-02-21  Kenichi Handa  <handa@ni.aist.go.jp>
 +
 +      * xdisp.c (decode_mode_spec): New arg string.
 +      (display_mode_element): Adjust for the above change.
 +
 +2008-02-19  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * callint.c (Fcall_interactively): Use AREF.
 +
 +2008-02-18  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * font.c (font_unparse_xlfd): Don't ignore integer pixel size specs.
 +
 +2008-02-18  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * xfns.c (Fx_show_tip): Set string to " " if empty.
 +
 +2008-02-17  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * callint.c (syms_of_callint): Initialize Vmark_even_if_inactive
 +      with Qt.
 +
 +2008-02-17  Kenichi Handa  <handa@m17n.org>
 +
 +      * ftfont.c (ftfont_shape): Return Lispy number.
 +
 +      * xfaces.c (prepare_face_for_display): Use display_info->font->fid
 +      for GCs.
 +      (Finternal_set_font_selection_order): Call font_update_sort_order
 +      only when enable_font_backend is set.
 +      (realize_x_face): Set face->font_info to that of default face only
 +      when enable_font_backend is set.
 +
 +      * xdisp.c (handle_composition_prop): Set it->c to the fist
 +      character of the composed region.
 +      (fill_composite_glyph_string): Set base_face->font_info to
 +      s->font_info.  Get a face for ascii from base_face->ascii_face.
 +      (BUILD_COMPOSITE_GLYPH_STRING): Call fill_composite_glyph_string
 +      with a face already decided.
 +      (x_produce_glyphs): Be sure to set it->ascent and it->descent to
 +      non-negative.
 +      (x_produce_glyphs): If the composition method is ..._WITH_GLYPH_STRING,
 +      call font_prepare_composition unconditionally.
 +
 +      * xfns.c (x_make_gc): Use the default font id of the frame for GCs.
 +
 +      * xterm.h (struct x_display_info): New member font.
 +
 +      * xterm.c (x_set_cursor_gc): Use display_info->font->fid for GCs.
 +      (x_set_mouse_face_gc, x_new_font): Likewise.
 +      (x_term_init): Setup display_info->font.
 +      (x_delete_terminal): Free display_info->font.
 +
 +      * xfont.c (xfont_draw): Use BLOCK_INPUT and UNBLOCK_INPUT.
 +
 +      * ftxfont.c (ftxfont_default_fid): Delete it.
 +      (ftxfont_open): Set xfont->fid to 0.
 +      (ftxfont_end_for_frame): Clear data specific to the frame and the
 +      font-driver.
 +
 +      * xftfont.c (xftfont_default_fid): Delete it.
 +      (xftfont_open): Set xfont->fid to 0.
 +
 +      * fontset.c (FONTSET_OBJLIST): New macro.
 +      (fontset_find_font): Update font-object list of the fontset.
 +      (free_realized_fontset): New function.
 +      (free_face_fontset): Call free_realized_fontset.
 +      (Ffont_info): Call font_close_object only when enable_font_backend
 +      is set.
 +
 +      * font.c [HAVE_X_WINDOWS]: Include xterm.h.
 +      [HAVE_NTGUI]: Include w32term.h.
 +      [MAC_OS]: Include macterm.ch.
 +      (font_otf_ValueRecord): Use make_number.
 +      (font_finish_cache): Fix handling of reference count.
 +      (font_clear_cache): Update num_fonts.
 +      (font_open_entity): Update smallest_char_width and
 +      smallest_font_height of the frame.
 +      (font_close_object): Update num_fonts.
 +      (Fclear_font_cache): Fix finding the target cache data.
 +
 +2008-02-16  Glenn Morris  <rgm@gnu.org>
 +
 +      * fontset.c (Finternal_char_font): Fix compilation warning.
 +
 +2008-02-16  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * w32.c (init_user_info): Use TOKEN_USER and TOKEN_PRIMARY_GROUP
 +      instead of char arrays.  Enlarge the size of array passed to
 +      get_token_information.
 +
 +      * font.c (Ffont_fill_gstring, Fget_font_glyphs): Fix compilation
 +      warnings.
 +
 +2008-02-15  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * .gdbinit: Don't set `args', it breaks gdb --args.
 +
 +2008-02-14  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * fileio.c (Finsert_file_contents): Adjust offsets when replacing
 +      within a narrowed buffer.
 +
 +2008-02-14  Kenichi Handa  <handa@ni.aist.go.jp>
 +
 +      * coding.c (decode_coding_object, encode_coding_object):
 +      Preserve Vdeactivate_mark.  Delete unnecessary call of Fcurrent_buffer.
 +
 +2008-02-12  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * coding.c (coding_set_destination): Use BEG_BYTE rather than
 +      hardcoding 1.
 +      (detect_coding_system):
 +      * lisp.h (detect_coding_system, chars_in_text, multibyte_chars_in_text)
 +      (string_char_to_byte, string_byte_to_char, insert_from_gap):
 +      * insdel.c (insert_from_gap):
 +      * fns.c (string_char_byte_cache_charpos, string_char_byte_cache_bytepos)
 +      (string_char_to_byte, string_byte_to_char, string_make_multibyte)
 +      (string_to_multibyte):
 +      * character.c (chars_in_text, multibyte_chars_in_text):
 +      * fileio.c (Finsert_file_contents): Use EMACS_INT for buffer positions.
 +
 +      * character.h (FETCH_STRING_CHAR_ADVANCE)
 +      (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE)
 +      (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA and SREF.
 +      (DEC_POS, BUF_DEC_POS): Use BEG_BYTE rather than hardcoding 1.
 +
 +      * casefiddle.c (casify_region): Only call after-change and composition
 +      functions on the part of the region that was changed.
 +
 +      * keyboard.c (read_avail_input):
 +      * frame.c (Fdelete_frame): Call Fdelete_terminal.
 +
 +2008-02-11  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * buffer.c (clone_per_buffer_values, reset_buffer_local_variables)
 +      (Fbuffer_local_value, Fbuffer_local_variables): Don't forget undo_list.
 +
 +2008-02-11  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * w32menu.c (push_submenu_start, push_submenu_end)
 +      (push_left_right_boundary, push_menu_pane, push_menu_item):
 +      * keyboard.c (read_key_sequence): Don't pass args with side effects
 +      to AREF, it fails when compiling with -DENABLE_CHECKING.
 +
 +2008-02-11  Kenichi Handa  <handa@ni.aist.go.jp>
 +
 +      * Makefile.in (${lispsource}international/charprop.el):
 +      Delete this target.
 +
 +      * search.c (boyer_moore): Fix incorrect synching of the trunk and
 +      emacs-unicode-2.
 +
 +2008-02-11  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * terminal.c (Fdelete_terminal): Clean up the `force' path.
 +
 +2008-02-10  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * frame.c (Qnoelisp): New symbol.
 +      (syms_of_frame): Initialize it.
 +      (Fdelete_frame): Use it to distinguish a mere `force' passed from some
 +      harmless Elisp code, from a strong `force' from x_connection_closed.
 +      * frame.h (Qnoelisp): Declare.
 +      * xterm.c (x_connection_closed): Pass `noelisp'.
 +
 +      * lisp.h (struct Lisp_Misc_Any, struct Lisp_Marker)
 +      (struct Lisp_Overlay, struct Lisp_Kboard_Objfwd)
 +      (struct Lisp_Save_Value, struct Lisp_Free): Use enum Lisp_Misc_Type
 +      rather than `int' for the type of `type'.
 +
 +2008-02-10  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * s/gnu-linux.h: Remove support for non-ELF and linux-1.x.
 +
 +      * Makefile.in (GNUC): Remove support for gcc-1.x.
 +
 +2008-02-10  Richard Stallman  <rms@gnu.org>
 +
 +      * lisp.h (ASET): Use AREF, not ASLOT.
 +
 +2008-02-10  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * lisp.h (ASET): Check bounds.
 +
 +2008-02-10  Glenn Morris  <rgm@gnu.org>
 +
 +      * buffer.c (mode-name): Doc fix.
 +
 +2008-02-09  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * Makefile.in:
 +      * emacs.c:
 +      * gmalloc.c:
 +      * keyboard.c:
 +      * lisp.h:
 +      * m/ibm370aix.h:
 +      * process.c:
 +      * regex.c:
 +      * s/hpux.h:
 +      * sysdep.c:
 +      * sysselect.h:
 +      * systty.h:
 +      * unexec.c:
 +      * w32term.c:
 +      * xsmfns.c:
 +      * xterm.c: Remove code that deals with obsolete variables.
 +
 +      * s/msdos.h (DONT_NEED_ENVIRON): Don't define.
 +
 +      * ecrt0.c: Replace the DONT_NEED_ENVIRON test with MSDOS test,
 +      nothing else needs it anymore.
 +
 +2008-02-09  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * buffer.h (FETCH_CHAR_AS_MULTIBYTE): Use unibyte_to_multibyte_table
 +      instead of unibyte_char_to_multibyte.
 +
 +2008-02-09  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * s/gnu-linux.h: Remove commented out code.
 +
 +      * unexec.c: Remove references to obsolete variable COFF_ENCAPSULATE.
 +
 +      * Makefile.in: Update what RMS says about using autoconf.
 +      (C_COMPILER, COFF_ENCAPSULATE, MAKE_PARALLEL): Remove obsolete variable.
 +      (C_SWITCH_MACHINE_1, C_SWITCH_SYSTEM_1, C_SWITCH_SITE_1)
 +      (C_SWITCH_X_SITE_1, C_SWITCH_X_MACHINE_1)
 +      (C_SWITCH_X_SYSTEM_1): Move invariant code outside conditional.
 +
 +2008-02-08  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * keymap.c (Fkey_description): Move side effect outside of macro call.
 +
 +      * xfaces.c (Finternal_make_lisp_face):
 +      * keyboard.c (add_command_key, parse_menu_item): Use ASET.
 +
 +      * fontset.c (free_face_fontset): Use FONTSET_FROM_ID.
 +      (syms_of_fontset): Use ASET.
 +
 +      * fns.c (concat): Move side effect outside of macro call.
 +      (hash_clear): Use ASET.
 +
 +2008-02-08  Richard Stallman  <rms@gnu.org>
 +
 +      * frame.c (Fdelete_frame): If FORCE, don't call hooks.
 +      If FORCE, and frame has a surrogate minibuffer for another frame,
 +      delete the other frame first.
 +
 +2008-02-07  Timo Savola  <timo.savola@iki.fi>
 +
 +      * xterm.c (x_detect_focus_change): Handle embed client message.
 +      (handle_one_xevent): Ditto.
 +      (handle_one_xevent): If embedded and we get a button press/release,
 +      request focus.
 +      (xembed_set_info, xembed_send_message): New functions.
 +      (x_make_frame_visible): Call xembed_set_info if embedded.
 +      (x_make_frame_invisible): Call xembed_set_info if embedded.
 +      (x_term_init): Initialize Xatom_XEMBED.
 +      (x_make_frame_visible): Check for FRAME_X_EMBEDDED_P also.
 +      (x_iconify_frame): Ditto.
 +
 +      * xterm.h (struct x_display_info): Add AtomXatom_XEMBED.
 +      (enum xembed_info, enum xembed_message, enum xembed_focus)
 +      (enum xembed_modifier, enum xembed_accelerator): New.
 +      (xembed_set_info, xembed_send_message): Declare.
 +      (FRAME_X_EMBEDDED_P): New.
 +
 +      * gtkutil.c (xg_create_frame_widgets): If frame is embedded, call
 +      gtk_plug_new.
 +
 +      * xfns.c (Fx_create_frame): Do not override the explicitly set parent
 +      window ID of a frame.
 +      (x_window): Reparent frame if embedded.
 +      (Fx_create_frame): Don't set border width if embedded.
 +
 +      * emacs.c (USAGE3): Add --parent-id.
 +      (standard_args): Ditto.
 +
 +2008-02-07  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): Use "do...while (0)".
 +
 +2008-02-07  Jim Meyering  <meyering@redhat.com>
 +
 +      Use "do...while (0)", not "if (1)...else" in macro definitions.
 +      The latter provokes a warning from gcc about the empty else, when
 +      followed by ";".  Also, without that trailing semicolon, it would
 +      silently swallow up any following statement.
 +      * syntax.h (SETUP_SYNTAX_TABLE)
 +      (SETUP_SYNTAX_TABLE_FOR_OBJECT): Likewise.
 +      * buffer.h (DECODE_POSITION): Likewise.
 +      * character.h (FETCH_STRING_CHAR_ADVANCE): Likewise.
 +      (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE): Likewise.
 +      (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Likewise.
 +      (FETCH_CHAR_ADVANCE): Likewise.
 +      (FETCH_CHAR_ADVANCE_NO_CHECK): Likewise.
 +
 +2008-02-07  Jim Meyering  <meyering@redhat.com>
 +
 +      * lread.c [lint]: Don't include <sys/inode.h>.
 +
 +2008-02-07  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * xselect.c (x_handle_dnd_message):
 +      * xmenu.c (digest_single_submenu, xmenu_show):
 +      * xdisp.c (with_echo_area_buffer_unwind_data)
 +      (format_mode_line_unwind_data, unwind_format_mode_line)
 +      (display_menu_bar):
 +      * eval.c (Ffetch_bytecode):
 +      * doc.c (store_function_docstring):
 +      * ccl.c (resolve_symbol_ccl_program, ccl_get_compiled_code)
 +      (Fccl_execute, Fccl_execute_on_string, Fregister_code_conversion_map):
 +      * buffer.c (add_overlay_mod_hooklist): Use ASET.
 +
 +2008-02-07  Kenichi Handa  <handa@m17n.org>
 +
 +      * ftxfont.c (ftxfont_open): Don't set
 +      dpyinfo->smallest_font_height and dpyinfo->smallest_char_width to 0.
 +
 +      * ftfont.c (ftfont_open): Fix previous change.
 +
 +2008-02-06  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32font.c (w32font_text_extents): Fill in lbearing metric.
 +      Use cached metrics for ASCII characters.
 +      (w32font_open_internal): Don't set font's owning_frame.
 +      Cache metrics for ASCII characters.
 +
 +      * w32font.h (struct w32font_info): Add ascii_metrics.
 +      Remove owning_frame.
 +
 +2008-02-06  Kenichi Handa  <handa@ni.aist.go.jp>
 +
 +      * xdisp.c (x_produce_glyphs): Don't set it->ascent and it->descent
 +      to negative value.
 +
 +      * ftxfont.c (ftxfont_draw): Use s->font_info, not face->font_info.
 +
 +      * ftfont.c (ftfont_open): Fix calculation of font->font.average_width.
 +
 +      * charset.c (syms_of_charset): Set QCtest and Qeq.
 +
 +2008-02-06  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * process.c (Fstart_process):
 +      * callproc.c (Fcall_process): Handle the case where
 +      Funhandled_file_name_directory returns nil.
 +
 +      * font.h (enum lgstring_indices, enum lglyph_indices): New enums.
 +      (LGSTRING_SLOT, LGSTRING_SET_SLOT): New macros.
 +      * font.c (check_gstring): Use them and AREF to access the vector before
 +      we know it's really a gstring.
 +      (Ffont_shape_text): Fix typo.
 +      (Ffont_shape_text, Ffont_otf_alternates): Fix up int/Lisp_Object mixups.
 +
 +      * composite.h (Fcompose_region_internal, Fcompose_string_internal):
 +      Declare.
 +
 +      * chartab.c (make_sub_char_table): Remove noop-yet-incorrect statement.
 +
 +2008-02-05  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32font.c (w32font_open_internal): Fill min_width with tmAveCharWidth.
 +      Set smallest_font_height and smallest_char_width in display info.
 +
 +2008-02-05  Kenichi Handa  <handa@ni.aist.go.jp>
 +
 +      * coding.c (decode_eol): Pay attention to coding->dst_multibyte.
 +
 +2008-02-05  Miles Bader  <miles@gnu.org>
 +
 +      * xfaces.c (get_lface_attributes, merge_named_face)
 +      (lookup_named_face, lookup_derived_face, realize_named_face):
 +      Revert 2008-02-01 change by cyd@stupidchicken.com.
 +
 +2008-02-04  Kenichi Handa  <handa@ni.aist.go.jp>
 +
 +      * fontset.c (Ffontset_info): Handle the case of inhibitting the
 +      fallback fonts.
 +      (Ffontset_info) [USE_FONT_BACKEND]: Fix getting of opened font names.
 +
 +2008-02-04  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32font.c (w32font_open_internal): Use font_unparse_fcname to
 +      set full_name.
 +      (w32font_open_internal): Use xmalloc, xrealloc, xfree.
 +
 +2008-02-03  Jason Rumney  <jasonr@gnu.org>
 +
 +      * makefile.w32-in (OBJ1): Include font.o here.
 +      (FONTOBJ) [USE_FONTBACKEND]: Instead of here.
 +
 +2008-02-02  Jason Rumney  <jasonr@gnu.org>
 +
 +      * makefile.w32-in (temacs): Bump EMHEAP to 21.
 +
 +2008-02-01  Jason Rumney  <jasonr@gnu.org>
 +
 +      * s/cygwin.h: Define VIRT_ADDR_VARIES.
 +
 +      * puresize.h [VIRT_ADDR_VARIES]: Don't include CYGWIN in condition.
 +
 +2008-02-01  Andreas Schwab  <schwab@suse.de>
 +
 +      * Makefile.in (shortlisp, lisp): Update for rename of
 +      ../lisp/language/myanmar.el.
 +
 +2008-02-01  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * xfaces.c (get_lface_attributes): Delete function.
 +      (merge_named_face, lookup_named_face, lookup_derived_face)
 +      (realize_named_face): Call lface_from_face_name directly, and use
 +      the fact that merge_face_vectors does not alter its FROM argument.
 +
 +2008-02-01  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32term.c (w32_read_socket) <WM_CHAR>: Decode non-Unicode
 +      input in the default locale.  Handle non-Unicode multibyte input.
 +
 +2008-02-01  Kenichi Handa  <handa@ni.aist.go.jp>
 +
 +      * fontset.c (reorder_font_vector): Exclude nil elements from the
 +      font group.  Don't try multiple fonts.
 +      (fontset_font): Adjust for the above change.
 +      (Finternal_char_font): Return nil if the found font doesn't
 +      contain the character ch.
 +
 +      * Makefile.in (lisp, shortlisp): Add cham.el.
 +
 +2008-02-01  Kenichi Handa  <handa@ni.aist.go.jp>
 +
 +      * font.h (FONTP): Make it return 1 also for a font-object.
 +
 +      * .gdbinit (xfontset): New function.
 +
 +      * font.c (font_find_for_lface): Check if the character C is
 +      supported or not only for the first font.
 +
 +      * fontset.c (reorder_font_vector): Fix typo.
 +      (fontset_find_font): Don't add a font-spec specifying a script.
 +      Use 0 (not Qt) for the indication of empty font-group.  Change the
 +      format of RFONT-DEF.  Return Qt if no font in the font-group
 +      support the character.
 +      (fontset_font): Adjust for the above change.  If no font was
 +      found the character, remember that.
 +      (face_for_char): Adjust for the change of RFONT-DEF.
 +      (Fset_fontset_font): Allow nil for FONT-SPEC to explicitly specify
 +      no font for the target.
 +      (Finternal_char_font): Adjust for the change of RFONT-DEF.
 +
 +2008-02-01  Kenichi Handa  <handa@ni.aist.go.jp>
 +
 +      * font.c (font_load_for_face): Handle the case that the font in
 +      face->lface is a string.
 +
 +2008-02-01  Kenichi Handa  <handa@ni.aist.go.jp>
 +
 +      * xfaces.c (set_lface_from_font_and_fontset): Set the fontname in lface.
 +
 +2008-02-01  Kenichi Handa  <handa@ni.aist.go.jp>
 +
 +      * xfaces.c (Finternal_set_lisp_face_attribute) [USE_FONT_BACKEND]:
 +      Fix previous change.  If the frame is not on a window system,
 +      signal an error.
 +
 +2008-02-01  Kenichi Handa  <handa@ni.aist.go.jp>
 +
 +      * coding.c (decode_coding_object, encode_coding_object):
 +      Adjust marker positions after conversion.
 +
 +      * lisp.h (struct Lisp_Marker): New member need_adjustment.
 +
 +2008-02-01  Kenichi Handa  <handa@ni.aist.go.jp>
 +
 +      * font.c (font_find_for_lface): Fix the handling of the return
 +      value of font_has_char.
 +      (Ffont_shape_text): Fix previous change.
 +
 +      * fontset.c (FONTSET_REF_AND_RANGE): Delete it.
 +      (fontset_ref_and_range): Delete it.
 +      (fontset_find_font): Call char_table_ref_and_range instead of
 +      FONTSET_REF_AND_RANGE.
 +      (make_fontset): Don't setup font groups of Latin here.
 +      (Fset_fontset_font): Don't overwrite the setting of FONTSET_ASCII.
 +      (new_fontset_from_font): Make the specified font the default for
 +      all Latin characters.
 +
 +2008-02-01  Kenichi Handa  <handa@ni.aist.go.jp>
 +
 +      * xfaces.c (Finternal_set_lisp_face_attribute): Check if the frame
 +      is on a window system before accessing the fontset of the frame.
 +
 +2008-02-01  Kenichi Handa  <handa@ni.aist.go.jp>
 +
 +      * Makefile.in (lisp, shortlisp): Add kherm.el and myanmar.el.
 +
 +      * ftfont.c (ftfont_driver): Set ftfont_shape in ftfont_driver only
 +      when both HAVE_M17N_FLT and HAVE_LIBOTF are defined.
 +
 +      * font.c (Ffont_shape_text): If the font driver doesn't have a
 +      shaper function, make zero-width glyphs to have at least one-pixel
 +      width.  Fix setting of `to' field of glyphs.
 +
 +2008-02-01  Kenichi Handa  <handa@ni.aist.go.jp>
 +
 +      * ftfont.c (ftfont_drive_otf): Fix setting of FROM and TO slots of
 +      glyphs.
 +
 +      * font.h (struct font_driver): Improve docstring of member `shape'.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * composite.c (syms_of_composite): Fix docstring of
 +      auto-composition-function.
 +
 +      * font.h (LGLYPH_SIZE): New macro.
 +
 +      * font.c (Ffont_fill_gstring): Stop filling when a character not
 +      supported by the font is found.
 +      (Ffont_shape_text): When a shape callback function returns nil,
 +      try at most two more times with larger gstring.
 +      (Ffont_at): Fix getting of w.  Call font_at with correct 5th argument.
 +
 +      * xdisp.c (handle_auto_composed_prop): Change the argument to
 +      auto-composition-function.
 +
 +      * ftfont.c (ftfont_encode_char): Use the macro FONT_INVALID_CODE.
 +      (ftfont_shape_by_flt): If an element of lgstring is nil, make a
 +      Lispy glyph and store it in the lgstring.
 +
 +      * xfont.c (xfont_encode_char): Use the macro FONT_INVALID_CODE.
 +
 +      * xftfont.c (xftfont_encode_char): Use the macro FONT_INVALID_CODE.
 +
 +2008-02-01  Kenichi Handa  <handa@ni.aist.go.jp>
 +
 +      * font.c (Ffont_shape_text): Avoid unnecessary composition.
 +
 +      * fontset.c (Vfont_encoding_charset_alist): New variable.
 +      (syms_of_fontset): DEFVAR it.
 +      (reorder_font_vector, fontset_find_font): Optimize for the case of
 +      no need of reordering.
 +      (face_for_char): Map the charset property by
 +      Vfont_encoding_charset_alist.
 +
 +2008-02-01  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32font.c (logfonts_match): Don't check adstyle here.
 +      (font_matches_spec): Check here against physical font instead.
 +      (add_font_entity_to_list): Avoid some substitutions.
 +
 +      * font.c (font_parse_fcname): Default weight and slant to normal.
 +      (font_score): Prefer normal fonts if weight or slant unspecified.
 +      (font_score) [WINDOWSNT]: Scale weight difference down to closer
 +      match freetype scores.
 +
 +2008-02-01  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32font.c (w32font_text_extents): Don't use the frame stored in the
 +      font, as it may have been deleted.
 +      (w32_enumfont_pattern_entity): Map generic family to adstyle using
 +      most common hyphenless variation.
 +      (logfonts_match): Check generic family.
 +      (font_matches_spec): Don't check generic family here.
 +      (fill_in_logfont): Set generic family based on adstyle.
 +
 +      * w32font.h (w32font_get_cache): Update declaration.
 +
 +2008-02-01  Kenichi Handa  <handa@ni.aist.go.jp>
 +
 +      * ftfont.c (ftfont_get_cache): Adjust the argument type.
 +
 +      * frame.c (x_set_font_backend): Don't call Fclear_font_cache.
 +      If none of the new drivers are available, call font_update_drivers
 +      with the old drivers.
 +
 +      * w32font.c (w32font_get_cache): Adjust the argument type.
 +
 +      * xfont.c (xfont_get_cache): Adjust the argument type.
 +
 +      * font.h (struct font_driver): Change argument type of get_cache.
 +
 +      * xftfont.c (xftfont_start_for_frame): Delete prototype.
 +
 +      * font.c (Ffont_get): Fix arguments to Fassoc.
 +      (font_prepare_cache, font_finish_cache, font_get_cache): New functions.
 +      (font_clear_cache): New function.
 +      (font_list_entities, font_matching_entity): Use font_get_cache.
 +      (font_update_drivers): Call font_clear_cache when finishing a driver.
 +
 +      * fontset.c (fontset_find_font): Fix previous change.
 +
 +2008-02-01  Kenichi Handa  <handa@ni.aist.go.jp>
 +
 +      * xterm.c (x_check_font) [USE_FONT_BACKEND]: Don't access
 +      dpyinfo->font_table.
 +      (x_delete_display) [USE_FONT_BACKEND]: Likewise.
 +      (x_delete_terminal) [USE_FONT_BACKEND]: Likewise.
 +
 +      * font.c (font_at): Handle the case that the arg C is negative.
 +      Handle the unibyte case.
 +      (Ffont_at): Call font_at with the arg C -1.
 +
 +      * xdisp.c (handle_auto_composed_prop): Don't get a character at
 +      the position here, and call font_at with the arg C -1.
 +      Don't check the range of the existing composition at the point.
 +
 +2008-02-01  Kenichi Handa  <handa@ni.aist.go.jp>
 +
 +      * fontset.c (fontset_add): New args charset_id and family.
 +      Change caller.
 +      (load_font_get_repertory, fontset_find_font): Assume that
 +      font_spec is always a font-spec object.
 +      (Fset_fontset_font): Always store a font-spec object in a fontset.
 +
 +      * xdisp.c (handle_auto_composed_prop): Use Fget_text_property
 +      instead of get_property_and_range.
 +
 +2008-02-01  Kenichi Handa  <handa@ni.aist.go.jp>
 +
 +      * xftfont.c (struct xftfont_info): Delete the member ft_face.
 +      (xftfont_open): Don't keep locking face.
 +      (xftfont_close): Don't unlock face.
 +      (xftfont_anchor_point, xftfont_shape): Lock and unlock face.
 +
 +      * fontset.c (fontset_find_font): Don't prefer a font of
 +      supplementary charset.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * ftfont.c (struct OpenTypeSpec): Rename members script_tag to
 +      script, langsys_tag to langsys, new member script.
 +      (OTF_TAG_STR): Terminate by '\0'.
 +      (ftfont_get_open_type_spec): If :otf prop is spec, limit the
 +      listing to the script specified in that property.  Fix arg to
 +      OTF_check_features.
 +
 +2008-02-01  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32font.h: New file.
 +
 +      * w32font.c: Include it.
 +      (struct w32font_info): Add owning_frame field.  Move to w32font.h.
 +      (w32font_open): Set owning_frame.
 +      (w32font_text_extents): Use owning_frame.
 +      (struct font_callback_data): Add opentype_only field.
 +      (add_font_entity_to_list): Use it to filter fonts.
 +      Don't check against full name.
 +      (w32font_list_internal): New function.
 +      (w32font_list): Use it.
 +      (w32font_match_internal): New function.
 +      (w32font_match): Use it.
 +      (w32font_open_internal): New function.
 +      (w32font_open): Use it.
 +      (w32font_get_cache, w32font_close, w32font_has_char)
 +      (w32font_encode_char, w32font_text_extents, w32font_draw):
 +      Make non-static.
 +
 +      * makefile.w32-in (w32font.o): Depend on w32font.h.
 +
 +2008-02-01  Kenichi Handa  <handa@ni.aist.go.jp>
 +
 +      * charset.c (Fdefine_charset_internal): Record a supplementary
 +      charset at the tail of Vcharset_order_list.
 +
 +      * font.c (Ffont_shape_text): Fix the return value.
 +
 +      * ftfont.c (OTF_SYM_TAG, OTF_TAG_STR): Fix argument names.
 +
 +      * xdisp.c (handle_auto_composed_prop): Fix previous change.
 +
 +2008-02-01  Kenichi Handa  <handa@ni.aist.go.jp>
 +
 +      * ftfont.c (struct OpenTypeSpec): New struct.
 +      (OTF_SYM_TAG, OTF_TAG_STR): New macros.
 +      (ftfont_get_open_type_spec): New function.
 +      (ftfont_list) [HAVE_LIBOTF]: Check otf-spec property.
 +
 +      * lread.c (read1): Redo the previous change with checking Vpurify_flag.
 +
 +2008-02-01  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32font.c (add_font_entity_to_list): Compare only the beginning
 +      of full name.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * xdisp.c (handle_auto_composed_prop): Simplify the code.
 +      Never return HANDLED_RECOMPUTE_PROPS.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * font.c (font_gstring_produce): Delete it.
 +
 +      * composite.h (COMPOSITION_METHOD):
 +      Handle COMPOSITION_WITH_GLYPH_STRING.
 +
 +2008-02-01  Kenichi Handa  <handa@ni.aist.go.jp>
 +
 +      * xfont.c (Qx): Delete.
 +      (syms_of_xfont): Don't initialize Qx.
 +
 +      * composite.h (enum composition_method):
 +      Define COMPOSITION_WITH_GLYPH_STRING unconditionally.
 +
 +2008-02-01  Kenichi Handa  <handa@ni.aist.go.jp>
 +
 +      * xfaces.c [HAVE_WINDOW_SYSTEM]: Include "font.h" unconditionally.
 +      (choose_face_font): Accept new form of font-spec.
 +
 +      * frame.h (font_driver_list): Declare it unconditionally.
 +      (struct frame): Define members font_driver_list and font_data_list
 +      unconditionally.
 +
 +      * fontset.c: Include "font.h" unconditionally.
 +      (generate_ascii_font_name): Use font_parse_xlfd and font_unparse_xlfd.
 +      (Fset_fontset_font): Accept a font-spec object.
 +
 +      * font.c (font_unparse_xlfd): If pixel_size is zero, make the
 +      PIXEL_SIZE part a wild card.
 +
 +      * dispextern.h (struct glyph_string): Define members clip and
 +      num_clips unconditionally.
 +      (struct face): Define members font_info and extra unconditionally.
 +
 +      * ftfont.c (ftfont_open): Set members maybe_otf and otf of
 +      ftfont_info only when HAVE_LIBOTF is defined.
 +
 +2008-02-01  Andreas Schwab  <schwab@suse.de>
 +
 +      * xdisp.c (back_to_previous_visible_line_start): Fix type of beg
 +      and end.
 +
 +2008-02-01  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32font.c (w32font_driver): Add new fields.
 +
 +2008-02-01  Kenichi Handa  <handa@ni.aist.go.jp>
 +
 +      * Makefile.in (ALL_CFLAGS): Add @M17N_FLT_CFLAGS@.
 +      (FONTSRC, FONTOBJ) [HAVE_WINDOW_SYSTEM]: Set them unconditionally.
 +      (LIBES): Add @M17N_FLT_CFLAGS@.
 +
 +      * composite.c (compose_text): Don't treat the new style
 +      composition specially.
 +
 +      * emacs.c (main): Call syms_of_font unconditionally.
 +
 +      * font.h (FONT_ENTITY_NOT_LOADABLE)
 +      (FONT_ENTITY_SET_NOT_LOADABLE): New macros.
 +      (LGSTRING_XXXX, LGLYPH_XXX): Adjust for the change of lispy gstring.
 +      (struct font_driver): New member shape.
 +      (font_registry_charsets): Extern it.
 +      (font_find_for_lface, font_prepare_composition): Adjust prototype.
 +      (font_otf_capability, font_drive_otf): Delete their externs.
 +
 +      * font.c [HAVE_M17N_FLT]: Include <m17n-flt.h>.
 +      (font_charset_alist, font_registry_charsets): Move from xfont.c
 +      and rename.
 +      (font_prop_validate_otf): New function.
 +      (font_property_table): Register it for QCotf.
 +      (DEVICE_DELTA, adjust_anchor, REPLACEMENT_CHARACTER)
 +      (font_drive_otf): Delete.
 +      (font_prepare_composition): New arg F.  Adjust for the change of
 +      lispy gstring.
 +      (font_find_for_lface): New arg C.
 +      (font_load_for_face): Adjust for the change of font_find_for_lface.
 +      (Ffont_make_gstring, Ffont_fill_gstring): Adjust for the change of
 +      lispy gstring.
 +      (Ffont_shape_text): New function.
 +      (Fopen_font): If the font size is not given, use 12-pixel.
 +      (Ffont_at): New arg STRING.
 +      (syms_of_font): Initialize font_charset_alist.
 +      Declare Ffont_shape_text as a Lisp function.  Call syms_of_XXfont
 +      conditionally.
 +
 +      * fontset.c (fontset_find_font) [USE_FONT_BACKEND]: Try multiple
 +      fonts of the same font-spec.  Change the format of RFONT-DEF.
 +      (face_for_char, make_fontset_for_ascii_face, Finternal_char_font):
 +      Adjust for the change of RFONT-DEF.
 +      (Fset_fontset_font) [USE_FONT_BACKEND]: Handle new format of font-spec.
 +
 +      * ftfont.h: New file.
 +
 +      * ftfont.c: Don't include Freetype headers.  Include "ftfont.h".
 +      (struct ftfont_info) [HAVE_LIBOTF]: New members maybe_otf and otf.
 +      (ftfont_open) [HAVE_LIBOTF]: Initialize the above members.
 +      (ftfont_driver) [HAVE_LIBOTF, HAVE_M17N_FLT]: Don't set
 +      font_otf_capability and font_drive_otf, set ftfont_shape.
 +      (ftfont_list): Adjust for the change of :otf property value.
 +      (struct MFLTFontFT) [HAVE_LIBOTF, HAVE_M17N_FLT]: New struct.
 +      (ftfont_get_glyph_id, ftfont_get_metrics, ftfont_check_otf)
 +      (adjust_anchor, ftfont_drive_otf, ftfont_shape_by_flt)
 +      (ftfont_shape) [HAVE_LIBOTF, HAVE_M17N_FLT]: New function.
 +      (DEVICE_DELTA) [HAVE_LIBOTF, HAVE_M17N_FLT]: New macro.
 +      (otf_gstring, gstring, m17n_flt_initialized): New variables.
 +
 +      * w32term.c (x_draw_composite_glyph_string_foreground):
 +      Adjust for the change of lispy gstring.
 +
 +      * xdisp.c (handle_composition_prop): Adjust for the change of
 +      lispy gstring.  Call a function for auto-composition with the
 +      third arg it->window.
 +      (fill_composite_glyph_string): Adjust for the change of lispy string.
 +      (x_produce_glyphs): Adjust for the change of font_prepare_compositionl.
 +
 +      * xfaces.c (set_font_frame_param): Adjust for the change of
 +      font_find_for_lface.
 +
 +      * xfont.c (x_font_charset_alist): Move to font.c and rename.
 +      (xfont_registry_charsets): Likewise.  Change caller.
 +      (syms_of_xfont): Don't handle x_font_charset_alist.
 +
 +      * xftfont.c: Include "ftfont.h".
 +      (struct xftfont_info) [HAVE_LIBOTF]: New members maybe_otf and otf.
 +      (xftfont_open) [HAVE_LIBOTF]: Initialize the above members.
 +      (xftfont_close) [HAVE_LIBOTF]: Close otf.
 +      (xftfont_shape) [HAVE_LIBOTF, HAVE_M17N_FLT]: New function.
 +      (syms_of_xftfont) [HAVE_LIBOTF, HAVE_M17N_FLT]:
 +      Set xftfont_driver.shape to xftfont_shape.
 +
 +      * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
 +      the change of lispy gstring.
 +
 +2008-02-01  Kenichi Handa  <handa@ni.aist.go.jp>
 +
 +      * ftxfont.c (ftxfont_end_for_frame): Fix array indexing error.
 +
 +2008-02-01  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32font.c (w32font_draw): Fill background manually.
 +
 +2008-02-01  Jason Rumney  <jasonr@gnu.org>
 +
 +      * font.c (Qfontp): Remove unused symbol.
 +      (QCantialias): New symbol.
 +      (syms_of_font): Define it.
 +      (font_property_table): Set a validator for QCantialias.
 +
 +      * w32font.c (CLEARTYPE_QUALITY, CLEARTYPE_NATURAL_QUALITY):
 +      Define if not already.
 +      (QCfamily): Share with xfaces.c.
 +      (Qstandard, Qsubpixel, Qnatural): New symbols.
 +      (syms_of_w32font): Define them.  Don't define QCfamily here.
 +      (w32_antialias_type, lispy_antialias_type): New functions.
 +      (w32_enumfont_pattern_entity): New arg requested_font.
 +      Set antialias parameter if non-default was requested.
 +      (fill_in_logfont): Fill in lfQuality if :antialias specified.
 +
 +2008-02-01  Kenichi Handa  <handa@ni.aist.go.jp>
 +
 +      * lread.c (read1): Undo the previous change.
 +
 +2008-02-01  CHENG Gao  <chenggao@gmail.com>  (tiny change)
 +
 +      * frame.c (Fdelete_frame): Call font_update_drivers only when
 +      USE_FONT_BACKEND is defined.
 +
 +2008-02-01  Kenichi Handa  <handa@ni.aist.go.jp>
 +
 +      * font.h (struct font_bitmap): New member bits_per_pixel.
 +      (struct font_driver): New members start_for_frame and end_for_frame.
 +      (struct font_data_list): New struct.
 +      (font_put_frame_data, font_get_frame_data): Extern them.
 +
 +      * frame.h (struct frame): New member font_data_list.
 +
 +      * font.c (font_update_drivers): Call driver->start_for_frame and
 +      driver->end_for_frame at proper timings.
 +      (font_put_frame_data, font_get_frame_data): New functions.
 +      (Ffont_spec): Add usage in the docstring.
 +
 +      * frame.c (make_frame): Initialize f->font_data_list to NULL.
 +      (Fdelete_frame): Call font_update_drivers.
 +
 +      * xftfont.c (struct xftface_info): Delete the member xft_draw.
 +      (xftfont_prepare_face, xftfont_done_face): Adjust for the above change.
 +      (xftfont_get_xft_draw): New function.
 +      (xftfont_draw): Get XftDraw by xftfont_get_xft_draw.
 +      (xftfont_end_for_frame): New function.
 +      (syms_of_xftfont): Set xftfont_driver.end_for_frame.
 +
 +      * ftxfont.c (ftxfont_get_gcs): Rename from ftxfont_create_gcs.
 +      Change argument.  Cache GCs in the per-frame data.
 +      (struct ftxfont_frame_data): New struct.
 +      (ftxfont_draw_bitmap): New arg gc_fore and flush.
 +      (ftxfont_prepare_face, ftxfont_done_face): Delete them.
 +      (ftxfont_draw): Get GCs by ftxfont_get_gcs.  Reflect s->clip in GCs.
 +      (ftxfont_end_for_frame): New function.
 +      (syms_of_ftxfont): Set ftxfont_driver.end_for_frame.
 +
 +      * ftfont.c (ftfont_get_bitmap): Set bitmap->bits_per_pixel.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * xselect.c (Vselection_coding_system)
 +      (Vnext_selection_coding_system): Delete them.
 +      (syms_of_xselect): Don't declare selection-coding-system and
 +      next-selection-coding-system.  They are declared in select.el.
 +
 +2008-02-01  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32term.h (WM_UNICHAR, UNICODE_NOCHAR): Define if not already.
 +
 +      * w32fns.c: Include imm.h.
 +      (get_composition_string_fn, get_ime_context_fn): New optional
 +      system functions.
 +      (globals_of_w32fns): Load them from imm32.dll.
 +      (ignore_ime_char): New flag.
 +      (w32_wnd_proc): Handle WM_UNICHAR, WM_IME_CHAR and
 +      WM_IME_ENDCOMPOSITION messages.
 +
 +      * w32term.c (w32_read_socket) [WM_UNICHAR]: Handle as
 +      MULTIBYTE_CHAR_KEYSTROKE_EVENT.
 +
 +2008-02-01  Kenichi Handa  <handa@ni.aist.go.jp>
 +
 +      * lread.c (READCHAR): Call readchar with the 2nd arg NULL.
 +      (READCHAR_REPORT_MULTIBYTE): New macro.
 +      (readchar): New 2nd arg MULTIBYTE.
 +      (read1): Use READCHAR_REPORT_MULTIBYTE for the first read.
 +      Make symbol's name multibyte according to the multibyteness of the
 +      source.
 +
 +2008-02-01  Kenichi Handa  <handa@ni.aist.go.jp>
 +
 +      * xfaces.c (face_for_overlay_string): Call lookup_face with
 +      correct arguments (fix of synching with the trunk).
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * font.c (font_prop_validate_symbol, font_prop_validate_style)
 +      (font_prop_validate_non_neg, font_prop_validate_spacing):
 +      Delete argument prop_index.
 +      (font_property_table): Change arguments to validater.  Change Callers.
 +      (font_lispy_object): Delete.
 +      (font_at): Use font_find_object instead fo font_lispy_object.
 +
 +2008-02-01  Kenichi Handa  <handa@ni.aist.go.jp>
 +
 +      * fileio.c (Fexpand_file_name): Adjust multibyteness of directory
 +      and file names.
 +
 +2008-02-01  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32font.c (add_font_name_to_list): Avoid vertical fonts.
 +      (font_matches_spec): Remove debug output.
 +      (add_font_entity_to_list): Avoid using substituted fonts.
 +
 +2008-02-01  Jason Rumney  <jasonr@gnu.org>
 +
 +      * doc.c (Fsnarf_documentation):
 +      * Makefile.in (temacs${EXEEXT}, mostlyclean): Undo last change.
 +
 +2008-02-01  Miles Bader  <miles@gnu.org>
 +
 +      * dispextern.h (struct glyph_row): Only define "clip" field if
 +      HAVE_WINDOW_SYSTEM is defined.
 +
 +2008-02-01  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      Fix up multi-tty merge.
 +
 +      * xterm.c (handle_one_xevent): Remove duplicate code and fix up nesting
 +      and indentation.
 +
 +      * xfaces.c (free_realized_face, clear_face_gcs):
 +      Include font_done_for_face in the input_blocked section, just in case.
 +
 +      * xdisp.c (decode_mode_spec): Use terminal-local coding systems.
 +      (get_char_face_and_encoding): Undo last change and remove the *other*
 +      duplicate definition (i.e. keep the one that's better scoped and that
 +      includes code for the font-backend).
 +
 +      * terminal.c (create_terminal): Default keyboard_coding to
 +      `no-conversion' and terminal_coding to `undecided'.
 +
 +      * lread.c (read1): Use XSETPVECTYPE to set a pseudovector's tag.
 +
 +      * fontset.c (free_realized_fontsets): Check that the table entry does
 +      contain a fontset before trying to compare it to `base'.
 +
 +      * emacs.c (main): Move syms_of_data, syms_of_fileio, syms_of_alloc,
 +      syms_of_charset, and syms_of_coding earlier because init_window_once
 +      now needs Vcoding_system_hash_table to be setup.
 +
 +      * coding.h (default_buffer_file_coding): Remove.
 +
 +      * coding.c (default_buffer_file_coding): Remove.
 +      (Fterminal_coding_system, Fkeyboard_coding_system): Use ->id rather
 +      than ->symbol, and use the terminal-local coding system.
 +      (syms_of_coding): Don't setup the coding-systems that are not
 +      terminal-local.
 +      (Fdefine_coding_system_internal): Use XCAR/XCDR.
 +
 +      * chartab.c (Fmake_char_table, make_sub_char_table, copy_char_table):
 +      Use XSETPVECTYPE now that XSETCHAR_TABLE doesn't set the tag anymore.
 +
 +      * alloc.c (Fmake_char_table, make_sub_char_table): Remove.  They're now
 +      in chartab.c and were re-added here by mistake.
 +      (Fpurecopy): Use XSETPVECTYPE after copying a COMPILED pseudovector.
 +
 +      * doc.c (Fsnarf_documentation):
 +      * Makefile.in (temacs${EXEEXT}, mostlyclean): Move buildobj.lst from
 +      src to etc.
 +
 +      * ChangeLog.10: Add mistakenly removed entry.
 +
 +2008-02-01  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * Makefile.in (fringe.o, minibuf.o): Fix dependencies.
 +
 +2008-02-01  Miles Bader  <miles@gnu.org>
 +
 +      * xdisp.c (get_char_face_and_encoding): Remove extraneous definition.
 +      Add extra args to FACE_FOR_CHAR.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * keymap.c (where_is_internal_1): If key is a cons, store the copy
 +      in sequence.
 +
 +      * chartab.c (map_sub_char_table, map_char_table): If the range
 +      contains just one character, call the function with that character
 +      even if the depth is not 3.
 +
 +2008-02-01  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32font.c (w32font_text_extents): Calculate metrics for the
 +      whole string.
 +
 +2008-02-01  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32xfns.c (get_next_msg): Consolidate WM_PAINT messages.
 +
 +2008-02-01  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32term.c (x_set_glyph_string_clipping):
 +      Use get_glyph_string_clip_rects.
 +      (x_set_glyph_string_clipping_exactly, x_draw_glyph_string):
 +      Adjust for the change of struct glyph_string.
 +
 +      * w32font.c (w32font_draw): Do clipping here.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * xftfont.c (xftfont_draw): Adjust for the change of struct
 +      glyph_string.
 +
 +      * xterm.c (x_set_glyph_string_clipping):
 +      Use get_glyph_string_clip_rects.
 +      (x_set_glyph_string_clipping_exactly, x_draw_glyph_string):
 +      Adjust for the change of struct glyph_string.
 +
 +      * xdisp.c (get_glyph_string_clip_rects): Reflect s->row->clip to
 +      the resulting clip(s}.
 +      (expose_overlaps): Add arg r.  Change callers.  Set it to
 +      row->clip temporarily.
 +      (expose_window): Redraw rows overlapping the exposed area.
 +
 +      * dispextern.h (struct glyph_row): New member clip.
 +      (struct glyph_string): Delete members clip_x, clip_y, clip_width,
 +      clip_height, new member clip, and num_clips.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * data.c (Fchar_or_string_p): Fix docstring.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * xftfont.c (xftfont_draw): If s->font_info != s->face->font_info,
 +      create a temporary XftDraw object.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * font.c (Ffontp): Fix docstring.
 +
 +      * coding.c (detect_coding_iso_2022): Don't treat SI/SO codes as a
 +      strong evidence of ISO-2022.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * abbrev.c (abbrev_check_chars): Use CHAR_TABLE_REF, not
 +      SYNTAX_ENTRY_FOLLOW_PARENT.
 +
 +2008-02-01  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * fns.c (weak_hash_tables): Rename from Vweak_hash_tables and change
 +      its type.
 +      (make_hash_table, copy_hash_table, sweep_weak_hash_tables, init_fns):
 +      Update to the new type of weak_hash_tables and next_weak.
 +
 +      * lisp.h (struct Lisp_Hash_Table): Change next_weak from Lisp_Object to
 +      a plain C pointer to Lisp_Hash_Table.
 +
 +      * lisp.h (XGCTYPE, GC_HASH_TABLE_P, GC_NILP, GC_NUMBERP, GC_NATNUMP)
 +      (GC_INTEGERP, GC_SYMBOLP, GC_MISCP, GC_VECTORLIKEP, GC_STRINGP)
 +      (GC_CONSP, GC_FLOATP, GC_VECTORP, GC_OVERLAYP, GC_MARKERP)
 +      (GC_INTFWDP, GC_BOOLFWDP, GC_OBJFWDP, GC_BUFFER_OBJFWDP)
 +      (GC_BUFFER_LOCAL_VALUEP, GC_SOME_BUFFER_LOCAL_VALUEP)
 +      (GC_KBOARD_OBJFWDP, GC_PSEUDOVECTORP, GC_WINDOW_CONFIGURATIONP)
 +      (GC_PROCESSP, GC_WINDOWP, GC_SUBRP, GC_COMPILEDP, GC_BUFFERP)
 +      (GC_SUB_CHAR_TABLE_P, GC_CHAR_TABLE_P, GC_BOOL_VECTOR_P, GC_FRAMEP)
 +      (GC_EQ): Remove since they've been identical to their non-GC_
 +      alter-egos ever since the markbit was eradicated.
 +
 +      * alloc.c:
 +      * buffer.c:
 +      * buffer.h:
 +      * data.c:
 +      * fileio.c:
 +      * filelock.c:
 +      * fns.c:
 +      * frame.h:
 +      * lisp.h:
 +      * macterm.c:
 +      * print.c:
 +      * process.c:
 +      * w32fns.c:
 +      * w32menu.c:
 +      * w32term.c:
 +      * xfns.c:
 +      * xmenu.c:
 +      * xterm.c: Replace uses of GC_* macros with the non-GC_ versions.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * chartab.c (map_sub_char_table): Make it work for the top-level
 +      char-table.  Fix handling of parent char-table.
 +      (map_char_table): Adjust for the above change.
 +
 +2008-02-01  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32font.c (Qgdi): Rename from Qw32.
 +
 +2008-02-01  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32bdf.c (get_quoted_string): Make function static.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * xftfont.c (xftfont_open): If one of font's ASCII glyph has
 +      bigger ascent and descent than those of the font, use them as
 +      font's ascent and descent.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * Makefile.in (${lispsource}international/charprop.el): Move this
 +      target within "#ifdef HAVE_UNIDATA" and "#endif".
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * Makefile.in (lisp): Add ${lispsource}language/tai-viet.el.
 +      (shortlisp): Add ../lisp/language/tai-viet.el.
 +
 +2008-02-01  Ulrich Mueller  <ulm@gentoo.org>
 +
 +      * Makefile.in (${lispsource}international/charprop.el): Depend on
 +      temacs${EXEEXT}.
 +
 +2008-02-01  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32font.c (w32font_close): Delete the GDI font object.
 +
 +      * w32menu.c: Include character.h.
 +
 +      * w32proc.c: Likewise.
 +
 +      * w32select.c: Likewise.
 +
 +      * makefile.w32-in (w32proc.o): Depend on character.h.
 +
 +2008-02-01  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32fns.c (syms_of_w32fns): Use DEFSYM macro.
 +
 +      * w32menu.c (syms_of_w32menu): Likewise.
 +
 +      * w32proc.c (syms_of_ntproc): Likewise.
 +
 +      * w32select.c (syms_of_w32select): Likewise.
 +
 +      * w32term.c (syms_of_w32term): Likewise.
 +
 +2008-02-01  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32font.c (w32font_draw): Delete brush after using it.
 +
 +2008-02-01  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32font.c (w32font_open): Don't set font_idx.
 +      (w32font_text_extents): Try GetTextExtentPoint32W before defaulting
 +      to font settings.
 +      (w32font_draw): Fill background explicitly.
 +
 +2008-02-01  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32term.c (w32_initialize): Don't call w32font_initialize.
 +
 +      * w32font.c (w32font_info): Remove subranges.
 +      (QCsubranges, Qmodern, Qswiss, Qroman): Remove.
 +      (QCfamily, Qmonospace, Qsans_serif, Qmono, Qsans, Qsans__serif)
 +      (Qraster, Qoutline, Qlatin, Qgreek, Qcoptic, Qcyrillic, Qarmenian)
 +      (Qhebrew, Qarabic, Qsyriac, Qnko, Qthaana, Qdevanagari, Qbengali)
 +      (Qgurmukhi, Qgujarati, Qoriya, Qtamil, Qtelugu, Qkannada)
 +      (Qmalayalam, Qsinhala, Qthai, Qlao, Qtibetan, Qmyanmar, Qgeorgian)
 +      (Qhangul, Qethiopic, Qcherokee, Qcanadian_aboriginal, Qogham)
 +      (Qrunic, Qkhmer, Qmongolian, Qsymbol, Qbraille, Qhan)
 +      (Qideographic_description, Qcjk_misc, Qkana, Qbopomofo, Qkanbun)
 +      (Qyi, Qbyzantine_musical_symbol, Qmusical_symbol, Qmathematical):
 +      New symbols.
 +      (font_callback_data): New struct.
 +      (w32font_list, w32font_match): Use it.
 +      (w32font_open): Don't populate subranges.
 +      (w32font_has_char): Use script Lisp symbols, not subrange bitmask.
 +      (w32font_encode_char): Always return unicode code-point as-is.
 +      (w32font_text_extents): Supply a transformation matrix to
 +      GetGlyphOutline.  Never look up by glyph index.  Avoid looping
 +      twice.  Use unicode version of GetTexExtentPoint32 instead of
 +      glyph index version.
 +      (set_fonts_frame): Remove.
 +      (w32_enumfont_pattern_entity): Add frame parameter, use it to
 +      set frame parameter.  Use backward compatible fake foundries.
 +      Save generic family in extra slot under QCfamily.  Make width slot
 +      constant.  Save QCspacing value.  Save list of scripts instead of
 +      binary subranges.
 +      (w32_generic_family, logfonts_match, font_matches_spec): New functions.
 +      (add_font_entity_to_list): Use font_callback_data struct.
 +      Filter unwanted fonts.
 +      (add_one_font_entity_to_list): Use font_callback_data struct.
 +      (w32_registry): Default to iso10646_1.
 +      (fill_in_logfont): Use dpi from extra slot.  Don't bother with
 +      string font registries.  Don't fill in font name if it is a generic
 +      family name, fill family instead.  Use spacing, family and script
 +      extra info to fill pitch, family and charset fields.
 +      (list_all_matching_fonts): Use font_callback_data struct.
 +      (unicode_range_for_char): Remove.
 +      (font_supported_scripts): New function.
 +      (w32font_initialize): Remove.
 +      (syms_of_w32font): Update which symbols are defined.
 +
 +2008-02-01  Jason Rumney  <jasonr@gnu.org>
 +
 +      * font.c (font_pixel_size): Reverse assq_no_quit args.
 +
 +      * w32term.h (FONT_WIDTH): Report max width, not average.
 +      (FONT_MAX_WIDTH): Remove.
 +      (FONT_AVG_WIDTH): New macro.
 +
 +      * xfaces.c (Fx_list_fonts) [WINDOWSNT]: Remove Windows only
 +      redefinition of FONT_WIDTH.
 +
 +      * w32term.c (x_font_min_bounds): Use FONT_AVG_WIDTH.
 +      (w32_cache_char_metrics): Use FONT_WIDTH.
 +
 +      * w32fns.c (w32_load_system_font, w32_list_fonts): Use FONT_AVG_WIDTH.
 +
 +2008-02-01  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32font.c (w32font_open): Make lfHeight negative.
 +
 +      * w32fns.c (x_default_font_parameter): Use new style font name.
 +      (Fx_create_frame, x_create_tip_frame): Initialize resx and resy.
 +
 +2008-02-01  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32font.c (QCsubranges): New symbol.
 +      (w32font_open, w32font_has_char): Get subranges from subproperty
 +      of extra.
 +      (w32_enumfont_pattern_entity): Set subranges as subproperty of extra.
 +      (syms_of_w32font): Define :subranges symbol.
 +
 +      * font.c (font_put_extra): Expose externally.
 +
 +      * font.h (font_put_extra): Move declaration from font.c.
 +
 +      * font.c (Ffont_get): Use font driver to determine otf capability.
 +      (adjust_anchor): Check if driver defines anchor_point before using.
 +
 +      * w32font.c (w32font_open): Handle size, height and pixel_size better.
 +      (w32font_draw): Use options.
 +      (w32_enumfont_pattern_entity): Set size to 0 for scalable fonts.
 +      Fix detection of truetype fonts.
 +      (registry_to_w32_charset): Handle charsets other than iso8859-1
 +      expressed as lisp symbols.
 +      (w32_registry): Express charset as lisp symbol.
 +      (fill_in_logfont): Reverse pixel and point height logic.
 +      Don't set width here.  Set quality to default.
 +
 +      * w32fns.c (w32_load_system_font): Fix detecting FIXED_PITCH fonts.
 +      (x_to_w32_font): Fill in lfPitchAndFamily correctly.
 +
 +      * xterm.c (x_draw_glyph_string_foreground) [USE_FONT_BACKEND]:
 +      Remove redundant loop and allocation.
 +
 +      * makefile.w32-in (font.o, w32font.o): New objects.
 +      (fontset.o, xdisp.o, xfaces.o, w32fns.o, w32term.o): Depend on font.h.
 +      (FONTOBJ): New group of objects conditioned on USE_FONT_BACKEND.
 +
 +      * xdisp.c (fill_composite_glyph_string): Make the first arg to
 +      STORE_XCHARB a valid l-value.
 +
 +      * w32term.c (w32_native_per_char_metric): Swap width and rbearing
 +      calculations for non-Truetype fonts.
 +      (x_draw_glyph_string): Sync with xterm.c.
 +      (x_draw_glyph_string_foreground) [USE_FONT_BACKEND]:
 +      Remove redundant code.
 +      (w32_initialize) [USE_FONT_BACKEND]: Call w32font_initialize.
 +
 +      * w32term.h (w32_output_data) [USE_FONT_BACKEND]: Add fontp member.
 +      (FRAME_FONT_OBJECT) [USE_FONT_BACKEND]: New macro from xterm.h.
 +
 +      * w32fns.c [USE_FONT_BACKEND]: Port font backend changes from xfns.c.
 +      (x_to_w32_charset, w32_to_x_charset): Expose externally.
 +
 +      * w32font.c: New file for w32 font backend.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * term.c: Don't include "buffer.h" twice.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * character.c (Funibyte_string): New function.
 +      (syms_of_character): Defsubr it.
 +
 +2008-02-01  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32term.c [USE_FONT_BACKEND]:
 +      (x_get_font_repertory, note_mouse_movement, x_set_mouse_face_gc)
 +      (x_set_glyph_string_clipping, x_set_glyph_string_clipping_exactly)
 +      (x_draw_glyph_string, x_draw_glyph_string_foreground)
 +      (x_draw_composite_glyph_string_foreground, x_new_fontset2)
 +      (x_free_frame_resources): Sync with xterm.c.
 +
 +2008-02-01  Andreas Schwab  <schwab@suse.de>
 +
 +      * lread.c (read1): Use CHAR_TABLE_STANDARD_SLOTS to validate
 +      char-table size.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * font.c (check_otf_features): Define it regardless of HAVE_LIBOTF.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * ftfont.c (ftfont_driver): Delete font_otf_gsub and
 +      font_otf_gpos, add font_drive_otf.
 +
 +      * fontset.c (fontset_find_font): Pay attention to font size
 +      specified for a font.
 +      (reorder_font_vector): Check contents of font_def.
 +
 +      * font.c (struct otf_list): Delete it.
 +      (otf_list): Make it a lisp variable.
 +      (otf_open): Use lispy otf_list.
 +      (generate_otf_features): Rename from parse_gsub_gpos_spec.
 +      (check_otf_features): New function.
 +      (font_otf_DeviceTable, font_otf_ValueRecord, font_otf_Anchor):
 +      New functions.
 +      (font_drive_otf): New function merging font_otf_gsub and
 +      font_otf_gpos.
 +      (font_open_for_lface): New arg spec.  Change argument order.
 +      (font_load_for_face): Adjust for the change of font_open_for_lface.
 +      (Ffont_drive_otf): New function merging Ffont_otf_gsub and
 +      Ffont_otf_gpos.
 +      (syms_of_font): Staticpro otf_list.  Delete defsubr of
 +      Sfont_otf_gsub and Sfont_otf_gpos.  Defsubr Sfont_drive_otf.
 +
 +      * xfaces.c (set_font_frame_param): Adjust for the change of
 +      font_open_for_lface.
 +
 +      * font.h (font_open_for_lface): Adjust prototype.
 +      (struct font_driver): Delete members otf_gsub and otf_gpos, add
 +      member otf_drive.
 +      (font_otf_gsub, font_otf_gpos): Delete externs.
 +      (font_drive_otf): Extern it.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * font.c (font_at): If the window W is not on a window system,
 +      return Qnil.
 +
 +      * coding.c (produce_chars, encode_coding): Don't call
 +      insert_from_gap if no characters to produce.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * fontset.c (free_realized_fontsets): Avoid unnecessary call of
 +      Fclear_face_cache.
 +
 +      * xfaces.c (face_for_font): Check also face->font==font->font.font.
 +
 +2008-02-01  Miles Bader  <miles@gnu.org>
 +
 +      * emacs.c (main): Change default value of `enable_font_backend' to 1.
 +      Parse "--disable-font-backend" option.
 +      (standard_args): Add "--disable-font-backend" option.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * fontset.c (fontset_find_font): New function.
 +      (fontset_font): Use fontset_find_font.
 +      (make_fontset_for_ascii_face): Don't set face ID in rfont_def.
 +      Register the specified font for all Latin characters.
 +      (new_fontset_from_font): Register the specified font for all Latin
 +      characters.
 +      (dump_fontset): For a realized fontset, include the base fontset
 +      name in the returned vector.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * character.h (CHAR_STRING): Cast C to unsigned on calling
 +      char_string.
 +
 +      * character.c (char_string): Type of arg C changed to unsigned.
 +      Signal an error if C is an invalid character code.
 +
 +      * editfns.c (general_insert_function, Fchar_to_string):
 +      Use CHARACTERP, not INTEGERP.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * character.h (MIN_MULTIBYTE_LEADING_CODE)
 +      (MAX_MULTIBYTE_LEADING_CODE): New macros.
 +
 +      * regex.c (analyse_first): Fix for multibyte characters in "case
 +      charset:" and "case categoryspec:".
 +
 +2008-02-01  Andreas Schwab  <schwab@suse.de>
 +
 +      * Makefile.in (LIBES): Move standard libraries to the end.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * alloc.c (Fgarbage_collect): If nextb->text->inhibit_shrinking is
 +      nonzero, don't shrink the buffer nextb.
 +
 +      * buffer.h (struct buffer_text): New member inhibit_shrinking.
 +
 +      * coding.c (coding_alloc_by_making_gap): New arg offset.
 +      (alloc_destination): Call coding_alloc_by_making_gap with the arg
 +      offset.
 +      (decode_coding_iso_2022): Update coding->safe_charsets.
 +      (decode_coding_gap): Temporarily set
 +      current_buffer->text->inhibit_shrinking to 1.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * xterm.c (x_draw_composite_glyph_string_foreground):
 +      Fix indexing into elements of s->cmp and s->char2b.
 +
 +2008-02-01  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * regex.c (RE_STRING_CHAR_AND_LENGTH) [! emacs]: Add missing arg `len'.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * regex.c (GET_CHAR_BEFORE_2, GET_CHAR_AFTER): Check the variable
 +      target_multibyte instead of multibyte.
 +      (re_match_2_internal): Call bcmp_translate with target_multibyte.
 +      (bcmp_translate): Change the argument name from multibyte to
 +      target_multibyte.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      These changes are to compile a regexp into a pattern that can be
 +      used both for multibyte and unibyte targets.
 +
 +      * Makefile.in (search.o): Depend on charset.h.
 +
 +      * character.c (multibyte_char_to_unibyte_safe): New function.
 +
 +      * search.c: Include "charset.h".
 +      (compile_pattern_1): Delete argument multibyte.  Don't set
 +      cp->buf.target_multibyte here.  Set cp->buf.charset_unibyte.
 +      (compile_pattern): Don't compare cp->buf.target_multibyte.
 +      Compare cp->buf.charset_unibyte.
 +      (compile_pattern): Set cp->buf.target_multibyte.
 +
 +      * lisp.h (multibyte_char_to_unibyte_safe): Extern it.
 +
 +      * regex.h (struct re_pattern_buffer): New member charset_unibyte.
 +
 +      * regex.c (RE_STRING_CHAR, RE_STRING_CHAR_AND_LENGTH): New arg
 +      multibyte.  Change callers.
 +      (RE_CHAR_TO_MULTIBYTE, RE_CHAR_TO_UNIBYTE): New macros.
 +      (MAKE_CHAR_MULTIBYTE, MAKE_CHAR_UNIBYTE): Delete.  Change callers
 +      to use RE_CHAR_TO_MULTIBYTE and RE_CHAR_TO_UNIBYTE, respectively.
 +      (SETUP_ASCII_RANGE, SETUP_UNIBYTE_RANGE): New macros.
 +      (SETUP_MULTIBYTE_RANGE): Generate a more compact range_table.
 +      (regex_compile): Make the compiled pattern usable both for
 +      multibyte and unibyte targets.
 +      (analyse_first): Make the fastmap usable both for multibyte and
 +      unibyte targets.
 +      (TRANSLATE_VIA_MULTIBYTE): Delete.
 +      (re_match_2_internal): Pay attention to the case that the
 +      multibyteness of bufp and target may be different.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * xdisp.c (x_produce_glyphs): When a font is not found, make the
 +      empty box occupy at least one column width.
 +
 +2008-02-01  Miles Bader  <miles@gnu.org>
 +
 +      * Makefile.in: Remove redundant HAVE_XFT clause.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * xrdb.c (x_load_resources): Setup the default fontSet X resource.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * fontset.c (Finternal_char_font): Fix for the case of POSITION
 +      being nil.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * xftfont.c (xftfont_open): Call FcConfigSubstitute.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * xftfont.c (xftfont_open): Don't enable antialias explicitly.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * search.c (simple_search): Fix previous change.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * xftfont.c (ftfont_font_format): Extern declaration.
 +
 +      * frame.c (x_set_font): Fix the second arg to fs_query_fontset.
 +
 +      * xfont.c (xfont_driver): Initialize ftfont_driver.type by 0.
 +      (xfont_list): Don't directly use Lisp_Object as an operand of &&.
 +
 +      * ftfont.c (ftfont_driver): Initialize ftfont_driver.type by 0.
 +      (ftfont_font_format): Fix previous change.
 +
 +      * font.h (Ffont_xlfd_name): EXFUN it.
 +
 +      * font.c (font_parse_xlfd): Fix the array size of `f'.
 +      (register_font_driver): Use EQ to compare driver->type.
 +
 +      * xfns.c (xic_create_xfontset2) [USE_FONT_BACKEND]: New function.
 +      (create_frame_xic) [USE_FONT_BACKEND]: Call xic_create_xfontset2.
 +      (xic_set_xfontset) [USE_FONT_BACKEND]: Likewise.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * ftfont.c (ftfont_pattern_entity, ftfont_list_generic_family)
 +      (ftfont_list, ftfont_font_format): Check if FC_FONTFORMAT is defined.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * xfont.c (xfont_open): Set font->format.
 +
 +      * xftfont.c (xftfont_open): Set font->format.
 +
 +      * ftfont.c (ftfont_pattern_entity): Add fontformat in a pattern.
 +      (ftfont_list): Include FC_FONTFORMAT in FcObject.
 +      (ftfont_open): Set font->format.
 +      (ftfont_font_format): New function.
 +
 +      * font.h (struct font): New member format.
 +
 +      * font.c (Qopentype): New variable.
 +      (syms_of_font): Defsym it.
 +      (Fquery_font): Change the format of the last element of the return
 +      value.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * xfns.c (xic_create_xfontset): Try the default fontset name as a
 +      last resort.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * coding.c (detect_coding_charset): Fix detection of multi-byte
 +      charset.
 +
 +2008-02-01  Bob Halley  <halley@play-bow.org>  (tiny change)
 +
 +      * ccl.c (ccl_driver): If DST is NULL, set ccl->produced to 0.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * xdisp.c (get_next_display_element): Set it->face_id for the
 +      first component of a composition.
 +      (x_produce_glyphs): Check if the font is changed or not for composition.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * fontset.c (Qlatin): New variable.
 +      (syms_of_fontset): Define it as a lisp symbol.
 +      (Fset_fontset_font): If TARGET is `latin', use FONT_SPEC for ASCII.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * font.c (font_unparse_fcname): Pay attention to the case that
 +      some of font property is a null string.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * term.c: Include "composite.h".
 +      (encode_terminal_code): Output all components of composition.
 +      Check the size of encode_terminal_src.
 +      (produce_glyphs): For composition, call produce_composite_glyph.
 +      (append_composite_glyph, produce_composite_glyph): New functions.
 +
 +      * xdisp.c (x_produce_glyphs): In handling composition, if a font
 +      is not found, get font_info from the current ascii face.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * fileio.c (Finsert_file_contents): On replacing, temporarily bind
 +      buffer-file-name to Qnil before calling insert_from_buffer.
 +
 +      * font.c (font_unparse_fcname): Pay attention to the case that
 +      foundry is a null string.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * ftfont.c (ftfont_list): Allow registry "unicode-sip".
 +
 +      * font.c (Qunicode_sip): New variable.
 +      (syms_of_font): Declare it as a Lisp symbol.
 +
 +      * font.h (Qunicode_sip): Extern it.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * composite.c (get_composition_id): Pay attention to TAB component.
 +
 +      * xterm.c (x_draw_composite_glyph_string_foreground): Don't draw
 +      TAB.  Adjust for the change of s->char2b which always points to
 +      the first element of allocated memory.
 +
 +      * xftfont.c (xftfont_text_extents): Fix calculation of descent value.
 +
 +      * xdisp.c (handle_composition_prop): Set it->c to the first
 +      non-TAB component.
 +      (fill_composite_glyph_string): Change argument.
 +      (BUILD_COMPOSITE_GLYPH_STRING): Adjust for the above change.
 +      (x_produce_glyphs): Fix handling of left/right padding.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * coding.c (detect_coding_system): Fix for handling off
 +      inhibit_iso_escape_detection.  Fix for the case that no coding
 +      system is defined for a specific coding category.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * font.c (font_matching_entity): Delete unused local var.
 +
 +      * xftfont.c (xftfont_open): Call XftDefaultSubstitute before
 +      opening a font.
 +
 +      * fileio.c (Finsert_file_contents): On recovering a file, assume
 +      Unix-like eol.
 +      (choose_write_coding_system): On auto-saving a file, force
 +      Unix-like eol.
 +
 +      * coding.c (setup_coding_system): Fix setting of
 +      coding->common_flags based on eol_type.
 +      (coding_inherit_eol_type): If PARENT is not nil, be sure to
 +      inherit from it.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * alloc.c (NSTATICS): Increas to 0x600.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * ftfont.c (ftfont_driver): Set ftfont_driver.match to ftfont_match.
 +      (ftfont_list): Don't check :name property.
 +      (ftfont_match): New function.
 +      (ftfont_pattern_entity): If the pattern doesn't contain
 +      FC_SPACING, don't assume FC_MONO.
 +
 +      * font.h (struct font_driver): New member `match'.
 +      (font_update_drivers): Adjust prototype.
 +
 +      * font.c (font_parse_fcname, font_parse_name): Don't change :name
 +      property of FONT.
 +      (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE, check_gstring):
 +      Define them unconditionally.
 +      (font_matching_entity): New function.
 +      (font_open_by_name): Try font_matching_entity if exact match is
 +      not found.
 +      (font_update_drivers): Delete the arg FONT.  Return a list of
 +      actually used backends.  Don't free faces, font caches here.
 +      Don't store data in frame parameters.  Don't call x_set_font.
 +      (Ffont_spec): Store :name property as is.
 +      (Ffont_get): Check HAVE_LIBOTF before calling font_otf_capability.
 +      (Ffont_otf_gsub): Call font->driver->otf_gsub instead of font_otf_gsub.
 +      (Ffont_otf_gpos): Call font->driver->otf_gpos instead of font_otf_gpos.
 +      (Ffont_otf_alternates): Check if the driver has otf_gsub function.
 +      Call font->driver->otf_gsub instead of font_otf_gsub.
 +
 +      * frame.c (x_set_font_backend): Do more works that were done in
 +      font_update_drivers before.
 +
 +      * xfont.c (xfont_match): New function.
 +      (xfont_driver): Set xfont_driver.match to xfont_match.
 +      (xfont_draw): Set font in GC if necessary.
 +
 +      * ftxfont.c (ftxfont_match): New function.
 +      (syms_of_ftxfont): Set ftxfont_driver.match to ftxfont_match.
 +
 +      * xftfont.c (xftfont_match): New function.
 +      (syms_of_xftfont): Set xftfont_driver.match to xftfont_match.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * font.h (struct font): New member scalable.
 +      (struct font_driver): New arg ALTERANTE_SUBST to otf_gsub.
 +      (font_otf_gsub): Adjust prototype.
 +
 +      * font.c (font_otf_capability): Fix handling of the default langsys.
 +      (parse_gsub_gpos_spec): Change type to void.  New arg nbytes.
 +      Check the contents of SPEC.
 +      (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE): New macros.
 +      (check_gstring): New function.
 +      (REPLACEMENT_CHARACTER): New macro.
 +      (font_otf_gsub): New arg alternate_subst.  Be sure to set all
 +      glyph codes of GSTRING.
 +      (font_otf_gpos): Be sure to set all glyph codes of GSTRING.
 +      (font_prepare_composition): Set cmp->glyph_len.
 +      (font_open_entity): Set font->scalable.
 +      (Ffont_get): Handle :otf property.
 +      (Ffont_otf_gsub, Ffont_otf_gpos, Ffont_otf_alternates):
 +      New functions.
 +      (Fquery_font): Use font->font.full_name.
 +      (syms_of_font): Defsubr Sfont_otf_gsub, Sfont_otf_gpos, and
 +      Sfont_otf_alternates.
 +
 +      * ftfont.c (ftfont_open): Set font->font.full_name and
 +      font->font.name properly.  Fix calculation of font->font.height
 +      and font->min_width.
 +
 +      * ftxfont.c (ftxfont_create_gcs): New function.
 +      (ftxfont_draw_bitmap): Fix arg to ftfont_driver.get_bitmap.
 +      (ftxfont_draw_backgrond): Fix filling region.
 +      (ftxfont_default_fid): New function.
 +      (ftxfont_open): Set xfont->fid to the return value of
 +      ftxfont_default_fid.
 +      (ftxfont_prepare_face): Use ftxfont_create_gcs to create GCs.
 +      (ftxfont_done_face): Free only GCs that are created by
 +      ftxfont_create_gcs.
 +      (ftxfont_draw): If face->gc != s->gc, create proper GCs.
 +
 +      * xterm.c (x_set_glyph_string_clipping_exactly) [USE_FONT_BACKEND]:
 +      Clip to src->width, etc (not src->clip_XXX).
 +
 +      * xfns.c (x_create_tip_frame) [USE_FONT_BACKEND]: Handle
 +      FontBackend frame parameter.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * font.h (struct font_driver_list): New member `on'.
 +      (Fclear_font_cache): EXFUN it.
 +      (font_update_drivers): Extern it.
 +
 +      * font.c (font_unparse_fcname): Fix typo (swidth->width).
 +      (font_list_entities): Check driver_list->on.
 +      (register_font_driver): Initialize `on' member to 0.
 +      (font_update_drivers): New function.
 +      (Fclear_font_cache): Check driver_list->on.
 +
 +      * frame.h (Qfont_backend): Extern it.
 +      (x_set_font_backend): Extern it.
 +
 +      * frame.c (Qfont_backend): New variable.
 +      (frame_parms): New element for font-backend.
 +      (x_set_font_backend): New function.
 +
 +      * xfns.c (Fx_create_frame) [USE_FONT_BACKEND]: Handle
 +      FontBackend frame parameter.
 +      (x_frame_parm_handlers) [USE_FONT_BACKEND]: New element
 +      x_set_font_backend.
 +
 +      * xfont.c (xfont_list): Don't try listing by :name property if the
 +      name is not for XLFD.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * font.h (LGLYPH_FROM, LGLYPH_TO, LGLYPH_SET_FROM)
 +      (LGLYPH_SET_TO): New macros.
 +      (LGLYPH_XOFF, LGLYPH_YOFF, LGLYPH_WADJUST): Check if adjustment
 +      element of G is vector or not.
 +      (font_at): Extern it.
 +
 +      * font.c: Include window.h.
 +      (font_lispy_object): New function.
 +      (font_prepare_composition): Check LGLYPH_FORM (g) to detect the
 +      end of valid glyph.
 +      (font_close_object): Fix getting (struct font *).
 +      (font_at): New function.
 +      (Ffont_get): If FONT is a font-object, get entity from it.
 +      (Ffont_make_gstring): Initialize elements of glyphs with nil.
 +      (Ffont_fill_gstring): Use macro LGSTRING_XXX and LGLYPH_XXX.
 +      Fix range check.
 +      (Ffont_at): New function.
 +      (syms_of_font): Defsubr Sfont_at.
 +
 +      * xdisp.c (it_props): Move the entry for Qauto_composed to just
 +      before the entry for Qcomposition.
 +      (handle_auto_composed_prop): Call auto-composition-function with 4 args.
 +      (handle_composition_prop) [USE_FONT_BACKEND]: Set it->face_id from
 +      the font in gstring.
 +      (fill_composite_glyph_string) [USE_FONT_BACKEND]: Check
 +      LGLYPH_FORM (g) to detect the end of valid glyph.
 +      (x_produce_glyphs) [USE_FONT_BACKEND]: Don't update it->face_id if
 +      we are composing with gstring.
 +
 +      * xterm.c (x_draw_composite_glyph_string_foreground) [USE_FONT_BACKEND]:
 +      Check if adjustment is vector or not.
 +
 +      * Makefile.in (font.o): Make it depends on window.h.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * xterm.c (x_draw_composite_glyph_string_foreground): Check if
 +      adjustment is vector or not.
 +
 +2008-02-01  Miles Bader  <miles@gnu.org>
 +
 +      * character.h (CHECK_CHARACTER): Redefine in terms of CHECK_TYPE.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * font.h (LGLYPH_XOFF, LGLYPH_YOFF, LGLYPH_WIDTH, LGLYPH_WADJUST)
 +      (LGLYPH_SET_WIDTH): Adjust for the change of LGLYPH format.
 +      (LGLYPH_ADJUSTMENT, LGLYPH_SET_ADJUSTMENT): New macros.
 +
 +      * font.c (font_merge_old_spec): Treat '*' in foundry as a wild card.
 +      (DEVICE_DELTA): Fix typo.
 +      (font_otf_gpos, font_prepare_compositio): Adjust for the change of
 +      LGLYPH format.
 +
 +      * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
 +      the change of LGLYPH format.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * ftfont.c (ftfont_list): Fix typo.
 +      (ftfont_build_basic_charsets): Don't include letters with diacritics.
 +
 +2008-02-01  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * xfaces.c (realize_non_ascii_face): Set face->extra to NULL.
 +
 +      * xftfont.c (xftfont_done_face): Call XftDrawDestroy only if
 +      xftface_info is non-NULL.
 +
 +2008-02-01  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * ftfont.c (ftfont_list): Move misplaced #endif.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * ftfont.c (ftfont_list): Pay attention to the case that
 +      FC_CAPABILITY is not defined.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * xftfont.c (xftfont_open): Set charset related members to -1.
 +
 +      * ftfont.c (ftfont_list): Handle QCotf property.  Fix handling of
 +      QCname.
 +      (ftfont_open): Set charset related members to -1.
 +
 +      * fontset.c (Votf_script_alist): New variable.
 +      (syms_of_fontset): Initialize it.
 +      (fontset_font): Delete unused variable.
 +
 +      * fontset.h (Votf_script_alist): Extern it.
 +
 +      * font.c (font_find_for_lface): Optimize code.
 +
 +      * font.h (font_close_object, font_merge_old_spec): Extern them.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * font.c (QCscalable, Qc, Qm, Qp, Qd): New variables.
 +      (syms_of_font): Initialize them.
 +      (font_pixel_size): Allow float value in dpi.
 +      (font_prop_validate_type): Delete.
 +      (font_prop_validate_symbol, font_prop_validate_style): Change argument.
 +      Change caller.
 +      (font_prop_validate_non_neg): Rename from font_prop_validate_size.
 +      (font_prop_validate_extra): Delete.
 +      (font_prop_validate_spacing): New function.
 +      (font_property_table): Add elements for all known properties.
 +      (get_font_prop_index): Rename from check_font_prop_name.
 +      New argument FROM.  Change caller.
 +      (font_prop_validate): Validate all known properties.
 +      (font_put_extra): Delete argument force.  Change caller.
 +      (font_expand_wildcards): Make it static.  Fix the way of shrinking
 +      the possible range.
 +      (font_parse_xlfd): Delete argument merge.  Fix handling of RESX,
 +      RESY, SPACING, and AVGWIDTH.  Don't validate property values here.
 +      Change caller.
 +      (font_unparse_xlfd): Handle dpi, spacing, and scalable properties.
 +      (font_parse_fcname): Delete argument merge.  Fix parsing of point
 +      size.  Don't validate properties values here.  Change caller.
 +      (font_unparse_fcname): Handle dpi, spacing, and scalable properties.
 +      (font_open_by_name): Delete unused variable.
 +      (Ffont_spec): Likewise.  Validate property values.
 +      (Ffont_match_p): New function.
 +
 +      * font.h (QCscalable): Extern it.
 +      (font_parse_xlfd, font_parse_fcname): Adjust prototype.
 +
 +      * ftfont.c (ftfont_list): Handle properties dpi, spacing, and scalable.
 +
 +      * xfont.c (xfont_query_font): Adjust for the change of font_parse_xlfd.
 +      (xfont_list_pattern): New function.
 +      (xfont_list): Use xfont_list_pattern.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * font.h (Flist_fonts): EXFUN it.
 +
 +2008-02-01  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32term.c (w32_initialize): Add back smoothing_type and
 +      smoothing_enabled definitions.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * xterm.c (x_draw_glyph_string) [USE_FONT_BACKEND]: Check
 +      s->face->font on determining underline position.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * font.c (font_parse_xlfd): Fix generating of CHARSET_REGISTRY field.
 +      (font_has_char): Accept font-object too.
 +      (font_find_for_lface): Try at first with a size specified in face.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * frame.c (x_set_font) [USE_FONT_BACKEND]: Fix argument to
 +      font_open_by_name.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * font.h (QCspacing, QCdpi): Extern them.
 +      (enum font_spacing): New enum.
 +      (FONT_PIXEL_SIZE_QUANTUM): New macro.
 +
 +      * font.c (POINT_TO_PIXEL): Don't divide POINT by 10.
 +      (QCspacing, QCdpi): New variables.
 +      (syms_of_font): Initialize them.
 +      (font_pixel_size): New function.
 +      (font_put_extra): New function.
 +      (font_parse_xlfd): Fix handling of font size.  Add QCdpi property
 +      in FONT_EXTRA.
 +      (font_parse_fcname): Handle enumerated values (e.g. bold).
 +      Fix handling font size.  Add QCname property that contains only
 +      unknown properties.
 +      (font_score): Change argument.  Change caller.  Pay attention to
 +      FONT_PIXEL_SIZE_QUANTUM.
 +      (font_sort_entites, font_list_entities, font_find_for_lface)
 +      (font_open_for_lface, font_open_by_name): Fix handling of font size.
 +      (Ffont_spec): Add QCname property that contains only unknown properties.
 +
 +      * ftfont.c (ftfont_list): Use assq_no_quit, not Fassq.
 +      Don't include weight in listing pattern, instead check weight of each
 +      listed font.  Don't include scalable in pattern.  Pay attention to
 +      FONT_PIXEL_SIZE_QUANTUM.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * font.c (font_parse_fcname): Fix parsing of point-size.
 +      (font_unparse_fcname): Produce symbolic names for style properties.
 +      (font_list_entities): Handle float size correctly.
 +      (font_open_by_name): Prefer `normal' property values if the name
 +      doesn't specify them.
 +
 +      * fontset.c (Finternal_char_font): Use font_get_name, not
 +      Ffont_xlfd_name.
 +
 +      * ftfont.c (ftfont_pattern_entity): Use the numeric value 100 for
 +      FC_WEIGHT_REGULAR.  Exclude FC_SIZE and FC_PIXEL_SIZE from listing
 +      pattern.  Don't force scalable.
 +
 +      * xftfont.c (xftfont_open): For generating a name, start from
 +      96-byte buffer.
 +
 +2008-02-01  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * frame.h (x_new_fontset2): Fix prototype.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * font.h (struct font_driver): Delete member parse_name.
 +      (font_match_p, font_get_spec, font_parse_fcname)
 +      (font_unparse_fcname): Extern them.
 +      (font_get_name): Adjust prototype.
 +
 +      * font.c (XLFD_SMALLNUM_MASK): Delete this macro.
 +      (XLFD_LARGENUM_MASK): Delete XLFD_ENCODING_MASK from it.
 +      (font_expand_wildcards): Fix handling ENCODING field.
 +      Avoid unnecessary checks for weight, slant, and swidth.
 +      (font_parse_fcname): New function.
 +      (font_unparse_fcname): New function.
 +      (font_parse_name): New function.
 +      (font_match_p): New function.
 +      (font_get_name): Change return value to Lisp string.
 +      (font_get_spec): New function.
 +      (Qunspecified, Qignore_defface): Don't extern them.
 +      (font_find_for_lface): Assume that LFACE is fully specified.
 +      (font_load_for_face): If lface[LFACE_FONT_INDEX] is an font
 +      object, use it for FACE.
 +      (font_open_by_name): Call Ffont_spec with QCname prop.  Don't call
 +      driver->parse_name.
 +      (Ffont_spec): Call font_parse_name, not font_parse_xlfd.
 +
 +      * fontset.h (new_fontset_from_font) [USE_FONT_BACKEND]: Adjust
 +      prototype.
 +
 +      * fontset.c (new_fontset_from_font) [USE_FONT_BACKEND]: Delete
 +      argument F.  Don't call Fnew_fontset.  Instead, directly call
 +      make_fontset.
 +
 +      * frame.h (x_new_fontset2) [USE_FONT_BACKEND]: Adjust prototype.
 +
 +      * frame.c (x_set_font) [USE_FONT_BACKEND]: Adjust for the change
 +      of x_new_fontset2.
 +
 +      * ftfont.c (Qmonospace, Qsans_serif, Qserif, Qmono, Qsans)
 +      (Qsans__serif): New variables.
 +      (ftfont_generic_family_list): New variable.
 +      (syms_of_ftfont): Initialize the above variables.
 +      (ftfont_pattern_entity): Delete argument NAME.
 +      (ftfont_list_generic_family): New function.
 +      (ftfont_parse_name): Delete this function.
 +      (ftfont_list): Try generic family only when FcFontList found no font.
 +      (ftfont_list_family): Fix args to FcObjectSetBuild.
 +
 +      * xfaces.c (check_lface_attrs) [USE_FONT_BACKEND]: Accept font
 +      object in attrs[LFACE_FONT_INDEX].
 +      (set_lface_from_font_name): Cancel all changes for font-backend.
 +      (set_lface_from_font_and_fontset) [USE_FONT_BACKEND]: New
 +      function.
 +      (Finternal_set_lisp_face_attribute) [USE_FONT_BACKEND]: Accept a
 +      font object in QCfont attribute.
 +      (set_font_frame_param) [USE_FONT_BACKEND]: Likewise.
 +      (realize_default_face) [USE_FONT_BACKEND]: Call
 +      set_lface_from_font_and_fontset.
 +
 +      * xfns.c (x_default_font_parameter) [USE_FONT_BACKEND]: Try also
 +      "fixed", and signal error here if no suitable font was found.
 +
 +      * xfont.c (xfont_parse_name): Delete this function.
 +
 +      * xftfont.c (xftfont_open): Change coding style of error
 +      handling.  Generate fontconfig's fontname pattern.
 +
 +      * xterm.h (struct x_output) [USE_FONT_BACKEND]: New member fontp.
 +      (FRAME_FONT_OBJECT) [USE_FONT_BACKEND]: New macro.
 +
 +      * xterm.c (x_new_fontset2) [USE_FONT_BACKEND]: Change arguments.
 +      Both args FONTSET and FONT_OBJECT must be existing ones.
 +
 +2008-02-01  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
 +
 +      * macterm.c (mac_set_unicode_keystroke_event): Don't use MAKE_CHAR.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * xfont.c (xfont_open, xfont_encode_char): Fix typo.
 +
 +      * font.h (struct font): Fix typo.
 +
 +      * font.c (enum xlfd_field_index): Rename XLFD_XXX_SIZE_INDEX to
 +      XLFD_XXX_INDEX.
 +      (enum xlfd_field_mask): New enum.
-       (DECODE_EMACS_MULE_21_COMPOSITION): Call
-       DECODE_EMACS_MULE_COMPOSITION_RULE_21.  Produce correct annotation
++      (intern_font_field): Change argument.  Change caller.  If digits
 +      are followed by non-digits, return a symbol.
 +      (font_expand_wildcards): New function.
 +      (font_parse_xlfd): Fix wildcard handling.
 +      (Ffont_spec): If :name is specified, reflect the info in the other
 +      properties.
 +
 +      * ftfont.c (ftfont_pattern_entity): Fix typo.
 +      (ftfont_list): Enforce FC_LANG in PATTERN to cancel the effect of
 +      locale.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * font.h (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Extern them.
 +
 +      * font.c (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Move from ftfont.c.
 +      (font_unparse_xlfd): Fix argument type declaration.  Append "*" if
 +      registry doesn't specify encoding part.
 +      (font_find_for_lface): Pay attention to LFACE_FONT_INDEX.
 +      (font_open_by_name): At first try parsing the name.
 +      (syms_of_font): Declare Qiso8859_1, Qiso10646_1, and Qunicode_bmp
 +      as Lisp symbols.
 +
 +      * fontset.c (reorder_font_vector): Pay attention to the case that
 +      the 3rd element of font_def is nil.
 +      (fontset_font): For the default fontset, append one more fontset
 +      elements for a script-based font specification.  Don't add script
 +      attribute on finding a font.
 +      (new_fontset_from_font): Unconditionally set FONTSET_ASCII to the
 +      font name.
 +      (fontset_ascii_font): If a font can't be opened, return nil.
 +
 +      * ftfont.c (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Move to font.c.
 +      (ftfont_pattern_entity): New function.
 +      (ftfont_get_cache): Assume that freetype_font_cache is already
 +      initialized.
 +      (ftfont_list): Handle the case that a file is specified in font
 +      name.  Use ftfont_pattern_entity to generate entities.
 +      (ftfont_has_char): Check if the pattern contains FC_CHARSET.
 +      (syms_of_ftfont): Initialize freetype_font_cache.
 +
 +      * xftfont.c (xftfont_open): Make the font name fontconfig's
 +      style.  Add BLOCK_INPUT and UNBLOCK_INPUT.
 +      (xftfont_close): Free font->font.name if not NULL.
 +
 +      * xfont.c (xfont_list): If script is specified for a font, return
 +      null_vector.
 +      (xfont_list_family): Declare argument type.
 +
 +      * xfaces.c (set_lface_from_font_name): If a font doesn't have a
 +      name, set LFACE_FONT (lface) to nil.
 +
 +      * xterm.c (x_new_fontset2): If an ASCII font couldn't be loaded,
 +      return Qnil.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * emacs.c (main): Check -enable-font-backend arg after the check of -nl.
 +      (standard_args): Add "-enable-font-backend".
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * xftfont.c (xftfont_default_fid): Set fid_known to 1.
 +      (struct xftdraw_list, xftdraw_list): Delete them.
 +      (register_xftdraw, check_xftdraw): Delete them.
 +      (xftfont_prepare_face): Don't call register_xftdraw.
 +      (xftfont_done_face): Don't call check_xftdraw.
 +      (xftfont_draw): Get background color only when with_background is
 +      nonzero.
 +
 +      * xfont.c (xfont_encode_char): Fix calculation of char2b.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      These changes are for the new font handling codes.
 +
 +      * Makefile.in (ALL_CFLAGS): Add @FREETYPE_CFLAGS@,
 +      @FONTCONFIG_CFLAGS@, and @LIBOTF_CFLAGS@.
 +      (LIB_X11_LIB): If HAVE_XFT is defined, set to @XFT_LIBS@.
 +      (FONTSRC, FONTOBJ): New variables.
 +      (obj): Add $(FONTOBJ).
 +      (SOME_MACHINE_OBJECTS): Lib_X11_Lib.
 +      (LIBES): Add @FREETYPE_LIBS@, @FONTCONFIG_LIBS@, and
 +      @LIBOTF_LIBS@.
 +      (font.o, ftfont.o, xfont.o, xftfont.o, ftxfont.o): New targets.
 +      (fontset.o, xdisp.o, xfaces.o, xfns.o, xterm.o): Depend on $(FONTSRC).
 +
 +      * font.h, font.c, xfont.c, ftfont.c, xftfont.c, ftxfont.c: New files.
 +
 +      * character.h (Vscript_representative_chars): Extern it.
 +
 +      * character.c (Vscript_representative_chars): New variable.
 +      (syms_of_character): Declare it as a Lisp variable.
 +
 +      * composite.c (get_composition_id) [USE_FONT_BACKEND]: If
 +      enable_font_backend is nonzero, accept the composition method
 +      COMPOSITION_WITH_GLYPH_STRING.
 +
 +      * composite.h (enum composition_method) [USE_FONT_BACKEND]: New
 +      enumeration COMPOSITION_WITH_GLYPH_STRING.
 +
 +      * dispextern.h (struct glyph_string) [USE_FONT_BACKEND]: New
 +      members clip_x, clip_y, clip_width, and clip_height.
 +      (struct face) [USE_FONT_BACKEND]: New members font_info and extra.
 +
 +      * emacs.c (main) [USE_FONT_BACKEND]: Handle arg
 +      --enable-font-backend.  Call syms_of_font.
 +
 +      * fns.c (assoc_no_quit): New function.
 +
 +      * fontset.h (FONT_INFO_FROM_FACE): New macro.
 +      (face_for_font, new_fontset_from_font)
 +      (fontset_ascii_font) [USE_FONT_BACKEND]: Extern them.
 +
 +      * fontset.c [USE_FONT_BACKEND]: Include "font.h".
 +      (fontset_font, fontset_ascii, face_for_char)
 +      (make_fontset_for_ascii_face, Ffont_info)
 +      (Finternal_char_font) [USE_FONT_BACKEND]: If enable_font_backend
 +      is nonzero, use font-backend mechanism.
 +      (find_font_encoding): Make it non-static.
 +      (new_fontset_from_font, fontset_ascii_font) [USE_FONT_BACKEND]:
 +      New functions.
 +
 +      * frame.h (struct frame): New members resx and resy.
 +      (struct frame) [USE_FONT_BACKEND]: New member font_driver_list.
 +      (x_new_fontset2) [USE_FONT_BACKEND]: Extern it.
 +
 +      * frame.c [USE_FONT_BACKEND]: Include "font.h".
 +      (make_frame, x_set_font) [USE_FONT_BACKEND]: Use font-backend mechanism.
 +
 +      * lisp.h (assoc_no_quit): Extern it.
 +
 +      * xdisp.c: If USE_FONT_BACKEND is defined, include "font.h".
 +      Through out the file, use FONT_INFO_FROM_FACE instead of
 +      FONT_INFO_FROM_ID, use get_per_char_metric instead of
 +      rif->per_char_metric.
 +      (handle_composition_prop) [USE_FONT_BACKEND]: If the composition
 +      method is COMPOSITION_WITH_GLYPH_STRING, just set it->c to ' '.
 +      (get_glyph_face_and_encoding, fill_composite_glyph_string)
 +      (get_char_face_and_encoding, BUILD_COMPOSITE_GLYPH_STRING)
 +      (x_produce_glyphs) [USE_FONT_BACKEND]: If enable_font_backend is
 +      nonzero, use font-backend mechanism.
 +      (get_per_char_metric): New function.
 +
 +      * xfaces.c [USE_FONT_BACKEND]: Include "font.h".
 +      (set_lface_from_font_name)
 +      (set_font_frame_param, free_realized_face)
 +      (prepare_face_for_display, clear_face_gcs)
 +      (Finternal_set_font_selection_order, realize_x_face)
 +      [USE_FONT_BACKEND]: If enable_font_backend is nonzero, use
 +      font-backend mechanism.
 +      (clear_face_cache) [USE_FONT_BACKEND]: Don't call clear_font_table.
 +      (load_face_font) [USE_FONT_BACKEND]: Abort.
 +      (face_symbolic_value, face_symbolic_weight, face_symbolic_slant)
 +      (face_symbolic_swidth, face_for_font) [USE_FONT_BACKEND]: New functions.
 +
 +      * xfns.c [USE_FONT_BACKEND]: Include "font.h".
 +      (x_default_font_parameter) [USE_FONT_BACKEND]: New function.
 +      (Fx_create_frame) [USE_FONT_BACKEND]: If enable_font_backend is
 +      nonzero, register all available font drivers.
 +      Call x_default_font_parameter for deciding a font.
 +      (x_create_tip_frame) [USE_FONT_BACKEND]: Likewise.
 +
 +      * xterm.c [USE_FONT_BACKEND]: Include "font.h".
 +      (x_set_mouse_face_gc, x_set_glyph_string_clipping)
 +      (x_set_glyph_string_clipping_exactly)
 +      (x_compute_glyph_string_overhangs)
 +      (x_draw_glyph_string_foreground)
 +      (x_draw_composite_glyph_string_foreground, x_draw_glyph_string)
 +      (x_free_frame_resources) [USE_FONT_BACKEND]: If
 +      enable_font_backend is nonzero, use font-backend mechanism.
 +      (x_new_fontset2) [USE_FONT_BACKEND]: New function.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * coding.c (coding_inherit_eol_type): If PARENT is nil, inherit from
 +      system_eol_type.
 +      (syms_of_coding): Initialize system_eol_type.
 +
 +      * process.c (Fset_process_coding_system): Inherit system's eol
 +      format if necessary.
 +
 +2008-02-01  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
 +
 +      * macgui.h (USE_ATSUI): Don't enable on emacs-unicode-2 branch.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * coding.c (decode_eol): Pay attention to buffer relocation in
 +      del_range_2.
 +      (decode_coding): Call decode_eol before restoring undo_list.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * charset.c (Fdefine_charset_internal): Fix setting of
 +      emacs_mule_bytes.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * keyboard.c (read_char): Check if C is a character or not before
 +      looking up Vkeyboard_translate_table.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * coding.c (DECODE_EMACS_MULE_20_RELATIVE_COMPOSITION):
 +      Fix condition to terminate the loop.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * coding.c (produce_composition): Compare charbuf[i] instead of
 +      args[i] against 0.
 +      (Fterminal_coding_system): Use EQ to compare Lisp objects.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * coding.c (DECODE_COMPOSITION_START): If the source is short, set
 +      coding->result to CODING_RESULT_INSUFFICIENT_SRC.
 +      (decode_coding_gap): Set CODING_MODE_LAST_BLOCK after the call of
 +      detect_coding.
 +      (emacs_mule_char): Handle old style (Emacs 20) component character
 +      of a composition.
 +      (DECODE_EMACS_MULE_COMPOSITION_RULE_20)
 +      (DECODE_EMACS_MULE_20_RULEBASE_COMPOSITION): Fix parsing a
 +      composition rule.
 +      (decode_coding_emacs_mule): Handle invalid bytes correctly.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * coding.c (encode_coding_ccl): Allocate destination dynamically
 +      when necessary.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * ccl.c (Fccl_execute_on_string): Fix the condition of terminating
 +      the loop.  When quitted, show a proper error message.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * xterm.c (x_set_glyph_string_clipping_exactly):
 +      Set src->clip_head and src->clip_tail temporarily instead of src->hl.
 +
 +      * ccl.c (CCL_WRITE_STRING): Handle a flag bit for multibyte
 +      character sequence.
 +      (Fccl_execute_on_string): Use ASET, not XSET.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * search.c (search_buffer): Fix handling of "\\" in a trivial regexp.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * coding.c (decode_coding): Fix the condition of terminating the
 +      decoding loop.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * data.c (Faset): On setting a character bigger than 255 in a
 +      unibyte string, signal an error instead of make the string multibyte.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * charset.c (map_charset_chars): Fix for ascii-compatible charset
 +      made by a mapping table.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * xdisp.c (fill_composite_glyph_string): Check s->face is NULL or
 +      not.
 +      (BUILD_COMPOSITE_GLYPH_STRING): If C is TAB, set s->face to NULL.
 +      (x_produce_glyphs): If CH is TAB, set cmp->offsets properly.
 +
 +      * xterm.c (x_draw_composite_glyph_string_foreground):
 +      Check s->face is NULL or not.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * xterm.c (x_set_glyph_string_clipping_exactly): New function.
 +      (x_draw_glyph_string): Fix drawing of right_overhang and
 +      left_overhang around/on cursor.
 +
 +      * xdisp.c (draw_glyphs): Fix inclusion of right_overwriting glyphs.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * xdisp.c (x_produce_glyphs): Handle composition with TAB.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * coding.c (Fdefine_coding_system_internal)
 +      (Fdefine_coding_system_alias): Avoid a duplicated element in
 +      Vcoding_system_alist.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * xterm.c (handle_one_xevent): Handle keysyms 0x1000000..0x10000FF.
 +
 +      * coding.c (Qcoding_system_define_form): New variable.
 +      (syms_of_coding): Intern and staticpro it.
 +      (Fcoding_system_p): Check Qcoding_system_define_form.
 +      (Fcheck_coding_system): Try to autoload the definition of CODING-SYSTEM.
 +
 +      * coding.h (CODING_SYSTEM_P): If ID is not available, call
 +      Fcoding_system_p.
 +      (CHECK_CODING_SYSTEM): If ID is not available, call
 +      Fcheck_coding_system.
 +      (CHECK_CODING_SYSTEM_GET_SPEC, CHECK_CODING_SYSTEM_GET_ID):
 +      Try also Fcheck_coding_system.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * coding.c (code_conversion_restore): GCPRO arg.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * character.c (lisp_string_width): Check multibyteness of STRING.
 +
 +2008-02-01  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
 +
 +      * macterm.c (mac_encode_char): Call ccl_driver with the last arg
 +      Qnil.  Use JIS_TO_SJIS instead of ENCODE_SJIS.
 +      (decode_mac_font_name): Use decode_coding_c_string instead of
 +      decode_coding.
 +      (x_load_font): Initialize fontp->fontset to -1.
 +      Set fontp->encoding_type.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * search.c (search_buffer): Give up BM search on case-fold-search
 +      if one of a target character has a case-equivalence of different
 +      byte length even if that target character is an ASCII.
 +      (simple_search): Fix calculation of byte length of matched text.
 +      (boyer_moore): Fix handling of case-equivalent multibyte characters.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * coding.c (decode_coding): Fix handling of invalid bytes.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * xterm.c (handle_one_xevent): Handle keysyms directly mapped to
 +      Unicode characters.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * coding.c (encode_coding_object): If a pre-write-conversion
 +      function makes a new buffer, kill it.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * coding.c (QCascii_compatible_p): New variable.
 +      (syms_of_coding): Initialize it.
 +      (ONE_MORE_BYTE, ONE_MORE_BYTE_NO_CHECK): Decrement `src' before
 +      calling string_char.
 +      (record_conversion_result): Add `default:' case.
 +      (coding_charset_list): Delete unused variable `coding_type'.
 +      (Fdefine_coding_system_internal): Add `ascii-compatible-p'
 +      property in the plist of the coding system.
 +      (Fcoding_system_put): Check QCascii_compatible_p.
 +
 +2008-02-01  Miles Bader  <miles@gnu.org>
 +
 +      * xfaces.c (Finternal_lisp_face_equal_p): Restore previously
 +      removed calculation of frame `f', as it's now used.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * Makefile.in (RUN_TEMACS): Include "-nl" if HAVE_SHM is defined.
 +      (emacs${EXEEXT}): Run $(RUN_TEMACS) unconditionally.
 +      (UNIDATA): New variable.
 +      (${lispsource}international/charprop.el): Depends on ${UNIDATA}.
 +      (bootstrap-emacs${EXEEXT}): Depends on charprop.el.
 +      Run $(RUN_TEMACS) unconditionally.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * Makefile.in (temacs${EXEEXT}): Build charprop.el if necessary.
 +      (admindir): New variable.
 +      ($(lispsource)international/charprop.el): New target.
 +
 +2008-02-01  Miles Bader  <miles@gnu.org>
 +
 +      * character.c (chars-in-region): Remove obsolete function.
 +      (syms_of_character): Remove its initialization.
 +
 +2008-02-01  Benjamin Riefenstahl  <b.riefenstahl@turtle-trading.net>
 +
 +      * w32select.c (validate_coding_system)
 +      (setup_windows_coding_system): New functions.
 +      (convert_to_handle_as_coded, Fw32_get_clipboard_data):
 +      Use setup_windows_coding_system.
 +      (setup_config, Fw32_get_clipboard_data):
 +      Use validate_coding_system.
 +      (Fx_selection_exists): Move call to setup_config to a place
 +      where signals are allowed.
 +
 +      * lisp.h (Fcoding_system_base, Fcoding_system_eol_type)
 +      (Fcheck_coding_system): Add declarations.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * charset.c (load_charset_map_from_vector): Fix for the first iteration.
 +
 +2008-02-01  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
 +
 +      * macfns.c (Fx_create_frame, x_create_tip_frame): Pass Lisp
 +      string as the second argument for x_new_fontset.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * coding.c (decode_coding_object): Use safe_call1 instead of call1.
 +      (encode_coding_object): Use safe_call instead of call2.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * fontset.c (Fset_fontset_font): Check family element of a given vector.
 +
 +      * Makefile.in (lisp): Include charprop.el.
 +
 +2008-02-01  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
 +
 +      * macfns.c (Fx_create_frame, x_create_tip_frame): Fix crash.
 +      Not sure if it's unnecessary.
 +
 +2008-02-01  Steven Tamm  <steventamm@mac.com>
 +
 +      * macfns.c (Fx_create_frame, x_create_tip_frame): ifdef'd out
 +      some possibly unnecessary fontset checking code that crashed
 +      when creating a new frame.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * xfaces.c (merge_faces): Fix argument to lookup_derived_face and
 +      lookup_face.
 +
 +      * xdisp.c (Fformat_mode_line): Fix argument to lookup_named_face.
 +
 +      * fringe.c (draw_fringe_bitmap_1): Fix argument to lookup_named_face.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * coding.c: Cancel the change done in HEAD on 2008-02-01.
 +      (coding_charset_list): New function.
 +
 +      * coding.h (coding_charset_list): Extern it.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * fontset.c (Fset_fontset_font): Call find_font_encoding with
 +      concatenation of family and registry.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * character.h (BYTE8_STRING): Fix typo.
 +
 +      * editfns.c (Ftranslate_region_internal): Don't convert unibyte
 +      string to multibyte (sync to HEAD).
 +
 +      * casefiddle.c (casify_region): Handle changes in byte-length
 +      using replace_range_2 (sync to HEAD).
 +
 +2008-02-01  Andreas Schwab  <schwab@suse.de>
 +
 +      * chartab.c (map_char_table): GCPRO table and arg.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * syntax.c (skip_syntaxes): Return lispy 0 (not nil) if point is
 +      already at limit.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * fontset.c (fs_load_font): Use fast_string_match_ignore_case
 +      instead of fast_c_string_match_ignore_case.
 +      (find_font_encoding): Change argument to Lisp_Object.
 +      Use fast_string_match_ignore_case instead of
 +      fast_c_string_match_ignore_case.  Change caller.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * xdisp.c (get_next_display_element): In unibyte case, decide to
 +      display in octal form by checking a character by
 +      UNIBYTE_CHAR_HAS_MULTIBYTE_P.
 +
 +      * charset.c (Fset_unibyte_charset): Setup unibyte_has_multibyte_table.
 +
 +      * character.c (unibyte_has_multibyte_table): New variable.
 +
 +      * character.h (unibyte_has_multibyte_table): Extern it.
 +      (UNIBYTE_CHAR_HAS_MULTIBYTE_P): New macro.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * coding.c (encode_coding_iso_2022): Fix handling of charset
 +      annotation.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * coding.c (setup_coding_system): If coding_system is nil, use
 +      Qundecided.
 +      (Fterminal_coding_system): Return nil if terminal coding system is
 +      `undecided'.
 +      (syms_of_coding): Define coding-system `undecided' here.
 +      Setup terminal_coding as `undecided'.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * xdisp.c (message_dolog, set_message_1):
 +      Call unibyte_char_to_multibyte with arg type int.
 +
 +      * lread.c (read1): Fix reading of a char-table.
 +
 +      * print.c (print_object): Include sub char-table in circularities
 +      detection.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * keymap.c (where_is_internal_2): Fix for the case that KEY is a cons.
 +      Append the found sequences in car of ARGS instead of prepending.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * fileio.c (report_file_error): Make a unibyte string from
 +      strerror (errorno).
 +      (Fsubstitute_in_file_name): Fix the arg to
 +      unibyte_char_to_multibyte.  It is evaluated twice.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * charset.h (CHAR_CHARSET): Shortcut for ASCII case.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * coding.c (detect_coding_utf_16): Don't set detect_info->found if
 +      BOM is not found.
 +      (detect_coding, detect_coding_system): Optimization for ISO-2022
 +      when no 8-bit data is found.
 +
 +2008-02-01  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32fns.c (x_to_w32_font): Update to use new coding struct.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * charset.c (Fdeclare_equiv_charset, Fiso_charset): Fix handing of
 +      CHARS.
 +
 +2008-02-01  Steven Tamm  <steventamm@mac.com>
 +
 +      * macterm.c (mac_encode_char): Add charset argument and update
 +      to use encoding_type.
 +      (x_new_font, x_new_fontset): Merge in changes from xterm.c;
 +      switch to pure fontset.
 +      (decode_mac_font_name): Temporarily remove decoding.
 +      (x_font_name_to_mac_font_name): Temporarily remove encoding.
 +      (x_load_font): Temporarily remove encoding.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * xfaces.c (Fface_font): If frame is not on a window system,
 +      ignore CHARACTER arg.  If HAVE_WINDOW_SYSTEM is not defined, don't
 +      refer to face->font.
 +      (split_font_name_into_vector, build_font_name_from_vector)
 +      (lookup_non_ascii_face, realize_non_ascii_face): Define them only
 +      when HAVE_WINDOW_SYSTEM is defined.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * xdisp.c (BUILD_GLYPH_STRINGS): Check if s is NULL.
 +      (x_produce_glyphs): Fix setting of members of cmp in case
 +      cmp->glyph_len is zero.
 +
 +      * fontset.c (Fset_fontset_font): Fix docstring.
 +      (Ffontset_info): Make it backward compatible.  New arg ALL.
 +
 +2008-02-01  Kim F. Storm  <storm@cua.dk>
 +
 +      * process.c (read_process_output): Grow decoding_buf when needed;
 +      this could cause a crash in allocate_string and compact_small_strings.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * fileio.c (WRITE_BUF_SIZE): Delete this macro.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * coding.c (setup_coding_system): Set coding->common_flags
 +      correctly for raw-text.
 +      (consume_chars): On encoding unibyte text by raw-text, don't check
 +      multibyte form.
 +      (encode_coding): On encoding by raw-text, never use translation tables.
 +
 +      * fileio.c (e_write): Short cut for the case of no encoding.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * coding.c (detect_coding, detect_coding_system): Delete unused
 +      variables.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * coding.c (encode_coding_utf_8): Fix handling of raw-byte char.
 +      (consume_chars): Fix handling of 8-bit bytes in unibyte source.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * coding.c (Ffind_coding_systems_region_internal):
 +      Include raw-text and no-conversion in the result.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * fontset.c (find_font_encoding): Return `ascii' for unknown encoding.
 +      (load_font_get_repertory): Delete unnecessary check of ENCODING of
 +      FONT_DEF.
 +      (font_def_arg, add_arg, from_arg, to_arg): New args.
 +      (set_fontset_font): Change argument.
 +      (Fset_fontset_font): Fix for the case that TARGET is a script
 +      name and charset name.
 +      (new_fontset_from_font_name): Fix argument to Fnew_fontset.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * fontset.c (fontset_font): Rename from fontset_face.  Change return
 +      value.
 +      (face_suitable_for_char_p, face_for_char): Adjust for the change
 +      of fontset_font.
 +      (make_fontset_for_ascii_face): Fix setting of the fontset element
 +      for ASCII.
 +      (Finternal_char_font): Use fontset_font instead of FACE_FOR_CHAR
 +      to get a font name.
 +      (Ffontset_info): Adjust for the change of fontset_font.
 +
 +      * coding.c (emacs_mule_char): Check invalid code more rigidly.
 +
 +      * character.h (LEADING_CODE_LATIN_1_MIN)
 +      (LEADING_CODE_LATIN_1_MAX): Delete these macros.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * editfns.c (check_translation): New function.
 +      (Ftranslate_region_internal): Handle M:N mapping.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * xfaces.c (xlfd_point_size): Set font->numeric[XLFD_PIXEL_SIZE].
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * coding.c (DECODE_DESIGNATION): Set chars_96 to -1 instead of
 +      goto invalid_code.
 +      (decode_coding_iso_2022): Fix handling of invalid designation.
 +
 +      * fileio.c (Finsert_file_contents): Be sure to call unbind_to
 +      after calling code_conversion_save.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * xdisp.c (handle_auto_composed_prop): Fix Lisp_Object/int mixup.
 +
 +      * print.c (print_prune_string_charset): Fix Lisp_Object/int mixup.
 +
 +      * fontset.c: Include "intervals.h".
 +      (fontset_face): Fix comparing of Lisp_Objects.
 +      (free_face_fontset, new_fontset_from_font_name):
 +      Fix Lisp_Object/int mixup.
 +
 +      * editfns.c (Ftranslate_region_internal): Fix Lisp_Object/int mixup.
 +
 +      * coding.c: Add many prototypes for static functions.
 +      (get_translation_table): Allow max_lookup to be NULL.
 +      (decode_coding, Ffind_coding_systems_region_internal)
 +      (Funencodable_char_position, Fcheck_coding_systems_region):
 +      Call get_translation_table with max_lookup NULL.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * coding.c (get_translation_table): Declare it as Lisp_Object.
 +      (LOOKUP_TRANSLATION_TABLE): New macro.
 +      (produce_chars, consume_chars): Use LOOKUP_TRANSLATION_TABLE
 +      instead of CHAR_TABLE_REF.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * coding.c (MAX_ANNOTATION_LENGTH): Adjust for the change of
 +      annotation data format.
 +      (ADD_ANNOTATION_DATA, ADD_COMPOSITION_DATA, ADD_CHARSET_DATA):
 +      Change arguments FROM and TO to single argument NCHARS.  Change caller.
 +      (decode_coding_utf_8, decode_coding_utf_16, decode_coding_emacs_mule)
 +      (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
 +      (decode_coding_ccl, decode_coding_charset): Pay attention to
 +      coding->charbuf_used.
 +      (get_translation): New function.
 +      (produce_chars): New arguments translation_table and last_block.
 +      Translate characters here.  Return number of carryover chars.
 +      Change caller.
 +      (produce_composition): New argument pos.  Change caller.
 +      Adjust for the change of annotation data format.
 +      (produce_charset, produce_annotation): Likewise.
 +      (decode_coding, encode_coding): Don't call translate_chars.
 +      (consume_chars): New arg translation_table.  Change caller.
 +      (translate_chars): Delete.
 +      (syms_of_coding): Make translation-table's number of extra slots 2.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * search.c (simple_search): Fix setting this_pos_byte in backward
 +      search.
 +
 +      * coding.c (detect_coding_emacs_mule): Fix counting of encoded
 +      byte sequence.
 +      (detect_coding_ccl): Fix setting of the variable valids.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * xterm.c (x_list_fonts): Fix the detection of an auto-scaled font.
 +
 +      * coding.c (decode_coding_utf_16): Fix handling of surrogate pair.
 +
 +      * editfns.c (Ftranslate_region_internal): Rename from
 +      Ftranslate_region.  Accept a char-table in TABLE.
 +      (syms_of_editfns): Defsubr Stranslate_region_internal.
 +
 +      * xfaces.c (set_lface_from_font_name): If a font is specified for
 +      a frame, generate a fontset from the font.
 +      (build_scalable_font_name): If the scalable font is requested for
 +      a specific size, don't change that size.
 +      (try_font_list): Try a scalable font also in the case that a
 +      pattern string is specified.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * xfaces.c (Fface_font): New optional arg CHARACTER.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * charset.h (CHARSET_OFFSET): New macro.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * xterm.c (x_get_font_repertory): Fix for non-Unicode-bmp charset.
 +
 +      * fontset.c (fontset_face): Handle the case that repertory is a
 +      char-table.
 +      (find_font_encoding): Return nil for unknown encoding.
 +      (Fset_fontset_font): Ignore a font of unknown encoding.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * keymap.c (describe_vector): Handle default value of a char table.
 +
 +      * fontset.c (fontset_face): Handle fallback fonts correctly.
 +      (Ffontset_info): Return infomation about fallback fonts.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * fontset.c (FONTSET_DEFAULT): New macro.
 +      (FONTSET_ADD, fontset_add): Handle the case that range is nil.
 +      (Fset_fontset_font): Change the 2nd arg name to TARGET, and handle
 +      the case that it is nil.
 +      (dump_fontset): Call FONTSET_DEFAULT, not FONTSET_FALLBACK.
 +      (syms_of_fontset): Set char-table-extra-slots property of fontset to 9.
 +
 +      * charset.h (CHAR_CHARSET_P): Fix for the case that the method is
 +      subset or superset.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * emacs.c (main): Call init_charset after syms_of_XXX.
 +
 +      * charset.c (Vcharset_map_directory): Delete.
 +      (Vcharset_map_path): New variable.
 +      (load_charset_map_from_file): Use Vcharset_map_path instead.
 +      (init_charset): Initialize Vcharset_map_path.
 +      (syms_of_charset): Delete declaration of "charset-map-directory",
 +      add declaration of "charset-map-path".
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * fns.c (string_char_to_byte, string_byte_to_char): Optimize for
 +      ASCII only string.
 +
 +      * fileio.c (Finsert_file_contents): Avoid detecting a code twice.
 +
 +      * coding.c (detect_coding_iso_2022): Fix handling of SS2 and SS3.
 +      (detect_coding, detect_coding_system): Treat '\0' as normal ASCII byte.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * coding.h (SJIS_TO_JIS2, JIS_TO_SJIS2): New macros.
 +
 +      * coding.c (QCmnemonic, QCdefalut_char)
 +      (QCdecode_translation_table, QCencode_translation_table)
 +      (QCpost_read_conversion, QCpre_write_conversion): New variables.
 +      (get_translation_table): Return a list of translation tables if
 +      necessary.
 +      (decode_coding): Call get_translation_table with ENCODEP 0.
 +      (char_encodable_p): If translation_table is non-nil, always call
 +      translate_char.
 +      (Fdefine_coding_system_internal): Accept list of translation
 +      tables as :encode-translation-table and :decode-translation-table.
 +      (Fcoding_system_put): New function.
 +      (syms_of_coding): Declare new symbols.
 +      Defsubr Scoding_system_put.
 +      (decode_coding_sjis, encode_coding_sjis): Handle 4th charset,
 +      typically JISX0212.
 +
 +      * charset.c (map_charset_chars): Fix arg to map_charset_chars in
 +      when the charset is superset type.
 +
 +      * character.c (translate_char): Accept list of translation tables.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * coding.h (enum coding_attr_index): New member coding_attr_trans_tbl.
 +      (CODING_ATTR_TRANS_TBL): New macro.
 +
 +      * coding.c (get_translation_table): New function.
 +      (translate_chars): Fix the bug of skipping annotation data.
 +      (decode_coding, encode_coding): Utilize get_translation_table.
 +      (char_encodable_p, Funencodable_char_position): Translate char if
 +      necessary.
 +      (Ffind_coding_systems_region_internal)
 +      (Fcheck_coding_systems_region): Setup translation table for encode
 +      in a coding system attribute vector in advance.
 +      (Fdefine_coding_system_internal): Allow a symbol as translation
 +      table.  For shift-jis type coding system, allow 4th charset.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * coding.c (decode_coding_sjis): Check the first byte rigidly.
 +
 +      * xdisp.c (get_next_display_element): Pass -1 as POS to
 +      FACE_FOR_CHAR if displaying a C-string.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * composite.c (get_composition_id): Handle xoff and yoff in a
 +      composition rule.
 +
 +      * composite.h (COMPOSITION_DECODE_RULE): New arg xoff and yoff.
 +      (struct composition): New member lbearing and rbearing.
 +
 +      * xdisp.c (move_it_to): Optimize for the case (op & MOVE_TO_Y).
 +      (x_get_glyph_overhangs): Handle a composition glyph.
 +      (x_produce_glyphs): Setup lbearing and rbreaing for a composition glyph.
 +
 +      * xterm.c (x_compute_glyph_string_overhangs): Handle also a
 +      composition glyph.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * print.c: Include charset.h.
 +      (Vprint_charset_text_property): New variable.
 +      (Qdefault): Extern it.
 +      (PRINT_STRING_NON_CHARSET_FOUND)
 +      (PRINT_STRING_UNSAFE_CHARSET_FOUND): New macros.
 +      (print_check_string_result): New variable.
 +      (print_check_string_charset_prop): New function.
 +      (print_prune_charset_plist): New variable.
 +      (print_prune_string_charset): New function.
 +      (print_object): Call print_prune_string_charset if
 +      Vprint_charset_text_property is not t.
 +      (print_interval): Print nothing if interval->plist is nil.
 +      (syms_of_print): Declare Vprint_charset_text_property as a lisp
 +      variable.  Init and staticpro print_prune_charset_plist.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * fontset.c (new_fontset_from_font_name): Use the specified font
 +      for all characters in the new fontset.
 +
 +      * macterm.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with POS and
 +      OBJECT args.
 +
 +      * xdisp.c (x_produce_glyphs): Call FACE_FOR_CHAR with POS and
 +      OBJECT args for composition too.
 +
 +      * w32term.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with POS and
 +      OBJECT args.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * dispextern.h (FACE_FOR_CHAR): New args POS and OBJECT.
 +
 +      * fontset.c (reorder_font_vector): Adjust for the change of
 +      FONT_DEF format.
 +      (fontset_face): New arg id.  Change caller.
 +      (face_for_char): New args pos and object.
 +      (make_fontset_for_ascii_face): Adjust for the change of FONT_DEF format.
 +      (fs_query_fontset): Check NAME by Fassoc too.
 +      (Fset_fontset_font): Allow non-XLFD font name.
 +      (Ffontset_info): Adjust for the change of FONT_DEF format.
 +
 +      * fontset.h (face_for_char): Adjust prototype.
 +
 +      * xdisp.c (face_before_or_after_it_pos, get_next_display_element)
 +      (append_space, extend_face_to_end_of_line)
 +      (get_char_face_and_encoding, BUILD_COMPOSITE_GLYPH_STRING)
 +      (x_produce_glyphs): Call FACE_FOR_CHAR with POS and OBJECT args.
 +
 +      * xfaces.c (compute_char_face): Call FACE_FOR_CHAR with
 +      POS and OBJECT args.
 +
 +      * xterm.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with
 +      POS and OBJECT args.
 +
 +2008-02-01  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32select.c (Fw32_set_clipboard_data): Avoid potential realloc
 +      of GlobalAlloc'ed memory.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * ccl.c (Fccl_execute_on_string): Fix the condition of loop.
 +
 +      * charset.h (charset_table_used): Delete extern.
 +
 +      * charset.c (charset_table_used): Make it static.
 +      (map_charset_chars): Fix args to c_function with.
 +
 +      * chartab.c (map_sub_char_table_for_charset): Fix args to
 +      c_function with.
 +
 +      * coding.h (enum coding_result_code):
 +      Delete CODING_RESULT_INSUFFICIENT_CMP, add CODING_RESULT_INVALID_SRC.
 +
 +      * coding.c (Qinsufficient_source, Qinconsistent_eol)
 +      (Qinvalid_source, Qinterrupted, Qinsufficient_memory): New variables.
 +      (Vlast_code_conversion_error): New variables.
 +      (syms_of_coding): DEFSYM or DEFVAR_LISP them.
 +      (ONE_MORE_BYTE): Record error if any instead of signaling an
 +      error.  If non-ASCII multibyte char is found, return the negative
 +      value of the code.  All callers changed to check it.
 +      (ONE_MORE_BYTE_NO_CHECK): Likewise.
 +      (record_conversion_result): New function.  Change all codes setting
 +      coding->result to call this function.
 +      (detect_coding_utf_8, decode_coding_utf_8)
 +      (detect_coding_emacs_mule, detect_coding_sji, detect_coding_big5):
 +      Don't use the local variable incomplete.
 +      (emacs_mule_char): Change the second arg to `const'.
 +      (decode_coding): Fix of flushing out unprocessed data.
 +      (make_conversion_work_buffer): Fix making of a work buffer.
 +      (decode_coding_object): Return coding->dst_object.
 +
 +      * fontset.c (set_fontset_font): Fix args.
 +
 +      * lisp.h (CHARACTERBITS): Define as 22.
 +
 +      * process.c (send_process): Be sure to set coding->src_multibyte.
 +
 +      * xdisp.c (handle_auto_composed_prop): Fix setting of limit.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * xdisp.c (handle_auto_composed_prop): Give limit to
 +      Fnext_single_char_property_change.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * composite.c (syms_of_composite): Don't make the composition hash
 +      table weak.
 +
 +      * fontset.c (Fset_fontset_font): Fix docstring.
 +
 +      * lisp.h (detect_coding_system): Adjust prototype.
 +
 +      * fileio.c (kill_workbuf_unwind): Delete this function.
 +      (Finsert_file_contents): Adjust the call of detect_coding_system.
 +      Get conversion_buffer by code_conversion_save.  Use the macro
 +      CODING_MAY_REQUIRE_DECODING.  After decoding, update
 +      coding_system.
 +
 +      * coding.h (make_conversion_work_buffer): Delete extern.
 +      (code_conversion_save): Extern it.
 +
 +      * coding.c (enum iso_code_class_type): Delete ISO_carriage_return.
 +      (CODING_GET_INFO): Delete argument eol_type.  Change callers.
 +      (decode_coding_utf_8): Don't do eol converion.
 +      (detect_coding_utf_16): Check coding->src_chars, not
 +      coding->src_bytes.  Add heuristics for those that have no signature.
 +      (decode_coding_emacs_mule, decode_coding_iso_2022)
 +      (decode_coding_sjis, decode_coding_big5, decode_coding_charset):
 +      Don't do eol converion.
 +      (adjust_coding_eol_type): Return a new coding system.
 +      (detect_coding): Don't detect eol.  Fix for utf-16 detection.
 +      (decode_eol): In case of CRLF->LF conversion, use del_range_2 on
 +      each change.
 +      (decode_coding): Pay attention to undo_list.  Do eol conversion for
 +      all types of coding-systems (if necessary).
 +      (Vcode_conversion_work_buf_list): Delete it.
 +      (Vcode_conversion_reused_workbuf): Rename from
 +      Vcode_conversion_reused_work_buf.
 +      (Vcode_conversion_workbuf_name): New variable.
 +      (reused_workbuf_in_use): New variable.
 +      (make_conversion_work_buffer): Delete the arg DEPTH.
 +      (code_conversion_restore): Change argument to cons.
 +      (code_conversion_save): Delete the argument BUFFER.  Change callers.
 +      (detect_coding_system): New argument src_chars.  Change callers.
 +      Fix for utf-16 detection.
 +      (init_coding_once): Don't use ISO_carriage_return.
 +      (syms_of_coding): Initialize Vcode_conversion_workbuf_name and
 +      reused_workbuf_in_use.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * keymap.c (store_in_keymap): Pay attention to the case that idx
 +      is a cons specifying a character range.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * xdisp.c (handle_auto_composed_prop): Fix the case of returning
 +      HANDLED_RECOMPUTE_PROPS.
 +
 +      * coding.c (Fdefine_coding_system_internal): Fix checking of
 +      ascii compatibility.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * charset.c (find_charsets_in_text): Delete unused locale variable.
 +      (Fset_charset_priority): Update Vemacs_mule_charset_list too.
 +
 +      * coding.c (encode_coding_emacs_mule): Emit bytes with MSB.
 +      Resync charset_list to Vemacs_mule_charset_list.
 +
 +      * keymap.c (store_in_keymap): Pay attention to the case that idx
 +      is a cons specifying a character range.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * composite.c (update_compositions): Bind inhibit-read-only, etc
 +      to t before calling remove-list-of-text-properties.
 +
 +      * print.c (print_object): Always print ASCII chars as is.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * keymap.c (Fdefine_key): Fix handling of Lucid style event type list.
 +
 +      * fns.c (Fmapconcat, Fmapcar, Fmapc): Signal an error if SEQUENCE
 +      is a char table.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * syntax.c (skip_chars): Be sure to alloca char_ranges when necessary.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * xfaces.c (set_lface_from_font_name): Fix for the case that
 +      FONTNAME is not fontset name.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * fns.c (base64_encode_1): Fix previous change.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * fontset.c (set_fontset_font): New function.
 +      (Fset_fontset_font): If a font is specified for a charset, use
 +      map_charset_chars to store the font spec in a fontset.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * fontset.c (fontset_face): Create a fallback fontset on demand.
 +      (make_fontset): Don't create a fallback fontset here.
 +      (free_face_fontset): Free a fallback fontset (if any) too.
 +      (n_auto_fontsets): Delete this variable.
 +      (auto_fontset_alist): New variable.
 +      (new_fontset_from_font_name): Check auto_fontset_alist.
 +      (dump_fontset) [FONTSET_DEBUG]: Fully re-written.
 +      (Ffontset_list_all) [FONTSET_DEBUG]: New function.
 +      (syms_of_fontset): Initialize and staticpro auto_fontset_alist.
 +      Defsubr Sfontset_list_all.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * fontset.c (Fnew_fontset): Check NAME more rigidly.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * editfns.c (Fgoto_char): Fix docstring.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * insdel.c (insert_from_gap): Adjust intervals correctly.
 +
 +2008-02-01  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32term.c (GLYPHSET, WCRANGE): Define if system headers don't.
 +      (pfnGetFontUnicodeRanges): New dynamically loaded function.
 +      (w32_initialize): Try to load it.
 +      (x_get_font_repertory): Use it if available.
 +      (w32_encode_char): Add shortcut for unicode output.
 +
 +      * w32fns.c (w32_load_system_font): Default charset to -1.
 +      (x_to_w32_charset): Match all fonts for unicode.
 +      (w32_to_x_charset): New parameter matching.  Don't return partial
 +      or wildcard charsets.
 +      (w32_to_all_x_charsets): Don't return partial or wildcard charsets.
 +      (w32_codepage_for_font): Return CP_UNICODE for unicode.
 +      (w32_to_x_font): Match charset to real charset.
 +      (enum_font_cb2): Always list unicode versions.
 +
 +      * makefile.w32-in (temacs): Increase EMHEAP.
 +
 +2008-02-01  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32term.c (w32_encode_char): New charset parameter.
 +      font_info.encoding becomes encoding_type.
 +      (x_get_font_repertory): New function.  Warning: stub only!
 +      (x_new_font): Return quickly if font already set.
 +      (x_new_fontset): fontsetname parameter is Lisp_Object.
 +      Use new fs_query_fontset.  Try new_fontset_from_font_name.
 +      Use fontset_name for return value.
 +
 +      * w32term.h: Declare x_get_font_repertory.
 +
 +      * w32select.c (Fw32_set_clipboard_data): Use string_x_string_p in
 +      place of find_charset_in_text.  Use encode_coding_object in place
 +      of encode_coding.
 +      (Fw32_get_clipboard_data): Use decode_coding_c_string in place of
 +      decode_coding.
 +
 +      * w32fns.c (Fx_create_frame, x_create_tip_frame): Use new version
 +      of x_new_fontset.
 +      (w32_load_system_font): Initialize charset as unicode.
 +      font_info.encoding becomes encoding_type.
 +      (w32_to_x_font): Use decode_coding_c_string in place of decode_coding.
 +      (x_to_w32_font): Use encode_coding_object in place of encode_coding.
 +      (syms_of_w32fns): Set get_font_repertory_func.
 +
 +      * w32console.c: Include character.h.  Use terminal_encode_buffer
 +      from term.c.
 +      (write_glyphs): Use new version of encode_terminal_code.
 +      Use encode_coding_object in place of encode_coding.
 +
 +      * w32bdf.c (w32_load_bdf_font): Clear font_info before filling.
 +      encoding becomes encoding_type.
 +
 +      * term.c (terminal_encode_buffer): Make externally visible.
 +
 +      * makefile.w32-in: Add character.h dependancies.
 +      (character.o, chartab.o): New targets.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * fileio.c (Finsert_file_contents) [DOS_NT]: Use the macro
 +      CODING_ID_EOL_TYPE.
 +
 +2008-02-01  Andreas Schwab  <schwab@suse.de>
 +
 +      * coding.c (produce_chars): Revert last change.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * charset.h (charset_unicode): Extern it.
 +
 +      * charset.c (string_xstring_p): Check by (C >= 0x100).
 +      (find_charsets_in_text): Change format of the arc CHARSETS.
 +      New arg MULTIBYTE.
 +      (Ffind_charset_region, Ffind_charset_string): Adjust for the
 +      change of find_charsets_in_text.
 +      (Fsplit_char): Fix doc.  Never return unknown.
 +
 +      * chartab.c (char_table_translate): Use CHARACTERP, not INTEGERP.
 +
 +      * coding.c (Fdefine_coding_system_alias):
 +      Update Vcoding_system_list.
 +
 +      * fontset.c (load_font_get_repertory): Pay attention to the case
 +      that ENCODING of a font is specified by a char-table.
 +
 +      * xterm.c (x_get_font_repertory): Handle the case that the
 +      encoding of font is other than Unicode.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * term.c (encode_terminal_code): Don't handle glyph-table.
 +      Check if a character is encodable by the terminal coding system.
 +      If not, produces proper number of `?'s.  Update
 +      terminal_encode_buffer and terminal_encode_buf_size if necessary.
 +      (produce_glyphs): Check by CHAR_BYTE8_P, not SINGLE_BYTE_CHAR_P.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * term.c (terminal_encode_buffer, terminal_encode_buf_size):
 +      New variables.
 +      (encode_terminal_code): Change argument.  Encode multiple
 +      characters at once.  Store the result of encoding in
 +      terminal_encode_buffer.
 +      (write_glyphs, insert_glyphs): Adjust for the change of
 +      encode_terminal_code.
 +      (term_init): Initialize terminal_encode_buffer and
 +      terminal_encode_buf_size.
 +
 +      * coding.c (consume_chars): If coding->src_object is nil, don't
 +      check annotation.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * character.c (char_string): Use ASCII_CHAR_P instead of
 +      SINGLE_BYTE_CHAR_P.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * xdisp.c (handle_auto_composed_prop): Check if the last
 +      characters of auto-composed region is newly composed with the
 +      following characters.
 +      (handle_composition_prop): Fix checking of point being inside
 +      composition.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * fns.c (concat): Don't change multibyteness of the result by
 +      concatenating an 8-bit character.
 +
 +      * data.c (Faset): Check newelt by CHECK_CHARACTER.  Don't change
 +      multibyteness of the result when newelt is an 8-bit character.
 +
 +2008-02-01  Dave Love  <fx@gnu.org>
 +
 +      * xmenu.c (find_and_call_menu_selection): Make menu_bar_items_used
 +      EMACS_INT.
 +
 +      * xfns.c (DefaultDepthOfScreen, x_encode_text): Remove unused vars.
 +
 +      * xfaces.c (face_numeric_value): Declare dim size_t.
 +      (Finternal_lisp_face_equal_p): Remove unused f.
 +
 +      * xdisp.c (BUILD_CHAR_GLYPH_STRINGS, display_and_set_cursor)
 +      (MATRIX_ROW): Remove unused vars.
 +      (draw_glyphs, x_insert_glyphs, fast_find_position)
 +      (fast_find_position, fast_find_string_pos): Use EMACS_INT for
 +      byte/char counts.
 +
 +      * regex.c (regex_compile): Remove unused var.
 +
 +      * minibuf.c (Fminibuffer_complete_word): Remove unused var.
 +
 +      * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
 +      (Faccessible_keymaps, where_is_internal): Remove unused vars.
 +
 +      * keyboard.c (cancel_hourglass_unwind): Return Qnil.
 +
 +      * frame.c (frame_name_fnn_p): Make len EMACS_INT.
 +
 +      * fileio.c (Fwrite_region): Remove unused var.
 +
 +      * dispnew.c (adjust_frame_glyphs_for_frame_redisplay)
 +      (adjust_frame_glyphs_for_window_redisplay): Remove unused ch_dim.
 +
 +      * composite.c (Fremove_list_of_text_properties): Declare.
 +
 +      * coding.c (inhibit_pre_post_conversion): Remove (unused).
 +      (alloc_destination, produce_chars): Use EMACS_INT for byte/char counts.
 +      (coding_inherit_eol_type): Remove unused attrs.
 +      (detect_coding): Cast arg of detect_eol.
 +
 +      * charset.c (syms_of_charset): Remove unused var p.
 +      (find_charsets_in_text, Ffind_charset_region): Use EMACS_INT for
 +      byte/char counts.
 +
 +      * casetab.c (set_case_table): Remove unused var.
 +
 +      * window.c (Fdisplay_buffer, Fframe_selected_window):
 +      Remove unused vars.
 +
 +2008-02-01  Dave Love  <fx@gnu.org>
 +
 +      * xterm.c (x_bitmap_mask): Declare.
 +
 +2008-02-01  Dave Love  <fx@gnu.org>
 +
 +      * xterm.c (x_term_init): Fix type error.
 +
 +      * lisp.h: Add Funibyte_char_to_multibyte.
 +
 +      * coding.c (Fread_coding_system): Fix arg of XSETSTRING.
 +      (Fset_coding_system_priority): Doc fix.
 +
 +      * ccl.c (ccl_driver): Fix arg of CHARACTERP.
 +
 +      * indent.c (check_composition): Make start and end EMACS_INT.
 +
 +      * character.c (lisp_string_width): Make ignore and end EMACS_INT.
 +
 +      * xdisp.c (handle_composition_prop, check_point_in_composition):
 +      Make buffer positions EMACS_INT.
 +
 +      * composite.c (find_composition, run_composition_function)
 +      (update_compositions, Ffind_composition_internal): Make buffer
 +      positions EMACS_INT.
 +
 +      * composite.h (find_composition, update_compositions):
 +      Make position args EMACS_INT.
 +
 +      * keyboard.c (adjust_point_for_property): Make beg and end EMACS_INT.
 +
 +      * intervals.c (get_property_and_range):
 +      * intervals.h (get_property_and_range): Make start and end EMACS_INT.
 +
 +      * unexalpha.c: Don't include varargs.h.
 +
 +2008-02-01  Dave Love  <fx@gnu.org>
 +
 +      * coding.h (ENCODE_UTF_8): New.
 +
 +      * Makefile.in (gtkutil.o): Depend on coding.h.
 +
 +      * coding.c (Fset_coding_system_priority): Doc fix.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * fileio.c (Finsert_file_contents): Call setup_coding_system in
 +      the case of auto saving.
 +
 +2008-02-01  Andreas Schwab  <schwab@suse.de>
 +
 +      * chartab.c (map_char_table, map_char_table_for_charset):
 +      Protect `range' from GC.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * coding.c (decode_coding_sjis): Check bytes more rigidly.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * fileio.c (choose_write_coding_system): Return a decided coding system.
 +      (Fwrite_region): Set Vlast_coding_system_used to the return value
 +      of choose_write_coding_system.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * charset.c (Fset_charset_priority): Pay attention to duplicated
 +      arguments.
 +
 +      * coding.c (QCcategory): New variable.
 +      (syms_of_coding): Defsym it.  Set all elements of
 +      Vcoding_category_table and their symbol values.
 +      (Fset_coding_system_priority): Doc fix.  Update symbol qvalues of
 +      coding-category-XXX, and coding-category-list.
 +      (Fdefine_coding_system_internal): Add category in the plist.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * callproc.c (Fcall_process): Handle carryover correctly.
 +
 +      * coding.c (decode_coding_iso_2022): Fix handling of invalid bytes.
 +      (raw_text_coding_system): Check NILP (coding_system).
 +      (coding_inherit_eol_type): Check NILP (coding_system) and
 +      NILP (parent).
 +      (consume_chars): Fix for the case of raw-text.
 +
 +      * process.c (read_process_output): Handle carryover correctly.
 +
 +2008-02-01  Dave Love  <fx@gnu.org>
 +
 +      * regex.c (re_search_2): Fix last change.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * regex.c (GET_CHAR_BEFORE_2): Check multibyte, not
 +      target_multibyte.  Even in a unibyte case, return a converted
 +      multibyte char.
 +      (GET_CHAR_AFTER): New macro.
 +      (PATFETCH): Translate via multibyte char.
 +      (HANDLE_UNIBYTE_RANGE): Delete this macro.
 +      (SETUP_MULTIBYTE_RANGE): New macro.
 +      (regex_compile): Setup compiled code so that its multibyteness
 +      matches that of a target.  Fix the handling of "[X-YZ]" using
 +      SETUP_MULTIBYTE_RANGE.
 +      (analyse_first) <charset>: For filling fastmap for all multibyte
 +      characters, don't check by BASE_LEADING_CODE_P.
 +      (re_search_2): Don't check RE_TARGET_MULTIBYTE_P (bufp).  It is
 +      the same as RE_MULTIBYTE_P (bufp) now.
 +      (mutually_exclusive_p): Check by (! multibyte || IS_REAL_ASCII (c)).
 +      (TARGET_CHAR_AND_LENGTH): Delete this macro.
 +      (TRANSLATE_VIA_MULTIBYTE): New macro.
 +      (re_match_2_internal): Don't check RE_TARGET_MULTIBYTE_P (bufp).
 +      It is the same as RE_MULTIBYTE_P (bufp) now.
 +      <exactn>: Translate via multibyte.
 +      <anychar>: Fetch a character by RE_STRING_CHAR_AND_LENGTH.
 +      Don't translate it.
 +      <charset, charset_not>: Fetch a character by
 +      RE_STRING_CHAR_AND_LENGTH.  Translate via multibyte.
 +      <duplicate>: Call bcmp_translate with the last arg `multibyte'.
 +      <wordbound, notwordbound, wordbeg, wordend, syntaxspec,
 +      notsyntaxspec, categoryspec, notcategoryspec> Fetch a character
 +      by GET_CHAR_AFTER.
 +      (bcmp_translate): Likewise.
 +
 +      * search.c (compile_pattern): Check the member target_multibyte,
 +      not the member multibyte of buf.
 +
 +      * lread.c (read1): While reading a string, set force_singlebyte
 +      and force_multibyte correctly.
 +
 +      * charset.c (Fset_unibyte_charset, init_charset_once): Fix setting
 +      up of unibyte_to_multibyte_table.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * coding.c (setup_coding_system): If coding has
 +      post-read-conversion or pre-write-conversion, set
 +      CODING_REQUIRE_DECODING_MASK and CODING_REQUIRE_ENCODING_MASK
 +      respectively.
 +      (decode_coding_gap): Run post-read-conversion if any.
 +
 +      * fileio.c (Finsert_file_contents): Even if we read into a
 +      unibyte buffer, check if we must decode the result or not.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * coding.c (make_conversion_work_buffer): Change the work buffer
 +      name to the same one as that of Emacs 21.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * coding.h (make_conversion_work_buffer): Adjust prototype.
 +      (code_conversion_restore): Don't extern it.
 +
 +      * coding.c (detected_mask): Delete unused variable.
 +      (decode_coding_iso_2022): Pay attention to the byte sequence of
 +      CTEXT extended segment, and retain those bytes as is.
 +      (decode_coding_ccl): Delete unused variable `valids'.
 +      (setup_coding_system): Delete unused variable `category'.
 +      (consume_chars): Delete unused variable `category'.  Make it work
 +      for non-multibyte case.
 +      (make_conversion_work_buffer): Change argument.
 +      (saved_coding): Delete unused variable.
 +      (code_conversion_restore): Don't check saved_coding->destination.
 +      (code_conversion_save): New function.
 +      (decode_coding_gap, encode_coding_gap): Call code_conversion_save
 +      instead of record_unwind_protect.
 +      (decode_coding_object, encode_coding_object): Likewise.  Recover PT.
 +      (detect_coding_system): Delete unused variable `mask'.
 +      (Fdefine_coding_system_internal): Delete unused variable id.
 +
 +      * fileio.c (kill_workbuf_unwind): New function.
 +      (Finsert_file_contents): On replacing, call
 +      make_conversion_work_buffer with correct args, and call
 +      record_unwind_protect with the first arg kill_workbuf_unwind.
 +
 +      * lisp.h (Fgenerate_new_buffer_name): EXFUN it.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * fontset.c (BASE_FONTSET_P): Check FONTSET_BASE, not FONTSET_NAME.
 +      (fontset_add): Fix for the case that TO is less than TO1.
 +      (Ffontset_info): Don't use fallback fontset on checking the
 +      default fontset.
 +      (dump_fontset): New function for debugging.
 +
 +      * coding.c (Fdefine_coding_system_internal): Fix for the case that
 +      coding_type is Qcharset.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * chartab.c (map_sub_char_table): New argument DEFAULT_VAL.
 +      (map_char_table): Don't inherit the value from the parent on
 +      initializing VAL.  Adjust for the above change.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * coding.c (Qsignature, Qendian): Delete these variables.
 +      (syms_of_coding): Don't initialize them.
 +      (CATEGORY_MASK_UTF_16_AUTO): New macro.
 +      (detect_coding_utf_16): Add CATEGORY_MASK_UTF_16_AUTO in
 +      detect_info->found.
 +      (decode_coding_utf_16): Don't detect BOM here.
 +      (encode_coding_utf_16): Produce BOM if CODING_UTF_16_BOM (coding)
 +      is NOT utf_16_without_bom.
 +      (setup_coding_system): For a coding system of type utf-16, check
 +      if the attribute :endian is Qbig or not (not nil or not), and set
 +      CODING_REQUIRE_DETECTION_MASK if BOM detection is required.
 +      (detect_coding): If coding type is utf-16 and BOM detection is
 +      required, detect it.
 +      (Fdefine_coding_system_internal): For a coding system of type
 +      utf-16, check if the attribute :endian is Qbig or not (not nil or not).
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * coding.c (coding_set_source): Fix for the case that the current
 +      buffer is different from coding->src_object.
 +      (decode_coding_object): Don't use the conversion work buffer if
 +      DST_OBJECT is a buffer.
 +
 +2008-02-01  Dave Love  <fx@gnu.org>
 +
 +      * lread.c (read_emacs_mule_char) [len==2]: Index
 +      emacs_mule_charset correctly.
 +
 +2008-02-01  Dave Love  <fx@gnu.org>
 +
 +      * coding.c (Qbig5, Vbig5_coding_system, CATEGORY_MASK_BIG5)
 +      (detect_coding_big5, decode_coding_big5, encode_coding_big5)
 +      (Fdecode_big5_char, Fencode_big5_char): Delete.  (Big5 no longer
 +      treated specially.)
 +      (setup_coding_system, coding_category, CATEGORY_MASK_ANY)
 +      (detected_mask): Remove Big5 bits.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      The following changes are to make the font rescaling facility
 +      compatible with Emacs 21.
 +
 +      * xfaces.c (Vface_font_rescale_alist): Rename from
 +      Vface_resizing_fonts.
 +      (struct font_name): Rename member resizing_ratio to rescale_ratio.
 +      (font_rescale_ratio): Rename from font_resizing_ratio.
 +      (split_font_name): Set font->rescale_ratio.
 +      (better_font_p): Pay attention to font->rescale_ratio.
 +      (build_scalable_font_name): Likewise.  Change RESX, and RESY
 +      fields.
 +      (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * coding.c (Qutf_16_be_nosig, Qutf_16_be, Qutf_16_le_nosig)
 +      (Qutf_16_le): Remove these variables.
 +      (syms_of_coding): Don't DEFSYM them.
 +      (decode_coding_utf_16): Fix handling of BOM.
 +      (encode_coding_utf_16): Fix handling of BOM.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * fileio.c (Finsert_file_contents): On replacing, before decoding
 +      the file into the work buffer, set point of the work buffer to the end.
 +
 +2008-02-01  Dave Love  <fx@gnu.org>
 +
 +      * coding.c (Fcheck_coding_systems_region): Fix type errors.
 +
 +2008-02-01  Dave Love  <fx@gnu.org>
 +
 +      * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
 +      and fix C types.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * xdisp.c (SKIP_GLYPHS): New macro.
 +      (set_cursor_from_row): Pay attention to string display properties.
 +
 +      * category.c (copy_category_entry): Fix for the case that RANGE
 +      is an integer.
 +
 +      * xterm.c (x_encode_char): Call ccl_driver with the last arg Qnil.
 +
 +      * w32term.c (w32_encode_char): Call ccl_driver with the last arg Qnil.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * charset.c (Fcharset_id_internal): New function.
 +      (syms_of_charset): Defsubr it.
 +
 +      * coding.c (decode_coding_ccl, encode_coding_ccl): Call ccl_driver
 +      with the last arg charset_list acquired from coding.
 +      (Fdefine_coding_system_internal): For ccl-based coding system, fix
 +      the attribute coding_attr_ccl_valids.
 +
 +      * coding.h (enum define_coding_ccl_arg_index): Set the first
 +      member coding_arg_ccl_decoder to coding_arg_max.
 +
 +      * ccl.h (ccl_driver): Adjust prototype.
 +
 +      * ccl.c (CCL_DECODE_CHAR, CCL_ENCODE_CHAR): New macros.
 +      (ccl_driver): New arg CHARSET_LIST.  Use the above macros instead
 +      of DECODE_CHAR, ENCODE_CHAR, CHAR_CHARSET.
 +      (Fccl_execute, Fccl_execute_on_string): Call ccl_driver with the
 +      last arg Qnil.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * charset.h (ENCODE_CHAR): If the method is SUBSET or SUPERSET,
 +      call encode_char.
 +
 +      * charset.c (encode_char): Fix handling of methods SUBSET and SUPERSET.
 +
 +2008-02-01  Dave Love  <fx@gnu.org>
 +
 +      * composite.c (syms_of_composite): Make composition_hash_table weak.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * dispextern.h (check_face_attributes, generate_ascii_font_name)
 +      (font_name_registry): Don't extern them.
 +      (split_font_name_into_vector, build_font_name_from_vector): Extern them.
 +
 +      * fontset.h (Qfontset): Don't extern it.
 +      (new_fontset_from_font_name): Extern it.
 +
 +      * fontset.c: Give 8 extra slots to fontset objects.
 +      (Qfontset_info): New variable.
 +      (syms_of_fontset): Defsym it.
 +      (FONTSET_FALLBACK): New macro.
 +      (fontset_face): Try also the default fontset.
 +      (make_fontset): Realize a fallback fontset from the default fontset.
 +      (generate_ascii_font_name): Move from xfaces.c.  Rewritten by
 +      using split_font_name_into_vector and build_font_name_from_vector.
 +      (Fset_fontset_font): Access the elements of font_spec by enum
 +      FONT_SPEC_INDEX.  If font_spec is a string, extract the registry
 +      name by using split_font_name_into_vector.
 +      (Fnew_fontset): If no ASCII font is specified in FONTLIST,
 +      generate a proper font name from the fontset name.
 +      Update Vfontset_alias_alist.
 +      (n_auto_fontsets): New variable.
 +      (new_fontset_from_font_name): New function.
 +      (Ffont_info): Store the information about fonts generated from the
 +      default fontset in the first extra slot of the returned char-table.
 +
 +      * xfaces.c (generate_ascii_font_name): Move to fontset.c.
 +      (font_name_registry): Delete function.
 +      (split_font_name_into_vector): New function.
 +      (build_font_name_from_vector): New function.
 +      (font_list): The argument REGISTRY is now a list of registry names.
 +      (choose_face_font): If we are choosing an ASCII font, and ATTRS
 +      specifies an explicit font name, return the name as is.  Make a
 +      list of registy names.
 +
 +      * xfns.c (x_set_font, x_create_tip_frame): Adjust for the change
 +      of x_new_fontset.
 +      (Fx_create_frame): Don't call x_new_fontset here.  Just use
 +      x_list_fonts to check the existence of fonts.
 +
 +      * xterm.h (x_new_fontset): Adjust prototype.
 +
 +      * xterm.c (x_new_fontset): Change the arg FONTSETNAME to Lisp
 +      string.  Use new_fontset_from_font_name to create a fontset from a
 +      font name.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * syntax.c (Vfind_word_boundary_function_table): New name for
 +      Vnext_word_boundary_function_table.
 +      (find-word-boundary-function-table): New name for
 +      next-word-boundary-function-table.
 +
 +2008-02-01  Dave Love  <fx@gnu.org>
 +
 +      * Makefile.in: Fix some dependencies.
 +
 +      * keymap.c (Fapropos_internal): Don't gcpro apropos_predicate but
 +      set it to nil before returning.
 +
 +      * composite.c (update_compositions): Fix type error.
 +
 +      * syntax.c (skip_chars, skip_syntaxes): Fix type errors.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * xterm.c (x_new_font): Optimize for the case that the font is
 +      already set for the frame.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * chartab.c (char_table_ascii): Check if the char table contents
 +      is sub-char-table or not.
 +      (char_table_set, char_table_set_range): Fix argument to
 +      char_table_ascii.
 +
 +      * coding.c (CATEGORY_MASK_RAW_TEXT): New macro.
 +      (detect_coding_utf_8, detect_coding_utf_16)
 +      (detect_coding_emacs_mule, detect_coding_iso_2022)
 +      (detect_coding_sjis, detect_coding_big5)
 +      (detect_coding_ccl, detect_coding_charset): Change argument MASK
 +      to DETECT_INFO.  Update DETECT_INFO and return 1 if the byte
 +      sequence is valid in this coding system.  Change callers.
 +      (MAX_ANNOTATION_LENGTH): New macro.
 +      (ADD_ANNOTATION_DATA): New macro.
 +      (ADD_COMPOSITION_DATA): Change argument.  Change callers.
 +      Call ADD_ANNOTATION_DATA.  Change the format of annotation data.
 +      (ADD_CHARSET_DATA): New macro.
 +      (emacs_mule_char): New argument ID.  Change callers.
 +      (decode_coding_emacs_mule, decode_coding_iso_2022)
 +      (decode_coding_sjis, decode_coding_big5, decode_coding_charset):
 +      Produce charset annotation data in coding->charbuf.
 +      (encode_coding_emacs_mule, encode_coding_iso_2022): Pay attention
 +      to charset annotation data in coding->charbuf.
 +      (setup_coding_system): Add CODING_ANNOTATE_CHARSET_MASK
 +      coding->common_flags if the coding system is iso-2022 based and
 +      uses designation.
 +      (produce_composition): Adjust for the new annotation data format.
 +      (produce_charset): New function.
 +      (produce_annotation): Handle charset annotation.
 +      (handle_composition_annotation, handle_charset_annotation):
 +      New functions.
 +      (consume_chars): Handle charset annotation.  Utilize the above two
 +      functions.
 +      (encode_coding_object): If SRC_OBJECT and DST_OBJECT are the same
 +      buffer, get the deleted text as a string and set
 +      coding->src_object to that string.
 +      (detect_coding, detect_coding_system): Use the new struct
 +      coding_detection_info.
 +
 +      * coding.h (struct coding_detection_info): New structure.
 +      (struct coding_system): Adjust prototype of the member `detector'.
 +      (CODING_ANNOTATE_CHARSET_MASK): New macro.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * insdel.c (insert_from_gap): Fix argument to offset_intervals.
 +
 +2008-02-01  Dave Love  <fx@gnu.org>
 +
 +      * keymap.c (apropos_predicate, apropos_accumulate): Declare static.
 +      (Fapropos_internal): Don't gcpro apropos_accumulate.  Set result
 +      to new local and nullify apropos_accumulate before returning.
 +      (syms_of_keymap): Staticpro and initialize apropos_accumulate.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * charset.c (Fdefine_charset_internal): Setup charset.fast_map
 +      correctly.
 +
 +2008-02-01  Dave Love  <fx@gnu.org>
 +
 +      * fns.c (Flanginfo): Call synchronize_system_time_locale.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      The following changes are to make character composition happen
 +      automatically on displaying.
 +
 +      * Makefile.in (lisp, shortlisp): Add composite.elc.
 +
 +      * composite.h (Qauto_composed, Vauto_composition_function)
 +      (Qauto_composition_function): Extern them.
 +
 +      * composite.c (Vcomposition_function_table)
 +      (Qcomposition_function_table): Delete variables.
 +      (Qauto_composed, Vauto_composition_function)
 +      (Qauto_composition_function): New variables.
 +      (run_composition_function): Don't call
 +      compose-chars-after-function.
 +      (update_compositions): Clear `auto-composed' text property.
 +      (compose_chars_in_text): Delete this function.
 +      (syms_of_composite): Staticpro Qauto_composed and
 +      Qauto_composition_function.  Declare Vauto_composition_function as
 +      a Lisp variable.
 +
 +      * dispextern.h (enum prop_idx): Add member AUTO_COMPOSED_PROP_IDX.
 +
 +      * xdisp.c (it_props): Add an entry for Qauto_composed.
 +      (handle_auto_composed_prop): New function.
 +
 +      * xselect.c (selection_data_to_lisp_data): Don't call
 +      compose_chars_in_text.
 +
 +2008-02-01  Dave Love  <fx@gnu.org>
 +
 +      * keyboard.c (read_char): Modify checking around use of
 +      Vkeyboard_translate_table.
 +
 +      * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
 +      and fix C types.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * coding.c (decode_coding_utf_8, decode_coding_emacs_mule)
 +      (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
 +      (decode_coding_charset, produce_chars): When eol_type is Qdos, handle
 +      the case that the last byte is '\r' correctly.
 +      (decode_coding): Flush out the unprocessed data correctly.
 +      (decode_coding_gap): Set CODING_MODE_LAST_BLOCK bit of coding->mode.
 +
 +2008-02-01  Dave Love  <fx@gnu.org>
 +
 +      * xterm.c (XTread_socket): Fix changes for defined keysyms.
 +      Add XK_ISO... case.
 +      (xaw_scroll_callback): Revert last change.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * charset.c (Fset_charset_priority): Update Viso_2022_charset_list.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * xfaces.c (Vface_resizing_fonts): New variable.
 +      (struct font_name): New member `resizing_ratio'.
 +      (font_resizing_ratio): New function.
 +      (split_font_name): Set font->resizing_ratio.
 +      (better_font_p): Pay attention to font->resizing_ratio.
 +      (build_scalable_font_name): Likewise.  Don't change POINT_SIZE,
 +      RESX, and RESY fields.
 +      (try_alternative_families): Try scalable fonts if
 +      Vscalable_fonts_allowed is not Qt.
 +      (syms_of_xfaces): Declare Vface_resizing_fonts as a Lisp variable.
 +
 +2008-02-01  Dave Love  <fx@gnu.org>
 +
 +      * xterm.c (xaw_scroll_callback): Cast correctly.
 +
 +2008-02-01  Dave Love  <fx@gnu.org>
 +
 +      * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extend.
 +      (lispy_kana_keys): Comment out.
 +      (make_lispy_event) [XK_kana_A]: Comment out.
 +
 +      * xterm.c (xaw_scroll_callback): Cast call_data.
 +      (XTread_socket): Deal with ASCII keysyms.
 +      (syms_of_xterm) <Vx_keysym_table>: Fix args of make_hash_table.
 +
 +2008-02-01  Dave Love  <fx@gnu.org>
 +
 +      * xterm.c (Vx_keysym_table): New.
 +      (syms_of_xterm): Initialize it.
 +      (XTread_socket): Use it.
 +      From head: Eliminate incorrect optimization that tried to avoid
 +      decoding the output of X*LookupString.
 +      (x_get_font_repertory): Delete charset declaration.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * coding.c (detect_coding_charset): If only ASCII bytes are found,
 +      return 0.
 +      (Fdefine_coding_system_internal):
 +      Setup CODING_ATTR_ASCII_COMPAT (attrs) correctly.
 +
 +2008-02-01  Dave Love  <fx@gnu.org>
 +
 +      * coding.c (Fcheck_coding_system): Doc fix.
 +
 +      * editfns.c (Finsert_byte): Return a proper value.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * coding.c (decode_coding): Fix args to translate_chars.
 +      Pay attention to Vstandard_translation_table_for_decode.
 +      (encode_coding): Fix args to translate_chars.  Pay attention to
 +      Vstandard_translation_table_for_encode.
 +
 +      * data.c (Faset): Check NEWELT by ASCII_CHAR_P, not by
 +      SINGLE_BYTE_CHAR_P.
 +
 +      * editfns.c (general_insert_function): Check VAL by ASCII_CHAR_P,
 +      not by SINGLE_BYTE_CHAR_P.
 +
 +      * fns.c (concat): Check CH by ASCII_CHAR_P, not by
 +      SINGLE_BYTE_CHAR_P.
 +
 +      * insdel.c (copy_text): Check C by ASCII_CHAR_P, not by
 +      SINGLE_BYTE_CHAR_P.
 +
 +      * keymap.c (Ftext_char_description): Check C by ASCII_CHAR_P, not
 +      by SINGLE_BYTE_CHAR_P.
 +
 +      * search.c (Freplace_match): Check C by ASCII_CHAR_P, not by
 +      SINGLE_BYTE_CHAR_P.
 +
 +2008-02-01  Dave Love  <fx@gnu.org>
 +
 +      * fns.c (Fstring_as_multibyte, Fstring_to_multibyte): Doc fix.
 +
 +2008-02-01  Dave Love  <fx@gnu.org>
 +
 +      * fns.c (Flanginfo): Fix typo.
 +
 +      * unexelf.c (unexec): Make last change conditional on Irix 6.5.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * coding.c (detect_coding_utf_8, detect_coding_utf_16)
 +      (detect_coding_emacs_mule, detect_coding_iso_2022)
 +      (detect_coding_sjis, detect_coding_big5, detect_coding_ccl): Check
 +      incomplete byte sequence.  Don't update *mask when correctly detected.
 +      (decode_coding_sjis): Fix decoding of katakana-jisx0201.
 +      (detect_eol): Delete the argument CODING, and add the argument CATEGORY.
 +      (detect_coding, detect_coding_system): Adjust for the changes above.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * character.c (char_string): Rename from
 +      char_string_with_unification.  Pay attention to CHAR_MODIFIER_MASK.
 +      (string_char): Rename from string_char.
 +
 +      * character.h (CHAR_STRING, CHAR_STRING_ADVANCE): Call char_string
 +      if C is greater than MAX_3_BYTE_CHAR.
 +      (STRING_CHAR, STRING_CHAR_AND_LENGTH, STRING_CHAR_ADVANCE):
 +      Call string_char instead of string_char_with_unification.
 +
 +2008-02-01  Dave Love  <fx@gnu.org>
 +
 +      * coding.c (decode_coding_utf_8): Treat surrogates as invalid.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * keymap.c (push_key_description): Pay attention to force_multibyte.
 +
 +      * regex.c (re_search_2): Fix for the case of unibyte buffer.
 +
 +2008-02-01  Dave Love  <fx@gnu.org>
 +
 +      * charset.c (define_charset_internal): Rename `supprementary'.
 +
 +      * Makefile.in (lisp, shortlisp): Remove latin-N.
 +
 +2008-02-01  Dave Love  <fx@gnu.org>
 +
 +      * xfns.c (x_window, x_window): Use use_xim.
 +
 +      * xterm.c (use_xim): Initialize.
 +      (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
 +      (x_term_init): Maybe set use_xim.
 +
 +      * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * search.c (search_buffer): Fix case-fold-search of multibyte
 +      characters.
 +      (boyer_moore): Rename the last argument to char_high_bits.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * xdisp.c (display_string): Fix for the case of zero width glyph.
 +
 +      * xfns.c (x_set_font): Change the error message of the case that
 +      x_new_fontset returns Qt.
 +
 +      * xfaces.c (set_lface_from_font_name): Reject the default fontset.
 +      (Finternal_set_lisp_face_attribute): Use signal_error for the
 +      error of invalid fontset.
 +
 +      * xterm.c (x_new_fontset): If FONTSETNAME specifies the default
 +      fontset, return Qt.
 +
 +2008-02-01  Dave Love  <fx@gnu.org>
 +
 +      * unexelf.c (unexec): Make .got handling not SGI-specific.
 +
 +      * syntax.c (syms_of_syntax) <multibyte-syntax-as-symbol>: Doc fix.
 +
 +      * regex.c: Use `ifdef HAVE_ALLOCA_H', not `if HAVE_ALLOCA_H'.
 +
 +      * keyboard.c (read_key_sequence): Fix type error.
 +
 +      * buffer.c (Fset_buffer_multibyte, Fset_buffer_multibyte):
 +      Fix type error.
 +
 +      * fontset.c (fontset_add): Return Lisp_Object.
 +
 +2008-02-01  Dave Love  <fx@gnu.org>
 +
 +      * charset.h (charset_ordered_list_tick): Declare extern.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      The following changes (and some of 2008-02-01 changes of mine) are
 +      for handling syntax, category, and case conversion for unibyte
 +      characters by converting them to multibyte on the fly.  With these
 +      changes, we don't have to setup syntax and case tables for unibyte
 +      characters in each language environment.
 +
 +      * abbrev.c (Fexpand_abbrev): Convert a unibyte character to
 +      multibyte if necessary.
 +
 +      * bytecode.c (Fbyte_code): Likewise.
 +
 +      * character.h (LEADING_CODE_LATIN_1_MIN)
 +      (LEADING_CODE_LATIN_1_MAX): New macros.
 +      (unibyte_to_multibyte_table): Extern it.
 +      (unibyte_char_to_multibyte): New macro.
 +      (MAKE_CHAR_MULTIBYTE): Use unibyte_to_multibyte_table.
 +      (CHAR_LEADING_CODE): New macro.
 +      (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE): New macro.
 +
 +      * character.c (unibyte_to_multibyte_table): New variable.
 +      (unibyte_char_to_multibyte): Move to character.h and define as macro.
 +      (multibyte_char_to_unibyte): If C is an eight-bit character,
 +      convert it to the corresponding byte value.
 +
 +      * charset.c (Fset_unibyte_charset): If the dimension of CHARSET is
 +      not 1, signals an error.  Update the elements of
 +      unibyte_to_multibyte_table.
 +      (init_charset_once): Initialize unibyte_to_multibyte_table.
 +      (syms_of_charset): Define the charset `iso-8859-1'.
 +
 +      * cmds.c (internal_self_insert): In a multibyte buffer, insert C
 +      as is without converting it to unibyte.  In a unibyte buffer,
 +      convert C to multibyte before checking the syntax.
 +
 +      * lisp.h (unibyte_char_to_multibyte): Delete extern.
 +
 +      * minibuf.c (Fminibuffer_complete_word): Use the macro
 +      FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE.
 +
 +      * regex.h (struct re_pattern_buffer): New member target_multibyte.
 +
 +      * regex.c (RE_TARGET_MULTIBYTE_P): New macro.
 +      (GET_CHAR_BEFORE_2): Check target_multibyte, not multibyte.
 +      If that is zero, convert an eight-bit char to multibyte.
 +      (MAKE_CHAR_MULTIBYTE, CHAR_LEADING_CODE): New dummy new macros for
 +      non-emacs case.
 +      (PATFETCH): Convert an eight-bit char to multibyte.
 +      (HANDLE_UNIBYTE_RANGE): New macro.
 +      (regex_compile): Setup the compiled pattern for multibyte chars
 +      even if the given regex string is unibyte.  Use PATFETCH_RAW
 +      instead of PATFETCH in many places.  To handle `charset'
 +      specification of unibyte, call HANDLE_UNIBYTE_RANGE.  Use bitmap
 +      only for ASCII chars.
 +      (analyse_first) <exactn>: Simplify because the compiled pattern
 +      is multibyte.
 +      <charset_not>: Setup fastmap from bitmap only for ASCII chars.
 +      <charset>: Use CHAR_LEADING_CODE to get leading codes.
 +      <categoryspec>: If multibyte, setup fastmap only for ASCII chars here.
 +      (re_compile_fastmap) [emacs]: Call analyse_first with the arg
 +      multibyte always 1.
 +      (re_search_2): In emacs, set the locale variable multibyte to 1,
 +      otherwise to 0.  New local variable target_multibyte.  Check it
 +      to decide the multibyteness of STR1 and STR2.
 +      If target_multibyte is zero, convert unibyte chars to multibyte
 +      before translating and checking fastmap.
 +      (TARGET_CHAR_AND_LENGTH): New macro.
 +      (re_match_2_internal): In emacs, set the locale variable multibyte
 +      to 1, otherwise to 0.  New local variable target_multibyte.
 +      Check it to decide the multibyteness of STR1 and STR2.
 +      Use TARGET_CHAR_AND_LENGTH to fetch a character from D.
 +      <charset, charset_not>: If multibyte is nonzero, check fastmap
 +      only for ASCII chars.  Call bcmp_translate with
 +      target_multibyte, not with multibyte.
 +      <begline>: Declare the local variable C as `unsigned'.
 +      (bcmp_translate): Change the last arg name to target_multibyte.
 +
 +      * search.c (compile_pattern_1): Don't adjust the multibyteness of
 +      the regexp pattern and the matching target.  Set cp->buf.multibyte
 +      to the multibyteness of the regexp pattern.  Set
 +      cp->but.target_multibyte to the multibyteness of the matching target.
 +      (wordify): Use FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE instead of
 +      FETCH_STRING_CHAR_ADVANCE.
 +      (Freplace_match): Convert unibyte chars to multibyte.
 +
 +      * syntax.c (char_quoted, back_comment, scan_words)
 +      (Fforward_comment, scan_lists, Fbackward_prefix_chars)
 +      (scan_sexps_forward): Use FETCH_CHAR_AS_MULTIBYTE to convert
 +      unibyte chars to multibyte.
 +      (skip_chars): Delete the arg syntaxp, and move the code for
 +      handling syntaxes to skip_syntaxes.  Change callers.
 +      Fix the case that the multibyteness of STRING and the current
 +      buffer doesn't match.
 +      (skip_syntaxes): New function.
 +      (SYNTAX_WITH_MULTIBYTE_CHECK): Check C by ASCII_CHAR_P, not by
 +      SINGLE_BYTE_CHAR_P.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * xfaces.c (QCfontset): New variable.
 +      (LFACE_FONTSET): New macro.
 +      (check_lface_attrs): Check also LFACE_FONTSET_INDEX.
 +      (set_lface_from_font_name): Setup LFACE_FONTSET (lface).
 +      (Finternal_set_lisp_face_attribute)
 +      (Finternal_get_lisp_face_attribute): Handle QCfontset.
 +      (lface_same_font_attributes_p): Fix checking of LFACE_FONT_INDEX,
 +      check also LFACE_FONTSET_INDEX.
 +      (face_fontset): Check attrs[LFACE_FONTSET_INDEX], not
 +      attrs[LFACE_FONT_INDEX].
 +      (syms_of_xfaces): Intern and staticpro QCfontset.
 +
 +      * dispextern.h (enum lface_attribute_index): New member
 +      LFACE_FONTSET_INDEX.
 +
 +      * fns.c (base64_encode_1): Handle eight-bit chars correctly.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * coding.c (coding_set_destination): Fix coding->destination for
 +      the case converting a region.
 +      (encode_coding_utf_8): Encode eight-bit chars as single byte.
 +      (encode_coding_object): Fix coding->dst_pos and
 +      coding->dst_pos_byte for the case converting a region.
 +
 +      * insdel.c (insert_from_gap): Make it work even if PT != GTP.
 +
 +      * character.h (BYTE8_STRING): New macro.
 +
 +      * fns.c (base64_decode_1): Insert eight-bit chars correctly.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * xdisp.c (get_next_display_element): Don't display unibyte 8-bit
 +      characters by octal form.
 +
 +      * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
 +
 +      * buffer.h (_fetch_multibyte_char_len): Delete extern.
 +      (FETCH_MULTIBYTE_CHAR, BUF_FETCH_MULTIBYTE_CHAR): Don't use
 +      _fetch_multibyte_char_len.
 +      (FETCH_CHAR_AS_MULTIBYTE): New macro.
 +
 +      * casetab.c (set_canon, set_identity, shuffle): Simplify.
 +
 +      * casefiddle.c (casify_object): Simplify.  Handle the case that
 +      the case conversion change the byte length.
 +      (casify_region): Likewise.
 +
 +      * character.h (MAKE_CHAR_UNIBYTE, MAKE_CHAR_MULTIBYTE): New macros.
 +
 +      * character.c (_fetch_multibyte_char_len): Delete this variable.
 +      (syms_of_character): Setup Vprintable_chars.
 +
 +      * editfns.c (Fchar_equal): Fix for the unibyte case.
 +      (Finsert_byte): New function.
 +      (syms_of_editfns): Defsubr it.
 +
 +      * keyboard.c (read_key_sequence): Use ~CHAR_MODIFIER_MASK instead
 +      of direct code 0x3ffff.
 +
 +      * search.c (Freplace_match): Fix for the unibyte case.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * lread.c (safe_to_load_p): Fix the logic.
 +
 +      * syntax.c (scan_words): Don't treat characters belonging to
 +      different scripts as constituting a word.
 +
 +      * editfns.c (Fformat): Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
 +
 +      * fontset.c (Fset_fontset_font): Treat `ascii' as charset, not script.
 +
 +      * emacs.c (main): In the case of --unibyte, instead of aborting on
 +      finding non-empty buffer, make it unibyte.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * xterm.c (x_new_fontset): Call `create-fontset-from-ascii-font'
 +      to create a fontset.
 +
 +2008-02-01  Dave Love  <fx@gnu.org>
 +
 +      * character.c (Funibyte_char_to_multibyte): Doc fix.
 +
 +      * xfns.c [HAVE_STDLIB_H]: Fix last change.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * fontset.c (fontset_add): Make the type `int'.
 +      (fontset_id_valid_p): Define it if FONTSET_DEBUG is defined.
 +
 +      * character.c (unibyte_char_to_multibyte)
 +      (multibyte_char_to_unibyte, Funibyte_char_to_multibyte): Refer to
 +      charset_unibyte, not charset_primary.
 +
 +      * charset.h (charset_unibyte): Extern it instead of charset_primary.
 +
 +      * charset.c (charset_unibyte): Rename from charset_primary.
 +      (Funibyte_charset): Rename from Fprimary_charset.
 +      (Fset_unibyte_charset): Rename from Fset_primary_charset.
 +      (syms_of_charset): Adjust for the above changes.
 +
 +      * w32term.c (x_produce_glyphs): Use ASCII_CHAR_P, not
 +      SINGLE_BYTE_CHAR_P.  Fix the logic of handling non-ASCII char when
 +      it->multibyte_p is zero.
 +
 +      * lisp.h (nonascii_insert_offset, Vnonascii_translation_table):
 +      Delete extern.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * coding.c (Fdefine_coding_system_internal): Fix category setting
 +      for a coding system of type iso-2022.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * fontset.h (FS_LOAD_FONT): Call fs_load_font with the arg CHARSET -1.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * syntax.c (Vnext_word_boundary_function_table): New variable.
 +      (next-word-boundary-function-table): Declare it as a Lisp variable
 +      in syms_of_syntax.
 +      (scan_words): Call functions in Vnext_word_boundary_function_table
 +      if any.
 +
 +      * xterm.c (x_load_font): Initialize fontp->fontset to -1.
 +
 +      * fontset.c (fs_load_font): If fontp->charset is not negative,
 +      return fontp without setting its members.
 +
 +2008-02-01  Dave Love  <fx@gnu.org>
 +
 +      * xfns.c [HAVE_STDLIB_H]: Change logic (instead of fixing typo).
 +
 +      * m/sparc.h (HAVE_ALLOCA): Delete.
 +
 +      * s/irix6-5.h: Don't include strings.h.
 +      (bcopy, bzero, bcmp): Don't undef.
 +
 +      * s/irix6-0.h (bcopy, bzero, bcmp): Don't undef.
 +
 +      * s/usg5-4.h (NO_SIOCTL_H): Don't define.
 +      (TIOCSIGSEND): Don't test IRIX6.
 +      (bcopy, bzero, bcmp): Define conditionally.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * buffer.c (Qas, Qmake, Qto): New variables.
 +      (Fset_buffer_multibyte): New optional arg METHOD.  Change caller.
 +      (syms_of_buffer): Intern and staticpro Qas, Qmake, and Qto.
 +
 +      * callproc.c (Fcall_process): Don't call insert_1_both directly if
 +      we are inserting a process output into a multibyte buffer.
 +
 +      * character.h (CHAR_TO_BYTE8): If C is not eight-bit char, call
 +      multibyte_char_to_unibyte.
 +
 +      * character.c (Funibyte_char_to_multibyte): If C can't be decoded
 +      by the primary charset, make it eight-bit char.
 +      (Fmultibyte_char_to_unibyte): Call CHAR_TO_BYTE8.
 +
 +      * charset.c (charset_eight_bit, Qeight_bit_control): New variables.
 +      (charset_8_bit__control, charset_8_bit_graphic)
 +      (Qeight_bit_control, Qeight_bit_graphic): Delete these variables.
 +      (define_charset_internal): New function.
 +      (syms_of_charset): Call define_charset_internal for pre-defined
 +      charsets.
 +
 +      * charset.h (charset_8_bit): Extern it.
 +
 +      * coding.c (make_conversion_work_buffer): Adjust for the change
 +      of Fset_buffer_multibyte.
 +      (encode_coding_raw_text): Increment p0 in the loop.
 +
 +      * lisp.h (Fset_buffer_multibyte): Adjust prototype.
 +
 +      * xdisp.c (setup_echo_area_for_printing, set_message_1):
 +      Adjust for the change of Fset_buffer_multibyte.
 +
 +      * fns.c (Fstring_to_multibyte): New function.
 +      (syms_of_fns): Declare Fstring_to_multibyte as Lisp subroutine.
 +
 +2008-02-01  Dave Love  <fx@gnu.org>
 +
 +      * xfns.c (x_put_x_image): Declare args.
 +
 +      * xfaces.c (font_name_registry, choose_face_font): Delete unused vars.
 +      (try_font_list): Declare an arg.
 +
 +      * xdisp.c (message2_nolog, set_message): Declare an arg.
 +
 +      * terminfo.c (tparam): Declare an arg.  Use P_ to declare tparm.
 +
 +      * syntax.c (scan_sexps_forward): Declare an arg.
 +
 +      * scroll.c (calculate_scrolling, calculate_direct_scrolling):
 +      Declare an arg.
 +
 +      * lisp.h (Fnew_fontset): Declare.
 +
 +      * keymap.c (push_key_description): Call CHARACTERP correctly.
 +
 +      * fontset.c (fontset_add): Declare args.  Call make_number correctly.
 +      (face_for_char): Delete unused vars.
 +      (Fset_fontset_font): Doc fix.  Delete unused vars.
 +
 +      * doc.c (Fsubstitute_command_keys): Delete unused vars.
 +
 +      * composite.c (update_compositions): Declare arg.
 +
 +      * cm.c (calccost, cmgoto): Declare args.
 +
 +      * charset.c: Remove `emacs' conditional.  Doc fixes.
 +      (map_char_table_for_charset): Declare.
 +
 +      * character.c (syms_of_character) <translation-table-vector>: Doc fix.
 +
 +      * ccl.c: Remove `emacs' conditional.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      The following changes are to allow specifying multiple font
 +      patterns for a character range (specified by script or charset).
 +
 +      * Makefile.in (abbrev.o): Depend on syntax.h.
 +      (xfaces.o): Depend on charset.h.
 +
 +      * alloc.c (Fmake_string): Use ASCII_CHAR_P, not
 +      SINGLE_BYTE_CHAR_P.
 +
 +      * ccl.c (Fccl_execute_on_string): Add `const' to local variables.
 +
 +      * character.h (Vchar_script_table): Extern it.
 +
 +      * character.c (Vscript_alist): Delete.
 +      (Vchar_script_table, Qchar_script_table): New variable.
 +      (syms_of_character): Declare Vchar_script_table as a lisp variable
 +      and initialize it.
 +
 +      * chartab.c (Fmake_char_table): Doc fix.  If PURPOSE doesn't
 +      have property char-table-extra-slots, make no extra slot.
 +
 +      * dispextern.h (struct face): Delete member `charset'.
 +      (FACE_SUITABLE_FOR_CHAR_P, FACE_FOR): Use ASCII_CHAR_P, not
 +      SINGLE_BYTE_CHAR_P.
 +      (choose_face_font, lookup_non_ascii_face, font_name_registry):
 +      Add prototypes.
 +      (lookup_face, lookup_named_face, lookup_derived_face): Fix prototype.
 +      (generate_ascii_font_name): Rename from generate_ascii_font.
 +
 +      * fontset.h (get_font_repertory_func): New prototype.
 +      (make_fontset_for_ascii_face, fs_load_font): Fix prototypes.
 +      (FS_LOAD_FONT): Call fs_load_font with the 3rd arg charset_ascii.
 +
 +      * fontset.c (Qprepend, Qappend): New variables.
 +      (FONTSET_CHARSET_ALIST, FONTSET_FACE_ALIST): Delete.
 +      (FONTSET_NOFONT_FACE, FONTSET_REPERTORY): New macros.
 +      (FONTSET_REF): Optimize if FONTSET is Vdefault_fontset.
 +      (FONTSET_REF_AND_RANGE, FONTSET_ADD): New macros.
 +      (fontset_ref_and_range, fontset_add, reorder_font_vector)
 +      (load_font_get_repertory): New functions.
 +      (fontset_set): Delete.
 +      (fontset_face): New arg FACE.  Return face ID, not face.
 +      Complete re-write to handle new fontset structure.  Change caller.
 +      (free_face_fontset): Use ASET istead of AREF (X) = Y.
 +      (face_for_char): Don't call lookup_face.
 +      (make_fontset_for_ascii_face): New arg FACE.
 +      (fs_load_font): New arg CHARSET_ID.  Don't check
 +      Vfont_encoding_alist here.
 +      (find_font_encoding): New function.
 +      (list_fontsets): Use STRINGP, not ! NILP.
 +      (accumulate_script_ranges): New function.
 +      (Fset_fontset_font, Fnew_fontset, Ffontset_info):
 +      Completely re-written to handle new fontset structure.
 +      (Ffontset_font): Return a copy of element.
 +      (syms_of_fontset): Define symbols Qprepend and Qappend.
 +      Fix docstring of font-encoding-alist.
 +
 +      * lisp.h (CHAR_TABLE_REF): Remove unnecessary check (IDX >= 0).
 +      (Fset_fotset_font): Fix arguments to 5.
 +
 +      * msdos.c (XMenuActivate): Adjust for the change of lookup_derived_face.
 +
 +      * xdisp.c (message_dolog, set_message_1, extend_face_to_end_of_line):
 +      Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
 +      (highlight_trailing_whitespace): Adjust for the change of
 +      lookup_named_face.
 +
 +      * xfaces.c: Include charset.h.
 +      (load_face_font): Delete argument C.  Change caller.
 +      (generate_ascii_font_name): Rename from generate_ascii_font.
 +      (font_name_registry): New function.
 +      (cache_face): Store ascii faces before non-ascii faces in buckets.
 +      (lookup_face): Delete arguments C and BASE_FACE.  Change caller.
 +      Lookup only ascii faces.
 +      (lookup_non_ascii_face): New function.
 +      (lookup_named_face): Delete argument C.  Change caller.
 +      (lookup_derived_face): Delete argument C.  Change caller.
 +      (try_font_list): New arg PATTERN.  Change caller.  If PATTERN is
 +      a string, just call font_list with it.
 +      (choose_face_font): Delete arguments FACE and C.  New arg
 +      FONT_SPEC.  Change caller.
 +      (realize_face, realize_x_face): Delete arguments C and BASE_FACE.
 +      Change caller.
 +      (realize_non_ascii_face): New function.
 +      (realize_x_face): Call load_face_font here.
 +      (realize_tty_face): Delete argument C.  Change caller.
 +      (compute_char_face): If CH is not ascii, call FACE_FOR_CHAR to
 +      get a face ID.
 +      (dump_realized_face): Don't print charset of FACE.
 +
 +      * xfns.c (x_set_font): Always call x_new_fontset and
 +      store_frame_parameter.
 +      (Fx_create_frame): Call x_new_fontset, not x_new_font.
 +      (syms_of_xfns): Set get_font_repertory_func to x_get_font_repertory.
 +
 +      * xterm.h (x_get_font_repertory): Extern it.
 +
 +      * xterm.c (x_produce_glyphs): Use ASCII_CHAR_P, not
 +      SINGLE_BYTE_CHAR_P.  Fix the logic of handling non-ASCII char when
 +      it->multibyte_p is zero.
 +      (XTread_socket): Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
 +      (x_new_fontset): If FONTSETNAME doesn't match any existing
 +      fontsets, create a new one.
 +      (x_get_font_repertory): New function.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * coding.c (Ffind_coding_systems_region_internal): Detect an
 +      ASCII only string correctly.
 +
 +      * lread.c (Fload): Don't load with Qload_force_doc_strings t if
 +      version is 0.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * lread.c: Include "coding.h".
 +      (Qget_emacs_mule_file_char, Qload_force_doc_strings)
 +      (load_each_byte, unread_char): New variables.
 +      (readchar_backlog): Delete.
 +      (readchar): Return a character unless load_each_byte is nonzero.
 +      Handle the case that readcharfun is Qget_emacs_mule_file_char or a
 +      cons.  If unread_char is not -1, simply return it.
 +      (unreadchar): Handle the case that readcharfun is
 +      Qget_emacs_mule_file_char or a cons.  Set unread_char if necessary.
 +      (read_multibyte): Delete.
 +      (readbyte_for_lambda, readbyte_from_file, readbyte_from_string)
 +      (read_emacs_mule_char): New functions.
 +      (Fload): Even if the file doesn't have the extension ".elc", if
 +      safe_to_load_p returns a positive version number, assume that the
 +      file contains bytecompiled code.  If the version is less than 22,
 +      load the file while decoding multibyte sequences by emacs-mule.
 +      (readevalloop): Don't use readchar_backlog.
 +      (Fread): Likewise.  Pay attention to the case that STREAM is a cons.
 +      (Fread_from_string): Pay attention to the case that STREAM is a cons.
 +      (read_escape): Delete the arg BYTEREP.
 +      (read1): Set load_each_byte to 1 temporarily while handling
 +      #@NUMBER.  Don't call read_multibyte.
 +      (read_vector): Call Fread with a cons.  If readcharfun is
 +      Qget_emacs_mule_file_char, decode the read string by emacs-mule.
 +      (read_list): If doc_reference is 2, make the cdr part string as unibyte.
 +      (syms_of_lread): Intern and staticpro Qget_emacs_mule_file_char
 +      and Qload_force_doc_strings.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * xdisp.c (face_before_or_after_it_pos):
 +      Call FETCH_MULTIBYTE_CHAR with byte postion, not char position.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * character.h (TRAILING_CODE_P): New macro.
 +      (MAYBE_UNIFY_CHAR): Adjust for the change of Funify_charset.
 +      (string_char_with_unification): Fix prototype.
 +      (Vscript_alist): Extern it.
 +
 +      * character.c (Vscript_alist): New variable.
 +      (string_char_with_unification, str_as_unibyte)
 +      (string_escape_byte8): Add `const' to local variables.
 +      (syms_of_character): Declare script-alist as a Lisp variable.
 +
 +      * charset.h (Vcharset_ordered_list): Extern it.
 +      (charset_ordered_list_tick): Extern it.
 +      (EMACS_MULE_LEADING_CODE_PRIVATE_11)
 +      (EMACS_MULE_LEADING_CODE_PRIVATE_12)
 +      (EMACS_MULE_LEADING_CODE_PRIVATE_21)
 +      (EMACS_MULE_LEADING_CODE_PRIVATE_22): New macros.
 +      (Funify_charset): Adjust for the change of Funify_charset.
 +
 +      * charset.c (charset_ordered_list_tick): New variable.
 +      (Fdefine_charset_internal): Increment charset_ordered_list_tick.
 +      (Funify_charset): New optional arg DEUNIFY.  If it is non-nil,
 +      deunify instead of unify a charset.
 +      (string_xstring_p): Add `const' to local variables.
 +      (find_charsets_in_text): Add `const' to arguments and local variables.
 +      (encode_char): Adjust for the change of Funify_charset.
 +      Fix detecting of invalid code.
 +      (Fset_charset_priority): Increment charset_ordered_list_tick.
 +      (Fmap_charset_chars): Fix handling of default value for FROM_CODE
 +      and TO_CODE.
 +
 +      * coding.c (LEADING_CODE_PRIVATE_11, LEADING_CODE_PRIVATE_12)
 +      (LEADING_CODE_PRIVATE_21, LEADING_CODE_PRIVATE_22): Delete macros.
 +      Changed callers to use EMACS_MULE_LEADING_CODE_PRIVATE_11, etc.
 +      (decode_coding_ccl, consume_chars)
 +      (Ffind_coding_systems_region_internal)
 +      (Fcheck_coding_systems_region): Add `const' to local variables.
 +
 +      * print.c (print_object): Use octal form for printing the
 +      contents of a bool vector.
 +
 +2008-02-01  Dave Love  <fx@gnu.org>
 +
 +      * lread.c (Fload) <!load_dangerous_libraries>: Don't leak fd.
 +      <version == 20>: Refuse to load.
 +
 +2008-02-01  Dave Love  <fx@gnu.org>
 +
 +      * fns.c: Move coding.h.
 +      (Qcodeset, Qdays, Qmonths): New.
 +      (concat): Use CHARACTERP instead of INTEGERP.
 +      (Flocale_codeset): Delete.
 +      (Flanginfo): New function.
 +      (syms_of_fns): Change accordingly.
 +
 +      * coding.c (adjust_coding_eol_type): Fix eol_type/eol_seen mixup.
 +
 +2008-02-01  Dave Love  <fx@gnu.org>
 +
 +      * casetab.c (init_casetab_once, init_casetab_once):
 +      Fix CHAR_TABLE_SET call.
 +
 +      * category.c (Fmodify_category_entry): Fix CATEGORY_MEMBER call.
 +
 +      * character.c (syms_of_character): Fix CHAR_TABLE_SET call.
 +
 +      * charset.c (Fmap_charset_chars): Check args.  Convert Lisp types.
 +      (load_charset_map, Fdeclare_equiv_charset, Fencode_char)
 +      (Fset_charset_priority, syms_of_charset): Convert Lisp types.
 +
 +      * charset.h (CHECK_CHARSET_GET_ID): Use XINT on AREF result.
 +
 +      * coding.c (ENCODE_DESIGNATION, decode_eol)
 +      (make_conversion_work_buffer, code_conversion_restore)
 +      (Fdefine_coding_system_internal): Convert Lisp types.
 +      (code_conversion_restore): Use EQ, not ==.
 +      (Fencode_coding_string): Fix code_convert_string call.
 +
 +      * coding.h (code_convert_region): Fix prototype.
 +
 +      * dispextern.h (redraw_frame, redraw_garbaged_frames): Remove.
 +
 +      * fontset.c (fontset_ref, fontset_set, fs_load_font)
 +      (Ffontset_info): Convert Lisp types.
 +
 +      * syntax.h (SYNTAX_ENTRY_INT): Don't use make_number.
 +
 +      * xterm.c (note_mouse_movement): Fix call of window_from_coordinates.
 +
 +      * xdisp.c (display_mode_element): Fix call of Fset_text_properties.
 +
 +      * chartab.c: Include "...h", not <...h> in some cases.
 +
 +      * callproc.c (Fcall_process): Remove unused variables.
 +
 +2008-02-01  Dave Love  <fx@gnu.org>
 +
 +      * coding.c (Fset_coding_system_priority): Allow null arg list.
 +
 +2008-02-01  Dave Love  <fx@gnu.org>
 +
 +      * minibuf.c (Fminibuffer_complete_word): Remove unused var.
 +      (Fself_insert_and_exit): Use CHARACTERP.
 +
 +      * callproc.c (Fcall_process): Remove unused vars.
 +
 +      * xterm.c (XTread_socket): Add extra dead keysyms.
 +
 +      * xdisp.c (decode_mode_spec_coding): Use CHARACTERP.
 +
 +      * dispextern.h: Remove prototypes for redraw_frame,
 +      redraw_garbaged_frames.
 +
 +      * cmds.c (Fself_insert_command): Use CHARACTERP.
 +
 +      * chartab.c (make_sub_char_table): Remove unused var.
 +      (Fset_char_table_default, Fmap_char_table): Doc fix.
 +
 +      * keymap.c (access_keymap): Remove generic char code.
 +      (push_key_description): Use CHARACTERP.
 +
 +2008-02-01  Dave Love  <fx@gnu.org>
 +
 +      * charset.c: Doc fixes.
 +      (Funify_charset): Extra checking.
 +
 +2008-02-01  Dave Love  <fx@gnu.org>
 +
 +      * lread.c: Remove some unused variables.
 +      (safe_to_load_p): If safe, return the magic number version byte.
 +      (Fload): Maybe use load-with-code-conversion.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * category.c (Fmodify_category_entry): Don't modify the contents
 +      of category_set for characters out of the range.
 +      Avoid unnecessary modification.
 +
 +      * character.h (MAYBE_UNIFY_CHAR): Adjust for the change of
 +      Vchar_unify_table.  The default value of the table is now nil.
 +
 +      * character.c (syms_of_character): Setup Vchar_width_table for
 +      eight-bit-control and raw-byte chars.
 +
 +      * charset.h (enum define_charset_arg_index):
 +      Delete charset_arg_parents and add charset_arg_subset and
 +      charset_arg_superset.
 +      (enum charset_attr_index): Delete charset_parents and add
 +      charset_subset and charset_superset.
 +      (enum charset_method): Delete CHARSET_METHOD_INHERIT and add
 +      CHARSET_METHOD_SUBSET and CHARSET_METHOD_SUPERSET.
 +      (CHARSET_ATTR_PARENTS, CHARSET_PARENTS): Delete.
 +      (CHARSET_ATTR_SUBSET, CHARSET_ATTR_SUPERSET, CHARSET_SUBSET)
 +      (CHARSET_SUPERSET): New macros.
 +      (charset_work): Extern it.
 +      (ENCODE_CHAR): Use charset_work.
 +      (CHAR_CHARSET_P): Adjust for the change of encoder format.
 +      (map_charset_chars): Extern it.
 +
 +      * charset.c (load_charset_map): Set the default value of encoder
 +      and deunifier char-tables to nil.
 +      (map_charset_chars): Change argument.  Change callers.
 +      Use map_char_table_for_charset instead of map_char_table.
 +      (Fmap_charset_chars): New optional args from_code and to_code.
 +      (Fdefine_charset_internal): Adjust for the change of
 +      `define-charset' (:parents -> :subset or :superset).
 +      (charset_work): New variable.
 +      (encode_char, syms_of_charset): Adjust for the change of
 +      Fdefine_charset_internal.
 +      (Ffind_charset_string): Setup the vector `charsets' correctly.
 +
 +      * chartab.c (sub_char_table_ref_and_range): New arg default.
 +      Fix the previous change.
 +      (char_table_ref_and_range): Adjust for the above change.
 +      (map_sub_char_table_for_charset): New function.
 +      (map_char_table_for_charset): New function.
 +
 +      * keymap.c (describe_vector): Handle a char-table directly here.
 +      (describe_char_table): Delete.
 +
 +      * lisp.h (map_charset_chars): Delete.
 +
 +2008-02-01  Dave Love  <fx@gnu.org>
 +
 +      * fns.c (count_combining): Comment out (unused).
 +      (Flocale_codeset): New.
 +      (syms_of_fns): Defsubr it.
 +
 +      * config.in (HAVE_PTY_H, HAVE_SIZE_T, HAVE_LANGINFO_CODESET): New.
 +      (size_t): Remove.
 +
 +2008-02-01  Dave Love  <fx@gnu.org>
 +
 +      * Makefile.in (chartab.o): Depend on charset.h.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * character.c (syms_of_character): Set the default value of
 +      Vprintable_chars to Qnil.
 +
 +2008-02-01  Dave Love  <fx@gnu.org>
 +
 +      * Makefile.in (lisp, shortlisp): Change indian.elc to indian.el.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * charset.c (load_charset_map): Handle the case that from < to
 +      correctly.
 +
 +      * coding.c (encode_coding_emacs_mule, encode_coding_iso_2022)
 +      (encode_coding_sjis, encode_coding_big5, encode_coding_charset):
 +      Pay attention to raw-8-bit chars.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * Makefile.in (lisp, shortlisp): Change chinese.elc to chinese.el.
 +      It is not bytecompiled now.
 +
 +      * charset.c (charset_jisx0201_roman, charset_jisx0208_1978)
 +      (charset_jisx0208): New variables.
 +      (Fdefine_charset_internal): Setup them if appropriate.
 +      (init_charset_once): Initialize them to -1.
 +
 +      * charset.h (charset_jisx0201_roman, charset_jisx0208_1978)
 +      (charset_jisx0208): Extern them.
 +
 +      * coding.c (CODING_ISO_FLAG_USE_ROMAN): New macro.
 +      (CODING_ISO_FLAG_USE_OLDJIS): New macro.
 +      (CODING_ISO_FLAG_FULL_SUPPORT): Change macro definition.
 +      (setup_iso_safe_charsets): Fix arguments to Fassq.
 +      (DECODE_DESIGNATION, ENCODE_ISO_CHARACTER_DIMENSION1)
 +      (ENCODE_ISO_CHARACTER_DIMENSION2): Pay attention to
 +      CODING_ISO_FLAG_USE_ROMAN and CODING_ISO_FLAG_USE_OLDJIS.
 +      (encode_coding_iso_2022): Change the 1st arg to
 +      ENCODE_ISO_CHARACTER to a variable.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * charset.h (enum define_charset_arg_index): New enums
 +      charset_arg_min_code and charset_arg_max_code.
 +      (struct charset): New member char_index_offset.
 +
 +      * charset.c (CODE_POINT_TO_INDEX, INDEX_TO_CODE_POINT):
 +      Take charset->char_index_offset into account.
 +      (Fdefine_charset_internal): Handle args[charset_arg_min_code] and
 +      args[charset_arg_max_code].  Setup charset.char_index_offset.
 +      (syms_of_charset): Fix args to Fdefine_charset_internal.
 +
 +2008-02-01  Dave Love  <fx@gnu.org>
 +
 +      * coding.c (decode_coding_utf_8): Reject overlong sequences.
 +
 +2008-02-01  Dave Love  <fx@gnu.org>
 +
 +      * coding.c: Doc fixes.
 +      (Fcoding_system_aliases): Fix return value.
 +      (Qmac): Remove (duplicated) definition.
 +
 +2008-02-01  Dave Love  <fx@gnu.org>
 +
 +      * charset.c (Fcharset_priority_list, Fset_charset_priority):
 +      New functions.
 +
 +      * character.c (Fstring): Doc fix.
 +
 +      * charset.c (Fdefine_charset_alias): Update Vcharset_list.
 +
 +      * fontset.c (Ffontset_info): Doc fix.  Return charset names, not ids.
 +      (font-encoding-alist): Doc fix.
 +
 +2008-02-01  Dave Love  <fx@gnu.org>
 +
 +      * term.c (costs_set): Declare static, non-initialized for pcc.
 +      (encode_terminal_code): Remove unused var.
 +
 +      * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
 +      for K&R.
 +
 +      * xterm.c (xlwmenu_window_p): Fix prototype for K&R.
 +
 +      * coding.c (setup_iso_safe_charsets): Fix arg decl for K&R.
 +      (suffixes): Move out of make_subsidiaries for K&R.
 +
 +      * charset.c (map_charset_chars): Fix c_function declaration for K&R.
 +
 +      * lisp.h (DEFUN) [!PROTOTYPES]: Remove spurious `args'.
 +
 +2008-02-01  Dave Love  <fx@gnu.org>
 +
 +      * data.c (Fchar_or_string_p): Doc fix.  Use CHARACTERP.
 +
 +      * category.c (Fmodify_category_entry): Doc fix.  Remove unused vars.
 +
 +2008-02-01  Yong Lu  <lyongu@asia-infonet.com>
 +
 +      * charset.c (Fdefine_charset_internal): Fix argument to bzero.
 +
 +      * coding.c (decode_coding_charset): Workaround for the bug of GCC 2.96.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * Makefile.in (lisp, shortlisp): Change cyrillic.elc to cyrillic.el,
 +      vietnamese.elc to vietnamese.el.  They are not bytecompiled now.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * coding.c (decode_coding_charset): Adjust for the change of
 +      Fdefine_coding_system_internal.
 +      (Fdefine_coding_system_internal): For a coding system of
 +      `charset' type, store a list of charset IDs in
 +      `charset_attr_charset_valids' element of coding attributes.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * coding.c (ONE_MORE_BYTE_NO_CHECK): Increment consumed_chars.
 +      (emacs_mule_char): New arg src.  Delete arg `composition'.
 +      Change caller.  Handle 2-byte and 3-byte charsets correctly.
 +      (DECODE_EMACS_MULE_COMPOSITION_RULE_20): Rename from
 +      DECODE_EMACS_MULE_COMPOSITION_RULE.  Change caller.
 +      (DECODE_EMACS_MULE_COMPOSITION_RULE_21): New macro.
-       (code_convert_string_norecord): Deleted extern.
++      (DECODE_EMACS_MULE_21_COMPOSITION):
++      Call DECODE_EMACS_MULE_COMPOSITION_RULE_21.  Produce correct annotation
 +      sequence.
 +      (decode_coding_emacs_mule): Handle composition correctly.  Rewind
 +      `src' and `consumed_chars' correctly before calling emacs_mule_char.
 +      (DECODE_COMPOSITION_START): Correctly handle the case of altchar
 +      and alt&rule composition.
 +      (decode_coding_iso_2022): Handle composition correctly.
 +      (init_coding_once): Setup emacs_mule_bytes for private charsets.
 +
 +      * charset.c (Fdefine_charset_internal): Fix bug for the case of
 +      re-defining a charset.  If the charset has :emacs-mule-id, setup
 +      emacs_mule_bytes.
 +      (Fmake_char): If CODE1 is nil, use the minimum code of the charset.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * coding.c (encode_coding_iso_2022, encode_coding_sjis)
 +      (encode_coding_big5, encode_coding_charset): If coding requires safe
 +      encoding, produce a character specified by
 +      CODING_INHIBIT_CHARACTER_SUBSTITUTION.
 +
 +2008-02-01  Dave Love  <fx@gnu.org>
 +
 +      * xterm.c (XSetIMValues): Declare.
 +
 +      * process.c: Conditionally include sys/wait.h, pty.h.
 +
 +      * print.c (print_object): Fix print format for 64-bit systems.
 +
 +      * keyboard.c (modify_event_symbol): Fix print format for 64-bit systems.
 +
 +      * buffer.c (emacs_strerror): Declare.
 +
 +      * fontset.c (Fclear_face_cache): Declare.
 +      (accumulate_font_info): Comment-out (unused).
 +      (face_for_char, Fset_fontset_font, Ffontset_info): Remove unused
 +      variables.
 +
 +      * character.h (string_escape_byte8): Declare.
 +
 +      * charset.c (load_charset_map, load_charset_map_from_file):
 +      Remove unused vars.
 +      (Fdefine_charset_internal, Fsplit_char, syms_of_charset)
 +      (Fmap_charset_chars): Doc fix.
 +
 +      * coding.c (Vchar_coding_system_table, Qchar_coding_system): Remove.
 +      (Fset_coding_system_priority, Fset_coding_system_priority)
 +      (Fdefine_coding_system_internal): Doc fix.
 +
 +2008-02-01  Dave Love  <fx@gnu.org>
 +
 +      * s/osf5-0.h (C_SWITCH_SYSTEM) [!__GNUC__]: Remove -nointrinsics.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * character.c (string_escape_byte8): Make multibyte string with
 +      correct size.
 +
 +      * charset.c (Fmake_char): Delete unnecessary code.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * xfns.c (x_encode_text): Allocate coding.destination here, and
 +      call encode_coding_object with dst_object Qnil.
 +
 +      * buffer.c (Fset_buffer_multibyte): Convert 8-bit bytes to
 +      multibyte form correctly.
 +
 +      * fontset.c (fs_load_font): Check fontp->full_name (not fontname)
 +      against Vfont_encoding_alist.
 +
 +      * coding.c (Fdecode_sjis_char): Fix typo (0x7F->0xFF).  Fix the
 +      handling of charset list.
 +      (encode_coding_iso_2022): Setup coding->safe_charsets in advance.
 +      (decode_coding_object): Move point to coding->dst_pos before
 +      calling post-read-conversion function.
 +      (encode_coding_object): Give correct arguments to
 +      pre-write-conversion.  Ignore the return value of
 +      pre-write-conversion function.  Pay attention to the case that
 +      pre-write-conversion changes the current buffer.  If dst_object is
 +      Qt, even if coding->src_bytes is zero, allocate at least one byte
 +      to coding->destination.
 +
 +      * coding.h (JIS_TO_SJIS): Fix typo (j1->s1, j2->s2).
 +
 +      * charset.c (Fmake_char): Make it more backward compatible.
 +      (Fmap_charset_chars): Fix docstring.
 +
 +2008-02-01  Dave Love  <fx@gnu.org>
 +
 +      * coding.c: Doc fixes.
 +      (Fdefine_coding_system_alias): Use names, not symbols, in
 +      coding-system-alist.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * fontset.c (free_realized_fontsets): Call Fclear_face_cache instead
 +      of calling free_realized_face.
 +
 +2008-02-01  Yong Lu  <lyongu@asia-infonet.com>
 +
 +      * charset.c (read_hex): Don't treat SPC as a comment starter.
 +      (decode_char): If CODE_POINT_TO_INDEX returns -1, always return -1.
 +      (Fdecode_char): Fix typo.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * charset.h (struct charset): New member `code_space_mask'.
 +
 +      * coding.c (coding_set_source): Delete the local variable beg_byte.
 +      (encode_coding_charset, Fdefine_coding_system_internal):
 +      Delete the local variable charset.
 +      (Fdefine_coding_system_internal):
 +      Setup attrs[coding_attr_charset_valids] correctly.
 +
 +      * charset.c (CODE_POINT_TO_INDEX): Utilize `code_space_mask'
 +      member to check if CODE is valid or not.
 +      (Fdefine_charset_internal): Initialize `code_space_mask' member.
 +      (encode_char): Before calling CODE_POINT_TO_INDEX, check if CODE
 +      is within the range of charset->min_code and carset->max_code.
 +
 +2008-02-01  Dave Love  <fx@gnu.org>
 +
 +      * syntax.h (syntax_temp) [!__GNUC__]: Declare.
 +
 +      * dispextern.h (generate_ascii_font): Fix return type.
 +
 +      * xfaces.c (generate_ascii_font): Fix arg declaration.
 +
 +      * coding.c (coding_inherit_eol_type)
 +      (Fset_terminal_coding_system_internal)
 +      (Fset_safe_terminal_coding_system_internal): Fix arg declarations.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * coding.c (decode_coding_charset, encode_coding_charset):
 +      Handle multiple charsets correctly.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * search.c (boyer_moore): Fix handling of multibyte character
 +      translation.
 +
 +      * xdisp.c (display_mode_element): When the variable `elt' is
 +      changed, update `this' and `lisp_string'.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * buffer.c (Fset_buffer_multibyte): Fix 8-bit char handling.
 +
 +      * callproc.c (Fcall_process): Be sure to give the current buffer
 +      to decode_coding_c_string.  Update PT and PT_BYTE after the insertion.
 +
 +      * charset.c (struct charset_map_entries): New struct.
 +      (load_charset_map): Rename from parse_charset_map.  New args
 +      entries and n_entries.  Change caller.
 +      (load_charset_map_from_file): Rename from load_charset_map.
 +      Change caller.  New arg control_flag.  Call load_charset_map at
 +      the tail.
 +      (load_charset_map_from_vector): New function.
 +      (Fdefine_charset_internal): Setup charset.compact_codes_p.
 +      (encode_char): If the charset is compact, change a character index
 +      to a code point.
 +
 +      * coding.c (coding_alloc_by_making_gap): Check the case that the
 +      source and destination are the same correctly.
 +      (decode_coding_raw_text): Set coding->consumed_char and
 +      coding->consumed to 0.
 +      (produce_chars): If coding->chars_at_source is nonzero, update
 +      coding->consumed_char and coding->consumed before calling
 +      alloc_destination.
 +      (Fdefine_coding_system_alias): Register ALIAS in
 +      Vcoding_system_alist.
 +      (syms_of_coding): Define `no-conversion' coding system at the tail.
 +
 +      * fileio.c (Finsert_file_contents): Set coding_system instead of
 +      val.  If the current buffer is multibyte, always call
 +      decode_coding_gap.
 +
 +      * xfaces.c (try_font_list): Give higher priority to fontset's
 +      family than face's family.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * callproc.c (Fcall_process): Be sure to give the current buffer
 +      to decode_coding_c_string.
 +
 +      * xfaces.c (try_font_list): Give a family specified in a fontset
 +      higher priority than a family specified in a face.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * fileio.c (Finsert_file_contents): Fix calculation of `inserted'.
 +      Fix arguments to insert_from_buffer.
 +
 +      * xdisp.c (display_mode_element): Fix calculation of `bytepos'.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * coding.c (produce_chars): Set the variable `multibytep' correctly.
 +      (decode_coding_gap): Set coding->dst_multibyte correctly.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * coding.c (encode_coding_utf_8): Initialize produced_chars to 0.
 +      (decode_coding_utf_16): Fix converting high and low bytes to code-point.
 +      (encode_coding_utf_16): Substitute coding->default_char for
 +      non-Unicode characters.
 +      (decode_coding): Don't call record_insert here.
 +      (setup_coding_system): Initialize `surrogate' of
 +      coding->spec.utf_16 to 0.
 +      (EMIT_ONE_BYTE): Fix for multibyte case.
 +
 +      * insdel.c (insert_from_gap): Call record_insert.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      * casefiddle.c (casify_region): Fix multibyte case.
 +
 +      * character.c (c_string_width): Add return type `int'.
 +      (char_string_with_unification): Delete arg ADVANCED.
 +
 +      * character.h (CHAR_VALID_P): Don't call CHARACTERP.
 +      (CHAR_STRING): Adjust for the change of char_string_with_unification.
 +      (CHAR_STRING_ADVANCE): Make it do-while statement.
 +
 +      * chartab.c (sub_char_table_set_range): Optimize for the case
 +      DEPTH == 3.  Add workaround code for a GCC optimization bug.
 +
 +      * charset.c (parse_charset_map): Remove an unused variable.
 +
 +      * coding.c: Delete unused variables.
 +
 +      * fileio.c (Finsert_file_contents): Set coding_system to Qnil
 +      earlier.  If inserted is zero and the coding system doesn't
 +      require flushing, don't call decode_coding_gap.
 +
 +      * syntax.h (SET_RAW_SYNTAX_ENTRY): Don't call make_number.
 +
 +2008-02-01  Kenichi Handa  <handa@m17n.org>
 +
 +      The following changes are for using Unicode as an internal
 +      character model, and use UTF-8 format for buffer/string
 +      representation.
 +
 +      * .gdbinit (xchartable): Adjust for the change of char table structure.
 +      (xsubchartable, xcoding, xcharset, xcurbuf): New commands.
 +
 +      * Makefile.in (obj): Add character.o and chartab.o.
 +      (lisp, shortlisp): Remove utf-8.elc.
 +      (*.o): For many files, change dependency on charset.h to
 +      character.h, and add dependency on character.h.
 +      (character.o, chartab.o): New targets.
 +
 +      * abbrev.c, bytecode.c, casefiddle.c, cmds.c, dispnew.c, doc.c:
 +      * doprnt.c, dosfns.c, frame.c, marker.c, minibuf.c, msdos.c:
 +      * w16select.c, w32bdf.c, w32console.c: Include "character.h" instead
 +      of "charset.h".
 +
 +      * dired.c, filelock.c: Include "character.h".
 +
 +      * alloc.c: Include "character.h" instead of "charset.h".
 +      (Fmake_char_table, make_sub_char_table): Move to chartab.c.
 +      (syms_of_alloc): Remove defsubr for Smake_char_table.
 +
 +      * buffer.c: Include "character.h" instead of "charset.h", don't
 +      include "coding.h".
 +      (Fset_buffer_multibyte): Adjust for UTF-8.
 +
 +      * buffer.h: EXFUN Fbuffer_live_p.
 +
 +      * callproc.c: Include "character.h" instead of "charset.h".
 +      (Fcall_process): Big change for the new code-conversion APIs.
 +
 +      * casetab.c: Include "character.h" instead of "charset.h".
 +      (set_canon, set_identity, shuffle): Adjust for the new
 +      map_char_table spec.
 +      (init_casetab_once): Call CHAR_TABLE_SET instead of directly
 +      accessing the char table structure.
 +
 +      * chartab.c: New file that implements char table.
 +
 +      * category.c: Include "character.h".
 +      (copy_category_entry): New function.
 +      (copy_category_table): Call map_char_table and copy_category_entry.
 +      (Fmake_category_table): Initialize all top-level slots.
 +      (char_category_set): New function.
 +      (modify_lower_category_set): Delete.
 +      (Fmodify_category_entry): Call char_table_ref_and_range.
 +
 +      * category.h (CATEGORY_SET): Just call char_category_set.
 +
 +      * ccl.c: Include "character.h".
 +      (Qccl, Qcclp): New variables.
 +      (CCL_WRITE_CHAR): Alway treat the arg CH as a character even if
 +      it's less than 256.
 +      (CCL_WRITE_MULTIBYTE_CHAR): Delete.
 +      (CCL_WRITE_STRING, CCL_READ_CHAR): Adjust for the change of SRC
 +      and DST type.
 +      (ccl_driver): Change types of argument, adjust code accordingly.
 +      (Fccl_execute, Fccl_execute_on_string): Adjust for the change of
 +      ccl_driver.
 +      (syms_of_ccl): Intern and staticpro Qccl and Qcclp.
 +
 +      * ccl.h (struct ccl_program): Delete members eol_type and multibyte.
 +      New members src_multibyte, dst_multibyte, consumed, and produced.
 +      (struct ccl_spec): Delete members decoder and encoder.  New member ccl.
 +      (CODING_SPEC_CCL_PROGRAM): New macro.
 +      (ccl_driver): Update prototype.
 +      (Qccl, Qcclp, Fccl_program_p): Extern them.
 +      (CHECK_CCL_PROGRAM): New macro.
 +
 +      * character.c, character.h, chartab.c: New files.
 +
 +      * charset.c: Mostly re-written.  Move character and multibyte sequence
 +      handling codes to character.c.
 +
 +      * charset.h: Mostly re-written.  Move character and multibyte sequence
 +      handling codes to character.h.
 +
 +      * coding.c, coding.h: Mostly re-written.
 +
 +      * composite.c: Include "character.h" instead of "charset.h".
 +      (CHAR_WIDTH): Move to character.h.
 +      (HASH_KEY, HASH_VALUE): Delete.
 +
 +      * composite.h (enum composition_method): Change order of enumeration
 +      symbols.
 +
 +      * data.c: Include "character.h" instead of "charset.h".
 +      (Faref): Call CHAR_TABLE_REF for a char table.
 +      (Faset): Call CHAR_TABLE_SET for a char table.
 +
 +      * dispextern.h (free_realized_face, check_face_attribytes)
 +      (generate_ascii_font): Extern them.
 +      (free_realized_multibyte_face): Delete extern.
 +
 +      * disptab.h (DISP_CHAR_VECTOR): Adjust for the change of char
 +      table structure.
 +
 +      * editfns.c: Include "character.h" instead of "charset.h".
 +      (Fchar_to_string): Always call CHAR_STRING.
 +
 +      * emacs.c (main): Call init_charset_once, init_charset,
 +      syms_of_chartab, and syms_of_character.
 +
 +      * fileio.c: Include "character.h" instead of "charset.h".
 +      (Finsert_file_contents): Big change for the new code-conversion API.
 +      (choose_write_coding_system, Fwrite_region): Likewise.
 +      (build_annotations_2): Delete.
 +      (e_write): Big change for the new code-conversion API.
 +
 +      * fns.c: Include "character.h" instead of "charset.h".
 +      (copy_sub_char_table): Move to chartab.c.
 +      (Fcopy_sequence): Call copy_char_table for a char table.
 +      (concat): Delete codes calling count_multibyte.
 +      (string_char_to_byte, string_byte_to_char): Adjust for the new
 +      multibyte form.
 +      (internal_equal): Adjust for the change of char table structure.
 +      (Fchar_table_subtype, Fchar_table_parent, Fset_char_table_parent)
 +      (Fchar_table_extra_slot, Fset_char_table_extra_slot)
 +      (Fchar_table_range, Fset_char_table_range, Fset_char_table_default)
 +      (char_table_translate, optimize_sub_char_table)
 +      (Foptimize_char_table, map_char_table, Fmap_char_table): Move to
 +      chartab.c.
 +      (char_table_ref_and_index): Delete.
 +      (HASH_KEY, HASH_VALUE): Move to lisp.h.
 +      (Fmd5): Call preferred_coding_system instead of accessing
 +      Vcoding_category_list.  Adjust for the new code-conversion API.
 +      (syms_of_fns): Move defsubr for char table related functions to
 +      chartab.c.
 +
 +      * fontset.c: Mostly re-written.
 +
 +      * fontset.h (struct font_info): Change type of the member encoding_type.
 +      (enum FONT_SPEC_INDEX): New enum.
 +      (fontset_font_pattern, fs_load_font): Update prototype.
 +      (FS_LOAD_FONT): Adjust for the change of fs_load_font.
 +
 +      * indent.c: Include "character.h" instead of "charset.h".
 +      (MULTIBYTE_BYTES_WIDTH): Call CHAR_WIDTH instead of WIDTH_BY_CHAR_HEAD.
 +
 +      * insdel.c: Include "character.h" instead of "charset.h".
 +      (copy_text): Don't refer to Vnonascii_translation_table.
 +      (insert_from_gap): New function.
 +
 +      * keyboard.c: Include "character.h" instead of "charset.h".
 +      (command_loop_1): Never call direct_output_forward_char before
 +      a non-ASCII character.
 +      (read_char): If Vkeyboard_translate_table is a char table, always
 +      translate a character.
 +
 +      * keymap.c: Include "character.h".
 +      (store_in_keymap): Handle the case that IDX is a cons.
 +      (Fdefine_key): Handle the case that KEY is a cons and the car part
 +      is also a cons (range).
 +      (push_key_description): Adjust for the new character code.
 +      (describe_vector): Call describe_char_table for a char table.
 +      (describe_char_table): New function.
 +
 +      * keymap.h (describe_char_table): Extern it.
 +
 +      * lisp.h (enum pvec_type): New member PVEC_SUB_CHAR_TABLE.
 +      (XSUB_CHAR_TABLE, XSETSUB_CHAR_TABLE): New macros.
 +      (CHAR_TABLE_ORDINARY_SLOTS, CHAR_TABLE_SINGLE_BYTE_SLOTS)
 +      (SUB_CHAR_TABLE_ORDINARY_SLOTS, SUB_CHAR_TABLE_STANDARD_SLOTS):
 +      Delete.
 +      (CHAR_TABLE_REF, CHAR_TABLE_SET): Adjust for the new char table
 +      structure.
 +      (CHAR_TABLE_TRANSLATE): Just call char_table_translate.
 +      (CHARTAB_SIZE_BITS_0, CHARTAB_SIZE_BITS_1, CHARTAB_SIZE_BITS_2)
 +      (CHARTAB_SIZE_BITS_3): New macros.
 +      (chartab_size): Extern it.
 +      (struct Lisp_Char_Table): Re-design.
 +      (struct Lisp_Sub_Char_Table): New structure.
 +      (HASH_KEY, HASH_VALUE): Move from fns.c.
 +      (CHARACTERBITS): Define as 22.
 +      (GLYPH_MASK_FACE, GLYPH_MASK_CHAR): Adjust for the above change.
 +      (SUB_CHAR_TABLE_P): Check PVEC_CHAR_TABLE.
 +      (GC_SUB_CHAR_TABLE_P): New macro.
 +      (Fencode_coding_string, Fdecode_coding_string): Update EXFUN.
-   Copyright (C) 2007, 2008, 2009, 2010
-     Free Software Foundation, Inc.
++      (code_convert_string_norecord): Delete extern.
 +      (init_character_once, syms_of_character, init_charset)
 +      (syms_of_composite, Qeq, Fmakehash, insert_from_gap): Extern them.
 +
 +      * lread.c: Include "character.h".
 +      (read_multibyte): New arg NBYTES.
 +      (read_escape): Change the meaning of returned *BYTEREP.
 +      (to_multibyte): Delete.
 +      (read1): Adjust the handling of char table and string.
 +
 +      * print.c: Include "character.h" instead of "charset.h".
 +      (print_string): Convert 8-bit raw bytes to octal form by
 +      string_escape_byte8.
 +      (print_object): Adjust for the new multibyte form.  Print 8-bit
 +      raw bytes always in octal form.  Handle sub char table correctly.
 +
 +      * process.c: Include "character.h" instead of "charset.h".
 +      (read_process_output, send_process): Adjust for the new
 +      code-conversion API.
 +
 +      * puresize.h (BASE_PURESIZE): Increase.
 +
 +      * regex.c: Include "character.h" instead of "charset.h".
 +      (BYTE8_TO_CHAR, CHAR_BYTE8_P) [not emacs]: New dummy macros.
 +      (regex_compile): Accept a range whose starting and ending
 +      character have different leading bytes.
 +      (analyse_first): Adjust for the above change.
 +
 +      * search.c: Include "character.h" instead of "charset.h".
 +      (search_buffer, boyer_moore): Adjust for the new multibyte form.
 +      (Freplace_match): Adjust for the change of multibyte_char_to_unibyte.
 +
 +      * syntax.c: Include "character.h" instead of "charset.h".
 +      (syntax_parent_lookup): Delete.
 +      (Fmodify_syntax_entry): Accept a cons as CHAR.
 +      (skip_chars): Adjust for the new multibyte form.
 +      (init_syntax_once): Call char_table_set_range instead of directly
 +      accessing the structure of a char table.
 +
 +      * syntax.h (SET_RAW_SYNTAX_ENTRY): Call CHAR_TABLE_SET.
 +      (SYNTAX_ENTRY_FOLLOW_PARENT): Delete macro.
 +      (SET_RAW_SYNTAX_ENTRY_RANGE): New macro.
 +      (SYNTAX_ENTRY_INT): Call CHAR_TABLE_REF.
 +
 +      * term.c: Include "buffer.h" and "character.h".
 +      (encode_terminal_code, write_glyphs): Adjust for the new
 +      code-conversion API.
 +      (produce_glyphs): Call CHAR_WIDTH instead of CHARSET_WIDTH.
 +
 +      * w32term.c (x_new_font): Adjust for the change of FS_LOAD_FONT.
 +
 +      * xdisp.c: Include "character.h".
 +      (get_next_display_element): Adjust for the new multibyte form.
 +      (disp_char_vector): Adjust for the new char table structure.
 +      (decode_mode_spec_coding): Adjust for the new structure of
 +      coding system.
 +      (decode_mode_spec): Adjust for the new code-conversion API.
 +
 +      * xfaces.c: Include "character.h" instead of "charset.h".
 +      (load_face_font): Adjust for the change of choose_face_font and
 +      FS_LOAD_FONT.
 +      (generate_ascii_font): New function.
 +      (set_lface_from_font_name): Adjust for the change of FS_LOAD_FONT.
 +      (set_font_frame_param): Adjust for the change of choose_face_font.
 +      (free_realized_face): Make it public.
 +      (free_realized_faces_for_fontset): Rename from
 +      free_realized_multibyte_face.  Free also faces realized for ASCII.
 +      (choose_face_font): Change arguments.  Adjust for the change of
 +      fontset_font_pattern and FS_LOAD_FONT.
 +
 +      * xfns.c: Include "character.h".
 +      (x_encode_text): Adjust for the new code-conversion API.
 +
 +      * xselect.c: Don't include "charset.h".
 +      (selection_data_to_lisp_data): Adjust for the new code conversion API.
 +
 +      * xterm.c: Include "character.h".
 +      (x_encode_char): New argument CHARSET.  Change caller.
 +      (x_get_char_face_and_encoding, x_get_glyph_face_and_encoding):
 +      Call ENCODE_CHAR instead of SPLIT_CHAR.
 +      (x_produce_glyphs): Don't check Vnonascii_translation_table Call
 +      CHAR_WIDTH instead of CHARSET_WIDTH.
 +      (XTread_socket): Adjust for the new code-conversion API.
 +      (x_new_font): Adjust for the change of FS_LOAD_FONT.
 +      (x_load_font): Adjust for the change of struct font.
 +
 +2008-02-01  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * xfaces.c (face_at_buffer_position): Remove unused vars.
 +
 +2008-02-01  Kenichi Handa  <handa@ni.aist.go.jp>
 +
 +      * ccl.c (CCL_WRITE_CHAR, CCL_WRITE_MULTIBYTE_CHAR):
 +      Fix overflow checking.
 +
 +2008-02-01  Kenichi Handa  <handa@ni.aist.go.jp>
 +
 +      * ccl.c (CCL_WRITE_CHAR, CCL_WRITE_MULTIBYTE_CHAR, ccl_driver):
 +      Cancel previous change.
 +
 +2008-01-31  Kenichi Handa  <handa@ni.aist.go.jp>
 +
 +      * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when
 +      ccl->eight_bit_control.  Fix check for buffer overflow.
 +      (CCL_WRITE_MULTIBYTE_CHAR): Fix check for buffer overflow.
 +      (ccl_driver): Initialize extra_bytes to 0.
 +
 +2008-01-31  Kenichi Handa  <handa@ni.aist.go.jp>
 +
 +      * keyboard.c (make_ctrl_char): If C is a multibyte character, just
 +      return it ORed with ctrl_modifier.
 +
 +2008-01-29  Miles Bader  <miles@gnu.org>
 +
 +      * macterm.c (XTset_vertical_scroll_bar): Fix merge mistake.
 +
 +2008-01-28  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32.c (stat): Don't double check for networked drive.
 +
 +2008-01-28  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * window.c (run_window_configuration_change_hook): New function.
 +      Code extracted from set_window_buffer.  Set the selected frame.
 +      (set_window_buffer): Use it.
 +      * window.h (run_window_configuration_change_hook): Declare.
 +      * dispnew.c (change_frame_size_1): Use it instead of set-window-buffer.
 +
 +      * keyboard.c (read_char): Yet another int/Lisp_Object mixup (YAILOM).
 +
 +2008-01-27  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * Makefile.in: Remove references to unused macros.
 +
 +2008-01-26  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * w32.c (g_b_init_get_sid_sub_authority)
 +      (g_b_init_get_sid_sub_authority_count): New static variables.
 +      (GetSidSubAuthority_Proc, GetSidSubAuthorityCount_Proc): New typedefs.
 +      (get_sid_sub_authority, get_sid_sub_authority_count): New functions.
 +      (init_user_info): Use them to retrieve uid and gid.
 +      Use 500/513, the Windows defaults, as Administrator's uid/gid.
 +      (fstat): Use pw_uid and pw_gid from the_passwd structure for
 +      st_uid and st_gid of the file.
 +
 +2008-01-26  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32.c (logon_network_drive): New function.
 +      (stat): Use it.
 +
 +2008-01-26  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * xdisp.c (pos_visible_p): Handle the case where charpos falls on
 +      invisible text covered with an ellipsis.
 +
 +2008-01-25  Richard Stallman  <rms@gnu.org>
 +
 +      * xdisp.c (redisplay_window): Run Qwindow_text_change_functions and
 +      jump back to beginning.  Move some other initializations after that.
 +      (Qwindow_text_change_functions, Vwindow_text_change_functions):
 +      New variables.
 +      (syms_of_xdisp): Init them.
 +
 +      * keyboard.c (read_char): Restore echo_message_buffer after redisplay.
 +
 +      * buffer.c (reset_buffer_local_variables):
 +      Implement `permanent-local-hook'.
 +      (Qpermanent_local_hook): New variable.
 +      (syms_of_buffer): Init and staticpro it.
 +
 +2008-01-25  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * dbusbind.c (xd_retrieve_arg): Pacify GCC on x86_64 GNU/Linux.
 +
 +2008-01-25  Thien-Thi Nguyen  <ttn@gnuvola.org>
 +
 +      * fns.c (Fclrhash): Return TABLE.
 +
 +2008-01-23  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
 +
 +      * macterm.c (x_scroll_bar_create): Initialize bar->redraw_needed_p.
 +      (XTset_vertical_scroll_bar): Redraw scroll bar if bar->redraw_needed_p
 +      is set even without positional changes.
 +      (x_scroll_bar_clear): Set bar->redraw_needed_p.
 +
 +      * macterm.h (struct scroll_bar): New member `redraw_needed_p'.
 +
 +2008-01-23  Jason Rumney  <jasonr@gnu.org>
 +
 +      * xterm.c (handle_one_xevent): Revert to counting chars not bytes.
 +
 +      * w32term.c (w32_read_socket) <WM_CHAR>: Decode characters outside
 +      the unicode range available in MULE by locale-coding-system.
 +      Improve dbcs lead byte detection.  Set event timestamp and modifiers
 +      earlier.
 +
 +2008-01-23  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
 +
 +      * mac.c (mac_emacs_pid) [MAC_OSX]: New variable.
 +      [MAC_OSX] (init_mac_osx_environment): Initialize it.
 +      [MAC_OSX] (mac_try_close_socket) [SELECT_USE_CFSOCKET]: Return 0
 +      when used on child processes.
 +
 +2008-01-21  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * dbusbind.c (Fdbus_method_return_internal): Rename from
 +      Fdbus_method_return.
 +      (Fdbus_unregister_object): Move to dbus.el.
 +      (Fdbus_call_method, Fdbus_method_return_internal)
 +      (Fdbus_send_signal): Improve debug messages.
 +
 +2008-01-20  Martin Rudalics  <rudalics@gmx.at>
 +
 +      * undo.c (undo_inhibit_record_point): New variable.
 +      (syms_of_undo): Initialize it.
 +      (record_point): Don't record point when undo_inhibit_record_point
 +      is set.
 +
 +2008-01-19  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * process.c (list_processes_1): Don't use SCHARS on a nil buffer name.
 +
 +      * xdisp.c (Qauto_hscroll_mode): New var.
 +      (syms_of_xdisp): Initialize it.
 +      (hscroll_window_tree): Use it to lookup `auto-hscroll-mode' in each
 +      window's buffer.
 +      (hscroll_windows): Don't check automatic_hscrolling_p here.
 +
 +      * window.c (set_window_buffer): Don't unnecessarily reset hscroll and
 +      vscroll if we're setting window-buffer to the value it already has.
 +
 +2008-01-18  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * m/intel386.h: Remove references to XENIX.
 +
 +2008-01-17  Andreas Schwab  <schwab@suse.de>
 +
 +      * m/amdx86-64.h (START_FILES, LIB_STANDARD): Use HAVE_LIB64_DIR
 +      instead of HAVE_X86_64_LIB64_DIR.
 +      * m/ibms390x.h (START_FILES, LIB_STANDARD): Likewise.
 +
 +2008-01-17  Glenn Morris  <rgm@gnu.org>
 +
 +      * m/ibms390x.h (START_FILES, LIB_STANDARD): Adjust value according
 +      to HAVE_X86_64_LIB64_DIR.
 +
 +2008-01-16  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * s/irix3-3.h:
 +      * s/irix4-0.h:
 +      * s/386-ix.h:
 +      * s/domain.h:
 +      * s/hpux9-x11r4.h:
 +      * s/hpux9shxr4.h: Remove files for systems no longer supported.
 +
 +      * sysdep.c: Remove code containing references to symbols defined
 +      by unsupported systems.
 +
 +2008-01-16  Glenn Morris  <rgm@gnu.org>
 +
 +      * coding.c (select-safe-coding-system-function): Doc fix.
 +
 +2008-01-15  Glenn Morris  <rgm@gnu.org>
 +
 +      * config.in: Revert 2008-01-13 change: this is a generated file.
 +
 +2008-01-13  Tom Tromey  <tromey@redhat.com>
 +
 +      * lisp.h: Fix typo.
 +
 +2008-01-13  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * m/sequent-ptx.h:
 +      * m/sequent.h:
 +      * s/ptx.h:
 +      * s/ptx4-2.h:
 +      * s/ptx4.h: Remove files for systems no longer supported.
 +
 +      * callproc.c (Fcall_process): Fix previous change.
 +
 +2008-01-13  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * unexsunos4.c: Remove file, system not supported anymore.
 +
 +      * m/mips.h:
 +      * m/intel386.h:
 +      * callproc.c:
 +      * config.in:
 +      * ecrt0.c:
 +      * emacs.c:
 +      * fileio.c:
 +      * frame.c:
 +      * getpagesize.h:
 +      * keyboard.c:
 +      * lread.c:
 +      * process.c:
 +      * puresize.h:
 +      * sysdep.c:
 +      * systty.h:
 +      * syswait.h:
 +      * unexec.c:
 +      * xdisp.c:
 +      * alloc.c: Remove code containing references to symbols defined by
 +      unsupported systems.
 +
 +2008-01-11  Kenichi Handa  <handa@ni.aist.go.jp>
 +
 +      * coding.c (detect_coding_mask): Fix previous change.
 +
 +2008-01-09  Kenichi Handa  <handa@ni.aist.go.jp>
 +
 +      * coding.c (detect_coding_iso2022): New arg
 +      latin_extra_code_state.  Allow Latin extra codes only
 +      when *latin_extra_code_state is nonzero.
 +      (detect_coding_mask): If there is a NULL byte, detect the encoding
 +      as UTF-16 or binary.  If Latin extra codes exist, detect the
 +      encoding as ISO-2022 only when there's no other proper encoding is
 +      found.
 +
 +2008-01-08  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
 +
 +      * frame.c (Fmake_terminal_frame): Use #ifdef MAC_OS8 instead of
 +      #ifdef MAC_OS.
 +
 +2008-01-08  Richard Stallman  <rms@gnu.org>
 +
 +      * fileio.c (Ffile_name_directory, Fexpand_file_name): Doc fixes.
 +
 +2008-01-06  Nick Roberts  <nickrob@snap.net.nz>
 +
 +      * keyboard.c (parse_menu_item): Don't enclose key bindings on
 +      menu bar in parentheses.
 +
 +2008-01-06  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * m/7300.h:
 +      * m/acorn.h:
 +      * m/alliant-2800.h:
 +      * m/alliant.h:
 +      * m/alliant1.h:
 +      * m/alliant4.h:
 +      * m/altos.h:
 +      * m/amdahl.h:
 +      * m/apollo.h:
 +      * m/att3b.h:
 +      * m/aviion-intel.h:
 +      * m/aviion.h:
 +      * m/celerity.h:
 +      * m/clipper.h:
 +      * m/cnvrgnt.h:
 +      * m/convex.h:
 +      * m/cydra5.h:
 +      * m/delta88k.h:
 +      * m/dpx2.h:
 +      * m/dual.h:
 +      * m/elxsi.h:
 +      * m/f301.h:
 +      * m/gould-np1.h:
 +      * m/gould.h:
 +      * m/i860.h:
 +      * m/ibmps2-aix.h:
 +      * m/ibmrt-aix.h:
 +      * m/ibmrt.h:
 +      * m/irist.h:
 +      * m/is386.h:
 +      * m/isi-ov.h:
 +      * m/mega68.h:
 +      * m/mg1.h:
 +      * m/news-r6.h:
 +      * m/news-risc.h:
 +      * m/news.h:
 +      * m/nh3000.h:
 +      * m/nh4000.h:
 +      * m/ns16000.h:
 +      * m/ns32000.h:
 +      * m/nu.h:
 +      * m/orion.h:
 +      * m/orion105.h:
 +      * m/paragon.h:
 +      * m/pfa50.h:
 +      * m/plexus.h:
 +      * m/pyramid.h:
 +      * m/pyrmips.h:
 +      * m/sh3el.h:
 +      * m/sps7.h:
 +      * m/sr2k.h:
 +      * m/stride.h:
 +      * m/sun1.h:
 +      * m/sun2.h:
 +      * m/sun3-68881.h:
 +      * m/sun3-fpa.h:
 +      * m/sun3-soft.h:
 +      * m/sun3.h:
 +      * m/sun386.h:
 +      * m/symmetry.h:
 +      * m/tad68k.h:
 +      * m/tahoe.h:
 +      * m/targon31.h:
 +      * m/tek4300.h:
 +      * m/tekxd88.h:
 +      * m/tower32.h:
 +      * m/tower32v3.h:
 +      * m/ustation.h:
 +      * m/wicat.h:
 +      * m/xps100.h:
 +      * s/cxux.h:
 +      * s/cxux7.h:
 +      * s/dgux.h:
 +      * s/dgux4.h:
 +      * s/dgux5-4-3.h:
 +      * s/dgux5-4r2.h:
 +      * s/esix.h:
 +      * s/esix5r4.h:
 +      * s/hiuxmpp.h:
 +      * s/hiuxwe2.h:
 +      * s/iris3-5.h:
 +      * s/iris3-6.h:
 +      * s/isc2-2.h:
 +      * s/isc3-0.h:
 +      * s/isc4-0.h:
 +      * s/isc4-1.h:
 +      * s/newsos5.h:
 +      * s/newsos6.h:
 +      * s/osf1.h:
 +      * s/osf5-0.h:
 +      * s/riscix1-1.h:
 +      * s/riscix12.h:
 +      * s/sco4.h:
 +      * s/sco5.h:
 +      * s/sunos4-0.h:
 +      * s/sunos4-1.h:
 +      * s/sunos413.h:
 +      * s/sunos4shr.h:
 +      * s/umax.h:
 +      * s/unipl5-2.h:
 +      * s/xenix.h:
 +      * cxux-crt0.s:
 +      * unexapollo.c:
 +      * unexconvex.c:
 +      * unexenix.c:
 +      * unexsni.c: Remove files for systems no longer supported.
 +
 +      * m/intel386.h: Remove references to unsupported systems.
 +
 +      * w32.c (get_emacs_configuration): Remove reference to i860.
 +
 +      * sysdep.c: Remove dead code.
 +
 +2008-01-05  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * s/rtu.h:
 +      * m/masscomp.h: Remove files.  Platform is obsolete.
 +
 +2008-01-04  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * dbusbind.c (Fdbus_method_return): New function.
 +      (xd_read_message): Add the serial number to the event.
 +      (Fdbus_register_method): Activate the function.
 +
 +2008-01-03  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * keyboard.c (read_key_sequence): Fix typo.
 +
 +2008-01-03  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * dbusbind.c (all): Replace XCAR by CAR_SAFE and XCDR by CDR_SAFE.
 +      (xd_signature, xd_append_arg): Handle element type detection for
 +      empty arrays.
 +      (Fdbus_call_method, Fdbus_send_signal): Undo type casting for
 +      SDATA () calls; this must be solved more general.
 +      (Fdbus_register_signal): Use SBYTES instead of strlen.
 +
 +2008-01-03  Magnus Henoch  <magnus@zemdatav>
 +
 +      * dbusbind.c (xd_append_arg): Use unsigned char instead of
 +      unsigned int for byte values (necessary for big-endian platform).
 +      (Fdbus_call_method): Handle the case of no returned arguments.
 +
 +2007-12-31  Tom Tromey  <tromey@redhat.com>  (tiny change)
 +
 +      * dbusbind.c (xd_read_message): Use non-static input_event struct.
 +
 +2007-12-31  Magnus Henoch  <mange@freemail.hu>
 +
 +      * dbusbind.c (xd_signature): Signature of variant is just "v".
 +
 +2007-12-30  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * dbusbind.c: Fix several errors and compiler warnings.
 +      Reported by Tom Tromey <tromey@redhat.com>.
 +      (XD_ERROR, XD_DEBUG_MESSAGE)
 +      (XD_DEBUG_VALID_LISP_OBJECT_P): Wrap code with "do ... while (0)".
 +      (xd_append_arg): Part for basic D-Bus types rewritten.
 +      (xd_retrieve_arg): Split implementation of DBUS_TYPE_BYTE and
 +      DBUS_TYPE_(U)INT16.  Don't call XD_DEBUG_MESSAGE with "%f" if not
 +      appropriate.
 +      (xd_read_message): Return Qnil.  Don't signal an error; it is not
 +      useful during event reading.
 +      (Fdbus_register_signal): Signal an error if the check for
 +      FUNCTIONP fails.
 +      (Fdbus_register_method): New function.  The implementation is not
 +      complete, the call of the function signals an error therefore.
 +      (Fdbus_unregister_object): New function, renamed from
 +      Fdbus_unregister_signal.  The initial check signals an error, if
 +      the object is not well formed.
 +
 +2007-12-30  Richard Stallman  <rms@gnu.org>
 +
 +      * textprop.c (get_char_property_and_overlay):
 +      Signal error if POSITION is out of range in a buffer.
 +
 +2007-12-29  Martin Rudalics  <rudalics@gmx.at>
 +
 +      * w32fns.c (Fx_create_frame): Make copy of frame parameters
 +      because the original parameters are in pure storage now.
 +
 +2007-12-24  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
 +
 +      * xdisp.c (phys_cursor_in_rect_p): Check if cursor is in fringe area.
 +
 +2007-12-22  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * callint.c (syms_of_callint) <command-history>: Add reference to
 +      history-length in the doc string.
 +
 +2007-12-17  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32fns.c (w32_wnd_proc) <WM_KEYDOWN>: Cast char to unsigned
 +      before passing as wParam.
 +
 +2007-12-22  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * dbusbind.c (xd_retrieve_arg): Handle DBUS_TYPE_BYTE,
 +      DBUS_TYPE_INT16, DBUS_TYPE_UINT16, DBUS_TYPE_INT64,
 +      DBUS_TYPE_UINT64, DBUS_TYPE_DOUBLE and DBUS_TYPE_SIGNATURE.
 +      Return float when DBUS_TYPE_INT32 or DBUS_TYPE_UINT32 do not fit
 +      as number.
 +      (Fdbus_call_method): Fix docstring.
 +
 +2007-12-21  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * dbusbind.c (XD_BASIC_DBUS_TYPE, XD_DBUS_TYPE_P, XD_NEXT_VALUE):
 +      New macros.
 +      (XD_SYMBOL_TO_DBUS_TYPE): Rename from XD_LISP_SYMBOL_TO_DBUS_TYPE.
 +      (XD_OBJECT_TO_DBUS_TYPE): Rename from XD_LISP_OBJECT_TO_DBUS_TYPE.
 +      Simplify.
 +      (xd_signature): New function.
 +      (xd_append_arg): Compute also signatures.  Major rewrite.
 +      (xd_retrieve_arg): Make debug messages friendly.
 +      (Fdbus_call_method, Fdbus_send_signal): Extend docstring.
 +      Check for signatures of arguments.
 +
 +2007-12-19  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * dbusbind.c (QCdbus_type_byte, QCdbus_type_boolean)
 +      (QCdbus_type_int16, QCdbus_type_uint16, QCdbus_type_int32)
 +      (QCdbus_type_uint32, QCdbus_type_int64, QCdbus_type_uint64)
 +      (QCdbus_type_double, QCdbus_type_string, QCdbus_type_object_path)
 +      (QCdbus_type_signature, QCdbus_type_array, QCdbus_type_variant)
 +      (QCdbus_type_struct, QCdbus_type_dict_entry): New D-Bus type symbols.
 +      (XD_LISP_SYMBOL_TO_DBUS_TYPE): New macro.
 +      (XD_LISP_OBJECT_TO_DBUS_TYPE): Add compound types.
 +      (xd_retrieve_value): Remove.  Functionality included in ...
 +      (xd_append_arg): New function.
 +      (Fdbus_call_method, Fdbus_send_signal): Apply it.
 +
 +2007-12-16  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * dbusbind.c (top): Include <stdio.h>.
 +      (Fdbus_call_method, Fdbus_send_signal): Apply type cast in
 +      dbus_message_new_method_call and dbus_message_new_signal.
 +      (Fdbus_register_signal): Rename unique_name to uname.
 +      Check handler for FUNCTIONP instead of CHECK_SYMBOL.  Handle case of
 +      non-existing unique name.  Fix typos in matching rule.  Return an
 +      object which is useful in Fdbus_unregister_signal.
 +      (Fdbus_unregister_signal): Reimplementation, in order to remove
 +      only the corresponding entry.
 +      (Vdbus_registered_functions_table): Change the order of entries.
 +      Apply these changes in xd_read_message and Fdbus_register_signal.
 +
 +2007-12-16  Andreas Schwab  <schwab@suse.de>
 +
 +      * fileio.c (Finsert_file_contents): Fix overflow check to not
 +      depend on undefined integer overflow.
 +
 +2007-12-14  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32term.c (w32_read_socket): Use MULTIBYTE_CHAR_KEYSTROKE_EVENT
 +      for characters above 127.
 +
 +2007-12-13  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32fns.c (w32_wnd_proc, Fw32_reconstruct_hot_key): Range check
 +      before dereferencing array.
 +      (lookup_vk_code): Remove zero comparison.
 +
 +2007-12-14  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * dbusbind.c (xd_retrieve_value, xd_retrieve_arg)
 +      (Fdbus_call_method, Fdbus_send_signal, xd_read_message):
 +      Use `unsigned int' instead of `uint'.
 +      (xd_read_message, Fdbus_register_signal): Split expressions into
 +      multiple lines before operators "&&" and "||", according to the
 +      GNU Coding Standards.
 +
 +2007-12-14  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * dispextern.h (WINDOWS_NT): Fix incorrect spelling of WINDOWSNT.
 +
 +2007-12-12  Juri Linkov  <juri@jurta.org>
 +
 +      * buffer.c (Frename_buffer): In interactive spec replace
 +      `read-buffer' with `read-string' that uses `buffer-name-history'
 +      as history, and the current buffer's name as default.
 +
 +2007-12-10  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * keyboard.c (Fcommand_execute): Call Qcall_interactively instead of
 +      manipulating the backtrace manually.
 +      (make_lispy_event): Merge the ASCII and MULTIBYTE cases.
 +      (struct backtrace, backtrace_list): Remove.
 +      (command_loop_1): Remove dead var `no_direct'.
 +
 +      * buffer.c (reset_buffer_local_variables): If permanent_too is 0, also
 +      preserve non-built-in buffer-local variables.
 +      (Fkill_all_local_variables): Don't re-create&re-set permanent
 +      buffer-local variables.
 +
 +2007-12-09  Juri Linkov  <juri@jurta.org>
 +
 +      * buffer.c (Frename_buffer): Change interactive spec from "s" to
 +      Lisp code that uses `read-buffer' with current buffer as default.
 +
 +2007-12-08  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * dbusbind.c (xd_read_message): Generate an event for every
 +      registered handler.  There might be several handlers registered
 +      for the same signal.
 +      (Fdbus_register_signal): Don't overwrite a registration for the
 +      same signal.  Add a new registration if handlers are different.
 +      (Vdbus_registered_functions_table): Rework doc string.
 +
 +2007-12-07  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * dbusbind.c (Fdbus_get_unique_name, xd_read_message)
 +      (Fdbus_register_signal): Use DBUS_MAXIMUM_NAME_LENGTH and
 +      DBUS_MAXIMUM_MATCH_RULE_LENGTH for string lengths.
 +      (Fdbus_call_method, Fdbus_send_signal, Fdbus_register_signal):
 +      Unify argument lists.
 +      (xd_read_message, Fdbus_register_signal): Reorder and extend event
 +      arguments and hash table keys.  Use unique name for service.
 +      (Fdbus_unregister_signal): Remove checks.
 +      (Vdbus_registered_functions_table): Fix doc string.
 +
 +2007-12-05  Magnus Henoch  <mange@freemail.hu>
 +
 +      * process.c (make_process): Initialize pty_flag to 0.
 +
 +2007-12-05  Jason Rumney  <jasonr@gnu.org>
 +
 +      * image.c (xbm_load) [WINDOWSNT]: Shuffle the bits of directly
 +      specified XBMs.
 +
 +2007-12-05  Richard Stallman  <rms@gnu.org>
 +
 +      * xdisp.c (syms_of_xdisp) <scroll-conservatively>: Doc fix.
 +
 +2007-12-05  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
 +
 +      * mac.c (cfsockets_for_select) [MAC_OSX && SELECT_USE_CFSOCKET]:
 +      New variable.
 +      (mac_try_close_socket) [MAC_OSX]: New function.
 +      [MAC_OSX] (sys_select) [SELECT_USE_CFSOCKET]:
 +      Update cfsockets_for_select.  Replace invalid CFRunLoop source.
 +
 +      * sysdep.c (emacs_close) [MAC_OSX && HAVE_CARBON]:
 +      Use mac_try_close_socket.
 +
 +2007-12-05  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
 +
 +      * unexmacosx.c (unrelocate): New argument BASE.  Use it instead of
 +      reloc_base.
 +      (copy_dysymtab): Compute relocation base here.
 +      (rebase_reloc_address) [__ppc64__]: New function.
 +      (copy_dysymtab) [__ppc64__]: Use it if relocation base needs to be
 +      changed.
 +
 +2007-12-05  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32proc.c (sys_spawnve): Quote args with wildcards.
 +
 +2007-12-05  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
 +
 +      * unexmacosx.c (copy_data_segment): Also copy __gcc_except_tab and
 +      __objc_* sections.
 +      (unrelocate) [_LP64]: Set relocation base to address of data segment.
 +
 +2007-12-05  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * dbusbind.c (xd_read_message): Return value is a Lisp_Object.
 +      Move check for Vdbus_registered_functions_table to
 +      xd_read_queued_messages.
 +      (xd_read_queued_messages): Protect xd_read_message calls by
 +      internal_condition_case_1.
 +
 +2007-12-04  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * dbusbind.c (QCdbus_system_bus, QCdbus_session_bus): Rename from
 +      Qdbus_system_bus and Qdbus_session_bus, respectively.
 +      (Vdbus_intern_symbols): Remove.
 +      (Vdbus_registered_functions_table): New hash table.
 +      (XD_SYMBOL_INTERN_SYMBOL): Remove.
 +      (xd_read_message, Fdbus_register_signal, Fdbus_unregister_signal):
 +      Rewrite in order to manage registered functions by hash table
 +      Vdbus_registered_functions_table.
 +
 +2007-12-03  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * xterm.c: Update URL to Window Manager Specification in comment.
 +
 +2007-12-02  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * config.in (HAVE_DBUS): Add.
 +
 +      * Makefile.in (HAVE_DBUS): Add D-Bus definitions if defined.
 +      (ALL_CFLAGS): Add ${DBUS_CFLAGS}.
 +      (obj): Add $(DBUS_OBJ).
 +      (LIBES): Add $(DBUS_LIBS).
 +      (dbusbind.o): New target.
 +
 +      * dbusbind.c: New file.
 +
 +      * emacs.c (main): Call syms_of_dbusbind when HAVE_DBUS is defined.
 +
 +      * keyboard.c: All D-Bus related code is wrapped by "#ifdef HAVE_DBUS".
 +      (Qdbus_event): New Lisp symbol.
 +      (kbd_buffer_get_event, make_lispy_event): Handle DBUS_EVENT.
 +      (gobble_input): Call xd_read_queued_messages, reading D-Bus messages.
 +      (keys_of_keyboard): Define dbus-event.
 +
 +      * termhooks.h (event_kind): Add DBUS_EVENT when HAVE_DBUS is defined.
 +
 +2007-12-01  Richard Stallman  <rms@gnu.org>
 +
 +      * search.c (syms_of_search) <inhibit-changing-match-data>: Doc fix.
 +
 +2007-11-30  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32console.c (w32con_ins_del_lines, scroll_line): Clip to window.
 +      (w32con_reset_terminal_modes): Clear screen buffer.
 +      (w32_face_attributes): Don't use color indexes that are out of range.
 +      Only reverse the default colors.
 +
 +      * xfaces.c (map_tty_color, tty_color_name): Remove special case for
 +      WINDOWSNT.
 +
 +      * w32console.c, w32term.h (vga_stdcolor_name): Remove.
 +
 +2007-11-29  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32console.c: Leave HAVE_WINDOW_SYSTEM defined.
 +      (w32_face_attributes): Use Vtty_defined_color_alist to determine
 +      if the terminal colors are initialized.
 +      (unspecified_fg, unspecified_bg): Remove unused declarations.
 +
 +2007-11-29  Andreas Schwab  <schwab@suse.de>
 +
 +      * keyboard.c (apply_modifiers): Fix typo.
 +
 +2007-11-29  Richard Stallman  <rms@gnu.org>
 +
 +      * keymap.c (Fcurrent_local_map): Doc fix.
 +
 +2007-11-28  Petr Salinger  <Petr.Salinger@seznam.cz>  (tiny change)
 +
 +      * s/gnu-kfreebsd.h: New file.
 +
 +2007-11-28  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * buffer.c (Fget_buffer_create, Fmake_indirect_buffer):
 +      Don't cast redundantly.
 +
 +      * keyboard.c (KEY_TO_CHAR): New macro.
 +      (parse_modifiers, apply_modifiers): Accept integer arguments.
 +      (read_key_sequence): Use them to unify the "shift->unshift" mapping
 +      for chars and symbol keys.
 +      After doing such remapping, apply function-key-map again.
 +
 +2007-11-27  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * Makefile.in (SOME_MACHINE_LISP): Remove VMS files, they are not
 +      compiled anymore.
 +
 +2007-11-26  Andreas Schwab  <schwab@suse.de>
 +
 +      * process.c (list_processes_1): Fix indentation level of the
 +      command column.
 +
 +2007-11-23  Andreas Schwab  <schwab@suse.de>
 +
 +      * editfns.c (Fformat): Handle %c specially since it requires the
 +      argument to be of type int.
 +
 +2007-11-23  Markus Triska  <markus.triska@gmx.at>
 +
 +      * emacs.c (main): Call init_editfns before init_process, since
 +      init_process sets Vprocess_connection_type depending on OS release.
 +
 +2007-11-22  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * data.c (do_symval_forwarding): Use same code as in find_symbol_value.
 +      (find_symbol_value): Use do_symval_forwarding.
 +
 +      * data.c (set_internal): Set the value in the `cons-cell' (for
 +      Buffer_Local_values) not only for frame-local variables.
 +
 +2007-11-22  Andreas Schwab  <schwab@suse.de>
 +
 +      * data.c (Fnumber_to_string): Add cast when passing EMACS_INT
 +      values to sprintf.
 +      * keymap.c (Fsingle_key_description): Likewise.
 +      * print.c (print_object): Likewise.
 +
 +2007-11-22  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * gtkutil.c (update_frame_tool_bar): Don't call x-gtk-map-stock if
 +      file for image is nil.
 +
 +2007-11-22  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * term.c: Include stdarg.h.
 +      (fatal): Implement using varargs.
 +      * lisp.h (fatal): Add argument types.  (Restore 2005-09-30 change).
 +
 +2007-11-21  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * lisp.h (struct Lisp_Buffer_Objfwd): Add a `slottype' field.
 +      * data.c (store_symval_forwarding): Get type from buffer_objfwd.
 +      Update call to buffer_slot_type_mismatch.
 +      * buffer.h (buffer_local_types, PER_BUFFER_TYPE): Remove.
 +      (buffer_slot_type_mismatch): Update.
 +      * buffer.c (buffer_local_types): Remove.
 +      (buffer_slot_type_mismatch): Get the symbol and type as arguments.
 +      (defvar_per_buffer): Set the type in the buffer_objfwd.
 +
 +2007-11-21  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32bdf.c (w32_init_bdf_font, w32_BDF_to_x_font):
 +      CreateFileMapping returns NULL on failure.
 +
 +2007-11-21  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * search.c (Fset_match_data): Remove the `evaporate' feature.
 +      (unwind_set_match_data): Don't use the `evaporate' feature.
 +
 +2007-11-21  Jason Rumney  <jasonr@gnu.org>
 +
 +      * dispnew.c (init_display) [WINDOWSNT]: Hardcode terminal_type.
 +
 +      * w32console.c (w32con_write_glyphs): Remove unused variables.
 +
 +2007-11-20  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * macterm.c (mac_term_init): Call add_keyboard_wait_descriptor.
 +
 +      * s/darwin.h (MULTI_KBOARD): Remove.
 +
 +      * macfns.c (x_create_tip_frame, Fx_create_frame)
 +      (x_create_tip_frame): Don't deal with MULTI_KBOARD.
 +
 +2007-11-19  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * buffer.c (Fbuffer_local_value): Remove redundant test.
 +      (swap_out_buffer_local_variables): Swap out binding in `buffer' rather
 +      than in `current-buffer' to match the comment.
 +      Do the swap using swap_in_global_binding.
 +
 +      * data.c (store_symval_forwarding, set_internal):
 +      * eval.c (specbind): Remove dead code.
 +
 +      * coding.c (detect_coding, Fupdate_coding_systems_internal):
 +      * fns.c (Fmd5): Use find_symbol_value rather than SYMBOL_VALUE
 +      Since we do not want to see internal Lisp_*fwd objects here.
 +
 +2007-11-18  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * sysdep.c (init_system_name): Use getaddrinfo if available.
 +
 +      * xterm.c (x_scroll_bar_set_handle, x_scroll_bar_handle_click)
 +      (x_scroll_bar_note_movement): start, end, with, height in struct
 +      scroll_bar are integers and not Lisp_Object, so remove XINT for them.
 +
 +2007-11-17  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * puresize.h (BASE_PURESIZE): Increase to 1190000.
 +
 +2007-11-16  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * buffer.h (struct buffer): Move `undo_list' back to before `name'.
 +      This undoes Richard's change of 14-Oct-2002.
 +
 +      * alloc.c (allocate_other_vector):
 +      * lisp.h (allocate_other_vector): Remove.
 +
 +      * window.c (struct save_window_data): Move non-lisp data to the end
 +      and make it `int' rather than Lisp_Object.
 +      (Fcurrent_window_configuration): Use ALLOCATE_PSEUDOVECTOR.
 +      Done wrap/unwrap integer values.
 +      (Fset_window_configuration, compare_window_configurations):
 +      Update use of fields to their new types.
 +
 +      * xterm.h (struct scroll_bar): Only use Lisp_Object for lisp data.
 +      Turn integer fields into `int'.  Merge x_window_low and x_window_high.
 +      (SCROLL_BAR_PACK, SCROLL_BAR_UNPACK, SCROLL_BAR_X_WINDOW)
 +      (SET_SCROLL_BAR_X_WINDOW): Remove.
 +      (SCROLL_BAR_X_WIDGET, SET_SCROLL_BAR_X_WIDGET):
 +      Access the new x_window field directly.
 +      * xterm.c (x_scroll_bar_create): Use a pseudovector.
 +      Don't wrap/unwrap integers into Lisp_Objects.
 +      (XTset_vertical_scroll_bar, x_scroll_bar_handle_click)
 +      (x_scroll_bar_report_motion):
 +      Don't wrap/unwrap integers into Lisp_Objects.
 +      (x_term_init): Use SDATA.
 +      (x_window_to_scroll_bar, x_create_toolkit_scroll_bar)
 +      (x_scroll_bar_set_handle, x_scroll_bar_remove)
 +      (XTset_vertical_scroll_bar, x_scroll_bar_expose)
 +      (x_scroll_bar_report_motion, x_scroll_bar_clear):
 +      * xfns.c (x_set_background_color):
 +      * gtkutil.c (xg_create_scroll_bar, xg_set_toolkit_scroll_bar_thumb):
 +      Access the new x_window field directly.
 +
 +      * alloc.c (ALLOCATE_PSEUDOVECTOR): Move to lisp.h.
 +      (allocate_pseudovector): Make non-static.
 +
 +      * lisp.h (enum pvec_type): New tag PVEC_OTHER.
 +      (allocate_pseudovector): Declare.
 +      (ALLOCATE_PSEUDOVECTOR): Move from alloc.c.
 +
 +2007-11-15  Andreas Schwab  <schwab@suse.de>
 +
 +      * editfns.c (Fformat): Correctly format EMACS_INT values.
 +      Also take precision into account when formatting an integer.
 +
 +      * keyboard.c (Fevent_symbol_parse_modifiers): Fix declaration.
 +
 +2007-11-15  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * keyboard.c (Fevent_symbol_parse_modifiers): New function.
 +      (syms_of_keyboard): Defsubr it.
 +
 +      * data.c (swap_in_global_binding): Fix longstanding bug where
 +      store_symval_forwarding was not called with the right second argument,
 +      thus causing objfwd-ing from being dropped.
 +
 +2007-11-14  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * macfns.c (Fx_create_frame, Fx_display_pixel_width)
 +      (Fx_display_pixel_height, Fx_display_planes)
 +      (Fx_display_color_cells, Fx_server_max_request_size)
 +      (Fx_server_vendor, Fx_server_version, Fx_display_backing_store)
 +      (Fx_display_visual_class, Fx_display_save_under):
 +      * w32fns.c (Fx_create_frame, Fx_display_pixel_width)
 +      (Fx_display_pixel_height, Fx_display_planes)
 +      (Fx_display_color_cells, Fx_server_max_request_size)
 +      (Fx_server_vendor, Fx_server_version, Fx_display_screens)
 +      (Fx_display_mm_height, Fx_display_mm_width)
 +      (Fx_display_backing_store, Fx_display_visual_class)
 +      (Fw32_select_font, Fx_display_save_under):
 +      * xfns.c (Fx_create_frame, Fx_display_pixel_width)
 +      (Fx_display_pixel_height, Fx_display_planes)
 +      (Fx_display_color_cells, Fx_server_max_request_size)
 +      (Fx_server_vendor, Fx_server_version, Fx_display_backing_store)
 +      (Fx_display_save_under): Fix typos in docstrings.
 +
 +2007-11-14  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * w32fns.c (Fw32_registered_hot_keys): Don't return the nil values
 +      corresponding to deleted entries; they are an implementation detail.
 +      (gray_bitmap_width, gray_bitmap_height, gray_bitmap_bits):
 +      Remove variables.
 +      (w32_pass_extra_mouse_buttons_to_system, w32_strict_fontnames)
 +      (w32_pass_multimedia_buttons_to_system, w32_strict_painting)
 +      (Vw32_charset_info_alist, w32_to_x_color, w32_init_class)
 +      (w32_createscrollbar, w32_createwindow, my_post_msg, w32_get_modifiers)
 +      (w32_grabbed_keys, cancel_all_deferred_msgs): Make static.
 +      (Fw32_define_rgb_color, Fw32_load_color_file)
 +      (syms_of_w32fns) <w32-pass-multimedia-buttons-to-system>:
 +      Fix typos in docstrings.
 +      (Fx_server_version): Reflow docstring.
 +      (Fw32_shell_execute): Doc fixes.
 +
 +2007-11-13  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * w32fns.c (Fw32_register_hot_key): Don't try to register hot key
 +      if w32_parse_hot_key returned nil.
 +
 +2007-11-10  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * xdisp.c (load_overlay_strings): Fix copy&paste typo.
 +
 +2007-11-09  Jason Rumney  <jasonr@gnu.org>
 +
 +      * s/ms-w32.c (USE_TOOLKIT_SCROLL_BARS): Define.
 +
 +      * w32term.c (w32_scroll_bar_handle_click): Use SCROLL_BAR_CLICK_EVENT.
 +
 +      * keyboard.c (discard_mouse_events, make_lispy_event) [WINDOWSNT]:
 +      Remove W32_SCROLL_BAR_CLICK_EVENT.
 +
 +      * termhooks.h (enum event_kind) [WINDOWSNT]: Likewise.
 +      Add MULTIMEDIA_KEY_EVENT.
 +
 +      * keyboard.c (lispy_function_keys) [WINDOWSNT]: Add more keys.
 +      (lispy_multimedia_keys) [WINDOWSNT]: New array.
 +      (make_lispy_event) [WINDOWSNT]: Use it to translate
 +      MULTIMEDIA_KEY_EVENT.
 +
 +      * w32term.h (WM_APPCOMMAND): Define if not already.
 +      (GET_APPCOMMAND_LPARAM): Likewise.
 +
 +      * w32term.c (w32_read_socket): Generate MULTIMEDIA_KEY_EVENT from
 +      WM_APPCOMMAND.
 +
 +      * w32fns.c (w32_pass_multimedia_buttons_to_system): New user option.
 +      (syms_of_w32fns): Export and initialize it.
 +      (w32_wnd_proc): Pass WM_APPCOMMAND on to w32_read_socket.
 +
 +2007-11-09  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * dispextern.h (struct it): Don't define OVERLAY_STRING_CHUNK_SIZE
 +      twice.
 +
 +      * xdisp.c (handle_face_prop): Fix last change.
 +
 +2007-11-09  Richard Stallman  <rms@gnu.org>
 +
 +      * xdisp.c (handle_face_prop): Test for strings that came from overlays,
 +      not just for after-strings and before-strings.
 +      Call face_for_overlay_string and pass the overlay to it.
 +      (handle_display_prop): Determine whether property came from an overlay.
 +      Pass OVERLAY arg to handle_single_display_spec.
 +      (handle_single_display_spec): New arg OVERLAY sets it->from_overlay.
 +      (load_overlay_strings): Fill in it->string_overlays.
 +      (get_overlay_strings_1, push_it, pop_it): Handle it->from_overlays.
 +
 +      * xfaces.c (face_for_overlay_string): Function renamed from
 +      face_at_buffer_position_no_overlays, and add arg OVERLAY.
 +
 +      * dispextern.h (struct it): New elt string_overlays.
 +      New elt from_overlay, also in stack.
 +      Rearrange a few elements.
 +      (face_for_overlay_string): Decl renamed from
 +      face_at_buffer_position_no_overlays, and add argument.
 +
 +2007-11-09  Richard Stallman  <rms@gnu.org>
 +
 +      * xdisp.c (handle_face_prop): Use face_at_buffer_position_no_overlays
 +      to get the base face for an overlay string.
 +
 +      * dispextern.h (face_at_buffer_position_no_overlays): Add decl.
 +
 +      * xfaces.c (face_at_buffer_position_no_overlays): New function.
 +
 +      * xdisp.c (handle_stop): Move some code out of loop.
 +
 +2007-11-09  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
 +
 +      * macfns.c [USE_ATSUI] (Fmac_atsu_font_face_attributes):
 +      Fix conversion from Lisp object to ATSUFontID.
 +
 +2007-11-09  Jason Rumney  <jasonr@gnu.org>
 +
 +      * xdisp.c (Fformat_mode_line): Do nothing when noninteractive.
 +
 +2007-11-09  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
 +
 +      * unexmacosx.c (unexec_regions_recorder, unexec_regions_merge):
 +      Don't assume regions are aligned to page boundary.
 +      (print_load_command_name): Add LC_UUID if defined.
 +
 +2007-11-09  Richard Stallman  <rms@gnu.org>
 +
 +      * emacs.c (syms_of_emacs) <installation-directory>: Reflow docstring.
 +
 +2007-11-07  Jason Rumney  <jasonr@gnu.org>
 +
 +      * s/windows95.h: Remove.
 +
 +2007-11-06  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * gtkutil.c (xg_tool_bar_menu_proxy): Handle GTK_IMAGE_ICON_NAME and
 +      abort with a message on unhandled store_type values.
 +
 +2007-11-01  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * xterm.c, xfns.c, xselect.c, xterm.h, s/msdos.h, s/sco4.h, s/sco5.h:
 +      Remove HAVE_X11R5 and HAVE_X11R4.
 +
 +2007-11-01  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * Makefile.in: Remove references to sunfns.c and sunfns.o.
 +
 +2007-11-01  Johan Bockgård  <bojohan@gnu.org>
 +
 +      * macterm.c, w32term.c, xterm.c (x_draw_stretch_glyph_string):
 +      Don't set s->stippled_p here, since it has already been set by
 +      x_set_glyph_string_gc from x_draw_glyph_string.
 +
 +2007-11-01  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * sunfns.c: Remove file.
 +
 +      * m/sun386.h:
 +      * m/sun2.h:
 +      * m/sparc.h: Remove Sun windows code.
 +
 +2007-10-31  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * keyboard.c (syms_of_keyboard): Initialize the initial_kboard.
 +      (init_keyboard): Set current_kboard's window-system to nil.
 +      (tty_read_avail_input): Typo.
 +      * frame.c (make_initial_frame): Don't initialize the initial_kboard.
 +
 +2007-10-31  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * s/usg5-4.h:
 +      * s/usg5-3.h:
 +      * s/ptx.h:
 +      * m/is386.h:
 +      * m/ibmps2-aix.h:
 +      * Makefile.in: Remove all mentions of X10.
 +
 +      * dispnew.c (syms_of_display): Don't mention version 10.
 +
 +2007-10-28  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * makefile.w32-in (OBJ1): Remove abbrev.$(O).
 +      ($(BLD)/abbrev.$(O)): Remove.
 +
 +2007-10-28  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      Rewrite abbrev.c in Elisp.
 +      * image.c (Qcount): Don't declare as extern.
 +      (syms_of_image): Initialize and staticpro `Qcount'.
 +      * puresize.h (BASE_PURESIZE): Increase for the new abbrev.el functions.
 +      * emacs.c (main): Don't call syms_of_abbrev.
 +      * Makefile.in (obj): Remove abbrev.o.
 +      (abbrev.o): Remove.
 +      * abbrev.c: Remove.
 +
 +2007-10-26  Martin Rudalics  <rudalics@gmx.at>
 +
 +      * window.c (window_min_size_2): Don't count header-line.
 +
 +2007-10-26  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * frame.h (struct frame): Move all bit fields after the first bit
 +      field to take advantage of the available space.  Group all the
 +      chars together to reduce wasted space due to padding.
 +
 +2007-10-26  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * minibuf.c (Fread_minibuffer, Feval_minibuffer): Reflow docstrings.
 +
 +      * alloc.c (spare_memory, stack_copy, stack_copy_size, ignore_warnings)
 +      (Vdead, dont_register_blocks, staticvec, staticidx, interval_block)
 +      (n_interval_blocks, init_strings, check_string_bytes, check_sblock)
 +      (init_float, free_float, n_cons_blocks, init_cons, all_vectors)
 +      (n_vectors, symbol_block, symbol_block_index, symbol_free_list)
 +      (n_symbol_blocks, init_symbol, marker_block, marker_free_list)
 +      (n_marker_blocks, init_marker, valid_pointer_p, make_pure_float)
 +      (last_marked, mark_object_loop_halt): Make static.
 +
 +      * frame.c (syms_of_frame) <delete-frame-functions>:
 +      Fix typo in docstring.
 +
 +2007-10-25  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * w32.c (init_environment): Fix tiny memory leak.
 +      (w32_get_resource): Remove unused variable `ok'.
 +
 +2007-10-25  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      Make `window-system' into a keyboard-local variable (rather than
 +      frame-local as done originally by multi-tty).
 +
 +      * keyboard.h (struct kboard): Add Vwindow_system.
 +      * keyboard.c (init_kboard): Set a default for Vwindow_system.
 +      (mark_kboards): Mark Vwindow_system.
 +
 +      * dispnew.c (syms_of_display) <window-system>: Declare terminal-local.
 +      (init_display): Don't set the obsolete `window-system' frame-param.
 +
 +      * xterm.c (x_term_init):
 +      * w32term.c (w32_create_terminal):
 +      * term.c (init_tty): Set Vwindow_system.
 +      * macterm.c (mac_create_terminal): Set a keyboard (missing piece of the
 +      multi-tty merge maybe?), copied from w32term.c.  Set Vwindow_system.
 +
 +      * xfns.c (Fx_create_frame, x_create_tip_frame):
 +      * w32fns.c (Fx_create_frame, x_create_tip_frame):
 +      * macfns.c (Fx_create_frame):
 +      Don't set the obsolete `window-system' frame-param.
 +
 +      * frame.h (Qwindow_system): Remove.
 +      * frame.c (Qwindow_system): Remove.  In `syms_of_frame' as well.
 +      (Fmake_terminal_frame): Don't set obsolete `window-system' frame-param.
 +
 +2007-10-24  Richard Stallman  <rms@gnu.org>
 +
 +      * frame.c (x_figure_window_size): For fullscreen case,
 +      set USPosition | PPosition without clobbering rest of window_prompting.
 +
 +      * keyboard.c (Fcurrent_idle_time): Doc fix.
 +
 +      * print.c (Fwith_output_to_temp_buffer): Doc fix.
 +
 +2007-10-23  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * process.c (unwind_request_sigio): Only define if __ultrix__.
 +
 +      * callproc.c (child_setup): Remove spurious *.
 +
 +      * lisp.h (Fget_text_property): Declare.
 +      (have_menus_p): Declare it here rather than in sys-dep header files.
 +      * macterm.h (have_menus_p):
 +      * msdos.h (have_menus_p):
 +      * xterm.h (have_menus_p): Remove.
 +
 +      * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
 +      (Fmake_variable_frame_local): Just check the variable's const-ness
 +      rather than checking nil or t.
 +
 +2007-10-22  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32fns.c: Include math.h.
 +      (w32_abort): Declaration moved to nt/config.nt.
 +
 +      * s/ms-w32.h (HAVE_STDLIB_H): Define.
 +      (abort): Redefinition moved to nt/config.nt.
 +
 +      * m/windowsnt.h: Remove.
 +
 +2007-10-22  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * emacs.c (Fdump_emacs): Fix typo in message.
 +      (syms_of_emacs) <kill-emacs-hook>: Fix typo in docstring.
 +      <installation-directory>: Reflow docstring.
 +
 +2007-10-22  Juri Linkov  <juri@jurta.org>
 +
 +      * minibuf.c: Allow minibuffer default to be a list of default values.
 +      With empty input use the first element of this list as returned default.
 +      (string_to_object)
 +      (read_minibuf_noninteractive): If defalt is cons, set val to its car.
 +      (read_minibuf): If defalt is cons, set histstring to its car.
 +      (Fread_string): If default_value is cons, set val to its car.
 +      (Fread_buffer): If def is cons, use its car.
 +      (Fcompleting_read): If defalt is cons, set val to its car.
 +
 +2007-10-21  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * fileio.c (Fcopy_file): Call file name handler with preserve_uid_gid.
 +
 +2007-10-20  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * doc.c (Fdocumentation): Check for advice in all cases.
 +
 +2007-10-19  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * Makefile.in [HAVE_LIBRESOLV]: Add -lresolv to linker flags.
 +
 +2007-10-19  Richard Stallman  <rms@gnu.org>
 +
 +      * doc.c (Fdocumentation): Check for and handle an advised function.
 +
 +2007-10-19  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * process.c (Fset_process_filter): Doc fix.
 +
 +2007-10-18  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * keyboard.c (read_key_sequence): Undo a change introduced by multi-tty
 +      which caused key-translation-map to applied repeatedly (thus breaking
 +      double-mode).
 +
 +2007-10-17  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * xselect.c (x_own_selection, x_handle_selection_clear)
 +      (x_clear_frame_selections):
 +      * w32menu.c (list_of_panes, list_of_items):
 +      * w32fns.c (w32_color_map_lookup, Fx_create_frame, Fx_display_list):
 +      * textprop.c (validate_plist, interval_has_all_properties)
 +      (interval_has_some_properties, interval_has_some_properties_list)
 +      (add_properties, text_property_list):
 +      * process.c (Fget_buffer_process, list_processes_1, status_notify):
 +      * minibuf.c (Fassoc_string):
 +      * macselect.c (x_own_selection, x_clear_frame_selections)
 +      (Fx_disown_selection_internal):
 +      * keymap.c (Fcommand_remapping, where_is_internal, describe_map_tree):
 +      Use CONSP rather than !NILP and XC[AD]R rather than Fc[ad]r.
 +
 +2007-10-17  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * process.c: Link to libs for calling res_init() if available.
 +      (Fmake_network_process): Call res_init() before getaddrinfo or
 +      gethostbyname, if possible.
 +
 +2007-10-17  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * lread.c (read1): Set pvectype for char_tables.
 +
 +      * lisp.h (XMISCANY, XMARKER, XINTFWD, XBOOLFWD, XOBJFWD, XOVERLAY)
 +      (XBUFFER_OBJFWD, XBUFFER_LOCAL_VALUE, XKBOARD_OBJFWD, XSAVE_VALUE):
 +      Add type checks.
 +      (SOME_BUFFER_LOCAL_VALUEP, GC_SOME_BUFFER_LOCAL_VALUEP): Remove.
 +
 +      * alloc.c (free_misc): Use XMISCTYPE.
 +      (live_misc_p, gc_sweep): Use Lisp_Misc_Any.
 +
 +2007-10-17  Glenn Morris  <rgm@gnu.org>
 +
 +      * minibuf.c (Qcompletion_ignore_case): New Lisp_Object.
 +      (syms_of_minibuf): Add Qcompletion_ignore_case.
 +      * dired.c (Qcompletion_ignore_case): Change to external.
 +      (syms_of_dired) [VMS]: Remove Qcompletion_ignore_case.
 +      * fileio.c (Qcompletion_ignore_case): New external Lisp_Object.
 +      (Fread_file_name): Use it rather than intern'ing.
 +
 +      * coding.c (Qcompletion_ignore_case): New external Lisp_Object.
 +      (Fread_coding_system): Ignore case of user input.
 +
 +2007-10-16  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
 +
 +      * xdisp.c (handle_display_prop): Ignore display specs after
 +      replacing one when string text is being replaced.
 +      (handle_single_display_spec): Pretend as if characters with display
 +      property haven't been consumed only when buffer text is being replaced.
 +
 +2007-10-16  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * xfns.c (Fx_create_frame, Fx_display_list):
 +      * window.c (window_fixed_size_p, enlarge_window)
 +      (shrink_window_lowest_first):
 +      * macterm.c (init_font_name_table):
 +      * macfns.c (Fx_create_frame, Fx_display_list):
 +      * lread.c (close_load_descs):
 +      * keyboard.c (read_char_x_menu_prompt):
 +      * fns.c (Fmember, Fmemql, Fdelete, Fset_char_table_parent):
 +      * coding.c (code_convert_region_unwind): Test the type of an object
 +      rather than just !NILP before extracting data from it.
 +
 +      * alloc.c (Fpurecopy): Set the pvec tag on pseudo vectors.
 +
 +      * lisp.h (enum Lisp_Misc_Type): Del Lisp_Misc_Some_Buffer_Local_Value.
 +      (XMISCANY): New macro.
 +      (XMISCTYPE): Use it.
 +      (struct Lisp_Misc_Any): New type.
 +      (union Lisp_Misc): Use it.
 +      (struct Lisp_Buffer_Local_Value): Add `local_if_set' bit.
 +      * data.c (Fboundp, store_symval_forwarding, swap_in_global_binding)
 +      (find_symbol_value, set_internal, default_value, Fset_default)
 +      (Fmake_variable_buffer_local, Fmake_local_variable)
 +      (Fkill_local_variable, Fmake_variable_frame_local, Flocal_variable_p)
 +      (Flocal_variable_if_set_p, Fvariable_binding_locus):
 +      The SOME_BUFFER_LOCAL_VALUEP distinction is replaced by local_if_set.
 +      * alloc.c (allocate_buffer): Set the size and tag.
 +      (allocate_misc, mark_maybe_object, mark_object, survives_gc_p):
 +      Use XMISCANY.
 +      (die): Follow the GNU convention for error messages.
 +      * print.c (print_object): SOME_BUFFER_LOCAL_VALUEP -> local_if_set.
 +      * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Don't set the
 +      tag any more.
 +      (set_buffer_internal_1):
 +      * frame.c (store_frame_param):
 +      * eval.c (specbind):
 +      * xdisp.c (select_frame_for_redisplay): Drop SOME_BUFFER_LOCAL_VALUEP.
 +
 +      * doc.c (Fsnarf_documentation): Simplify.
 +
 +2007-10-14  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * w32term.c (w32_font_is_double_byte, my_create_scrollbar): Make static.
 +      (syms_of_w32term) <w32-enable-unicode-output>: Fix typo in docstring.
 +
 +2007-10-14  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * buffer.c (Fmake_indirect_buffer): Set the buffer's tag.
 +
 +2007-10-14  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * eval.c (do_autoload): Don't save autoloads.
 +
 +      * data.c (Ffset): Save autoload of the function being set.
 +
 +2007-10-07  John Paul Wallington  <jpw@pobox.com>
 +
 +      * xfns.c (x_create_tip_frame): Set the `display-type' frame
 +      parameter before setting up faces.
 +
 +2007-10-13  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * ccl.c (Fregister_code_conversion_map):
 +      * keyboard.c (append_tool_bar_item): Reformat last change.
 +
 +      * lisp.h (eabs): Rename from `abs'.  All callers changed.
 +
 +2007-10-05  Dmitry Antipov  <dmantipov@yandex.ru>
 +
 +      * buffer.c (add_overlay_mod_hooklist):
 +      * ccl.c (Fregister_ccl_program, Fregister_code_conversion_map):
 +      * fontset.c (make_fontset):
 +      * keyboard.c (GROW_RAW_KEYBUF, menu_bar_items, menu_bar_item)
 +      (append_tool_bar_item):
 +      * macmenu.c (grow_menu_items):
 +      * w32menu.c (grow_menu_items):
 +      * xmenu.c (grow_menu_items): Use larger_vector.
 +
 +2007-10-13  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * msdos.c (dos_rawgetc): Undo last change (there's no ``leaving
 +      selected frame'' on MSDOS).
 +
 +2007-10-12  Martin Rudalics  <rudalics@gmx.at>
 +
 +      * frame.c (Qexplicit_name): New variable.
 +      (x_report_frame_params): Report it in parameter alist.
 +      (syms_of_frame): Intern and staticpro it.
 +
 +2007-10-10  Patrick Mahan  <mahan@mahan.org>  (tiny change)
 +
 +      * macfns.c (x_create_tip_frame): Set terminal for frame.
 +
 +2007-10-10  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * frame.c (Qenvironment): Remove.
 +      (syms_of_frame) <Qenvironment>: Don't initialize.
 +      (Fdelete_frame): Don't treat the `environment' param specially.
 +      * frame.h (Qenvironment): Don't declare.
 +      * callproc.c (set_initial_environment): Don't set unused frame param.
 +
 +      * frame.c (Fframe_with_environment): Remove.
 +      (syms_of_frame) <Sframe_with_environment>: Don't declare.
 +
 +      * lisp.h (Fframe_with_environment): Don't declare.
 +
 +2007-10-10  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * indent.c (indent_tabs_mode, last_known_column)
 +      (last_known_column_modified): Make static.
 +      (syms_of_indent) <indent-tabs-mode>: Remove redundant info in docstring.
 +
 +2007-10-10  Katsumi Yamaoka  <yamaoka@jpl.org>
 +
 +      * puresize.h (BASE_PURESIZE): Increase to 1170000.
 +
 +2007-10-09  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32term.c (x_set_window_size): Disable code that attempts to tell
 +      Lisp code about a size change before it actually happens.
 +
 +2007-10-09  Richard Stallman  <rms@gnu.org>
 +
 +      * xdisp.c (handle_invisible_prop): After setting up an ellipsis,
 +      return HANDLED_RETURN.
 +
 +2007-10-08  Martin Rudalics  <rudalics@gmx.at>
 +
 +      * keyboard.c (kbd_buffer_get_event): Break loop waiting for input
 +      when there's an unread command event.
 +
 +      * frame.c (focus_follows_mouse): Move here from frame.el to allow
 +      window autoselection act appropriately when leaving selected frame.
 +      (syms_of_frame): Initialize focus_follows_mouse.
 +      * frame.h (focus_follows_mouse): Extern it.
 +      * macterm.c (XTread_socket): When focus_follows_mouse is nil
 +      make SELECT_WINDOW_EVENT only if we don't leave the selected frame.
 +      * msdos.c (dos_rawgetc): Likewise.
 +      * w32term.c (w32_read_socket): Likewise.
 +      * xterm.c (handle_one_xevent): Likewise.
 +      * xdisp.c (syms_of_xdisp): In doc-string of
 +      mouse-autoselect-window mention focus-follows-mouse.
 +
 +2007-10-08  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
 +
 +      * macterm.c (mac_load_query_font): Fix missing return value.
 +      [USE_CG_DRAWING] (mac_define_fringe_bitmap, mac_destroy_fringe_bitmap):
 +      Add BLOCK_INPUT.
 +
 +2007-10-08  Richard Stallman  <rms@gnu.org>
 +
 +      * xdisp.c (get_window_cursor_type): Implement documented behavior
 +      for cursor-in-non-selected-windows = t.
 +
 +2007-10-08  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32.c (w32_get_resource): Always close registry keys.
 +
 +2007-10-08  Jason Rumney  <jasonr@gnu.org>
 +
 +      * makefile.w32-in (LIBS): Add COMCTL32.
 +
 +      * w32fns.c (globals_of_w32fns): Init common controls.
 +
 +2007-10-08  Richard Stallman  <rms@gnu.org>
 +
 +      * image.c (our_memory_buffer): Rename from omfib_buffer.
 +
 +2007-10-08  Richard Stallman  <rms@gnu.org>
 +
 +      * buffer.c (Foverlays_at): Doc fix.
 +
 +2007-10-08  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * fns.c (Fplist_put): Preserve uneven tail data.
 +
 +2007-10-08  Peter O'Gorman  <bug-gnu-emacs@mlists.thewrittenword.com>  (tiny change)
 +
 +      * termhooks.h (enum event_kind): Remove trailing comma.
 +
 +      * frame.h (enum): Remove trailing comma.
 +
 +2007-10-08  Dhruva Krishnamurthy  <dhruvakm@gmail.com>  (tiny change)
 +
 +      * w32proc.c (delete_child): Don't terminate threads of zombies.
 +
 +2007-10-08  Martin Rudalics  <rudalics@gmx.at>
 +
 +      * keyboard.h (struct kboard): New elt Vlast_repeatable_command.
 +
 +      * keyboard.c (syms_of_keyboard): Set up new Lisp variable
 +      last-repeatable-command.
 +      (init_kboard): Initialize Vlast_repeatable_command.
 +      (command_loop_1): Set it to real_this_command unless that was
 +      bound to an input event.
 +      (mark_kboards): Mark it.
 +
 +2007-10-08  Richard Stallman  <rms@gnu.org>
 +
 +      * eval.c (condition-case): Doc fix.
 +
 +2007-10-08  Masatake YAMATO  <jet@gyve.org>
 +
 +      * xfaces.c (tty_supports_face_attributes_p): Fix code
 +      for LFACE_INVERSE_INDEX and LFACE_BACKGROUND_INDEX; code
 +      was copied and not edited.
 +
 +2007-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      Add new `input-decode-map' keymap and use it for terminal
 +      escape sequences.
 +      * keyboard.h (struct kboard): Add Vinput_decode_map.
 +      Remove Vlocal_key_translation_map.
 +      * keyboard.c (read_key_sequence): Add support for input-decode-map.
 +      (init_kboard): Init input-decode-map.
 +      Replace local-key-translation-map back with key-translation-map.
 +      (syms_of_keyboard): Declare input-decode-map.
 +      Remove local-key-translation-map.  Update docstrings.
 +      (mark_kboards): Mark Vinput_decode_map.
 +      Don't mark Vlocal_key_translation_map.
 +      * keymap.c (Fdescribe_buffer_bindings): Describe input-decode-map.
 +      Replace local-key-translation-map back with key-translation-map.
 +      * term.c (term_get_fkeys_1, CONDITIONAL_REASSIGN):
 +      Bind in input-decode-map rather than function-key-map.
 +
 +      * lisp.h (XSETPSEUDOVECTOR): Don't set the tag anymore.
 +      This was made redundant by the previous introduction of XSETPVECTYPE.
 +
 +2007-10-09  Richard Stallman  <rms@gnu.org>
 +
 +      * image.c (free_bitmap_record): Rename from Free_Bitmap_Record.
 +
 +2007-09-29  Richard Stallman  <rms@gnu.org>
 +
 +      * eval.c (internal_condition_case_2, internal_condition_case_1)
 +      (internal_condition_case): Reenable abort if x_catching_errors ()
 +      to see if that really happens and why.
 +
 +2007-10-06  Andreas Schwab  <schwab@suse.de>
 +
 +      * fileio.c (Fwrite_region): Ignore EINVAL error from fsync.
 +
 +2007-10-04  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * image.c (syms_of_image) <image-types>: Fix typo in docstring.
 +
 +2007-10-03  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * frame.h (struct frame): Don't try to GC-mark menu_bar_items_used.
 +
 +2007-10-02  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * window.h (struct window):
 +      * window.c (struct save_window_data, struct saved_window):
 +      * termhooks.h (struct terminal):
 +      * process.h (struct Lisp_Process):
 +      * frame.h (struct frame):
 +      * buffer.h (struct buffer):
 +      * lisp.h (struct Lisp_Vector, struct Lisp_Char_Table)
 +      (struct Lisp_Bool_Vector, struct Lisp_Subr, struct Lisp_Hash_Table):
 +      The size field of (pseudo)vectors is now unsigned.
 +      (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG): Simplify accordingly.
 +
 +      * lisp.h (struct Lisp_Hash_Table): Move non-traced elements at the end.
 +      Turn `count' into an integer.
 +
 +      * fns.c (make_hash_table, hash_put, hash_remove, hash_clear)
 +      (sweep_weak_table, sweep_weak_hash_tables, Fhash_table_count):
 +      * print.c (print_object) <HASH_TABLE_P>: `count' is an int.
 +      * alloc.c (allocate_hash_table): Use ALLOCATE_PSEUDOVECTOR.
 +      (mark_object) <HASH_TABLE_P>: Use mark_vectorlike.
 +
 +      * alloc.c (allocate_pseudovector): New fun.
 +      (ALLOCATE_PSEUDOVECTOR): New macro.
 +      (allocate_window, allocate_terminal, allocate_frame)
 +      (allocate_process): Use it.
 +      (mark_vectorlike): New function.
 +      (mark_object) <FRAMEP, WINDOWP, BOOL_VECTOR_P, VECTORP>: Use it.
 +      (mark_terminals): Use it.
 +      (Fmake_bool_vector, Fmake_char_table, make_sub_char_table)
 +      (Fmake_byte_code): Use XSETPVECTYPE.
 +
 +      * frame.c (Fframe_parameters): Minor simplification.
 +
 +      * insdel.c (adjust_markers_for_insert): Generalize assertion checks.
 +
 +      * marker.c (Fmarker_buffer): Make test for odd case into a failure.
 +
 +      * buffer.c (Fget_buffer_create, init_buffer_once):
 +      * lread.c (defsubr):
 +      * window.c (Fcurrent_window_configuration): Use XSETPVECTYPE.
 +
 +      * lisp.h (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG): Don't let them be
 +      defined differently in the m/*.h files.
 +      (XCHAR_TABLE, XBOOL_VECTOR): Add assertion checking.
 +      (XSETPVECTYPE): New macro.
 +      (XSETPSEUDOVECTOR): Use it.
 +
 +      * buffer.c (syms_of_buffer) <local-abbrev-table>: Move from abbrev.c.
 +      (DEFVAR_PER_BUFFER, defvar_per_buffer): Move from lisp.h and lread.c.
 +
 +      * lisp.h (defvar_per_buffer, DEFVAR_PER_BUFFER):
 +      * lread.c (defvar_per_buffer):
 +      * abbrev.c (syms_of_abbrev) <local-abbrev-tabl>: Move to buffer.c.
 +
 +      * window.c (candidate_window_p): Only consider as visible frames that
 +      are on the same terminal.
 +
 +      * m/ibms390x.h (MARKBIT): Remove unused macro.
 +
 +2007-10-01  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * lread.c (Fload): Fix typo in docstring.
 +
 +2007-10-01  Michaël Cadilhac  <michael@cadilhac.name>
 +
 +      * floatfns.c (Fexpt): Manually check for overflows, so that a power
 +      of a non-zero value can't yield zero.
 +
 +2007-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * term.c (term_clear_mouse_face, term_mouse_highlight)
 +      (tty_write_glyphs_with_face): Only define is HAVE_GPM.
 +
 +      * print.c (safe_debug_print): Use XHASH.
 +
 +      * lisp.h (DECL_ALIGN, USE_LSB_TAG): Move logic to before definition of
 +      Lisp elements such as tags.
 +      (XHASH): New macro.
 +      (EQ): Use it.
 +      (SREF, SSET, STRING_COPYIN): Use SDATA.
 +      (VOID_TO_LISP, CVOID_TO_LISP, LISP_TO_VOID, LISP_TO_CVOID): Remove.
 +
 +      * alloc.c (mark_terminal): Remove left-over declaration.
 +      (enum mem_type): Replace all vector subtypes -> MEM_TYPE_VECTORLIKE.
 +      (allocate_vectorlike): Remove type argument.  Adjust callers.
 +      (live_vector_p, mark_maybe_pointer, valid_lisp_object_p):
 +      Only handle the one remaining MEM_TYPE_VECTORLIKE.
 +
 +      * alloc.c (MALLOC_BLOCK_INPUT, MALLOC_UNBLOCK_INPUT): New macros
 +      to avoid unnecessary BLOCK_INPUTs when SYNC_INPUT is used.
 +      (xmalloc, xrealloc, xfree, lisp_malloc, lisp_free, lisp_align_malloc)
 +      (lisp_align_free, make_interval, allocate_string, allocate_string_data)
 +      (make_float, Fcons, allocate_vectorlike, Fmake_symbol, allocate_misc):
 +      Use them.
 +
 +      * xfaces.c (load_face_font, free_realized_face, clear_face_gcs):
 +      Don't let signal handlers run when a GC is freed but not yet NULL'ed.
 +      (x_free_gc): Remove BLOCK_INPUT since it's now redundant.
 +
 +2007-09-28  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * Makefile.in (lisp, shortlisp): Delete server.elc, it is not
 +      loaded by default.
 +
 +2007-09-28  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * term.c (Fgpm_mouse_start): Don't signal an error if already activated
 +      on this tty.
 +      (Fgpm_mouse_stop): Only deactivate if it was activated on this tty.
 +
 +      * term.c (mouse_face_window): Rename from Qmouse_face_window.
 +      Update all users.
 +      (handle_one_term_event): Use Gpm_DrawPointer.
 +      (Fgpm_mouse_start): Rename from Fterm_open_connection.
 +      Signal errors instead of returning nil.  Always return nil.
 +      (Fgpm_mouse_stop): Rename from Fterm_close_connection.
 +      Make it a noop if gpm-mouse was not activated.
 +      (syms_of_term): Update names.
 +
 +2007-09-27  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * sysdep.c (narrow_foreground_group, widen_foreground_group): Static.
 +      (init_sys_modes): Check that gpm_tty is the current tty.
 +
 +      * alloc.c (allocate_terminal): Set the vector size to only count the
 +      lisp fields.  Initialize those to nil.
 +      (mark_object): Don't treat terminals specially.
 +      (mark_terminal): Remove.
 +      (mark_terminals): Use mark_object instead.
 +
 +      * termhooks.h (struct terminal): Move all Lisp_Object fields traced by
 +      the GC to the beginning.
 +
 +      * indent.h:
 +      * indent.c: Use EMACS_INT for ints coming from Elisp data.
 +
 +      * indent.c (Fmove_to_column): Use EMACS_INT for buffer positions.
 +
 +2007-09-25  Jason Rumney  <jasonr@gnu.org>
 +
 +      * frame.c (make_terminal_frame): Remove special case for WINDOWSNT.
 +
 +      * w32console.c (create_w32cons_output): Remove.
 +
 +      * term.c (init_tty): Call init_sys_modes on WINDOWSNT also.
 +
 +      * sysdep.c (init_sys_modes): Use set_terminal_modes_hook.
 +      (reset_sys_modes): Use reset_terminal_modes_hook.
 +
 +2007-09-24  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * eval.c (do_autoload): Don't output any message.
 +
 +2007-09-24  Juri Linkov  <juri@jurta.org>
 +
 +      * emacs.c (standard_args): Change priority of "--no-splash"
 +      from 40 to 3.  Add "--no-desktop" with the same priority.
 +
 +2007-09-23  Dmitry Antipov  <dmantipov@yandex.ru>
 +
 +      * alloc.c (gc_sweep): Check cons cell mark bits word by word
 +      and optimize the case where they are all 1.
 +
 +2007-09-23  Johannes Weiner  <hannes@saeurebad.de>
 +
 +      * lisp.h (abs): Define if not defined.
 +      * keyboard.c, sound.c, w32term.c, xfaces.c, xterm.c:
 +      Don't define `abs', since it's defined in lisp.h.
 +
 +2007-09-22  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * term.c (DEV_TTY): New macro.  Provide a definition for MS-Windows.
 +      (FRAME_TERMCAP_P) [WINDOWSNT]: Don't define to zero.
 +      (Fcontrolling_tty_p, Fresume_tty, dissociate_if_controlling_tty)
 +      (init_tty): Use DEV_TTY instead of "/dev/tty".
 +      [WINDOWSNT]: No need to protect from NAME arg being null.
 +
 +2007-09-21  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * term.c (Fsuspend_tty): Run suspend-tty-functions before cleaning
 +      up the tty state.
 +
 +2007-09-21  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * termhooks.h (term_gpm): Delete.  Use gpm_tty's NULLness instead.
 +      (gpm_tty): Change its type.
 +      * term.c (term_gpm): Delete.  Use gpm_tty's NULLness instead.
 +      (gpm_tty): Change its type and initialize it.
 +      (Fterm_open_connection): Check the frame is indeed a tty.
 +      Use the new gpm_tty.
 +      (Fterm_close_connection): Use the new gpm_tty.
 +      * keyboard.c (tty_read_avail_input): Use the new gpm_tty.
 +      * sysdep.c (init_sys_modes): term_gpm -> gpm_tty.
 +
 +2007-09-21  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * w32term.c (x_draw_glyph_string): Use strike_through_color, not
 +      underline_color, to draw strike-through.
 +
 +2007-09-21  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * lisp.h (allocate_terminal): Declare.
 +
 +      * window.c (candidate_window_p): Consider frames that are being placed
 +      by the user as somewhere between visible and iconified.
 +      (window_loop): Prefer windows on the current frame.
 +      (Fselect_window): Move the use of select-frame to the beginning so we
 +      can just delegate all the work (it'll call us back anyway).
 +
 +      * frame.c (Qdisplay_environment_variable):
 +      * frame.h (Qdisplay_environment_variable): Delete.
 +
 +      * .gdbinit (xbacktrace): Print the arg's address rather than the value
 +      of the first arg, since that value may be a union.
 +
 +      * callproc.c (child_setup, getenv_internal): Use the frame's `display'
 +      parameter rather than Qdisplay_environment_variable.  If all else
 +      fails, look for DISPLAY in initial-environment.
 +
 +2007-09-21  Glenn Morris  <rgm@gnu.org>
 +
 +      * Makefile.in (emacstool): Remove target.
 +      (lisp, shortlisp): Remove termdev.elc.
 +
 +2007-09-21  Markus Triska  <markus.triska@gmx.at>
 +
 +      * xterm.c (x_delete_display): Compile session management conditionally.
 +
 +2007-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * callproc.c (getenv_internal_1): New function.
 +      (getenv_internal): Use it.
 +      (Fgetenv_internal): Use it.  Accept an env-list as optional arg.
 +
 +      * terminal.c (get_terminal): Don't accept ints to represent terminals.
 +      (Fterminal_name, Fterminal_parameters, Fterminal_parameter)
 +      (Fset_terminal_parameter): Work with dead terminals as well.
 +      (Fmodify_terminal_parameters): Remove.
 +
 +      * terminal.c (get_terminal): Handle terminals.
 +      Make sure the terminal returned is live.
 +      (create_terminal): Use allocate_terminal.
 +      (mark_terminals): Move to alloc.c.
 +      (delete_terminal): Use terminal->name as liveness status.
 +      NULL out fields after freeing their contents.
 +      Don't deallocate the object.
 +      (Fframe_terminal): Use FRAME_TERMINAL.  Return the terminal object
 +      rather than an int.
 +      (Fterminal_live_p): Accept non-integer arguments.
 +      (Fterminal_list): Return terminal objects rather than an ints.
 +
 +      * alloc.c (enum mem_type): New member for `terminal' objects.
 +      (allocate_terminal): New function.
 +      (mark_maybe_pointer, valid_lisp_object_p, mark_object):
 +      Handle terminals.
 +      (mark_terminal): New fun.
 +      (mark_terminals): Move from terminal.c.
 +
 +      * term.c (get_tty_terminal): Don't treat output_initial specially.
 +      (Fsuspend_tty, Fresume_tty): Use terminal objects rather than ints.
 +      (delete_tty): Use terminal->name as liveness status.
 +
 +      * termhooks.h (struct terminal): Make it into a pseudovector.
 +      Remove `deleted' replaced by checking `name's nullness.
 +
 +      * print.c (print_object): Handle terminals.
 +
 +      * lisp.h (enum pvec_type): New `terminal' pseudovector.
 +      (XTERMINAL, XSETTERMINAL, TERMINALP, GC_TERMINALP): New macros.
 +
 +      * frame.c (make_terminal_frame):
 +      * keyboard.c (tty_read_avail_input):
 +      * w32term.c (x_delete_terminal):
 +      * xfns.c (Fx_create_frame, x_create_tip_frame):
 +      * xterm.c (x_delete_terminal): Use terminal->name as liveness status.
 +
 +2007-09-20  Glenn Morris  <rgm@gnu.org>
 +
 +      * process.c (Fmake_network_process): Doc fix.
 +
 +2007-09-19  Jason Rumney  <jasonr@gnu.org>
 +
 +      * dispextern.h (w32_init_fringe, mac_init_fringe): Declare rif argument.
 +
 +2007-09-19  Michaël Cadilhac  <michael@cadilhac.name>
 +
 +      * coding.c (detect_eol_type, detect_eol_type_in_2_octet_form):
 +      Fix a C warning regarding variable constness.
 +
 +      * xterm.c (handle_one_xevent): Fix a C warning.
 +
 +2007-09-18  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32fns.c (Fx_focus_frame): Rename from Fw32_focus_frame.
 +
 +2007-09-17  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * gtkutil.c (gdpy_def): New variable.
 +      (xg_initialize): Initialize gdpy_def.
 +      (xg_display_close): If no other display exists, set gdpy_def to a
 +      new connection.
 +
 +2007-09-16  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * gtkutil.c (xg_get_image_for_pixmap): Always create a GdkPixbuf
 +      when we have no file name for the icon.
 +      (xg_tool_bar_expose_callback): Remove.
 +      (xg_create_tool_bar): Don't connect expose signal to
 +      xg_tool_bar_expose_callback.
 +      (xg_get_file_with_chooser): Move GCPRO1 after declarations.
 +
 +2007-09-16  Andreas Schwab  <schwab@suse.de>
 +
 +      * alloc.c (reset_malloc_hooks): Set the hooks to the previous
 +      values instead of zapping them.
 +
 +2007-09-14  Glenn Morris  <rgm@gnu.org>
 +
 +      * fringe.c (init_fringe_bitmap) <swap_nibble>: Move to file scope.
 +      * gtkutil.c (xg_separator_p) <separator_names>: Move to file scope.
 +      * image.c (our_memory_fill_input_buffer) <buffer>: Move to file
 +      scope and rename to omfib_buffer for clarity.
 +      (gif_load) <interlace_start, interlace_increment>: Move to file scope.
 +
 +2007-09-14  Kenichi Handa  <handa@m17n.org>
 +
 +      * xterm.c (handle_one_xevent): Skip decoding if nbytes is zero.
 +
 +2007-09-13  Jason Rumney  <jasonr@gnu.org>
 +
 +      * fringe.c (w32_init_fringe, mac_init_fringe): Add rif argument.
 +
 +      * w32term.c (w32_term_init): Pass rif to w32_init_fringe.
 +
 +      * macterm.c (mac_initialize): Don't call mac_init_fringe here.
 +      (mac_term_init): Call here instead, passing rif.
 +
 +2007-09-13  Glenn Morris  <rgm@gnu.org>
 +
 +      * s/hpux.h: No longer define `static' as nothing.
 +
 +2007-09-13  Johan Bockgård  <bojohan@gnu.org>
 +
 +      * callint.c (Fcall_interactively): Remove unused var `fun'.
 +
 +2007-09-12  Romain Francoise  <romain@orebokech.com>
 +
 +      * window.c (prefer_window_split_horizontally, display_buffer):
 +      Revert 2007-09-08 change.
 +
 +2007-09-12  Glenn Morris  <rgm@gnu.org>
 +
 +      * alloca.c: Remove file.
 +      * Makefile.in (alloca): Do not undef.
 +      (allocaobj, alloca.o): Remove.
 +      (otherobj): Remove allocaobj.
 +      * keyboard.c (command_loop_1): Remove #ifdef C_ALLOCA block.
 +      * regex.c (C_ALLOCA): Remove all references and code that was only
 +      used when this was defined.
 +      * search.c (boyer_moore): Remove #ifdef C_ALLOCA block.
 +      * xmenu.c (xmenu_show): Remove #ifdef C_ALLOCA block.
 +      * m/ibms390x.h, m/sh3el.h (C_ALLOCA): Remove references to this.
 +
 +      * Makefile.in (SOURCES, unlock, relock): Delete.
 +
 +      * gtkutil.c (cnt): Rename to menu_grab_callback_cnt for clarity.
 +      (menu_grab_callback): All uses changed.
 +
 +      * xselect.c (cnt): Rename to x_reply_selection_request_cnt for clarity.
 +      (x_reply_selection_request): All uses changed.
 +
 +2007-09-11  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * lread.c (load_warn_old_style_backquotes): Change message to look
 +      better when it appears in the middle of byte-compiler messages.
 +
 +2007-09-10  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * s/darwin.h (MULTI_KBOARD): Only define for Carbon.
 +
 +      * xterm.c (x_create_terminal): Add comment.
 +
 +      * term.c (clear_tty_hooks, set_tty_hooks): Add comments.
 +
 +2007-09-10  Richard Stallman  <rms@gnu.org>
 +
 +      * xterm.c (x_term_init): Give error if can't open DISPLAY_NAME.
 +
 +2007-09-10  Michaël Cadilhac  <michael@cadilhac.name>
 +
 +      * lisp.h (struct Lisp_Subr): Rename `prompt' field to `intspec'.
 +      (DEFUN): Document `intspec', use it instead of `prompt'.
 +
 +      * eval.c (Fcommandp): Change `->prompt' to `->intspec'.
 +
 +      * data.c (Finteractive_form): If the interactive specification starts
 +      with a `(', use it as a Lisp form.
 +
 +      * fileio.c (Fset_file_modes): Add an interactive spec that reads a file
 +      name and file modes.
 +
 +      * callint.c (Fcall_interactively): Comment fixes.
 +
 +2007-09-10  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * callint.c (Fcall_interactively): Use Finteractive_form also for subrs
 +      and compiled functions.
 +
 +2007-09-08  Fredrik Axelsson  <f.axelsson@gmail.com>
 +
 +      * window.c (prefer_window_split_horizontally): New variable.
 +      (display_buffer): Consider splitting window horizontally depending
 +      on prefer_window_split_horizontally.
 +
 +2007-09-08  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * sysdep.c [WINDOWSNT]: Don't include sysselect.h.
 +
 +2007-09-07  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * s/cygwin.h (GC_MARK_STACK): Enable conservative stack marking.
 +
 +      * frame.c (x_set_frame_parameters): Check number is positive before
 +      using XFASTINT.
 +
 +      * window.c (freeze_window_start): Don't presume selected_window holds
 +      a window object.
 +      (Fdisplay_buffer): Remove `register' since `buffer' needs to be gcpro'd.
 +
 +2007-09-07  Angelo Graziosi  <Angelo.Graziosi@roma1.infn.it>  (tiny change)
 +
 +      * term.c (dissociate_if_controlling_tty): Call setsid on CYGWIN.
 +
 +2007-09-07  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * window.c (Vsplit_window_preferred_function): New var.
 +      (Fdisplay_buffer): Use it.
 +      (syms_of_window): Export, and initialize it.
 +
 +2007-09-06  Pixel  <pixel@mandriva.com>  (tiny change)
 +
 +      * image.c (gif_load): Fix bug: Handle nonexistent colormap.
 +
 +2007-09-06  Glenn Morris  <rgm@gnu.org>
 +
 +      * gtkutil.c (menu_grab_callback) <cnt>:
 +      * xselect.c (x_reply_selection_request) <cnt>: Move static
 +      variable to file scope.
 +
 +2007-09-06  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * xdisp.c (redisplay_internal): Make sure Elisp code always sees
 +      consistent values of selected_frame and selected_window.
 +
 +2007-09-04  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32console.c (initialize_w32_display): Zero unused hooks.
 +
 +2007-09-04  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * term.c (Vsuspend_tty_functions, Vresume_tty_functions)
 +      (syms_of_term, Fsuspend_tty, Fresume_tty): Undo previous change.
 +
 +2007-09-04  Jason Rumney  <jasonr@gnu.org>
 +
 +      * term.c (init_tty) [WINDOWSNT]: Add hooks that are not accessible
 +      in w32console.c.  Set up input.  Remove XXX comments that have been
 +      confirmed as correct.
 +
 +      * s/ms-w32.h (MULTI_KBOARD): Define.
 +
 +      * w32console.c (one_and_only_w32cons): Remove.
 +      (initialize_w32_display): Take terminal argument.
 +
 +      * term.c (init_tty) [WINDOWSNT]: Pass terminal to
 +      initialize_w32_display.
 +      (init_tty) [MULTI_KBOARD]: Include this code on WINDOWSNT too.
 +
 +      * termhooks.h (enum event_kind) <HORIZ_WHEEL_EVENT>: New event.
 +
 +      * keyboard.c (discard_mouse_events): Discard it.
 +      (make_lispy_event): Translate it to a lisp event.
 +      (lispy_wheel_names): Add wheel-left and right events.
 +      (syms_of_keyboard): Enlarge wheel_syms.
 +
 +      * w32fns.c (w32_wnd_proc) <WM_DROPFILES>: Merge with WM_MOUSEWHEEL.
 +      <WM_MOUSEHWHEEL>: Pass new system message to lisp.
 +
 +      * w32term.h (WM_MOUSEHWHEEL): Define if system headers don't.
 +
 +      * w32term.c (construct_mouse_wheel): Make HORIZ_WHEEL_EVENT
 +      from WM_MOUSEHWHEEL.
 +      (w32_read_socket) <WM_MOUSEHWHEEL>: Treat as WM_MOUSEWHEEL.
 +
 +      * w32fns.c (x_create_tip_frame) [MULTI_KBOARD]: Get keyboard from
 +      terminal.
 +
 +      * w32term.c (w32_create_terminal) [MULTI_KBOARD]: Create a new
 +      keyboard for the terminal.
 +
 +2007-09-04  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * term.c (Vsuspend_tty_hook): Rename from Vsuspend_tty_functions.
 +      (Vresume_tty_hook): Rename from Vresume_tty_functions.
 +      (syms_of_term): Rename suspend-tty-functions to suspend-tty-hook
 +      and resume-tty-function to resume-tty-hook.
 +      (Fsuspend_tty, Fresume_tty): Use new names.
 +
 +2007-09-02  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * gtkutil.c (update_frame_tool_bar): Handle stock name as a named icon
 +      if it starts with "n:".
 +
 +2007-08-31  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * gtkutil.c (update_frame_tool_bar): Initialize wbutton to NULL.
 +
 +2007-08-31  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * frame.h:
 +      * frame.c (Qterm_environment_variable): Remove.
 +      (syms_of_frame): Don't init and staticpro it.
 +
 +      * callproc.c (getenv_internal): Remove special case for $TERM.
 +
 +      * callproc.c (Vinitial_environment): New variable.
 +      (set_initial_environment): Initialize it.
 +      (syms_of_callproc): Declare it.
 +      (child_setup): Don't mess with TERM via Qterm_environment_variable; the
 +      TERM under which a process runs is never related to the TERM in which
 +      Emacs is running.
 +
 +2007-08-29  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * config.in (HAVE_WINDOW_SYSTEM): Don't undef MULTI_KBOARD here...
 +      * s/darwin.h: ... do it here.
 +
 +2007-08-29  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * lisp.h (set_initial_environment): Rename from set_global_environment.
 +
 +      * Makefile.in (${etc}DOC): Re-add a ${EXEEXT} which seems to have been
 +      removed by mistake on the multi-tty branch.
 +
 +      * frame.c (make_terminal_frame): Yet Another Int/Lisp_Object Mixup.
 +      (Fmodify_frame_parameters): Return a value.
 +
 +      * image.c (png_load): Comment-out var only used in commented-out code.
 +
 +      * term.c (mark_ttys): Don't bother checking top_frame (incorrectly)
 +      before passing it to mark_object.
 +
 +      * xfaces.c (internal_resolve_face_name): Return a value.
 +      (internal_resolve_face_name, resolve_face_name_error): Comment out.
 +
 +      * xfns.c (check_x_display_info): Yet Another Int/Lisp_Object Mixup.
 +      (x_icon): Comment-out var only used in commented-out code.
 +
 +2007-08-29  Romain Francoise  <romain@orebokech.com>
 +
 +      * keyboard.c (Fset_input_mode): Don't call `Fset_quit_char' if
 +      QUIT hasn't been provided.
 +
 +2007-08-29  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * callproc.c (child_setup, getenv_internal): Use the
 +      display-environment-variable and term-environment-variable frame params.
 +      (set_initial_environment): Initialise Vprocess_environment.
 +
 +      * config.in: Disable multi-keyboard support on a mac.
 +
 +      * frame.c (Qterm_environment_variable)
 +      (Qdisplay_environment_variable): New variables.
 +      (syms_of_frame): Intern and staticpro them.
 +      (Fmake_terminal_frame): Disable output method test.
 +
 +      * frame.h: Declare them here.
 +
 +      * macfns.c (x_set_mouse_color): Get rif from the frame.
 +      (x_set_tool_bar_lines): Don't use updating_frame.
 +      (mac_window): Add 2 new parameters for consistency with other systems.
 +      (Fx_create_frame): Fix doc string.  Rename the parameter.  Set the
 +      frame parameters following what is done in X11 and w32.  Don't use
 +      FRAME_MAC_DISPLAY_INFO.
 +      (Fx_open_connection, start_hourglass): Remove window-system check.
 +      (x_create_tip_frame): Get the keyboard from the terminal.
 +
 +      * macmenu.c: Reorder includes.
 +      (Fx_popup_menu): Use terminal specific mouse_position_hook.
 +
 +      * macterm.c (XTset_terminal_modes, XTreset_terminal_modes): Add a
 +      terminal parameter.
 +      (x_clear_frame): Add a frame parameter.
 +      (note_mouse_movement): Get rif from the frame.
 +      (mac_term_init): Initialize the terminal.
 +      (mac_initialize): Make static and move terminal initialization ...
 +      (mac_create_terminal): ... to this new function.
 +
 +      * macterm.h (struct mac_display_info): Add terminal.
 +      (mac_initialize): Delete declaration.
 +
 +      * puresize.h (BASE_PURESIZE): Increase base value to 1164000.
 +
 +      * sysdep.c: Comment out text after #endif.
 +
 +      * term.c (init_tty): Only use terminal->kboard when MULTI_KBOARD
 +      is defined.  Better initialize ttys in windows.  Use terminal
 +      specific mouse_position_hook.
 +
 +      * termhooks.h (union display_info): Add mac_display_info.
 +
 +      * w32fns.c (Fx_create_frame): Use kboard from the terminal.
 +      Set the default minibuffer frame, window_system and the rest of the
 +      frame parameters following what is done in X11.
 +
 +      * w32term.c (w32_initialize): Make static.
 +
 +      * xselect.c (x_handle_selection_clear): Only access
 +      terminal->kboard when MULTI_KBOARD is defined.
 +
 +      * s/darwin.h (SYSTEM_PURESIZE_EXTRA): Define here.
 +      (SYSTEM_PURESIZE_EXTRA): Only define on Carbon.
 +
 +2007-08-29  Jason Rumney  <jasonr@gnu.org>
 +
 +      * frame.c (Fdelete_frame): Only get kboard when MULTI_KBOARD defined.
 +      (make_terminal_frame) [WINDOWSNT]: Initialize terminal.
 +
 +      * fringe.c (w32_init_fringe w32_reset_fringes) [HAVE_NTGUI]:
 +      (mac_init_fringe) [MAC_OS]: Get rif from selected_frame.
 +
 +      * keyboard.c (restore_kboard_configuration): Only define when
 +      MULTI_KBOARD defined.
 +
 +      * makefile.w32-in: Update dependancies from Makefile.in.
 +      (OBJ1): Add terminal.$(O)
 +
 +      * term.c (dissociate_if_controlling_tty) [WINDOWSNT]:
 +      Don't define function body.
 +      (init_tty) [WINDOWSNT]: Use selected_frame for initializing.
 +
 +      * termhooks.h (display_info) [WINDOWSNT]: Add w32.
 +
 +      * w32.c (request_sigio, unrequest_sigio): Remove.
 +
 +      * w32console.c (w32con_move_cursor, w32con_clear_to_end)
 +      (w32con_clear_frame, w32con_clear_end_of_line)
 +      (w32con_ins_del_lines, w32con_insert_glyphs, w32con_write_glyphs)
 +      (w32con_delete_glyphs, w32con_set_terminal_window)
 +      (scroll_line, w32_sys_ring_bell): Add frame arg.
 +      (w32con_set_terminal_modes, w32con_reset_terminal_modes):
 +      Add terminal arg.
 +      (PICK_FRAME): Remove.
 +      (w32con_write_glyphs): Use frame specific terminal coding.
 +      (one_and_only_w32cons): New global variable.
 +      (initialize_w32_display): Use it for storing hooks.
 +      (create_w32cons_output): New function.
 +
 +      * w32inevt.c, w32inevt.h (w32_console_read_socket): Make first
 +      arg a frame.
 +
 +      * w32fns.c (x_create_tip_frame): Set terminal and ref count.
 +      Set window_system.
 +      (x_set_tool_bar_lines): Don't use updating_frame.
 +      (Fx_create_frame): Set terminal and ref count.
 +      (Fx_open_connection): Remove window-system check.
 +
 +      * w32menu.c (Fx_popup_menu): Use terminal specific mouse_position_hook.
 +
 +      * w32term.c (w32_term_init): Call add_keyboard_wait_descriptor.
 +      (w32_set_terminal_modes, w32_reset_terminal_modes): Add terminal arg.
 +      (x_clear_frame, x_delete_glyphs, w32_ring_bell, x_ins_del_lines):
 +      Add frame arg.
 +      (x_delete_terminal, w32_create_terminal): New functions.
 +      (w32_term_init): Create a terminal.
 +      (w32_initialize): Move terminal specific initialization to
 +      w32_create_terminal.
 +
 +      * w32term.h (x_output): Remove foreground_pixel and background_pixel.
 +      (w32_clear_rect, w32_clear_area): Use background from frame.
 +      (w32_display_info): Add terminal.
 +      (w32_sys_ring_bell, x_delete_display): Declare here.
 +
 +      * xdisp.c (display_menu_bar) [HAVE_NTGUI]: Check frame type.
 +
 +      * s/ms-w32.h (SYSTEM_PURESIZE_EXTRA): Bump to 50k.
 +
 +2007-08-29  Kalle Olavi Niemitalo  <kon@iki.fi>  (tiny change)
 +
 +      * keyboard.c (interrupt_signal, handle_interrupt, Fset_quit_char):
 +      Fix get_named_tty calls for the controlling tty.
 +
 +2007-08-29  ARISAWA Akihiro  <ari@mbf.ocn.ne.jp>  (tiny change)
 +
 +      * term.c (dissociate_if_controlling_tty) [USG]: Fix parse error.
 +
 +2007-08-29  Yoshiaki Kasahara  <kasahara@nc.kyushu-u.ac.jp>  (tiny change)
 +
 +      * term.c (tty_insert_glyphs): Add missing first parameter.
 +
 +2007-08-29  Károly Lőrentey  <karoly@lorentey.hu>
 +
 +      * buffer.c (Fbuffer_list, Fbury_buffer):
 +      Take frame->buried_buffer_list into account.
 +
 +      * cm.c (current_tty): New variable, for cmputc().
 +      (cmputc): Use it.
 +      (cmcheckmagic): Add tty parameter, look up terminal streams there.
 +      (calccost): Add tty parameter.  Use emacs_tputs() instead of tputs().
 +      (cmgoto): Add tty parameter.  Pass it on to calccost().
 +      Use emacs_tputs() instead of tputs().
 +
 +      * cm.h (emacs_tputs): New macro to set current_tty, and then call
 +      tputs().
 +      (current_tty): New variable, for cmputc().
 +      (cmcheckmagic, cmputc, cmgoto): Add prototypes.
 +
 +      * eval.c (unwind_to_catch): Don't call x_fully_uncatch_errors.
 +      (internal_condition_case, internal_condition_case_1)
 +      (internal_condition_case_2): Don't abort when x_catching_errors.
 +
 +      * fns.c (Fyes_or_no_p): Don't try to open an X dialog on tty terminals.
 +      (Fy_or_n_p): Likewise.  Use temporarily_switch_to_single_kboard to
 +      prevent crashes caused by bogus longjmps in read_char.
 +
 +      * keymap.h (Fset_keymap_parent): Add EXFUN.
 +
 +      * macterm.h (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL)
 +      * w32term.h (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL):
 +      Remove redundant definition.
 +
 +      * macfns.c (x_set_mouse_color, x_make_gc):
 +      Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
 +
 +      * w32term.c (x_free_frame_resources):
 +      Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
 +      (w32_initialize): Use the accessor macros for terminal characteristics.
 +
 +      * macterm.c (mac_initialize): Use Fset_input_interrupt_mode.
 +      Use the accessor macros for terminal characteristics.
 +      * msdos.c (internal_terminal_init): Use the accessor macros for
 +      terminal characteristics.
 +      (ScreenVisualBell, internal_terminal_init):
 +      Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
 +
 +      * termopts.h (no_redraw_on_reenter): Declare.
 +
 +      * alloc.c (emacs_blocked_malloc): Disable mallopt call.
 +      (mark_terminals, mark_ttys): Declare.
 +      (Fgarbage_collect): Call them.
 +      (mark_object): Mark buried_buffer_list.
 +
 +      * prefix-args.c: Include stdlib.h for exit.
 +
 +      * syssignal.h: Add comment.
 +
 +      * indent.c: Include stdio.h.
 +
 +      * window.h (Vinitial_window_system): Declare.
 +      (Vwindow_system): Delete declaration.
 +
 +      * fontset.c (Finternal_char_font): Use FRAME_RIF.
 +
 +      * image.c (lookup_image): Don't initialize `c' until the xasserts
 +      have been run.
 +
 +      * gtkutil.c (xg_create_frame_widgets): Use FRAME_BACKGROUND_PIXEL and
 +      FRAME_FOREGROUND_PIXEL.
 +
 +      * print.c (print_preprocess): Don't lose print_depth levels while
 +      iterating.
 +
 +      * widget.c (update_from_various_frame_slots):
 +      Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
 +
 +      * window.c (set_window_buffer): Don't call clear_mouse_face on tty
 +      frames.
 +      (window_internal_height): Remove bogus make_number call.
 +      (init_window_once): Call make_terminal_frame with two zero parameters.
 +
 +      * fileio.c (Fread_file_name): Update comment.
 +
 +      * callint.c (Fcall_interactively):
 +      Use temporarily_switch_to_single_kboard instead of single_kboard_state.
 +      Make sure it is correctly unwound.
 +
 +      * xsmfns.c (x_session_close): New function.
 +
 +      * coding.h (terminal_coding, safe_terminal_coding, keyboard_coding):
 +      Delete declarations.
 +
 +      * xterm.h: Remove declaration for x_fully_uncatch_errors.
 +      (x_output): Remove background_pixel and foreground_pixel fields.
 +      (x_display_info): Add new field TERMINAL.  Remove KBOARD field.
 +      (x_delete_device, x_session_close): Declare.
 +
 +      * lread.c: Include setjmp.h.  Update declaration of `read_char'.
 +      (read_filtered_event): Call `read_char' with a local
 +      `wrong_kboard_jmpbuf'.
 +
 +      * minibuf.c (read_minibuf): Call temporarily_switch_to_single_kboard.
 +      Don't call single_kboard_state.  Use FRAME_RIF.
 +
 +      * process.c (Fmake_network_process): Don't unrequest_sigio on modern
 +      systems.
 +
 +      * lisp.h (set_process_environment): Rename to `set_global_environment'.
 +      (Fframe_with_environment, Fset_input_meta_mode)
 +      (Fset_quit_char): EXFUN.
 +      (x_create_device, tty_output, terminal, tty_display_info): Declare.
 +      (init_sys_modes, reset_sys_modes): Update prototypes.
 +      (init_all_sys_modes, reset_all_sys_modes): New prototypes.
 +
 +      * keyboard.h (struct kboard): Add new fields Vlocal_function_key_map,
 +      Vlocal_key_translation_map, and Vkeyboard_translate_table.
 +      (Vfunction_key_map, Vkeyboard_translate_table, single_kboard_state):
 +      Delete declarations.
 +      (Vfunction_key_map, Vkey_translation_map, push_kboard, pop_kboard)
 +      (temporarily_switch_to_single_kboard, tty_read_avail_input):
 +      New declarations.
 +
 +      * emacs.c (main): Don't call init_sys_modes(), the new term_init()
 +      already does that during init_display().  Call syms_of_keymap
 +      before syms_of_keyboard.  Call `syms_of_terminal'.
 +      Call set_initial_environment, not set_process_environment.
 +      (shut_down_emacs): Call reset_all_sys_modes() instead of
 +      reset_sys_modes().
 +
 +      * xfaces.c (x_free_gc): Protect xassert with GLYPH_DEBUG.
 +      (internal_resolve_face_name, resolve_face_name_error): New functions.
 +      (resolve_face_name): Protect against loops and errors thrown by Fget.
 +      (realize_default_face): Don't use FRAME_FONT unless frame is an X frame.
 +      (Ftty_supports_face_attributes_p): Update tty_capable_p call.
 +
 +      * scroll.c: Replace CURTTY() with local variables throughout the
 +      file (where applicable).
 +      (calculate_scrolling, calculate_direct_scrolling)
 +      (scrolling_1, scroll_cost): Use the accessor macros for terminal
 +      characteristics.
 +
 +      * keymap.c (Vfunction_key_map): Remove.
 +      (Fdescribe_buffer_bindings): Update references to Vfunction_key_map.
 +      (syms_of_keymap): Remove DEFVAR for Vfunction_key_map.
 +      (Vkey_translation_map): Remove.
 +      (syms_of_keymap): Remove DEFVAR for key-translation-map.
 +      (Fdescribe_buffer_bindings)
 +      (read_key_sequence, init_kboard, syms_of_keyboard, mark_kboards):
 +      Update for terminal-local key-translation-map.
 +
 +      * Makefile.in (callproc.o): Update dependencies.
 +      (lisp, shortlisp): Add termdev.elc.
 +      (obj): Add terminal.o.
 +      (terminal.o): Add dependencies.
 +      [HAVE_CARBON]: Make terminal.o depend on macgui.h.
 +      (data.o, fns.o): Add termhooks.h dependency.
 +      (SOME_MACHINE_LISP): Add dnd.elc.
 +      (minibuf.o): Fix typo.
 +      Update dependencies.
 +
 +      * data.c (do_symval_forwarding, store_symval_forwarding)
 +      (find_symbol_value): Use the selected frame's keyboard, not
 +      current_kboard.
 +
 +      * .gdbinit (init_sys_modes): Use Vinitial_window_system instead of
 +      Vwindow_system.
 +
 +      * xmenu.c (Fx_menu_bar_open) [USE_X_TOOLKIT, USE_GTK]: Rename from
 +      Fmenu_bar_open.
 +      (syms_of_xmenu): Update defsubr.
 +      (mouse_position_for_popup, Fx_popup_menu)
 +      (Fx_popup_dialog, x_activate_menubar, update_frame_menubar)
 +      (set_frame_menubar, free_frame_menubar)
 +      (create_and_show_popup_menu, xmenu_show)
 +      (create_and_show_dialog, xdialog_show, xmenu_show): Abort if not
 +      an X frame.
 +
 +      * xselect.c (x_own_selection): Abort if not an X frame.
 +      (some_frame_on_display): Check if it is an X frame.
 +      (x_handle_selection_clear): Deal with MULTI_KBOARD.
 +
 +      * coding.c: Include frame.h and termhooks.h.
 +      (terminal_coding, keyboard_coding): Delete.
 +      (Fset_terminal_coding_system_internal)
 +      (Fset_keyboard_coding_system_internal)
 +      (Fkeyboard_coding_system)
 +      (Fterminal_coding_system): Add a terminal parameter.
 +      Get terminal_coding from the terminal.
 +      (init_coding_once): Don't call setup_coding_system here.
 +
 +      * dispextern.h (set_scroll_region, turn_off_insert)
 +      (turn_off_highlight, background_highlight, clear_end_of_line_raw)
 +      (tty_clear_end_of_line, tty_setup_colors)
 +      (delete_tty, updating_frame)
 +      (produce_special_glyphs, produce_glyphs, write_glyphs)
 +      (insert_glyphs): Remove.
 +      (raw_cursor_to, clear_to_end, tty_turn_off_insert)
 +      (tty_turn_off_highlight, get_tty_size): Add declaration.
 +      (tabs_safe_p, init_baud_rate, get_tty_terminal): Update prototypes.
 +
 +      * frame.h (enum output_method): Add output_initial.
 +      (struct x_output): Delete.
 +      (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL):
 +      Access foreground_pixel and background_pixel directly from the frame.
 +      (tty_display): Delete.
 +      (struct frame): Add buried_buffer_list, foreground_pixel,
 +      background_pixel and terminal.  Delete kboard.
 +      (union output_data): Add tty.
 +      (FRAME_KBOARD): Get the kboard from the terminal.
 +      (FRAME_INITIAL_P): New macro.
 +      (Qtty, Qtty_type, Qterminal, Qterminal_live_p, Qenvironment)
 +      (Qterm_environment_variable, Qdisplay_environment_variable)
 +      (make_terminal_frame, Qburied_buffer_list, Qwindow_system):
 +      New declarations.
 +
 +      * termchar.h (tty_output, tty_display_info): New structures.
 +      (tty_list): Declare.
 +      (FRAME_TTY, CURTTY): New macros.
 +      (must_write_spaces, min_padding_speed, fast_clear_end_of_line)
 +      (line_ins_del_ok, char_ins_del_ok, scroll_region_ok)
 +      (scroll_region_cost, memory_below_frame, fast_clear_end_of_line)
 +      (dont_calculate_costs, no_redraw_on_reenter): Remove declarations.
 +
 +      * callproc.c: Include frame.h and termhooks.h, for terminal
 +      parameters.
 +      (add_env): New function.
 +      (child_setup): Use it.
 +      (child_setup, getenv_internal): Handle the new Vprocess_environment.
 +      (getenv_internal): Fix get_terminal_param call.
 +      (Fgetenv_internal, egetenv): Update doc.
 +      (syms_of_callproc): Initialize Vprocess_environment to nil.
 +      Register and initialize them.  Remove obsolete defvars.  Update doc
 +      strings.
 +      (child_setup): Handle Vlocal_environment_variables.
 +      (getenv_internal): Add terminal parameter.
 +      Handle Vlocal_environment_variables.
 +      (Fgetenv_internal): Add terminal parameter.
 +      (child_setup, getenv_internal, Fgetenv_internal): Store the local
 +      environment in a frame (not terminal) parameter.  Update doc strings.
 +      (set_initial_environment): Rename from set_global_environment.
 +      Store Emacs environment in initial frame parameter.
 +
 +      * xdisp.c (redisplay_internal): Update references to
 +      `previous_terminal_frame'.
 +      (display_mode_line, Fformat_mode_line): Replace calls to
 +      `push_frame_kboard' with `push_kboard'.
 +      (get_glyph_string_clip_rects): Add extra parentheses and
 +      braces to prevent compiler warnings.
 +      (calc_pixel_width_or_height): Add xassert to check that the
 +      frame is alive.  Don't call `lookup_image' on a termcap frame.
 +      (message2_nolog, message3_nolog, redisplay_internal)
 +      (set_vertical_scroll_bar, redisplay_window, check_x_display_info)
 +      (x_set_scroll_bar_foreground, x_set_scroll_bar_background)
 +      (Fx_create_frame, Fxw_display_color_p, Fx_display_grayscale_p)
 +      (Fx_display_pixel_width, Fx_display_pixel_height)
 +      (Fx_display_planes, Fx_display_color_cells)
 +      (Fx_server_max_request_size, Fx_server_vendor, Fx_server_version)
 +      (Fx_display_screens, Fx_display_mm_height, Fx_display_mm_width)
 +      (Fx_display_backing_store, Fx_display_visual_class)
 +      (Fx_display_save_under, Fx_close_connection, x_create_tip_frame):
 +      Use FRAME_TERMINAL_P, FRAME_WINDOW_P, FRAME_TTY and FRAME_RIF.
 +
 +      * xfns.c (x_set_foreground_color x_set_background_color)
 +      (x_set_mouse_color, x_set_cursor_color, x_make_gc):
 +      Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
 +      (Fx_create_frame, x_create_tip_frame, build_string, x_window)
 +      (Fx_create_frame, x_create_tip_frame): Don't create frames on a
 +      terminal that is being deleted.
 +      (Fx_create_frame): Use `store_frame_param' to set `window-system'
 +      frame parameter, and make sure it overrides any user-supplied setting.
 +      (Fx_close_connection, Fx_synchronize): Unify argument names with
 +      the rest of the DEFUNs.
 +
 +      * dispnew.c (Fsend_string_to_terminal): Update call to
 +      `get_tty_terminal'.
 +      (Fredraw_frame, Fsend_string_to_terminal)
 +      (Fsend_string_to_terminal, init_display): Use FRAME_RIF,
 +      FRAME_TERMCAP_P and FRAME_TTY.
 +      (window_change_signal): Don't believe width/height values that are
 +      impossibly small.
 +      (Vinitial_window_system): Rename from Vwindow_system.
 +      (termscript, Wcm, rif): Delete.
 +
 +      * termhooks.h (struct terminal): New struct containing the
 +      previously global text display hooks and new members NAME,
 +      DELETED and PARAM_ALIST.
 +      (FRAME_TERMINAL, TERMINAL_TERMINAL_CODING)
 +      (TERMINAL_KEYBOARD_CODING, TERMINAL_ACTIVE_P, FRAME_WINDOW_P)
 +      (FRAME_RIF): New macros.
 +      (get_terminal_param, get_device): New declarations.
 +      (termscript): Delete declaration.
 +
 +      * xterm.c (x_initialize): Use Fset_input_interrupt_mode.
 +      (XTflash, x_free_frame_resources, x_scroll_bar_create)
 +      (x_scroll_bar_set_handle): Use FRAME_BACKGROUND_PIXEL and
 +      FRAME_FOREGROUND_PIXEL.
 +      (x_fully_uncatch_errors): Disable definition.
 +      (x_scroll_bar_expose): Fix reference to foreground pixel.
 +      (XTread_socket): Disable loop on all X displays.
 +      (x_delete_terminal): Don't set terminal->deleted and let
 +      delete_terminal delete the frames on the terminal.
 +      (x_delete_display): Doc update to reflect changes in
 +      delete_terminal.
 +      (x_display_info) <terminal>: Move member earlier in the struct.
 +      (deleting_tty): Remove old variable.
 +      (Fsuspend_tty): Call clear_tty_hooks.
 +      (Fresume_tty, init_tty): Call set_tty_hooks.
 +      (Ftty_display_color_p, Ftty_display_color_cells): Don't throw
 +      errors on X frames.
 +      (x_catch_errors_unwind): Abort if x_error_message is NULL.
 +      (handle_one_xevent): Initialize `f' to NULL.
 +      (x_delete_terminal, x_create_terminal): New functions.
 +      (XTset_terminal_modes, XTreset_terminal_modes)
 +      (XTread_socket, x_connection_closed, x_term_init)
 +      (x_term_init, x_delete_display): Add terminal parameter.
 +      (x_term_init) [!HAVE_GTK_MULTIDISPLAY]: Refuse to create secondary
 +      X connections.
 +
 +      * frame.c: Include termchar.h.
 +      (Qterminal, Qterminal_live_p, Qburied_buffer_list, Qtty, Qtty_type)
 +      (Qwindow_system, Qenvironment, Qterm_environment_variable)
 +      (Qdisplay_environment_variable): New vars.
 +      (Fframep): Deal with output_initial.
 +      (Fframe-live-p): Doc fix.
 +      (Fwindow-system): New function.
 +      (x_set_screen_gamma, store_frame_param): Fix compilation errors.
 +      (make_terminal_frame): Don't create frames on a terminal that is
 +      being deleted.  Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
 +      (store_frame_param): Check for found_for_frame before calling XFRAME.
 +      (Fmake_terminal_frame): Handle NULL tty names correctly.
 +      (syms_of_frame): Enhance doc string of `default-frame-alist'.
 +      (Fdelete_frame): Remove unused variable `count'.  Don't allow other
 +      frames to refer to a deleted frame in their 'environment parameter.
 +      (Fframe_with_environment): New function.
 +      (syms_of_frame): Defsubr it.  Initialize and staticpro Qenvironment.
 +      (get_future_frame_param): New function.
 +      (Fmake_terminal_frame): Use it.
 +      (x_set_frame_parameters, x_set_screen_gamma): Use FRAME_RIF.
 +
 +      * sysdep.c (init_sys_modes, reset_sys_modes): Update for renames.
 +      * sysdep.c (reset_sys_modes): Update for renames.
 +
 +      * keyboard.c (tty_read_avail_input): New function.
 +      (Fset_input_interrupt_mode, Fset_output_flow_control): New functions.
 +      (syms_of_keyboard): Defsubr them.
 +      (Fset_input_meta_mode, Fset_quit_char): New functions.
 +      (Fset_input_mode): Split to above functions.
 +      (read_char_minibuf_menu_prompt): Add wrong_kboard_jmpbuf
 +      parameter.  Use it in call to `read_char'.
 +      (read_char): Declare.  Update call to `read_char_minibuf_menu_prompt'.
 +      Set wrong_kboard_jmpbuf correctly in recursive calls.
 +      Use current_kboard to access Vkeyboard_translate_table.
 +      Enhance comment before extra longjmp to wrong_kboard_jmpbuf.
 +      Add wrong_kboard_jmpbuf parameter to allow for recursive calls.
 +      Update longjmp invocations.  Remember the original current_kboard,
 +      and longjmp to `wrong_kboard_jmpbuf' when a filter, timer or sentinel
 +      changes it.  Comment out unnecessary calls to
 +      `record_single_kboard_state' and `any_kboard_state'.
 +      Update recursive calls.
 +      (wrong_kboard_jmpbuf): Remove global variable.
 +      (read_key_sequence): Remove unused variable wrong_kboard_jmpbuf.
 +      Handle deleted interrupted_kboards correctly; that is a legal
 +      case.  Add `wrong_kboard_jmpbuf' local variable.  Update setjmp
 +      and read_char calls.  Abort if interrupted_kboard died in read_char.
 +      (any_kboard_state, single_kboard_state)
 +      (push_frame_kboard): Remove function.
 +      (pop_kboard): Switch out of single_kboard mode if the kboard has
 +      been deleted.  Remove unused variable.  Help debugging by not
 +      changing current_kboard unnecessarily.  Set current_kboard to the
 +      kboard of the selected frame when the stored kboard object has
 +      been deleted before pop_kboard.
 +      (temporarily_switch_to_single_kboard): Change first parameter to a
 +      frame pointer.  Throw an error when caller wants to change kboards
 +      while in single_kboard mode.  Don't push_kboard if we weren't in
 +      single kboard state.  Don't pop_kboard if we popped into any
 +      kboard state.
 +      (restore_kboard_configuration): Abort if pop_kboard changed the
 +      kboard in single_kboard mode.  Call pop_kboard only after setting
 +      up single_kboard mode.
 +      (Frecursive_edit): Switch to single_kboard mode only in nested
 +      command loops.
 +      (cmd_error, command_loop, command_loop_1, timer_check):
 +      Comment out unnecessary call to `any_kboard_state' and
 +      `record_single_kboard_state'.
 +      (delete_kboard): Exit single_kboard mode if we have just deleted
 +      that kboard.  Use FRAME_KBOARD.
 +      (interrupt_signal): Use `Fkill_emacs' to exit Emacs, not
 +      `fatal_error_signal'.
 +      (record_single_kboard_state): Don't push_kboard if we weren't in
 +      single kboard state.  Don't pop_kboard if we popped into any
 +      kboard state.
 +      (push_frame_kboard): Rename to push_kboard.
 +      (kbd_buffer_get_event): Use FRAME_TERMINAL.
 +      (read_avail_input): Read input from all terminals.
 +      (mark_kboards): Also mark Vkeyboard_translate_table.
 +      (kbd_buffer_store_event_hold): Simplify condition.
 +      (read_key_sequence): Reinitialize fkey and keytran at each replay.
 +      (Vkeyboard_translate_table): Move to struct kboard.
 +      (init_kboard): Initialize Vkeyboard_translate_table.
 +      (syms_of_keyboard): Use DEFVAR_KBOARD to define
 +      Vkeyboard_translate_table.  Update doc strings.  Update docs of
 +      local-function-key-map and function-key-map.
 +
 +      * terminal.c: New file.
 +
 +      * term.c: Include errno.h.
 +      (Vring_bell_function, device_list, initial_device)
 +      (next_device_id, ring_bell, update_begin, update_end)
 +      (set_terminal_window, cursor_to, raw_cursor_to)
 +      (clear_to_end, clear_frame, clear_end_of_line)
 +      (write_glyphs, insert_glyphs, delete_glyphs, ins_del_lines)
 +      (Fdisplay_name, create_device, delete_device): Move to terminal.c.
 +      (syms_of_term): Move their initialization to terminal.c.
 +      (get_tty_terminal, Fdisplay_tty_type, Ftty_display_color_p)
 +      (Ftty_display_color_cells)
 +      (Ftty_no_underline, Fsuspend_tty, Fresume_tty, create_tty_output)
 +      (clear_tty_hooks, set_tty_hooks)
 +      (init_tty, maybe_fatal): New functions.
 +      (Ftty_type): Return nil if terminal is not on a tty instead of
 +      throwing an error.  Doc update.
 +      (syms_of_term) <Vsuspend_tty_functions, Vresume_tty_functions>:
 +      Doc update.  Initialize new subrs and variables.
 +      (delete_tty): Use terminal->deleted.
 +      (tty_set_terminal_modes): Rename from set_terminal_modes.
 +      (tty_reset_terminal_modes): Rename from reset_terminal_modes.
 +      (set_scroll_region): Rename to `tty_set_scroll_region'.
 +      (turn_on_insert): Rename to `tty_turn_on_insert'.
 +      (turn_off_insert): Rename to `tty_turn_off_insert'.
 +      (turn_off_highlight): Rename to `tty_turn_off_highlight'.
 +      (turn_on_highlight): Rename to `tty_turn_on_highlight'.
 +      (toggle_highligh): Rename to `tty_toggle_highlight'.
 +      (background_highlight): Rename to `tty_background_highlight'.
 +      (highlight_if_desired): Rename to `tty_highlight_if_desired'.
 +      (tty_ring_bell, tty_update_end, tty_set_terminal_window)
 +      (tty_set_scroll_region, tty_background_highlight)
 +      (tty_cursor_to, tty_raw_cursor_to, tty_clear_to_end)
 +      (tty_clear_frame, tty_clear_end_of_line, tty_write_glyphs)
 +      (tty_insert_glyphs, tty_delete_glyphs, tty_ins_del_lines)
 +      (term_get_fkeys, tty_setup_colors, dissociate_if_controlling_tty):
 +      Add static modifier.
 +      (tty_reset_terminal_modes, tty_set_terminal_window)
 +      (tty_set_scroll_region, tty_background_highlight)
 +      (tty_highlight_if_desired, tty_cursor_to)
 +      (tty_raw_cursor_to, tty_clear_to_end, tty_clear_frame)
 +      (tty_clear_end_of_line, tty_write_glyphs, tty_insert_glyphs)
 +      (tty_delete_glyphs, tty_ins_del_lines, turn_on_face): Update for
 +      renames.
 +
 +2007-08-28  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * keyboard.c: Qrtl is new.
 +      (parse_tool_bar_item): Handle :rtl keyword.
 +      (syms_of_keyboard): Intern :rtl keyword.
 +
 +      * dispextern.h (enum tool_bar_item_idx): Add TOOL_BAR_ITEM_RTL_IMAGE.
 +
 +      * gtkutil.c (xg_tool_bar_expose_callback): Just do SET_FRAME_GARBAGED
 +      so no Lisp code is executed.
 +      (file_for_image, find_rtl_image): New functions.
 +      (xg_get_image_for_pixmap): Use file_for_image.
 +      (update_frame_tool_bar): If direction is RTL, use RTL image if
 +      defined.  Use Gtk stock images if defined.
 +
 +2007-08-27  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
 +
 +      * macterm.c (x_draw_composite_glyph_string_foreground): Draw rectangle
 +      for nonexistent or zero-width glyph in composition glyph.
 +
 +2007-08-25  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * m/amdx86-64.h: Redirect to intel386.h if compiling for i386.
 +
 +      * xdisp.c (Finvisible_p): New function.
 +      (syms_of_xdisp): defsubr it.
 +
 +2007-08-24  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * image.c (syms_of_image) <image-library-alist, cross-disabled-images>:
 +      Doc fixes.
 +
 +2007-08-24  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
 +
 +      * mac.c [MAC_OSX] (select_and_poll_event, sys_select): Fix last changes.
 +
 +2007-08-24  Martin Rudalics  <rudalics@gmx.at>
 +
 +      * fileio.c (Finsert_file_contents): Consult CHARS_MODIFF to tell
 +      whether decoding has modified buffer contents.
 +
 +2007-08-24  Jason Rumney  <jasonr@gnu.org>
 +
 +      * image.c [HAVE_NTGUI]: Define dynamic loaded functions for SVG.
 +      (Qgdk_pixbuf, Qglib) [HAVE_NTGUI]: New symbols.
 +      (syms_of_image) [HAVE_NTGUI]: Intern and staticpro them.
 +      (init_svg_functions) [HAVE_NTGUI]: New function.
 +      (fn_g_type_init, fn_g_object_unref, fn_g_error_free): New #defines.
 +      (svg_load_image): Use them.
 +      (svg_load_image) [HAVE_NTGUI]: Implement background.
 +
 +2007-08-23  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
 +
 +      * Makefile.in (RSVG_LIBS, RSVG_CFLAGS): New variables.
 +      (ALL_CFLAGS): Use ${RSVG_CFLAGS} instead of @RSVG_CFLAGS@.
 +      (LIBX): Remove @RSVG_LIBS@.
 +      (LIBES): Add $(RSVG_LIBS).
 +
 +      * image.c (svg_load_image): Blend with specified background if exists.
 +      Use IMAGE_BACKGROUND.  Add Mac OS Support.
 +
 +      * mac.c (wakeup_from_rne_enabled_p) [MAC_OSX]: Remove variable.
 +      (ENABLE_WAKEUP_FROM_RNE, DISABLE_WAKEUP_FROM_RNE) [MAC_OSX]:
 +      Remove macros.
 +      [MAC_OSX] (socket_callback): Do nothing.
 +      [MAC_OSX] (select_and_poll_event): Use CFRunLoopRunInMode instead of
 +      ReceiveNextEvent.
 +      [MAC_OSX] (sys_select): Likewise.  Don't set context as argument to
 +      socket_callback.
 +      (mac_wakeup_from_rne) [MAC_OSX]: Do nothing.
 +
 +2007-08-22  Glenn Morris  <rgm@gnu.org>
 +
 +      * image.c (x_find_image_file): Search in etc/images/ rather than etc/.
 +
 +2007-08-22  Paul Pogonyshev  <pogonyshev@gmx.net>
 +
 +      * Makefile.in (ALL_CFLAGS, LIBX): Add RSVG_LIBS.
 +
 +      * image.c: Add support for SVG images.  Some additional comments
 +      by Joakim Verona <joakim@verona.se>.  When HAVE_RSVG is defined:
 +      (svg_image_p): New function to test for SVG image.
 +      (svg_load): New function to load SVG image.
 +      (svg_load_image): New function, helper for svg_load.
 +      (Qsvg): New Lisp_object.
 +      (svg_keyword_index): New enum.
 +      (svg_format): New static `image_keyword' struct.
 +      (svg_type): New static `image_type' struct.
 +      (librsvg/rsvg.h): Include it.
 +
 +2007-08-23  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * lread.c (load_warn_old_style_backquotes): Fix up array size typo.
 +
 +2007-08-22  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * lread.c (Qold_style_backquotes): New var.
 +      (syms_of_lread): Init and staticpro it.
 +      (load_warn_old_style_backquotes): New fun.
 +      (Fload): Use them to warn about old style backquotes.
 +      (end_of_file_error, Fload): Remove unused vars.
 +
 +      * lisp.h (Fclear_face_cache, Fx_send_client_event): Declare.
 +
 +      * lread.c (Vold_style_backquotes): New var.
 +      (syms_of_lread): Init and export it to Elisp.
 +      (read1): Set it when we find an old-style (back)quote.
 +
 +2007-08-22  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32reg.c (SYSTEM_DEFAULT_RESOURCES): Add missing NULL terminator.
 +
 +2007-08-22  Katsumi Yamaoka  <yamaoka@jpl.org>
 +
 +      * puresize.h (BASE_PURESIZE): Increase to 1140000.
 +
 +2007-08-19  Richard Stallman  <rms@gnu.org>
 +
 +      * eval.c (Ffunction, Fquote): Signal error if not 1 argument.
 +
 +2007-08-19  Andreas Schwab  <schwab@suse.de>
 +
 +      * alloc.c (pure): Round PURESIZE up.
 +
 +2007-08-17  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * xterm.c (handle_one_xevent): Remove check that mouse click is in
 +      active frame.
 +
 +2007-08-16  Richard Stallman  <rms@gnu.org>
 +
 +      * eval.c (Fcommandp): Add parens to clarify.
 +
 +      * minibuf.c (Fall_completions): Use enum for type of table.
 +
 +      * emacs.c (USAGE2): Improve text.
 +
 +2007-08-15  Philippe Waroquiers  <philippe.waroquiers@eurocontrol.int>
 +
 +      * term.c (tty_default_color_capabilities): Declare static
 +      variables in file scope, to avoid HPUX compiler problem.
 +
 +2007-08-13  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * gtkutil.c (update_frame_tool_bar): Use -1 as index
 +      to gtk_toolbar_insert.
 +
 +2007-08-13  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * fileio.c (Finsert_file_contents): Yet Another Int/Lisp_Object Mixup.
 +
 +      * insdel.c (reset_var_on_error): New fun.
 +      (signal_before_change, signal_after_change):
 +      Use it to reset (after|before)-change-functions to nil in case of error.
 +      Bind inhibit-modification-hooks to t.
 +      Don't bind (after|before)-change-functions to nil while they run.
 +
 +2007-08-11  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
 +
 +      * xterm.c (x_draw_image_glyph_string): Adjust stipple origin when
 +      filling pixmap with stippled background.
 +
 +2007-08-10  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
 +
 +      * macterm.c [TARGET_API_MAC_CARBON] (mac_handle_window_event):
 +      Don't use invisible frame as parent window for repositioning.
 +
 +2007-08-10  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * print.c (new_backquote_output): Rename from old_backquote_output.
 +      (print): Inverse its logic (according to its name) so as to match the
 +      behavior of new_backquote_flag in lread.c.
 +
 +2007-08-09  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
 +
 +      * gmalloc.c (posix_memalign): New function.
 +
 +      * macterm.c (frame_highlight, frame_unhighlight): Don't call
 +      ActivateControl/DeactivateControl here.
 +      [USE_MAC_TOOLBAR] (free_frame_tool_bar): Suppress animation when
 +      frame-notice-user-settings is non-nil.
 +      [USE_MAC_FONT_PANEL] (mac_handle_font_event): Also record parameter
 +      for kEventParamFMFontStyle.
 +      [TARGET_API_MAC_CARBON] (mac_handle_keyboard_event): Don't check
 +      mac_pass_command_to_system and mac_pass_control_to_system here.
 +      (XTread_socket): Call ActivateControl/DeactivateControl here.
 +      (XTread_socket) [TARGET_API_MAC_CARBON]:
 +      Check mac_pass_command_to_system and mac_pass_control_to_system here.
 +      (mac_handle_window_event) [USE_MAC_TOOLBAR]: Add further workaround
 +      for window repositioning.
 +
 +2007-08-08  Glenn Morris  <rgm@gnu.org>
 +
 +      * Replace `iff' in doc-strings and comments.
 +
 +2007-08-07  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * xdisp.c (move_it_by_lines): Remove incorrect optimization.
 +
 +2007-08-07  Martin Rudalics  <rudalics@gmx.at>
 +
 +      * fileio.c (Finsert_file_contents): Run format-decode and
 +      after_insert_file_functions on entire buffer when REPLACE is
 +      non-nil and inhibit modification_hooks and point_motion_hooks.
 +      For consistency, run after_insert_file_functions iff something
 +      got inserted.  Move signal_after_change and update_compositions
 +      after code running after_insert_file_functions.  Make sure that
 +      undo_list doesn't record intermediate steps of the decoding process.
 +
 +2007-08-07  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
 +
 +      * emacs.c (main)
 +      [HAVE_GTK_AND_PTHREAD && !SYSTEM_MALLOC && !DOUG_LEA_MALLOC]:
 +      Call malloc_enable_thread on interactive startup.
 +
 +      * gmalloc.c (_malloc_thread_enabled_p) [USE_PTHREAD]: New variable.
 +      (LOCK, UNLOCK, LOCK_ALIGNED_BLOCKS, UNLOCK_ALIGNED_BLOCKS)
 +      [USE_PTHREAD]: Conditionalize with it.
 +      (malloc_atfork_handler_prepare, malloc_atfork_handler_parent)
 +      (malloc_atfork_handler_child, malloc_enable_thread) [USE_PTHREAD]:
 +      New functions.
 +
 +2007-08-06  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * xdisp.c (redisplay_window): When restoring original buffer
 +      position, make sure it is still valid.
 +
 +      * image.c (png_load): Ignore png-supplied background color.
 +
 +2007-08-06  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
 +
 +      * mac.c [TARGET_API_MAC_CARBON] (cfdate_to_lisp): Obtain microsec value.
 +      Use kCFAbsoluteTimeIntervalSince1970.
 +
 +      * macmenu.c (quit_dialog_event_loop) [TARGET_API_MAC_CARBON]:
 +      New variable.
 +      [TARGET_API_MAC_CARBON] (mac_handle_dialog_event): Set it if dialog
 +      event loop should be quit.
 +      [TARGET_API_MAC_CARBON] (create_and_show_dialog) [!MAC_OSX]:
 +      Quit dialog event loop if quit_dialog_event_loop is set.
 +
 +      * macselect.c [!TARGET_API_MAC_CARBON]: Include Scrap.h.
 +      (Selection): New typedef.  Use instead of ScrapRef.
 +      (mac_get_selection_from_symbol): Rename from get_scrap_from_symbol.
 +      (mac_valid_selection_target_p): Rename from valid_scrap_target_type_p.
 +      (mac_clear_selection): Rename from clear_scrap.
 +      (get_flavor_type_from_symbol): New argument SEL and subsume function of
 +      scrap_has_target_type.  All uses changed.
 +      (mac_get_selection_ownership_info, mac_valid_selection_value_p)
 +      (mac_selection_has_target_p): New functions.
 +      (mac_put_selection_value): Rename from put_scrap_string.
 +      (mac_get_selection_value): Rename from get_scrap_string.
 +      (mac_get_selection_target_list): Rename from get_scrap_target_type_list.
 +      (put_scrap_private_timestamp, scrap_has_target_type)
 +      (get_scrap_private_timestamp): Remove functions.
 +      (SCRAP_FLAVOR_TYPE_EMACS_TIMESTAMP): Remove define.
 +      (x_own_selection, x_get_local_selection):
 +      Use mac_valid_selection_value_p.
 +      (x_own_selection): Don't use put_scrap_private_timestamp.
 +      Record OWNERSHIP-INFO into Vselection_alist instead.
 +      (x_get_local_selection): Don't check type if request is local.
 +      (Fx_selection_owner_p): Don't use get_scrap_private_timestamp.
 +      Detect ownership change with OWNERSHIP-INFO in Vselection_alist instead.
 +
 +2007-08-04  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * gtkutil.c (xg_tool_bar_callback): Generate two TOOL_BAR_EVENT:s,
 +      add comment explaining why.
 +
 +2007-08-03  Richard Stallman  <rms@gnu.org>
 +
 +      * fileio.c (Fvisited_file_modtime): Use make_time.
 +
 +2007-08-01  Ryo Yoshitake  <ryo@shiftmode.net>  (tiny change)
 +
 +      * mac.c (init_mac_osx_environment): Adjust load-path on self-contained
 +      build.
 +
 +2007-07-31  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * gtkutil.c (xg_tool_bar_callback): Generate a single TOOL_BAR_EVENT.
 +
 +2007-07-30  Katsumi Yamaoka  <yamaoka@jpl.org>
 +
 +      * puresize.h (BASE_PURESIZE): Increase to 1130000.
 +
 +2007-07-30  Richard Stallman  <rms@gnu.org>
 +
 +      * lread.c (readevalloop, read1): Treat NBSP as whitespace.
 +
 +2007-07-29  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * gmalloc.c (__malloc_initialize): Remove pthread_once.  Not needed.
 +
 +2007-07-28  Nick Roberts  <nickrob@snap.net.nz>
 +
 +      * xdisp.c (decode_mode_spec): Use '@' instead of 'R' to test for
 +      remote default-directory.
 +
 +      * buffer.c (mode-line-format): Update doc string.
 +
 +2007-07-27  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
 +
 +      * w32term.c (w32_draw_fringe_bitmap): Extend fringe background to
 +      scroll bar gap.
 +      (x_scroll_bar_create): Set bar->fringe_extended_p.
 +      (w32_set_vertical_scroll_bar): Put leftmost/rightmost scroll bars
 +      on frame edge.  Check fringe background extension.  Don't clear
 +      extended fringe background area.
 +
 +      * w32term.h (struct scroll_bar): New member fringe_extended_p.
 +      (w32_fill_area): Enclose multiple statements with do ... while (0).
 +
 +      * xterm.c (x_draw_fringe_bitmap) [USE_TOOLKIT_SCROLL_BARS]:
 +      Extend fringe background to scroll bar gap.
 +      (x_scroll_bar_create) [USE_TOOLKIT_SCROLL_BARS]:
 +      Set bar->fringe_extended_p.
 +      (XTset_vertical_scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
 +      Put leftmost/rightmost scroll bars on frame edge.  Check fringe
 +      background extension.  Don't clear extended fringe background area.
 +
 +      * xterm.h (struct scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
 +      New member fringe_extended_p.
 +
 +2007-07-25  Glenn Morris  <rgm@gnu.org>
 +
 +      * Relicense all FSF files to GPLv3 or later.
 +
 +      * COPYING: Switch to GPLv3.
 +
 +2007-07-25  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * eval.c (Fcommandp): Pay attention to the `interactive-form' property.
 +
 +      * data.c (Finteractive_form): Check for the presence of an
 +      `interactive-form' symbol property more thoroughly.
 +
 +      * data.c (Finteractive_form): Use an `interactive-form' property if
 +      present, analogous to the function-documentation property.
 +
 +2007-07-24  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32fns.c (x_real_positions): Get real position from OS instead of
 +      calculating it.
 +
 +2007-07-23  Jason Rumney  <jasonr@gnu.org>
 +
 +      * filelock.c (current_lock_owner): Allow for @ sign in username.
 +
 +2007-07-22  Nick Roberts  <nickrob@snap.net.nz>
 +
 +      * xdisp.c (decode_mode_spec): Add case 'R' for to test for
 +      remote default-directory.
 +
 +      * buffer.c (mode-line-format): Describe above case in doc string.
 +
 +2007-07-20  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * w32proc.c (IMAGE_NT_OPTIONAL_HDR32_MAGIC, IMAGE_OPTIONAL_HEADER32):
 +      Define if not defined.
 +
 +2007-07-18  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32proc.c (w32_executable_type): Handle 64 bit executables.
 +
 +2007-07-18  Richard Stallman  <rms@gnu.org>
 +
 +      * data.c (Fsetq_default): Doc fix.
 +
 +      * eval.c (Fsetq): Doc fix.
 +
 +2007-07-18  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * coding.c (Ffind_operation_coding_system):
 +      * eval.c (For, Fand): Doc fixes.
 +      Reported by Johan Bockgård.
 +
 +2007-07-18  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * xfns.c (Fx_focus_frame): Call x_ewmh_activate_frame.
 +
 +      * xterm.h: Declare x_ewmh_activate_frame.
 +
 +      * xterm.c (x_ewmh_activate_frame): New function.
 +      (XTframe_raise_lower): Move code to x_ewmh_activate_frame.
 +
 +2007-07-17  Martin Rudalics  <rudalics@gmx.at>
 +
 +      * window.c (Fdisplay_buffer): If largest or LRU window is the
 +      only window, split it even if it is not eligible for splitting.
 +      This restores the original behavior broken by the 2007-07-15
 +      change.
 +
 +2007-07-17  Glenn Morris  <rgm@gnu.org>
 +
 +      * abbrev.c (abbrev_check_chars): New function.
 +      (Fdefine_global_abbrev, Fdefine_mode_abbrev):
 +      Call abbrev_check_chars to check abbrev characters are word
 +      constituents.  Doc fix.
 +
 +2007-07-17  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * process.c (Fstart_process, Fmake_network_process)
 +      (read_process_output): Fix up last changes.
 +
 +2007-07-16  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * makefile.w32-in (clean): Don't delete *~.
 +
 +2007-07-16  Andreas Schwab  <schwab@suse.de>
 +
 +      * window.c (Fdisplay_buffer): Use NILP.
 +      (Fset_window_scroll_bars): Likewise.
 +
 +2007-07-15  Martin Rudalics  <rudalics@gmx.at>
 +
 +      * window.c (window_min_size_2): New function.
 +      (window_min_size_1, size_window, Fdisplay_buffer)
 +      (Fsplit_window, adjust_window_trailing_edge): Use it to avoid
 +      windows without mode- or header-lines when window-min-height is
 +      too small.
 +      (size_window): Reset nodelete_p after testing it, following an
 +      earlier note by Kim F. Storm.
 +      (display_buffer): Do not set split_height_threshold to twice the
 +      value of window_min_height to avoid changing the value of a
 +      customizable variable.  Rather explicitly check whether the
 +      height of the window that shall be splitted is at least as large
 +      as split_height_threshold.
 +      (Fwindow_full_width_p): New defun.
 +      (syms_of_window): Defsubr it.
 +
 +      * window.h: Add EXFUN for Fwindow_full_width_p.
 +
 +2007-07-14  Jason Rumney  <jasonr@gnu.org>
 +
 +      * process.c [WINDOWSNT]: Don't undefine AF_INET6.
 +
 +2007-07-14  Richard Stallman  <rms@gnu.org>
 +
 +      * eval.c (maybe_call_debugger): New function.
 +      (find_handler_clause): Use maybe_call_debugger.
 +      Call it when the handler says `debug'.
 +      Eliminate DEBUGGER_VALUE_PTR.
 +      (Fsignal): Eliminate debugger_value.
 +      (Qdebug): New variable.
 +      (syms_of_eval): Initialize it.
 +
 +2007-07-14  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * eval.c (Fprogn):
 +      * keyboard.c (Ftrack_mouse):
 +      * print.c (Fwith_output_to_temp_buffer):
 +      * window.c (Fsave_window_excursion): Doc fix.
 +
 +2007-07-13  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * eval.c (init_eval_once): Bump max_lisp_eval_depth to 400.
 +
 +2007-07-12  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * process.h (struct Lisp_Process): Turn slots infd, outfd,
 +      kill_without_query, pty_flag, tick, update_tick, decoding_carryover,
 +      inherit_coding_system_flag, filter_multibyte, adaptive_read_buffering,
 +      read_output_delay, and read_output_skip from Lisp_Objects to ints.
 +      Remove unused encoding_carryover.
 +      * process.c: Adjust all functions accordingly.
 +
 +2007-07-12  Richard Stallman  <rms@gnu.org>
 +
 +      * term.c: Include unistd.h only if HAVE_UNISTD_H.
 +
 +2007-07-11  Jason Rumney  <jasonr@gnu.org>
 +
 +      * makefile.w32-in (LIBS): Include OLE32.
 +
 +      * w32fns.c (w32_msg_pump) <WM_EMACS_CREATEWINDOW>: Initialize COM.
 +      (w32_msg_pump) <WM_DESTROY>: Uninitialize COM.
 +
 +2007-07-11  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * lisp.h (struct Lisp_Hash_Table): Turn next_weak into a bare pointer.
 +      * fns.c (weak_hash_tables): Rename from Vweak_hash_tables and turned
 +      from a Lisp_Object into a bare pointer.
 +      (make_hash_table, copy_hash_table, sweep_weak_hash_tables, init_fns):
 +      Adjust the code correspondingly.
 +
 +      * alloc.c (emacs_blocked_free): Remove unused var `bytes_used_now'.
 +
 +      * term.c: Include unistd.h for ttyname, used in handle_one_term_event.
 +      (term_show_mouse_face): Remove unused var `j'.
 +      (handle_one_term_event): Remove unused vars `i' and `j'.
 +      Don't cast return value of ttyname since it's not necessary.
 +
 +2007-07-10  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * alloc.c (mark_maybe_pointer): Enforce mult-of-8 alignment when using
 +      USE_LSB_TAG.  Suggested by Dmitry Antipov <dmantipov@yandex.ru>.
 +
 +      * fns.c (map_char_table): Use an array of int for `indices' rather than
 +      an array of Lisp_Objects (which are only ever integers anyway).
 +      (Fmap_char_table): Update caller.
 +      * lisp.h: Update prototype.
 +      * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap):
 +      * fontset.c (Ffontset_info):
 +      * casetab.c (set_case_table): Update callers.
 +
 +      * editfns.c (Ftranspose_regions): Use EMACS_INT for positions.
 +
 +      * keymap.c (struct accessible_keymaps_data)
 +      (struct where_is_internal_data): New structures.
 +      (accessible_keymaps_1, where_is_internal_1): Use them to change
 +      interface to adhere to the one used by map_keymap.
 +      (Faccessible_keymaps, where_is_internal): Use map_keymap.
 +      (accessible_keymaps_char_table, where_is_internal_2): Remove.
 +
 +      * keymap.h (map_keymap_function_t): More informative prototype.
 +
 +2007-07-10  Guanpeng Xu  <herberteuler@hotmail.com>
 +
 +      * search.c (Vinhibit_changing_match_data, search_regs_1): New vars.
 +      (looking_at_1): Don't change search_regs and last_thing_searched
 +      if `inhibit-changing-match-data' is non-nil.
 +      (string_match_1, search_buffer, set_search_regs): Likewise.
 +      (syms_of_search): Add Lisp level definition for
 +      `inhibit-changing-match-data' and set it to nil.
 +      (boyer_moore): If `inhibit-changing-match-data' is non-nil, compute
 +      start and end of the match, instead of using values in search_regs.
 +
 +2007-07-01  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * minibuf.c (Fcompleting_read): New value `confirm-only'
 +      for `require-match'.
 +
 +2007-06-28  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * fileio.c (Fdo_auto_save): Revert last patch installed unwillingly as
 +      part of the 2007-06-27 change to syms_of_fileio.
 +
 +2007-06-28  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
 +
 +      * macterm.c [USE_MAC_TSM] (mac_handle_text_input_event):
 +      Check WINDOWP before using XWINDOW.  Consolidate return statements.
 +
 +2007-06-27  Richard Stallman  <rms@gnu.org>
 +
 +      * fileio.c (syms_of_fileio) <after-insert-file-functions>: Doc fix.
 +
 +2007-06-27  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * buffer.c (syms_of_buffer) <selective-display>: Fix typo in docstring.
 +
 +2007-06-26  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
 +
 +      * gmalloc.c [HAVE_GTK_AND_PTHREAD]: Check this after including config.h.
 +      (_aligned_blocks_mutex) [USE_PTHREAD]: New variable.
 +      (LOCK_ALIGNED_BLOCKS, UNLOCK_ALIGNED_BLOCKS): New macros.
 +      (_free_internal, memalign): Use them.
 +      (_malloc_mutex, _aligned_blocks_mutex) [USE_PTHREAD]:
 +      Initialize to PTHREAD_MUTEX_INITIALIZER.
 +      (malloc_initialize_1) [USE_PTHREAD]: Don't use recursive mutex.
 +      (morecore_nolock): Rename from morecore.  All uses changed.
 +      Use only nolock versions of internal allocation functions.
 +      (_malloc_internal_nolock, _realloc_internal_nolock)
 +      (_free_internal_nolock): New functions created from
 +      _malloc_internal, _realloc_internal, and _free_internal.
 +      (_malloc_internal, _realloc_internal, _free_internal): Use them.
 +      Copy hook value to automatic variable before its use.
 +      (memalign): Copy hook value to automatic variable before its use.
 +
 +2007-06-26  Kenichi Handa  <handa@m17n.org>
 +
 +      * coding.c (Ffind_operation_coding_system): Docstring improved.
 +      (syms_of_coding): Docstring of `file-coding-system-alist' improved.
 +
 +2007-06-25  David Kastrup  <dak@gnu.org>
 +
 +      * keymap.c (Fcurrent_active_maps): Add `position' argument.
 +      (Fwhere_is_internal): Adjust call to `current-active-maps' to
 +      cater for additional parameter.
 +
 +      * keymap.h: Adjust number of parameters to `current-active-maps'.
 +
 +      * doc.c (Fsubstitute_command_keys): Adjust call of
 +      `current-active-maps'.
 +
 +2007-06-25  David Kastrup  <dak@gnu.org>
 +
 +      * callint.c (Fcall_interactively): Make the parsing of interactive
 +      specs somewhat more readable.
 +
 +2007-06-23  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
 +
 +      * macterm.c (x_draw_fringe_bitmap) [MAC_OSX]: Extend fringe background
 +      to scroll bar gap also when bitmap fills fringe.  Draw only foreground
 +      if extended background has already been filled.
 +
 +2007-06-22  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
 +
 +      * macgui.h (USE_CG_DRAWING): Don't require USE_ATSUI.
 +      (USE_MAC_TOOLBAR): Require USE_CG_DRAWING.
 +
 +      * macmenu.c (mac_dialog_modal_filter, Fx_popup_dialog) [MAC_OSX]:
 +      Put special treatment for Fmessage_box, Fyes_or_no_p, and Fy_or_n_p
 +      in #if 0 as it is not compatible with y-or-n-p-with-timeout.
 +      (timer_check) [TARGET_API_MAC_CARBON]: Add extern.
 +      [TARGET_API_MAC_CARBON] (mac_handle_dialog_event): Use QuitEventLoop
 +      instead of QuitAppModalLoopForWindow.  Consolidate QuitEventLoop calls.
 +      (pop_down_dialog) [TARGET_API_MAC_CARBON]: New function.
 +      [TARGET_API_MAC_CARBON] (create_and_show_dialog): Use it for unwind.
 +      Run timers during dialog popup.
 +      (Fmenu_or_popup_active_p) [TARGET_API_MAC_CARBON]: Use popup_activated.
 +
 +2007-06-21  Jason Rumney  <jasonr@gnu.org>
 +
 +      * image.c (convert_mono_to_color_image): Swap fore and background.
 +
 +2007-06-20  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32bdf.c (w32_BDF_to_x_font): Unmap memory when finished.
 +      (w32_free_bdf_font): Unmap memory not handle.
 +
 +2007-06-20  Sam Steingold  <sds@gnu.org>
 +
 +      * gmalloc.c (__morecore): Fix the declaration to comply with the
 +      definition.
 +
 +2007-06-20  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * w32term.c (w32_delete_display): Remove leftover declaration.
 +      (w32_define_cursor, w32_initialize): Make static.
 +
 +      * w32.c (_wsa_errlist): Fix typo in error message.
 +      (init_environment): Ignore any environment variable from the
 +      registry having a null value.
 +
 +2007-06-20  Glenn Morris  <rgm@gnu.org>
 +
 +      * Makefile.in (LIBGIF): Default to -lgif.
 +
 +2007-06-17  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32menu.c (add_menu_item): Don't use multibyte string functions on
 +      unicode strings.
 +
 +2007-06-16  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * xdisp.c (syms_of_xdisp) <auto-resize-tool-bars>:
 +      Fix typo in docstring.
 +
 +2007-06-16  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * w32menu.c (add_menu_item): Escape `&' characters in menu items
 +      and their keybindings.
 +
 +2007-06-15  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * composite.c (update_compositions): Fix last fix.
 +
 +2007-06-14  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32.c (get_process_times_fn): New function pointer.
 +      (globals_of_w32): Intialize it if present in kernel32.dll.
 +      (w32_get_internal_run_time): New function.
 +
 +      * editfns.c (Fget_internal_run_time) [WINDOWSNT]: Use it.
 +
 +2007-06-14  Kenichi Handa  <handa@etlken.m17n.org>
 +
 +      * composite.c (update_compositions): Check the validness of
 +      compositions.
 +
 +2007-06-14  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
 +
 +      * frame.h (struct frame) [MAC_OS]: New member external_tool_bar.
 +      (FRAME_EXTERNAL_TOOL_BAR) [MAC_OS]: Use it.
 +
 +      * macfns.c (mac_window) [USE_MAC_TOOLBAR]: Set toolbar_win_gravity.
 +      (x_set_tool_bar_lines) [USE_MAC_TOOLBAR]: Set FRAME_EXTERNAL_TOOL_BAR.
 +
 +      * macgui.h (USE_MAC_TOOLBAR): New define.
 +
 +      * macmenu.c [TARGET_API_MAC_CARBON] (menu_target_item_handler):
 +      Return immediately unless popup is activated.
 +
 +      * macterm.c (x_draw_fringe_bitmap) [MAC_OSX]: Extend fringe
 +      background to scroll bar gap.
 +      (x_scroll_bar_create) [MAC_OSX]: Set bar->fringe_extended_p.
 +      (XTset_vertical_scroll_bar) [MAC_OSX]: Put leftmost/rightmost
 +      scroll bars on frame edge.  Check fringe background extension.
 +      Don't clear extended fringe background area.
 +      (TOOLBAR_IDENTIFIER, TOOLBAR_ICON_ITEM_IDENTIFIER)
 +      (TOOLBAR_ITEM_COMMAND_ID_OFFSET, TOOLBAR_ITEM_COMMAND_ID_P)
 +      (TOOLBAR_ITEM_COMMAND_ID_VALUE, TOOLBAR_ITEM_MAKE_COMMAND_ID):
 +      [USE_MAC_TOOLBAR]: New macros.
 +      (mac_move_window_with_gravity, mac_get_window_origin_with_gravity)
 +      (mac_handle_toolbar_event, mac_image_spec_to_cg_image)
 +      (mac_create_frame_tool_bar, update_frame_tool_bar, free_frame_tool_bar)
 +      (mac_tool_bar_note_mouse_movement, mac_handle_toolbar_command_event)
 +      [USE_MAC_TOOLBAR]: New functions.
 +      (mac_handle_window_event) [USE_MAC_TOOLBAR]: Reposition window
 +      manually if previous repositioning has failed.
 +      (mac_handle_keyboard_event): Use precomputed event kind.
 +      (XTread_socket) [USE_MAC_TOOLBAR]: Handle click in structure region
 +      as tool bar item click.  Handle mouse movement over tool bar items.
 +
 +      * macterm.h (struct mac_output) [USE_MAC_TOOLBAR]: New member
 +      toolbar_win_gravity.
 +      (struct scroll_bar) [MAC_OSX]: New member fringe_extended_p.
 +      (update_frame_tool_bar, free_frame_tool_bar) [USE_MAC_TOOLBAR]:
 +      Add externs.
 +
 +      * xdisp.c (update_tool_bar, redisplay_tool_bar, redisplay_window)
 +      [USE_MAC_TOOLBAR]: Sync with GTK+ tool bar display.
 +
 +2007-06-14  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * image.c (search_image_cache): Remove unused variable.
 +
 +2007-06-13  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * xfns.c, xmenu.c: Link to xaw3d if available.
 +
 +2007-06-13  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
 +
 +      * dispextern.h (struct image) [HAVE_WINDOW_SYSTEM]: New members
 +      frame_foreground and frame_background.
 +
 +      * image.c (lookup_image): Save frame foreground and background colors.
 +      (search_image_cache): Check if saved and current frame colors match.
 +
 +2007-06-12  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * regex.c (regex_compile): Remove the `regnum' counter.
 +      Use bufp->re_nsub instead.  Add support for \(?N:RE\).
 +
 +2007-06-11  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * term.c: Include intervals.h to declare Fget_text_property.
 +
 +2007-06-10  Jason Rumney  <jasonr@gnu.org>
 +
 +      * w32fns.c (Fx_file_dialog): Take size from struct not pointer.
 +
 +2007-06-08  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * callint.c (Fcall_interactively):
 +      * editfns.c (Fdelete_and_extract_region):
 +      * fileio.c (Fread_file_name):
 +      * fns.c (Fmapconcat):
 +      * keyboard.c (cmd_error_internal):
 +      * keymap.c (Fkey_description):
 +      * lread.c (openp):
 +      * minibuf.c (read_minibuf):
 +      * search.c (wordify):
 +      * sunfns.c (sel_read):
 +      * xdisp.c (Fformat_mode_line, syms_of_xdisp):
 +      * xfns.c (x_default_scroll_bar_color_parameter):
 +      * xmenu.c (menu_help_callback):
 +      * xselect.c (Fx_get_atom_name):
 +      * xterm.c (x_term_init): Use empty_unibyte_string.
 +
 +2007-06-08  Dmitry Antipov  <dmantipov@yandex.ru>  (tiny change)
 +
 +      * alloc.c (init_strings): Initialize canonical empty strings.
 +      (make_uninit_string, make_uninit_multibyte_string): Return appropriate
 +      canonical empty string when the requested size is 0.
 +
 +      * emacs.c (empty_unibyte_string): Rename from empty_string.
 +      (empty_multibyte_string): New canonical empty string.
 +      (syms_of_emacs): Don't initialize empty_string.
 +
 +      * lisp.h (STRING_SET_UNIBYTE): Return the canonical empty unibyte
 +      string, if appropriate.
 +      (empty_unibyte_string, empty_multibyte_string): New externs.
 +      (empty_string): Remove extern.
 +
 +      * lread.c (syms_of_lread): Use empty_unibyte_string.
 +
 +2007-06-07  Jason Rumney  <jasonr@gnu.org>
 +
 +      * s/ms-w32.h: Don't define HAVE_TZNAME.
 +
 +      * editfns.c (Fcurrent_time_zone): Remove hack for Japanese Windows.
 +
 +2007-06-07  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
 +
 +      * mac.c (xrm_get_preference_database): Remove BLOCK_INPUT.
 +
 +      * macfns.c (mac_get_window_bounds): Move extern to macterm.h.
 +      (compute_tip_xy) [TARGET_API_MAC_CARBON]: Use GetGlobalMouse.
 +
 +      * macmenu.c [TARGET_API_MAC_CARBON] (menu_target_item_handler):
 +      Don't call next handler.
 +      [TARGET_API_MAC_CARBON] (install_menu_target_item_handler):
 +      Remove argument.  Install handler to application.
 +      (set_frame_menubar): Don't change deep_p.
 +      (mac_menu_show): Use FRAME_OUTER_TO_INNER_DIFF_X and
 +      FRAME_OUTER_TO_INNER_DIFF_Y.
 +      (DIALOG_BUTTON_COMMAND_ID_OFFSET, DIALOG_BUTTON_COMMAND_ID_P)
 +      (DIALOG_BUTTON_COMMAND_ID_VALUE, DIALOG_BUTTON_MAKE_COMMAND_ID)
 +      [HAVE_DIALOGS]: New macros.
 +      [HAVE_DIALOGS] (mac_handle_dialog_event, create_and_show_dialog):
 +      Use them.
 +      (fill_menubar) [TARGET_API_MAC_CARBON]: Use CFString.
 +
 +      * macselect.c [MAC_OSX] (install_service_handler): Rename from
 +      init_service_handler.  All callers changed.  Return OSStatus value.
 +
 +      * macterm.c (mac_begin_cg_clip): New arg F.  Call SetPortWindowPort.
 +      All callers changed so as not to call SetPortWindowPort.
 +      (mac_begin_cg_clip) [USE_CG_DRAWING]: Call mac_prepare_for_quickdraw.
 +      (mac_draw_image_string_atsui) [USE_ATSUI]: New function created from
 +      mac_draw_string_common.
 +      (mac_draw_image_string_qd): Likewise.
 +      (mac_draw_string_common): Use them.  Add INLINE.
 +      (XTmouse_position, x_scroll_bar_report_motion) [TARGET_API_MAC_CARBON]:
 +      Use FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y, and
 +      GetGlobalMouse.
 +      (x_set_mouse_pixel_position) [MAC_OSX]: Use FRAME_OUTER_TO_INNER_DIFF_X
 +      and FRAME_OUTER_TO_INNER_DIFF_Y.
 +      [TARGET_API_MAC_CARBON] (mac_handle_mouse_event): Likewise.
 +      [USE_MAC_TSM] (mac_handle_text_input_event): Likewise.
 +      (x_make_frame_visible) [TARGET_API_MAC_CARBON]: Move code for
 +      repositioning window to mac_handle_window_event.
 +      (x_make_frame_invisible) [TARGET_API_MAC_CARBON]: Move code for
 +      saving window location to mac_handle_window_event
 +      [USE_MAC_FONT_PANEL] (mac_show_hide_font_panel): Install handler here.
 +      (install_menu_target_item_handler): Remove argument in extern.
 +      [TARGET_API_MAC_CARBON] (mac_event_to_emacs_modifiers):
 +      Also accept command events.
 +      (do_keystroke): New function created from XTread_socket.
 +      (init_command_handler): Remove functions.
 +      [TARGET_API_MAC_CARBON] (mac_handle_window_event): Reposition window
 +      and save window location by kEventWindowShowing and kEventWindowHiding
 +      handlers here.  Don't call next handler for window state change and
 +      focus events.
 +      (mac_handle_application_event, mac_handle_keyboard_event)
 +      [TARGET_API_MAC_CARBON]: New functions.
 +      (install_window_handler) [TARGET_API_MAC_CARBON]: Register handlers for
 +      kEventWindowShowing and kEventWindowHiding events.  Move installation
 +      of mouse, font, text input and menu target item handlers to
 +      install_application_handler.
 +      (install_application_handler) [TARGET_API_MAC_CARBON]: New function.
 +      (mac_handle_cg_display_reconfig) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
 +      New function.
 +      (init_dm_notification_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
 +      Register it.
 +      (XTread_socket) [TARGET_API_MAC_CARBON]:
 +      Consolidate SendEventToEventTarget calls.
 +      Use FRAME_OUTER_TO_INNER_DIFF_X and FRAME_OUTER_TO_INNER_DIFF_Y.
 +      Move application activation handler to mac_handle_application_event.
 +      Move keyboard handler to mac_handle_keyboard_event.
 +      (XTread_socket) [!TARGET_API_MAC_CARBON]: Use do_keystroke.
 +      (mac_initialize) [TARGET_API_MAC_CARBON]: Don't call
 +      init_command_handler.  Call install_application_handler.
 +
 +      * macterm.h (mac_get_window_bounds): Move extern from macfns.c.
 +      (FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y): New macros.
 +
 +2007-06-07  Glenn Morris  <rgm@gnu.org>
 +
 +      * emacs.c (main): Use `emacs-copyright' in --version output.
 +
 +2007-06-06  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * image.c (xpm_load): Remove spurious call to xpm_init_color_cache.
 +
 +2007-06-06  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
 +
 +      * macfns.c (mac_window): Replace WindowPtr with WindowRef.
 +
 +      * macgui.h: Replace WindowPtr with WindowRef.
 +
 +      * macmenu.c: Replace MenuHandle and GetMenuHandle with MenuRef and
 +      GetMenuRef, respectively.  Replace WindowPtr with WindowRef.
 +      Replace ControlHandle with ControlRef.
 +      (install_menu_quit_handler): Rename arg MENU_HANDLE to ROOT_MENU.
 +
 +      * macterm.c: Replace MenuHandle and GetMenuHandle with MenuRef and
 +      GetMenuRef, respectively.  Replace WindowPtr with WindowRef.
 +      Replace ControlHandle with ControlRef.
 +      (USE_CARBON_EVENTS): Remove.  Use TARGET_API_MAC_CARBON instead.
 +      [MAC_OS8] (do_get_menus): Rename variable `menu_handle' to `menu'.
 +
 +      * macterm.h (struct scroll_bar): Rename member control_handle_low
 +      and control_handle_high to control_ref_low and control_ref_high.
 +      All uses changed.
 +      (SCROLL_BAR_CONTROL_REF, SET_SCROLL_BAR_CONTROL_REF): Rename from
 +      SCROLL_BAR_CONTROL_HANDLE and SET_SCROLL_BAR_CONTROL_HANDLE,
 +      respectively.  All uses changed.
 +      (XCreatePixmap, XCreatePixmapFromBitmapData, XSetWindowBackground)
 +      (install_window_handler, remove_window_handler): Replace WindowPtr
 +      with WindowRef in externs.
 +
 +2007-06-05  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * xfaces.c (Finternal_lisp_face_p): Signal error for face alias loops.
 +
 +2007-06-03  Nick Roberts  <nickrob@snap.net.nz>
 +
 +      * keyboard.c (discard_mouse_events): Add GPM_CLICK_EVENT case.
 +
 +      * frame.c (Fmouse_position, Fmouse_pixel_position):
 +      Condition on HAVE_GPM too.
 +
 +      * term.c (term_mouse_highlight): Remove unused variables.
 +      (Fterm_open_connection): Set gpm_zerobased to 1.
 +      (term_mouse_movement, term_mouse_click, handle_one_term_event):
 +      Use zero based co-ordinates.
 +      (handle_one_term_event): Report a drag as mouse movement too.
 +
 +      * Makefile.in (MOUSE_SUPPORT): Define for HAVE_GPM.
 +
 +2007-06-03  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * image.c (search_image_cache): New function.  Require background
 +      color match if background color is unspecified in the image spec.
 +      (uncache_image, lookup_image): Use it.
 +
 +2007-06-01  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * window.c (Fshrink_window): Reflow docstring.
 +
 +2007-06-02  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * Version 22.1 released.
 +
 +2007-06-01  Richard Stallman  <rms@gnu.org>
 +
 +      * xfns.c (x_encode_text): Add GCPRO.
 +
 +2007-06-01  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
 +
 +      * xfns.c (x_set_name_internal): Save encoded name before
 +      x_encode_text in case string data is relocated.
 +
 +2007-05-31  Richard Stallman  <rms@gnu.org>
 +
 +      * buffer.c (syms_of_buffer): Doc fix.
 +
 +2007-05-30  Nick Roberts  <nickrob@snap.net.nz>
 +
 +      * sysdep.c (init_sys_modes): Add rather than replace with
 +      O_NONBLOCK.
 +
 +      * frame.c [HAVE_GPM] (Fset_mouse_pixel_position): Add call to
 +      term_mouse_moveto.
 +
 +      * termhooks.h (term_mouse_moveto): New extern.
 +
 +      * term.c (mouse_face_window): Rename...
 +      (Qmouse_face_window): ...to this.
 +      (term_show_mouse_face, term_clear_mouse_face)
 +      (term_mouse_highlight): Use Qmouse_face_window.
 +      (term_mouse_moveto): New function.
 +      (term_mouse_position): Make it work.
 +      (syms_of_term): Uncomment assignment to mouse_position_hook.
 +      Staticpro Qmouse_face_window.
 +
 +2007-05-28  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
 +
 +      * xdisp.c (redisplay_internal): Bind inhibit-point-motion-hooks to t
 +      around current_column call.
 +
 +2007-05-26  Dan Nicolaescu  <dann@ics.uci.edu>
 +
 +      * xfaces.c (syms_of_xfaces): Delete stray semicolon.
 +      * xdisp.c (next_element_from_buffer):
 +      * window.c (delete_window):
 +      * term.c (term_mouse_highlight):
 +      * msdos.c (getdefdir):
 +      * macterm.c (mac_create_bitmap_from_bitmap_data)
 +      (init_font_name_table):
 +      * fns.c (Fsxhash):
 +      * data.c (Fmake_local_variable):
 +      * ccl.c (ccl_driver): Likewise.
 +
 +2007-05-24  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
 +
 +      * macterm.c [USE_CARBON_EVENTS] (mac_handle_window_event):
 +      Call mac_wakeup_from_rne on window size change.
 +
 +2007-05-25  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * image.c (uncache_image): Fix typo.
 +
 +2007-05-23  Johannes Weiner  <hannes@saeurebad.de>  (tiny change)
 +
 +      * keyboard.c (make_lispy_movement): Condition on HAVE_GPM too.
 +
 +2007-05-22  Richard Stallman  <rms@gnu.org>
 +
 +      * xterm.c (x_connection_closed): Remove NO_RETURN.
 +
 +2007-05-22  Martin Rudalics  <rudalics@gmx.at>
 +
 +      * syntax.c (scan_words): Fix arg to UPDATE_SYNTAX_TABLE_BACKWARD.
 +
 +2007-05-21  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * image.c (uncache_image): New function.
 +      (Fimage_refresh): New function.
 +
 +2007-05-20  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * Makefile.in: Move GPM check outside HAVE_X_WINDOWS.
 +
 +2007-05-20  Nick Roberts  <nickrob@snap.net.nz>
 +
 +      * config.in, keyboard.c, Makefile.in, sysdep.c, term.c,
 +      * termhooks.h: Use HAVE_GPM instead of HAVE_GPM_H.
 +
 +2007-05-20  Nick Roberts  <nickrob@snap.net.nz>
 +
 +      * keyboard.c (make_lispy_event): Make case GPM_CLICK_EVENT
 +      conditional on [HAVE_GPM_H].
 +
 +2007-05-19  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * syntax.c (skip_chars): Update syntax-table only after we checked that
 +      the new location is valid.
 +
 +2007-05-19  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
 +
 +      * macterm.c (x_calc_absolute_position): Add BLOCK_INPUT around
 +      mac_get_window_bounds.
 +
 +2007-05-20  Nick Roberts  <nickrob@snap.net.nz>
 +
 +      * Makefile.in (LIBGPM): Allow it to be set from configure.
 +      If set then link Emacs with it.
 +
 +      * config.in: Regenerate.
 +
 +      * lisp.h (add_gpm_wait_descriptor, delete_gpm_wait_descriptor):
 +      New externs.
 +
 +      * termhooks.h [HAVE_GPM_H] (enum event_kind): Add GPM_CLICK_EVENT.
 +      Include gpm.h.
 +      (handle_one_term_event, term_gpm): New externs.
 +
 +      * sysdep.c [HAVE_GPM_H] (init_sys_modes): Make gpm_fd nonblocking
 +      and allow it to be interrupted by SIGIO.
 +
 +      * process.c (gpm_wait_mask, max_gpm_desc): New variables.
 +      (wait_reading_process_output): Wait on gpm_fd too.
 +      (add_gpm_wait_descriptor, delete_gpm_wait_descriptor)): New functions.
 +      (add_gpm_wait_descriptor_called_flag): New variable.
 +      (delete_keyboard_wait_descriptor): Check gpm_wait_mask.
 +
 +      * keyboard.c [HAVE_GPM_H] (Qmouse_fixup_help_message)
 +      (make_lispy_movement, tracking_off, Ftrack_mouse, some_mouse_moved)
 +      (show_help_echo, readable_events, kbd_buffer_get_event, init_keyboard):
 +      Extend HAVE_MOUSE ifdefs to HAVE_GPM_H.
 +      (make_lispy_event): Add case GPM_CLICK_EVENT.
 +      (read_avail_input): Handle mouse input.
 +
 +      * term.c (write_glyphs_with_face): New function.
 +      [HAVE_GPM_H]: Include buffer.h, sys/fcntl.h.
 +      (mouse_face_beg_row, mouse_face_beg_col, mouse_face_end_row)
 +      (mouse_face_end_col, mouse_face_past_end, mouse_face_window)
 +      (mouse_face_face_id, term_gpm, pos_x, pos_y)
 +      (last_mouse_x, last_mouse_y): New variables.
 +      (term_show_mouse_face, term_clear_mouse_face, fast_find_position)
 +      (term_mouse_highlight, term_mouse_movement, term_mouse_position)
 +      (term_mouse_click, handle_one_term_event, Fterm_open_connection)
 +      (Fterm_close_connection): New functions.
 +      (term_init): Initialise mouse_face_window.
 +
 +2007-05-19  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * xdisp.c (redisplay_window): If first window line is a
 +      continuation line, recompute the new window start instead of
 +      recentering.
 +
 +2007-05-18  Glenn Morris  <rgm@gnu.org>
 +
 +      * m/alpha.h (ORDINARY_LINK): No longer define on OpenBSD.
 +      Suggested by Alfred M. Szmidt <ams@gnu.org>.
 +
 +2007-05-17  Glenn Morris  <rgm@gnu.org>
 +
 +      * m/macppc.h (ORDINARY_LINK): No longer define on OpenBSD.
 +
 +2007-05-16  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
 +
 +      * macterm.c [USE_CARBON_EVENTS] (mac_convert_event_ref): Also convert
 +      dead key repeat and up events.
 +
 +2007-05-14  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * image.c (pbm_load): Check image size for monochrome pbm.
 +
 +2007-05-13  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * xterm.c (XTread_socket): Revert last change.
 +
 +2007-05-12  Chong Yidong  <cyd@stupidchicken.com>
 +
 +      * image.c (pbm_load): Correctly check image size for greyscale pbm.
 +
 +      * xterm.c (XTread_socket): Yet Another Uncaught X Error Crash (YAUXEC).
 +
 +2007-05-07  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * editfns.c (Ftranspose_regions): Yet another int/Lisp_Object
 +      mixup (YAILOM).
 +
 +2007-05-07  Andreas Schwab  <schwab@suse.de>
 +
 +      * keymap.c (Flookup_key): Fix typo in last change.
 +
 +2007-05-07  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * keymap.c (Fdefine_key, Flookup_key): Only do the 0x80->meta_modifier
 +      mapping for unibyte strings.
 +
 +2007-05-01  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
 +
 +      * macmenu.c (mac_dialog_show): Apply 2007-04-27 change for xmenu.c.
 +      (Fx_popup_dialog) [MAC_OSX]: Likewise.
 +
 +2007-04-29  Richard Stallman  <rms@gnu.org>
 +
 +      * insdel.c (replace_range): For undo, record insertion first.
 +
 +2007-04-29  Andreas Schwab  <schwab@suse.de>
 +
 +      * lisp.h (VECSIZE): Use OFFSETOF.
 +
 +2007-04-29  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
 +
 +      * xdisp.c (try_window_reusing_current_matrix): Fix number of
 +      disabled lines.
 +
 +2007-04-28  Richard Stallman  <rms@gnu.org>
 +
 +      * lread.c (read_escape): In a string, \s is always space.
 +
 +2007-04-27  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * xmenu.c (xdialog_show): Call Fredisplay before showing the dialog.
 +
 +      * gtkutil.c (xg_update_menubar, create_menus): Create empty
 +      submenu for menu bar items.
 +
 +See ChangeLog.10 for earlier changes.
 +
 +;; Local Variables:
 +;; coding: utf-8
 +;; End:
 +
++  Copyright (C) 2007-2011  Free Software Foundation, Inc.
 +
 +  This file is part of GNU Emacs.
 +
 +  GNU Emacs is free software: you can redistribute it and/or modify
 +  it under the terms of the GNU General Public License as published by
 +  the Free Software Foundation, either version 3 of the License, or
 +  (at your option) any later version.
 +
 +  GNU Emacs is distributed in the hope that it will be useful,
 +  but WITHOUT ANY WARRANTY; without even the implied warranty of
 +  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 +  GNU General Public License for more details.
 +
 +  You should have received a copy of the GNU General Public License
 +  along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.
diff --combined src/alloc.c
index b18fd6feb3dcbe9af6d882b2fa580fc0f0a58c21,67d34d25642bd9232ee426046b120583adf6845d..990622a30f6cf0ddaaed7475c4433e60eb0c9e3f
@@@ -1,6 -1,5 +1,5 @@@
  /* Storage allocation and gc for GNU Emacs Lisp interpreter.
-    Copyright (C) 1985, 1986, 1988, 1993, 1994, 1995, 1997, 1998, 1999,
-       2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
+    Copyright (C) 1985-1986, 1988, 1993-1995, 1997-2011
        Free Software Foundation, Inc.
  
  This file is part of GNU Emacs.
@@@ -59,9 -58,8 +58,8 @@@ along with GNU Emacs.  If not, see <htt
  #undef GC_MALLOC_CHECK
  #endif
  
- #ifdef HAVE_UNISTD_H
  #include <unistd.h>
- #else
+ #ifndef HAVE_UNISTD_H
  extern POINTER_TYPE *sbrk ();
  #endif
  
@@@ -143,8 -141,6 +141,6 @@@ static pthread_mutex_t alloc_mutex
  
  static __malloc_size_t bytes_used_when_full;
  
- static __malloc_size_t bytes_used_when_reconsidered;
  /* Mark, unmark, query mark bit of a Lisp string.  S must be a pointer
     to a struct Lisp_String.  */
  
  #define GC_STRING_BYTES(S)    (STRING_BYTES (S))
  #define GC_STRING_CHARS(S)    ((S)->size & ~ARRAY_MARK_FLAG)
  
+ /* Global variables.  */
+ struct emacs_globals globals;
  /* Number of bytes of consing done since the last gc.  */
  
  int consing_since_gc;
  
- /* Count the amount of consing of various sorts of space.  */
- EMACS_INT cons_cells_consed;
- EMACS_INT floats_consed;
- EMACS_INT vector_cells_consed;
- EMACS_INT symbols_consed;
- EMACS_INT string_chars_consed;
- EMACS_INT misc_objects_consed;
- EMACS_INT intervals_consed;
- EMACS_INT strings_consed;
- /* Minimum number of bytes of consing since GC before next GC. */
- EMACS_INT gc_cons_threshold;
  /* Similar minimum, computed from Vgc_cons_percentage.  */
  
  EMACS_INT gc_relative_threshold;
  
- static Lisp_Object Vgc_cons_percentage;
  /* Minimum number of bytes of consing since GC before next GC,
     when memory is full.  */
  
@@@ -204,10 -186,6 +186,6 @@@ int gc_in_progress
  
  int abort_on_gc;
  
- /* Nonzero means display messages at beginning and end of GC.  */
- int garbage_collection_messages;
  /* Number of live and free conses etc.  */
  
  static int total_conses, total_markers, total_symbols, total_vector_size;
@@@ -228,14 -206,6 +206,6 @@@ static char *spare_memory[7]
  
  static int malloc_hysteresis;
  
- /* Non-nil means defun should do purecopy on the function definition.  */
- Lisp_Object Vpurify_flag;
- /* Non-nil means we are handling a memory-full error.  */
- Lisp_Object Vmemory_full;
  /* Initialize it to a nonzero value to force it into data space
     (rather than bss space).  That way unexec will remap it into text
     space (pure), on some systems.  We have not implemented the
@@@ -263,10 -233,6 +233,6 @@@ static size_t pure_bytes_used_before_ov
        && ((PNTR_COMPARISON_TYPE) (P)                          \
          >= (PNTR_COMPARISON_TYPE) purebeg))
  
- /* Total number of bytes allocated in pure storage. */
- EMACS_INT pure_bytes_used;
  /* Index in pure at which next pure Lisp object will be allocated.. */
  
  static EMACS_INT pure_bytes_used_lisp;
@@@ -280,10 -246,6 +246,6 @@@ static EMACS_INT pure_bytes_used_non_li
  
  const char *pending_malloc_warning;
  
- /* Pre-computed signal argument for use when memory is exhausted.  */
- Lisp_Object Vmemory_signal_data;
  /* Maximum amount of C stack to save when a GC happens.  */
  
  #ifndef MAX_SAVE_STACK
@@@ -304,10 -266,7 +266,7 @@@ Lisp_Object Qgc_cons_threshold, Qchar_t
  
  /* Hook run after GC has finished.  */
  
- Lisp_Object Vpost_gc_hook, Qpost_gc_hook;
- Lisp_Object Vgc_elapsed;      /* accumulated elapsed time in GC  */
- EMACS_INT gcs_done;           /* accumulated GCs  */
+ Lisp_Object Qpost_gc_hook;
  
  static void mark_buffer (Lisp_Object);
  static void mark_terminals (void);
@@@ -1140,6 -1099,8 +1099,8 @@@ static void * (*old_malloc_hook) (size_
  static void * (*old_realloc_hook) (void *,  size_t, const void*);
  static void (*old_free_hook) (void*, const void*);
  
+ static __malloc_size_t bytes_used_when_reconsidered;
  /* This function is used as the hook for free to call.  */
  
  static void
@@@ -2962,37 -2923,6 +2923,37 @@@ See also the function `vector'.  */
  }
  
  
 +/* Return a new `function vector' containing KIND as the first element,
 +   followed by NUM_NIL_SLOTS nil elements, and further elements copied from
 +   the vector PARAMS of length NUM_PARAMS (so the total length of the
 +   resulting vector is 1 + NUM_NIL_SLOTS + NUM_PARAMS).
 +
 +   If NUM_PARAMS is zero, then PARAMS may be NULL.
 +
 +   A `function vector', a.k.a. `funvec', is a funcallable vector in Emacs Lisp.
 +   See the function `funvec' for more detail.  */
 +
 +Lisp_Object
 +make_funvec (Lisp_Object kind, int num_nil_slots, int num_params,
 +           Lisp_Object *params)
 +{
 +  int param_index;
 +  Lisp_Object funvec;
 +
 +  funvec = Fmake_vector (make_number (1 + num_nil_slots + num_params), Qnil);
 +
 +  ASET (funvec, 0, kind);
 +
 +  for (param_index = 0; param_index < num_params; param_index++)
 +    ASET (funvec, 1 + num_nil_slots + param_index, params[param_index]);
 +
 +  XSETPVECTYPE (XVECTOR (funvec), PVEC_FUNVEC);
 +  XSETFUNVEC (funvec, XVECTOR (funvec));
 +
 +  return funvec;
 +}
 +
 +
  DEFUN ("vector", Fvector, Svector, 0, MANY, 0,
         doc: /* Return a newly created vector with specified arguments as elements.
  Any number of arguments, even zero arguments, are allowed.
@@@ -3012,27 -2942,6 +2973,27 @@@ usage: (vector &rest OBJECTS)  */
  }
  
  
 +DEFUN ("funvec", Ffunvec, Sfunvec, 1, MANY, 0,
 +       doc: /* Return a newly created `function vector' of type KIND.
 +A `function vector', a.k.a. `funvec', is a funcallable vector in Emacs Lisp.
 +KIND indicates the kind of funvec, and determines its behavior when called.
 +The meaning of the remaining arguments depends on KIND.  Currently
 +implemented values of KIND, and their meaning, are:
 +
 +   A list  -- A byte-compiled function.  See `make-byte-code' for the usual
 +              way to create byte-compiled functions.
 +
 +   `curry' -- A curried function.  Remaining arguments are a function to
 +              call, and arguments to prepend to user arguments at the
 +              time of the call; see the `curry' function.
 +
 +usage: (funvec KIND &rest PARAMS)  */)
 +     (int nargs, Lisp_Object *args)
 +{
 +  return make_funvec (args[0], 0, nargs - 1, args + 1);
 +}
 +
 +
  DEFUN ("make-byte-code", Fmake_byte_code, Smake_byte_code, 4, MANY, 0,
         doc: /* Create a byte-code object with specified arguments as elements.
  The arguments should be the arglist, bytecode-string, constant vector,
@@@ -3046,10 -2955,6 +3007,10 @@@ usage: (make-byte-code ARGLIST BYTE-COD
    register int index;
    register struct Lisp_Vector *p;
  
 +  /* Make sure the arg-list is really a list, as that's what's used to
 +     distinguish a byte-compiled object from other funvecs.  */
 +  CHECK_LIST (args[0]);
 +
    XSETFASTINT (len, nargs);
    if (!NILP (Vpurify_flag))
      val = make_pure_vector ((EMACS_INT) nargs);
        args[index] = Fpurecopy (args[index]);
        p->contents[index] = args[index];
      }
 -  XSETPVECTYPE (p, PVEC_COMPILED);
 -  XSETCOMPILED (val, p);
 +  XSETPVECTYPE (p, PVEC_FUNVEC);
 +  XSETFUNVEC (val, p);
    return val;
  }
  
@@@ -3170,7 -3075,6 +3131,7 @@@ Its value and function definition are v
    p->gcmarkbit = 0;
    p->interned = SYMBOL_UNINTERNED;
    p->constant = 0;
 +  p->declared_special = 0;
    consing_since_gc += sizeof (struct Lisp_Symbol);
    symbols_consed++;
    return val;
@@@ -4279,7 -4183,7 +4240,7 @@@ Please mail the result to <emacs-devel@
     can prove that.  */
  
  static void
- test_setjmp ()
+ test_setjmp (void)
  {
    char buf[10];
    register int x;
  /* Abort if anything GCPRO'd doesn't survive the GC.  */
  
  static void
- check_gcpros ()
+ check_gcpros (void)
  {
    struct gcpro *p;
    int i;
  #elif GC_MARK_STACK == GC_USE_GCPROS_CHECK_ZOMBIES
  
  static void
- dump_zombies ()
+ dump_zombies (void)
  {
    int i;
  
     have to be true!  It must be verified for each system, possibly
     by taking a look at the source code of setjmp.
  
+    If __builtin_unwind_init is available (defined by GCC >= 2.8) we
+    can use it as a machine independent method to store all registers
+    to the stack.  In this case the macros described in the previous
+    two paragraphs are not used.
     Stack Layout
  
     Architectures differ in the way their processor stack is organized.
@@@ -4416,6 -4325,13 +4382,13 @@@ mark_stack (void
    volatile int stack_grows_down_p = (char *) &j > (char *) stack_base;
    void *end;
  
+ #ifdef HAVE___BUILTIN_UNWIND_INIT
+   /* Force callee-saved registers and register windows onto the stack.
+      This is the preferred method if available, obviating the need for
+      machine dependent methods.  */
+   __builtin_unwind_init ();
+   end = &end;
+ #else /* not HAVE___BUILTIN_UNWIND_INIT */
    /* This trick flushes the register windows so that all the state of
       the process is contained in the stack.  */
    /* Fixme: Code in the Boehm GC suggests flushing (with `flushrs') is
    setjmp (j.j);
    end = stack_grows_down_p ? (char *) &j + sizeof j : (char *) &j;
  #endif /* not GC_SAVE_REGISTERS_ON_STACK */
+ #endif /* not HAVE___BUILTIN_UNWIND_INIT */
  
    /* This assumes that the stack is a contiguous region in memory.  If
       that's not the case, something has to be done here to iterate
@@@ -4839,10 -4756,10 +4813,10 @@@ Does not copy symbols.  Copies strings 
    else if (FLOATP (obj))
      obj = make_pure_float (XFLOAT_DATA (obj));
    else if (STRINGP (obj))
-     obj = make_pure_string (SDATA (obj), SCHARS (obj),
+     obj = make_pure_string (SSDATA (obj), SCHARS (obj),
                            SBYTES (obj),
                            STRING_MULTIBYTE (obj));
 -  else if (COMPILEDP (obj) || VECTORP (obj))
 +  else if (FUNVECP (obj) || VECTORP (obj))
      {
        register struct Lisp_Vector *vec;
        register EMACS_INT i;
        vec = XVECTOR (make_pure_vector (size));
        for (i = 0; i < size; i++)
        vec->contents[i] = Fpurecopy (XVECTOR (obj)->contents[i]);
 -      if (COMPILEDP (obj))
 +      if (FUNVECP (obj))
        {
 -        XSETPVECTYPE (vec, PVEC_COMPILED);
 -        XSETCOMPILED (obj, vec);
 +        XSETPVECTYPE (vec, PVEC_FUNVEC);
 +        XSETFUNVEC (obj, vec);
        }
        else
        XSETVECTOR (obj, vec);
@@@ -5326,7 -5243,7 +5300,7 @@@ mark_char_table (struct Lisp_Vector *pt
      {
        Lisp_Object val = ptr->contents[i];
  
-       if (INTEGERP (val) || SYMBOLP (val) && XSYMBOL (val)->gcmarkbit)
+       if (INTEGERP (val) || (SYMBOLP (val) && XSYMBOL (val)->gcmarkbit))
        continue;
        if (SUB_CHAR_TABLE_P (val))
        {
@@@ -5441,7 -5358,7 +5415,7 @@@ mark_object (Lisp_Object arg
        }
        else if (SUBRP (obj))
        break;
 -      else if (COMPILEDP (obj))
 +      else if (FUNVECP (obj) && FUNVEC_COMPILED_P (obj))
        /* We could treat this just like a vector, but it is better to
           save the COMPILED_CONSTANTS element for last and avoid
           recursion there.  */
@@@ -6255,7 -6172,7 +6229,7 @@@ init_alloc (void
  void
  syms_of_alloc (void)
  {
-   DEFVAR_INT ("gc-cons-threshold", &gc_cons_threshold,
+   DEFVAR_INT ("gc-cons-threshold", gc_cons_threshold,
              doc: /* *Number of bytes of consing between garbage collections.
  Garbage collection can happen automatically once this many bytes have been
  allocated since the last garbage collection.  All data types count.
@@@ -6266,57 -6183,57 +6240,57 @@@ By binding this temporarily to a large 
  prevent garbage collection during a part of the program.
  See also `gc-cons-percentage'.  */);
  
-   DEFVAR_LISP ("gc-cons-percentage", &Vgc_cons_percentage,
+   DEFVAR_LISP ("gc-cons-percentage", Vgc_cons_percentage,
               doc: /* *Portion of the heap used for allocation.
  Garbage collection can happen automatically once this portion of the heap
  has been allocated since the last garbage collection.
  If this portion is smaller than `gc-cons-threshold', this is ignored.  */);
    Vgc_cons_percentage = make_float (0.1);
  
-   DEFVAR_INT ("pure-bytes-used", &pure_bytes_used,
+   DEFVAR_INT ("pure-bytes-used", pure_bytes_used,
              doc: /* Number of bytes of sharable Lisp data allocated so far.  */);
  
-   DEFVAR_INT ("cons-cells-consed", &cons_cells_consed,
+   DEFVAR_INT ("cons-cells-consed", cons_cells_consed,
              doc: /* Number of cons cells that have been consed so far.  */);
  
-   DEFVAR_INT ("floats-consed", &floats_consed,
+   DEFVAR_INT ("floats-consed", floats_consed,
              doc: /* Number of floats that have been consed so far.  */);
  
-   DEFVAR_INT ("vector-cells-consed", &vector_cells_consed,
+   DEFVAR_INT ("vector-cells-consed", vector_cells_consed,
              doc: /* Number of vector cells that have been consed so far.  */);
  
-   DEFVAR_INT ("symbols-consed", &symbols_consed,
+   DEFVAR_INT ("symbols-consed", symbols_consed,
              doc: /* Number of symbols that have been consed so far.  */);
  
-   DEFVAR_INT ("string-chars-consed", &string_chars_consed,
+   DEFVAR_INT ("string-chars-consed", string_chars_consed,
              doc: /* Number of string characters that have been consed so far.  */);
  
-   DEFVAR_INT ("misc-objects-consed", &misc_objects_consed,
+   DEFVAR_INT ("misc-objects-consed", misc_objects_consed,
              doc: /* Number of miscellaneous objects that have been consed so far.  */);
  
-   DEFVAR_INT ("intervals-consed", &intervals_consed,
+   DEFVAR_INT ("intervals-consed", intervals_consed,
              doc: /* Number of intervals that have been consed so far.  */);
  
-   DEFVAR_INT ("strings-consed", &strings_consed,
+   DEFVAR_INT ("strings-consed", strings_consed,
              doc: /* Number of strings that have been consed so far.  */);
  
-   DEFVAR_LISP ("purify-flag", &Vpurify_flag,
+   DEFVAR_LISP ("purify-flag", Vpurify_flag,
               doc: /* Non-nil means loading Lisp code in order to dump an executable.
  This means that certain objects should be allocated in shared (pure) space.
  It can also be set to a hash-table, in which case this table is used to
  do hash-consing of the objects allocated to pure space.  */);
  
-   DEFVAR_BOOL ("garbage-collection-messages", &garbage_collection_messages,
+   DEFVAR_BOOL ("garbage-collection-messages", garbage_collection_messages,
               doc: /* Non-nil means display messages at start and end of garbage collection.  */);
    garbage_collection_messages = 0;
  
-   DEFVAR_LISP ("post-gc-hook", &Vpost_gc_hook,
+   DEFVAR_LISP ("post-gc-hook", Vpost_gc_hook,
               doc: /* Hook run after garbage collection has finished.  */);
    Vpost_gc_hook = Qnil;
    Qpost_gc_hook = intern_c_string ("post-gc-hook");
    staticpro (&Qpost_gc_hook);
  
-   DEFVAR_LISP ("memory-signal-data", &Vmemory_signal_data,
+   DEFVAR_LISP ("memory-signal-data", Vmemory_signal_data,
               doc: /* Precomputed `signal' argument for memory-full error.  */);
    /* We build this in advance because if we wait until we need it, we might
       not be able to allocate the memory to hold it.  */
      = pure_cons (Qerror,
                 pure_cons (make_pure_c_string ("Memory exhausted--use M-x save-some-buffers then exit and restart Emacs"), Qnil));
  
-   DEFVAR_LISP ("memory-full", &Vmemory_full,
+   DEFVAR_LISP ("memory-full", Vmemory_full,
               doc: /* Non-nil means Emacs cannot get much more Lisp memory.  */);
    Vmemory_full = Qnil;
  
    staticpro (&Qchar_table_extra_slots);
    Qchar_table_extra_slots = intern_c_string ("char-table-extra-slots");
  
-   DEFVAR_LISP ("gc-elapsed", &Vgc_elapsed,
+   DEFVAR_LISP ("gc-elapsed", Vgc_elapsed,
               doc: /* Accumulated time elapsed in garbage collections.
  The time is in seconds as a floating point value.  */);
-   DEFVAR_INT ("gcs-done", &gcs_done,
+   DEFVAR_INT ("gcs-done", gcs_done,
              doc: /* Accumulated number of garbage collections done.  */);
  
    defsubr (&Scons);
    defsubr (&Slist);
    defsubr (&Svector);
 +  defsubr (&Sfunvec);
    defsubr (&Smake_byte_code);
    defsubr (&Smake_list);
    defsubr (&Smake_vector);
    defsubr (&Sgc_status);
  #endif
  }
- /* arch-tag: 6695ca10-e3c5-4c2c-8bc3-ed26a7dda857
-    (do not change this comment) */
diff --combined src/buffer.c
index 8f8bfb54a210b951322741d34834ef4096cf6c82,2c6eb7b84e3cf25240157801216c4861e3544d67..7a0260f584a652f1adc908a783c8fb054ed24147
@@@ -1,8 -1,6 +1,6 @@@
  /* Buffer manipulation primitives for GNU Emacs.
  
- Copyright (C) 1985, 1986, 1987, 1988, 1989, 1993, 1994, 1995, 1997,
-   1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008,
-   2009, 2010  Free Software Foundation, Inc.
+ Copyright (C) 1985-1989, 1993-1995, 1997-2011  Free Software Foundation, Inc.
  
  This file is part of GNU Emacs.
  
@@@ -27,10 -25,7 +25,7 @@@ along with GNU Emacs.  If not, see <htt
  #include <errno.h>
  #include <stdio.h>
  #include <setjmp.h>
- #ifdef HAVE_UNISTD_H
  #include <unistd.h>
- #endif
  
  #include "lisp.h"
  #include "intervals.h"
@@@ -105,7 -100,6 +100,6 @@@ static char buffer_permanent_local_flag
  
  int last_per_buffer_idx;
  
- EXFUN (Fset_buffer, 1);
  static void call_overlay_mod_hooks (Lisp_Object list, Lisp_Object overlay,
                                      int after, Lisp_Object arg1,
                                      Lisp_Object arg2, Lisp_Object arg3);
@@@ -117,36 -111,16 +111,16 @@@ static void reset_buffer_local_variable
   to prevent lossage due to user rplac'ing this alist or its elements.  */
  Lisp_Object Vbuffer_alist;
  
- /* Functions to call before and after each text change. */
- Lisp_Object Vbefore_change_functions;
- Lisp_Object Vafter_change_functions;
- Lisp_Object Vtransient_mark_mode;
- /* t means ignore all read-only text properties.
-    A list means ignore such a property if its value is a member of the list.
-    Any non-nil value means ignore buffer-read-only.  */
- Lisp_Object Vinhibit_read_only;
- /* List of functions to call that can query about killing a buffer.
-    If any of these functions returns nil, we don't kill it.  */
- Lisp_Object Vkill_buffer_query_functions;
  Lisp_Object Qkill_buffer_query_functions;
  
  /* Hook run before changing a major mode.  */
- Lisp_Object Vchange_major_mode_hook, Qchange_major_mode_hook;
- /* List of functions to call before changing an unmodified buffer.  */
- Lisp_Object Vfirst_change_hook;
+ Lisp_Object Qchange_major_mode_hook;
  
  Lisp_Object Qfirst_change_hook;
  Lisp_Object Qbefore_change_functions;
  Lisp_Object Qafter_change_functions;
  Lisp_Object Qucs_set_table_for_input;
  
- /* If nonzero, all modification hooks are suppressed.  */
- int inhibit_modification_hooks;
  Lisp_Object Qfundamental_mode, Qmode_class, Qpermanent_local;
  Lisp_Object Qpermanent_local_hook;
  
@@@ -1664,7 -1638,7 +1638,7 @@@ the current buffer's major mode.  */
    CHECK_BUFFER (buffer);
  
    if (STRINGP (XBUFFER (buffer)->name)
-       && strcmp (SDATA (XBUFFER (buffer)->name), "*scratch*") == 0)
+       && strcmp (SSDATA (XBUFFER (buffer)->name), "*scratch*") == 0)
      function = find_symbol_value (intern ("initial-major-mode"));
    else
      {
@@@ -3777,8 -3751,6 +3751,6 @@@ modify_overlay (struct buffer *buf, EMA
  }
  
  \f
- Lisp_Object Fdelete_overlay (Lisp_Object overlay);
  static struct Lisp_Overlay *
  unchain_overlay (struct Lisp_Overlay *list, struct Lisp_Overlay *overlay)
  {
@@@ -5257,7 -5229,7 +5229,7 @@@ init_buffer (void
         because of the ange-ftp completion handler.
         However, it is not necessary to turn / into /:/.
         So avoid doing that.  */
-       && strcmp ("/", SDATA (current_buffer->directory)))
+       && strcmp ("/", SSDATA (current_buffer->directory)))
      current_buffer->directory
        = concat2 (build_string ("/:"), current_buffer->directory);
  
@@@ -5296,7 -5268,6 +5268,7 @@@ defvar_per_buffer (struct Lisp_Buffer_O
    bo_fwd->type = Lisp_Fwd_Buffer_Obj;
    bo_fwd->offset = offset;
    bo_fwd->slottype = type;
 +  sym->declared_special = 1;
    sym->redirect = SYMBOL_FORWARDED;
    {
      /* I tried to do the job without a cast, but it seems impossible.
@@@ -5369,147 -5340,147 +5341,147 @@@ syms_of_buffer (void
    /* All these use DEFVAR_LISP_NOPRO because the slots in
       buffer_defaults will all be marked via Vbuffer_defaults.  */
  
-   DEFVAR_LISP_NOPRO ("default-mode-line-format",
-                    &buffer_defaults.mode_line_format,
-                    doc: /* Default value of `mode-line-format' for buffers that don't override it.
+   DEFVAR_BUFFER_DEFAULTS ("default-mode-line-format",
+                         mode_line_format,
+                         doc: /* Default value of `mode-line-format' for buffers that don't override it.
  This is the same as (default-value 'mode-line-format).  */);
  
-   DEFVAR_LISP_NOPRO ("default-header-line-format",
-                    &buffer_defaults.header_line_format,
-                    doc: /* Default value of `header-line-format' for buffers that don't override it.
+   DEFVAR_BUFFER_DEFAULTS ("default-header-line-format",
+                         header_line_format,
+                         doc: /* Default value of `header-line-format' for buffers that don't override it.
  This is the same as (default-value 'header-line-format).  */);
  
-   DEFVAR_LISP_NOPRO ("default-cursor-type", &buffer_defaults.cursor_type,
-                    doc: /* Default value of `cursor-type' for buffers that don't override it.
+   DEFVAR_BUFFER_DEFAULTS ("default-cursor-type", cursor_type,
+                         doc: /* Default value of `cursor-type' for buffers that don't override it.
  This is the same as (default-value 'cursor-type).  */);
  
-   DEFVAR_LISP_NOPRO ("default-line-spacing",
-                    &buffer_defaults.extra_line_spacing,
-                    doc: /* Default value of `line-spacing' for buffers that don't override it.
+   DEFVAR_BUFFER_DEFAULTS ("default-line-spacing",
+                         extra_line_spacing,
+                         doc: /* Default value of `line-spacing' for buffers that don't override it.
  This is the same as (default-value 'line-spacing).  */);
  
-   DEFVAR_LISP_NOPRO ("default-cursor-in-non-selected-windows",
-                    &buffer_defaults.cursor_in_non_selected_windows,
-                    doc: /* Default value of `cursor-in-non-selected-windows'.
+   DEFVAR_BUFFER_DEFAULTS ("default-cursor-in-non-selected-windows",
+                         cursor_in_non_selected_windows,
+                         doc: /* Default value of `cursor-in-non-selected-windows'.
  This is the same as (default-value 'cursor-in-non-selected-windows).  */);
  
-   DEFVAR_LISP_NOPRO ("default-abbrev-mode",
-                    &buffer_defaults.abbrev_mode,
-                    doc: /* Default value of `abbrev-mode' for buffers that do not override it.
+   DEFVAR_BUFFER_DEFAULTS ("default-abbrev-mode",
+                         abbrev_mode,
+                         doc: /* Default value of `abbrev-mode' for buffers that do not override it.
  This is the same as (default-value 'abbrev-mode).  */);
  
-   DEFVAR_LISP_NOPRO ("default-ctl-arrow",
-                    &buffer_defaults.ctl_arrow,
-                    doc: /* Default value of `ctl-arrow' for buffers that do not override it.
+   DEFVAR_BUFFER_DEFAULTS ("default-ctl-arrow",
+                         ctl_arrow,
+                         doc: /* Default value of `ctl-arrow' for buffers that do not override it.
  This is the same as (default-value 'ctl-arrow).  */);
  
-   DEFVAR_LISP_NOPRO ("default-enable-multibyte-characters",
-                      &buffer_defaults.enable_multibyte_characters,
-                      doc: /* *Default value of `enable-multibyte-characters' for buffers not overriding it.
+   DEFVAR_BUFFER_DEFAULTS ("default-enable-multibyte-characters",
+                         enable_multibyte_characters,
+                         doc: /* *Default value of `enable-multibyte-characters' for buffers not overriding it.
  This is the same as (default-value 'enable-multibyte-characters).  */);
  
-   DEFVAR_LISP_NOPRO ("default-buffer-file-coding-system",
-                      &buffer_defaults.buffer_file_coding_system,
-                      doc: /* Default value of `buffer-file-coding-system' for buffers not overriding it.
+   DEFVAR_BUFFER_DEFAULTS ("default-buffer-file-coding-system",
+                         buffer_file_coding_system,
+                         doc: /* Default value of `buffer-file-coding-system' for buffers not overriding it.
  This is the same as (default-value 'buffer-file-coding-system).  */);
  
-   DEFVAR_LISP_NOPRO ("default-truncate-lines",
-                    &buffer_defaults.truncate_lines,
-                    doc: /* Default value of `truncate-lines' for buffers that do not override it.
+   DEFVAR_BUFFER_DEFAULTS ("default-truncate-lines",
+                         truncate_lines,
+                         doc: /* Default value of `truncate-lines' for buffers that do not override it.
  This is the same as (default-value 'truncate-lines).  */);
  
-   DEFVAR_LISP_NOPRO ("default-fill-column",
-                    &buffer_defaults.fill_column,
-                    doc: /* Default value of `fill-column' for buffers that do not override it.
+   DEFVAR_BUFFER_DEFAULTS ("default-fill-column",
+                         fill_column,
+                         doc: /* Default value of `fill-column' for buffers that do not override it.
  This is the same as (default-value 'fill-column).  */);
  
-   DEFVAR_LISP_NOPRO ("default-left-margin",
-                    &buffer_defaults.left_margin,
-                    doc: /* Default value of `left-margin' for buffers that do not override it.
+   DEFVAR_BUFFER_DEFAULTS ("default-left-margin",
+                         left_margin,
+                         doc: /* Default value of `left-margin' for buffers that do not override it.
  This is the same as (default-value 'left-margin).  */);
  
-   DEFVAR_LISP_NOPRO ("default-tab-width",
-                    &buffer_defaults.tab_width,
-                    doc: /* Default value of `tab-width' for buffers that do not override it.
+   DEFVAR_BUFFER_DEFAULTS ("default-tab-width",
+                         tab_width,
+                         doc: /* Default value of `tab-width' for buffers that do not override it.
  This is the same as (default-value 'tab-width).  */);
  
-   DEFVAR_LISP_NOPRO ("default-case-fold-search",
-                    &buffer_defaults.case_fold_search,
-                    doc: /* Default value of `case-fold-search' for buffers that don't override it.
+   DEFVAR_BUFFER_DEFAULTS ("default-case-fold-search",
+                         case_fold_search,
+                         doc: /* Default value of `case-fold-search' for buffers that don't override it.
  This is the same as (default-value 'case-fold-search).  */);
  
  #ifdef DOS_NT
-   DEFVAR_LISP_NOPRO ("default-buffer-file-type",
-                    &buffer_defaults.buffer_file_type,
-                    doc: /* Default file type for buffers that do not override it.
+   DEFVAR_BUFFER_DEFAULTS ("default-buffer-file-type",
+                         buffer_file_type,
+                         doc: /* Default file type for buffers that do not override it.
  This is the same as (default-value 'buffer-file-type).
  The file type is nil for text, t for binary.  */);
  #endif
  
-   DEFVAR_LISP_NOPRO ("default-left-margin-width",
-                    &buffer_defaults.left_margin_cols,
-                    doc: /* Default value of `left-margin-width' for buffers that don't override it.
+   DEFVAR_BUFFER_DEFAULTS ("default-left-margin-width",
+                         left_margin_cols,
+                         doc: /* Default value of `left-margin-width' for buffers that don't override it.
  This is the same as (default-value 'left-margin-width).  */);
  
-   DEFVAR_LISP_NOPRO ("default-right-margin-width",
-                    &buffer_defaults.right_margin_cols,
-                    doc: /* Default value of `right-margin-width' for buffers that don't override it.
+   DEFVAR_BUFFER_DEFAULTS ("default-right-margin-width",
+                         right_margin_cols,
+                         doc: /* Default value of `right-margin-width' for buffers that don't override it.
  This is the same as (default-value 'right-margin-width).  */);
  
-   DEFVAR_LISP_NOPRO ("default-left-fringe-width",
-                    &buffer_defaults.left_fringe_width,
-                    doc: /* Default value of `left-fringe-width' for buffers that don't override it.
+   DEFVAR_BUFFER_DEFAULTS ("default-left-fringe-width",
+                         left_fringe_width,
+                         doc: /* Default value of `left-fringe-width' for buffers that don't override it.
  This is the same as (default-value 'left-fringe-width).  */);
  
-   DEFVAR_LISP_NOPRO ("default-right-fringe-width",
-                    &buffer_defaults.right_fringe_width,
-                    doc: /* Default value of `right-fringe-width' for buffers that don't override it.
+   DEFVAR_BUFFER_DEFAULTS ("default-right-fringe-width",
+                         right_fringe_width,
+                         doc: /* Default value of `right-fringe-width' for buffers that don't override it.
  This is the same as (default-value 'right-fringe-width).  */);
  
-   DEFVAR_LISP_NOPRO ("default-fringes-outside-margins",
-                    &buffer_defaults.fringes_outside_margins,
-                    doc: /* Default value of `fringes-outside-margins' for buffers that don't override it.
+   DEFVAR_BUFFER_DEFAULTS ("default-fringes-outside-margins",
+                         fringes_outside_margins,
+                         doc: /* Default value of `fringes-outside-margins' for buffers that don't override it.
  This is the same as (default-value 'fringes-outside-margins).  */);
  
-   DEFVAR_LISP_NOPRO ("default-scroll-bar-width",
-                    &buffer_defaults.scroll_bar_width,
-                    doc: /* Default value of `scroll-bar-width' for buffers that don't override it.
+   DEFVAR_BUFFER_DEFAULTS ("default-scroll-bar-width",
+                         scroll_bar_width,
+                         doc: /* Default value of `scroll-bar-width' for buffers that don't override it.
  This is the same as (default-value 'scroll-bar-width).  */);
  
-   DEFVAR_LISP_NOPRO ("default-vertical-scroll-bar",
-                    &buffer_defaults.vertical_scroll_bar_type,
-                    doc: /* Default value of `vertical-scroll-bar' for buffers that don't override it.
+   DEFVAR_BUFFER_DEFAULTS ("default-vertical-scroll-bar",
+                         vertical_scroll_bar_type,
+                         doc: /* Default value of `vertical-scroll-bar' for buffers that don't override it.
  This is the same as (default-value 'vertical-scroll-bar).  */);
  
-   DEFVAR_LISP_NOPRO ("default-indicate-empty-lines",
-                    &buffer_defaults.indicate_empty_lines,
-                    doc: /* Default value of `indicate-empty-lines' for buffers that don't override it.
+   DEFVAR_BUFFER_DEFAULTS ("default-indicate-empty-lines",
+                         indicate_empty_lines,
+                         doc: /* Default value of `indicate-empty-lines' for buffers that don't override it.
  This is the same as (default-value 'indicate-empty-lines).  */);
  
-   DEFVAR_LISP_NOPRO ("default-indicate-buffer-boundaries",
-                    &buffer_defaults.indicate_buffer_boundaries,
-                    doc: /* Default value of `indicate-buffer-boundaries' for buffers that don't override it.
+   DEFVAR_BUFFER_DEFAULTS ("default-indicate-buffer-boundaries",
+                         indicate_buffer_boundaries,
+                         doc: /* Default value of `indicate-buffer-boundaries' for buffers that don't override it.
  This is the same as (default-value 'indicate-buffer-boundaries).  */);
  
-   DEFVAR_LISP_NOPRO ("default-fringe-indicator-alist",
-                    &buffer_defaults.fringe_indicator_alist,
-                    doc: /* Default value of `fringe-indicator-alist' for buffers that don't override it.
+   DEFVAR_BUFFER_DEFAULTS ("default-fringe-indicator-alist",
+                         fringe_indicator_alist,
+                         doc: /* Default value of `fringe-indicator-alist' for buffers that don't override it.
  This is the same as (default-value 'fringe-indicator-alist').  */);
  
-   DEFVAR_LISP_NOPRO ("default-fringe-cursor-alist",
-                    &buffer_defaults.fringe_cursor_alist,
-                    doc: /* Default value of `fringe-cursor-alist' for buffers that don't override it.
+   DEFVAR_BUFFER_DEFAULTS ("default-fringe-cursor-alist",
+                         fringe_cursor_alist,
+                         doc: /* Default value of `fringe-cursor-alist' for buffers that don't override it.
  This is the same as (default-value 'fringe-cursor-alist').  */);
  
-   DEFVAR_LISP_NOPRO ("default-scroll-up-aggressively",
-                    &buffer_defaults.scroll_up_aggressively,
-                    doc: /* Default value of `scroll-up-aggressively'.
+   DEFVAR_BUFFER_DEFAULTS ("default-scroll-up-aggressively",
+                         scroll_up_aggressively,
+                         doc: /* Default value of `scroll-up-aggressively'.
  This value applies in buffers that don't have their own local values.
  This is the same as (default-value 'scroll-up-aggressively).  */);
  
-   DEFVAR_LISP_NOPRO ("default-scroll-down-aggressively",
-                    &buffer_defaults.scroll_down_aggressively,
-                    doc: /* Default value of `scroll-down-aggressively'.
+   DEFVAR_BUFFER_DEFAULTS ("default-scroll-down-aggressively",
+                         scroll_down_aggressively,
+                         doc: /* Default value of `scroll-down-aggressively'.
  This value applies in buffers that don't have their own local values.
  This is the same as (default-value 'scroll-down-aggressively).  */);
  
@@@ -5574,8 -5545,8 +5546,8 @@@ A string is printed verbatim in the mod
    %% -- print %.   %- -- print infinitely many dashes.
  Decimal digits after the % specify field width to which to pad.  */);
  
-   DEFVAR_LISP_NOPRO ("default-major-mode", &buffer_defaults.major_mode,
-                    doc: /* *Value of `major-mode' for new buffers.  */);
+   DEFVAR_BUFFER_DEFAULTS ("default-major-mode", major_mode,
+                         doc: /* *Value of `major-mode' for new buffers.  */);
  
    DEFVAR_PER_BUFFER ("major-mode", &current_buffer->major_mode,
                     make_number (Lisp_Symbol),
@@@ -5950,7 -5921,7 +5922,7 @@@ between 0.0 and 1.0, inclusive.  */)
      "Don't ask.");
  */
  
-   DEFVAR_LISP ("before-change-functions", &Vbefore_change_functions,
+   DEFVAR_LISP ("before-change-functions", Vbefore_change_functions,
               doc: /* List of functions to call before each text change.
  Two arguments are passed to each function: the positions of
  the beginning and end of the range of old text to be changed.
@@@ -5966,7 -5937,7 +5938,7 @@@ the variable's value remains nil.  Tha
  from happening repeatedly and making Emacs nonfunctional.  */);
    Vbefore_change_functions = Qnil;
  
-   DEFVAR_LISP ("after-change-functions", &Vafter_change_functions,
+   DEFVAR_LISP ("after-change-functions", Vafter_change_functions,
               doc: /* List of functions to call after each text change.
  Three arguments are passed to each function: the positions of
  the beginning and end of the range of changed text,
@@@ -5984,7 -5955,7 +5956,7 @@@ the variable's value remains nil.  Tha
  from happening repeatedly and making Emacs nonfunctional.  */);
    Vafter_change_functions = Qnil;
  
-   DEFVAR_LISP ("first-change-hook", &Vfirst_change_hook,
+   DEFVAR_LISP ("first-change-hook", Vfirst_change_hook,
               doc: /* A list of functions to call before changing a buffer which is unmodified.
  The functions are run using the `run-hooks' function.  */);
    Vfirst_change_hook = Qnil;
@@@ -6099,7 -6070,7 +6071,7 @@@ The function `set-window-buffer' update
  to the value obtained by calling `current-time'.
  If the buffer has never been shown in a window, the value is nil.  */);
  
-   DEFVAR_LISP ("transient-mark-mode", &Vtransient_mark_mode,
+   DEFVAR_LISP ("transient-mark-mode", Vtransient_mark_mode,
               doc: /*  Non-nil if Transient Mark mode is enabled.
  See the command `transient-mark-mode' for a description of this minor mode.
  
@@@ -6107,18 -6078,20 +6079,20 @@@ Non-nil also enables highlighting of th
  The variable `highlight-nonselected-windows' controls whether to highlight
  all windows or just the selected window.
  
- If the value is `lambda', that enables Transient Mark mode temporarily.
- After any subsequent action that would normally deactivate the mark
- \(such as buffer modification), Transient Mark mode is turned off.
+ Lisp programs may give this variable certain special values:
  
- If the value is (only . OLDVAL), that enables Transient Mark mode
- temporarily.  After any subsequent point motion command that is not
- shift-translated, or any other action that would normally deactivate
- the mark (such as buffer modification), the value of
- `transient-mark-mode' is set to OLDVAL.  */);
+ - A value of `lambda' enables Transient Mark mode temporarily.
+   It is disabled again after any subsequent action that would
+   normally deactivate the mark (e.g. buffer modification).
+ - A value of (only . OLDVAL) enables Transient Mark mode
+   temporarily.  After any subsequent point motion command that is
+   not shift-translated, or any other action that would normally
+   deactivate the mark (e.g. buffer modification), the value of
+   `transient-mark-mode' is set to OLDVAL.  */);
    Vtransient_mark_mode = Qnil;
  
-   DEFVAR_LISP ("inhibit-read-only", &Vinhibit_read_only,
+   DEFVAR_LISP ("inhibit-read-only", Vinhibit_read_only,
               doc: /* *Non-nil means disregard read-only status of buffers or characters.
  If the value is t, disregard `buffer-read-only' and all `read-only'
  text properties.  If the value is a list, disregard `buffer-read-only'
@@@ -6161,13 -6134,13 +6135,13 @@@ If t, displays a cursor related to the 
  You can also specify the cursor type as in the `cursor-type' variable.
  Use Custom to set this variable and update the display."  */);
  
-   DEFVAR_LISP ("kill-buffer-query-functions", &Vkill_buffer_query_functions,
+   DEFVAR_LISP ("kill-buffer-query-functions", Vkill_buffer_query_functions,
               doc: /* List of functions called with no args to query before killing a buffer.
  The buffer being killed will be current while the functions are running.
  If any of them returns nil, the buffer is not killed.  */);
    Vkill_buffer_query_functions = Qnil;
  
-   DEFVAR_LISP ("change-major-mode-hook", &Vchange_major_mode_hook,
+   DEFVAR_LISP ("change-major-mode-hook", Vchange_major_mode_hook,
               doc: /* Normal hook run before changing the major mode of a buffer.
  The function `kill-all-local-variables' runs this before doing anything else.  */);
    Vchange_major_mode_hook = Qnil;
@@@ -6235,4 -6208,3 +6209,3 @@@ keys_of_buffer (void
       initialized when that function gets called.  */
    Fput (intern_c_string ("erase-buffer"), Qdisabled, Qt);
  }
diff --combined src/bytecode.c
index eb12b9c496317e8ba6d8175f0e38065a6e981506,fd2680e4054244df63a57a5d928250b79b5511e9..96d2aa273f2ab5df9c7ed3537cbec69373598fd9
@@@ -1,6 -1,5 +1,5 @@@
  /* Execution of byte code produced by bytecomp.el.
-    Copyright (C) 1985, 1986, 1987, 1988, 1993, 2000, 2001, 2002, 2003, 2004,
-                  2005, 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
+    Copyright (C) 1985-1988, 1993, 2000-2011 Free Software Foundation, Inc.
  
  This file is part of GNU Emacs.
  
@@@ -58,9 -57,7 +57,7 @@@ by Hallvard
  \f
  #ifdef BYTE_CODE_METER
  
- Lisp_Object Vbyte_code_meter, Qbyte_code_meter;
- int byte_metering_on;
+ Lisp_Object Qbyte_code_meter;
  #define METER_2(code1, code2) \
    XFASTINT (XVECTOR (XVECTOR (Vbyte_code_meter)->contents[(code1)]) \
            ->contents[(code2)])
  \f
  
  Lisp_Object Qbytecode;
 +extern Lisp_Object Qand_optional, Qand_rest;
  
  /*  Byte codes: */
  
 +#define Bstack_ref 0
  #define Bvarref 010
  #define Bvarset 020
  #define Bvarbind 030
  #define BconcatN 0260
  #define BinsertN 0261
  
 +/* Bstack_ref is code 0.  */
 +#define Bstack_set  0262
 +#define Bstack_set2 0263
 +#define Bvec_ref    0264
 +#define Bvec_set    0265
 +#define BdiscardN   0266
 +
  #define Bconstant 0300
  #define CONSTANTLIM 0100
  
@@@ -406,37 -394,13 +403,37 @@@ unmark_byte_stack (void
    } while (0)
  
  
 -DEFUN ("byte-code", Fbyte_code, Sbyte_code, 3, 3, 0,
 +DEFUN ("byte-code", Fbyte_code, Sbyte_code, 3, MANY, 0,
         doc: /* Function used internally in byte-compiled code.
  The first argument, BYTESTR, is a string of byte code;
  the second, VECTOR, a vector of constants;
  the third, MAXDEPTH, the maximum stack depth used in this function.
 -If the third argument is incorrect, Emacs may crash.  */)
 -  (Lisp_Object bytestr, Lisp_Object vector, Lisp_Object maxdepth)
 +If the third argument is incorrect, Emacs may crash.
 +
 +If ARGS-TEMPLATE is specified, it is an argument list specification,
 +according to which any remaining arguments are pushed on the stack
 +before executing BYTESTR.
 +
 +usage: (byte-code BYTESTR VECTOR MAXDEP &optional ARGS-TEMPLATE &rest ARGS) */)
 +     (int nargs, Lisp_Object *args)
 +{
 +  Lisp_Object args_tmpl = nargs >= 4 ? args[3] : Qnil;
 +  int pnargs = nargs >= 4 ? nargs - 4 : 0;
 +  Lisp_Object *pargs = nargs >= 4 ? args + 4 : 0;
 +  return exec_byte_code (args[0], args[1], args[2], args_tmpl, pnargs, pargs);
 +}
 +
 +/* Execute the byte-code in BYTESTR.  VECTOR is the constant vector, and
 +   MAXDEPTH is the maximum stack depth used (if MAXDEPTH is incorrect,
 +   emacs may crash!).  If ARGS_TEMPLATE is non-nil, it should be a lisp
 +   argument list (including &rest, &optional, etc.), and ARGS, of size
 +   NARGS, should be a vector of the actual arguments.  The arguments in
 +   ARGS are pushed on the stack according to ARGS_TEMPLATE before
 +   executing BYTESTR.  */
 +
 +Lisp_Object
 +exec_byte_code (Lisp_Object bytestr, Lisp_Object vector, Lisp_Object maxdepth,
 +              Lisp_Object args_template, int nargs, Lisp_Object *args)
  {
    int count = SPECPDL_INDEX ();
  #ifdef BYTE_CODE_METER
    stacke = stack.bottom - 1 + XFASTINT (maxdepth);
  #endif
  
 +  if (! NILP (args_template))
 +    /* We should push some arguments on the stack.  */
 +    {
 +      Lisp_Object at;
 +      int pushed = 0, optional = 0;
 +
 +      for (at = args_template; CONSP (at); at = XCDR (at))
 +      if (EQ (XCAR (at), Qand_optional))
 +        optional = 1;
 +      else if (EQ (XCAR (at), Qand_rest))
 +        {
 +          PUSH (Flist (nargs, args));
 +          pushed = nargs;
 +          at = Qnil;
 +          break;
 +        }
 +      else if (pushed < nargs)
 +        {
 +          PUSH (*args++);
 +          pushed++;
 +        }
 +      else if (optional)
 +        PUSH (Qnil);
 +      else
 +        break;
 +
 +      if (pushed != nargs || !NILP (at))
 +      Fsignal (Qwrong_number_of_arguments,
 +               Fcons (args_template, Fcons (make_number (nargs), Qnil)));
 +    }
 +
    while (1)
      {
  #ifdef BYTE_CODE_SAFE
  
        case Bsave_window_excursion:
          BEFORE_POTENTIAL_GC ();
 -        TOP = Fsave_window_excursion (TOP);
 +        TOP = Fsave_window_excursion (TOP); /* FIXME: lexbind */
          AFTER_POTENTIAL_GC ();
          break;
  
            Lisp_Object v1;
            BEFORE_POTENTIAL_GC ();
            v1 = POP;
 -          TOP = internal_catch (TOP, Feval, v1);
 +          TOP = internal_catch (TOP, eval_sub, v1); /* FIXME: lexbind */
            AFTER_POTENTIAL_GC ();
            break;
          }
  
        case Bunwind_protect:
 -        record_unwind_protect (Fprogn, POP);
 +        record_unwind_protect (Fprogn, POP); /* FIXME: lexbind */
          break;
  
        case Bcondition_case:
            handlers = POP;
            body = POP;
            BEFORE_POTENTIAL_GC ();
 -          TOP = internal_lisp_condition_case (TOP, body, handlers);
 +          TOP = internal_lisp_condition_case (TOP, body, handlers); /* FIXME: lexbind */
            AFTER_POTENTIAL_GC ();
            break;
          }
        case Btemp_output_buffer_setup:
          BEFORE_POTENTIAL_GC ();
          CHECK_STRING (TOP);
-         temp_output_buffer_setup (SDATA (TOP));
+         temp_output_buffer_setup (SSDATA (TOP));
          AFTER_POTENTIAL_GC ();
          TOP = Vstandard_output;
          break;
          break;
  #endif
  
 -      case 0:
 -        abort ();
 +        /* Handy byte-codes for lexical binding.  */
 +      case Bstack_ref:
 +      case Bstack_ref+1:
 +      case Bstack_ref+2:
 +      case Bstack_ref+3:
 +      case Bstack_ref+4:
 +      case Bstack_ref+5:
 +        PUSH (stack.bottom[op - Bstack_ref]);
 +        break;
 +      case Bstack_ref+6:
 +        PUSH (stack.bottom[FETCH]);
 +        break;
 +      case Bstack_ref+7:
 +        PUSH (stack.bottom[FETCH2]);
 +        break;
 +      case Bstack_set:
 +        stack.bottom[FETCH] = POP;
 +        break;
 +      case Bstack_set2:
 +        stack.bottom[FETCH2] = POP;
 +        break;
 +      case Bvec_ref:
 +      case Bvec_set:
 +        /* These byte-codes used mostly for variable references to
 +           lexically bound variables that are in an environment vector
 +           instead of on the byte-interpreter stack (generally those
 +           variables which might be shared with a closure).  */
 +        {
 +          int index = FETCH;
 +          Lisp_Object vec = POP;
 +
 +          if (! VECTORP (vec))
 +            wrong_type_argument (Qvectorp, vec);
 +          else if (index < 0 || index >= XVECTOR (vec)->size)
 +            args_out_of_range (vec, make_number (index));
 +
 +          if (op == Bvec_ref)
 +            PUSH (XVECTOR (vec)->contents[index]);
 +          else
 +            XVECTOR (vec)->contents[index] = POP;
 +        }
 +        break;
 +      case BdiscardN:
 +        op = FETCH;
 +        if (op & 0x80)
 +          {
 +            op &= 0x7F;
 +            top[-op] = TOP;
 +          }
 +        DISCARD (op);
 +        break;
  
        case 255:
        default:
@@@ -1799,7 -1683,7 +1796,7 @@@ syms_of_bytecode (void
  
  #ifdef BYTE_CODE_METER
  
-   DEFVAR_LISP ("byte-code-meter", &Vbyte_code_meter,
+   DEFVAR_LISP ("byte-code-meter", Vbyte_code_meter,
               doc: /* A vector of vectors which holds a histogram of byte-code usage.
  \(aref (aref byte-code-meter 0) CODE) indicates how many times the byte
  opcode CODE has been executed.
  indicates how many times the byte opcodes CODE1 and CODE2 have been
  executed in succession.  */);
  
-   DEFVAR_BOOL ("byte-metering-on", &byte_metering_on,
+   DEFVAR_BOOL ("byte-metering-on", byte_metering_on,
               doc: /* If non-nil, keep profiling information on byte code usage.
  The variable byte-code-meter indicates how often each byte opcode is used.
  If a symbol has a property named `byte-code-meter' whose value is an
@@@ -1825,6 -1709,3 +1822,3 @@@ integer, it is incremented each time th
    }
  #endif
  }
- /* arch-tag: b9803b6f-1ed6-4190-8adf-33fd3a9d10e9
-    (do not change this comment) */
diff --combined src/callint.c
index 5eb65b31cbf609fe18b94d371dbd011267656895,6fd3dc082fa9e451ccc9b3b8762daf2e4cac1105..d2f94f6080fcd8c5c5e2a8286e50527e5fb9d3f9
@@@ -1,6 -1,5 +1,5 @@@
  /* Call a Lisp function interactively.
-    Copyright (C) 1985, 1986, 1993, 1994, 1995, 1997, 2000, 2001, 2002,
-                  2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
+    Copyright (C) 1985-1986, 1993-1995, 1997, 2000-2011
                   Free Software Foundation, Inc.
  
  This file is part of GNU Emacs.
@@@ -29,20 -28,14 +28,14 @@@ along with GNU Emacs.  If not, see <htt
  #include "window.h"
  #include "keymap.h"
  
- Lisp_Object Vcurrent_prefix_arg, Qminus, Qplus;
+ Lisp_Object Qminus, Qplus;
  Lisp_Object Qcall_interactively;
- Lisp_Object Vcommand_history;
- Lisp_Object Vcommand_debug_status, Qcommand_debug_status;
+ Lisp_Object Qcommand_debug_status;
  Lisp_Object Qenable_recursive_minibuffers;
  
- /* Non-nil means treat the mark as active
-    even if mark_active is 0.  */
- Lisp_Object Vmark_even_if_inactive;
  Lisp_Object Qhandle_shift_selection;
  
- Lisp_Object Vmouse_leave_buffer_hook, Qmouse_leave_buffer_hook;
+ Lisp_Object Qmouse_leave_buffer_hook;
  
  Lisp_Object Qlist, Qlet, Qletx, Qsave_excursion, Qprogn, Qif, Qwhen;
  static Lisp_Object preserved_fns;
@@@ -342,7 -335,7 +335,7 @@@ invoke it.  If KEYS is omitted or nil, 
        input = specs;
        /* Compute the arg values using the user's expression.  */
        GCPRO2 (input, filter_specs);
 -      specs = Feval (specs);
 +      specs = Feval (specs, Qnil); /* FIXME: lexbind */
        UNGCPRO;
        if (i != num_input_events || !NILP (record_flag))
        {
          if (next_event >= key_count)
            error ("%s must be bound to an event with parameters",
                   (SYMBOLP (function)
-                   ? (char *) SDATA (SYMBOL_NAME (function))
+                   ? SSDATA (SYMBOL_NAME (function))
                    : "command"));
          args[i] = AREF (keys, next_event);
          next_event++;
@@@ -940,7 -933,7 +933,7 @@@ normally commands can get this prefix a
                 doc: /* The value of the prefix argument for the previous editing command.
  See `prefix-arg' for the meaning of the value.  */);
  
-   DEFVAR_LISP ("current-prefix-arg", &Vcurrent_prefix_arg,
+   DEFVAR_LISP ("current-prefix-arg", Vcurrent_prefix_arg,
               doc: /* The value of the prefix argument for this editing command.
  It may be a number, or the symbol `-' for just a minus sign as arg,
  or a list whose car is a number for just one or more C-u's
@@@ -948,7 -941,7 +941,7 @@@ or nil if no argument has been specifie
  This is what `(interactive \"P\")' returns.  */);
    Vcurrent_prefix_arg = Qnil;
  
-   DEFVAR_LISP ("command-history", &Vcommand_history,
+   DEFVAR_LISP ("command-history", Vcommand_history,
               doc: /* List of recent commands that read arguments from terminal.
  Each command is represented as a form to evaluate.
  
@@@ -956,13 -949,13 +949,13 @@@ Maximum length of the history list is d
  of `history-length', which see.  */);
    Vcommand_history = Qnil;
  
-   DEFVAR_LISP ("command-debug-status", &Vcommand_debug_status,
+   DEFVAR_LISP ("command-debug-status", Vcommand_debug_status,
               doc: /* Debugging status of current interactive command.
  Bound each time `call-interactively' is called;
  may be set by the debugger as a reminder for itself.  */);
    Vcommand_debug_status = Qnil;
  
-   DEFVAR_LISP ("mark-even-if-inactive", &Vmark_even_if_inactive,
+   DEFVAR_LISP ("mark-even-if-inactive", Vmark_even_if_inactive,
               doc: /* *Non-nil means you can use the mark even when inactive.
  This option makes a difference in Transient Mark mode.
  When the option is non-nil, deactivation of the mark
@@@ -970,7 -963,7 +963,7 @@@ turns off region highlighting, but comm
  behave as if the mark were still active.  */);
    Vmark_even_if_inactive = Qt;
  
-   DEFVAR_LISP ("mouse-leave-buffer-hook", &Vmouse_leave_buffer_hook,
+   DEFVAR_LISP ("mouse-leave-buffer-hook", Vmouse_leave_buffer_hook,
               doc: /* Hook to run when about to switch windows with a mouse command.
  Its purpose is to give temporary modes such as Isearch mode
  a way to turn themselves off when a mouse command switches windows.  */);
    defsubr (&Scall_interactively);
    defsubr (&Sprefix_numeric_value);
  }
- /* arch-tag: a3a7cad7-bcac-42ce-916e-1bd2546ebf37
-    (do not change this comment) */
diff --combined src/data.c
index 42d9e076e80b6dabf6de558db6feaa3b95f9e983,927bc7c5a4766f7a838c9b33324664bcfbb81401..8b1f4a035ba969df571d93e59a2910d29e0e5299
@@@ -1,6 -1,5 +1,5 @@@
  /* Primitive operations on Lisp data types for GNU Emacs Lisp interpreter.
-    Copyright (C) 1985, 1986, 1988, 1993, 1994, 1995, 1997, 1998, 1999, 2000,
-                  2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
+    Copyright (C) 1985-1986, 1988, 1993-1995, 1997-2011
                   Free Software Foundation, Inc.
  
  This file is part of GNU Emacs.
@@@ -85,7 -84,7 +84,7 @@@ static Lisp_Object Qsymbol, Qstring, Qc
  Lisp_Object Qwindow;
  static Lisp_Object Qfloat, Qwindow_configuration;
  Lisp_Object Qprocess;
 -static Lisp_Object Qcompiled_function, Qbuffer, Qframe, Qvector;
 +static Lisp_Object Qcompiled_function, Qfunction_vector, Qbuffer, Qframe, Qvector;
  static Lisp_Object Qchar_table, Qbool_vector, Qhash_table;
  static Lisp_Object Qsubrp, Qmany, Qunevalled;
  Lisp_Object Qfont_spec, Qfont_entity, Qfont_object;
@@@ -94,8 -93,6 +93,6 @@@ Lisp_Object Qinteractive_form
  
  static void swap_in_symval_forwarding (struct Lisp_Symbol *, struct Lisp_Buffer_Local_Value *);
  
- Lisp_Object Vmost_positive_fixnum, Vmost_negative_fixnum;
  
  void
  circular_list_error (Lisp_Object list)
@@@ -197,11 -194,8 +194,11 @@@ for example, (type-of 1) returns `integ
        return Qwindow;
        if (SUBRP (object))
        return Qsubr;
 -      if (COMPILEDP (object))
 -      return Qcompiled_function;
 +      if (FUNVECP (object))
 +      if (FUNVEC_COMPILED_P (object))
 +        return Qcompiled_function;
 +      else
 +        return Qfunction_vector;
        if (BUFFERP (object))
        return Qbuffer;
        if (CHAR_TABLE_P (object))
@@@ -400,13 -394,6 +397,13 @@@ DEFUN ("byte-code-function-p", Fbyte_co
    return Qnil;
  }
  
 +DEFUN ("funvecp", Ffunvecp, Sfunvecp, 1, 1, 0,
 +       doc: /* Return t if OBJECT is a `function vector' object.  */)
 +     (Lisp_Object object)
 +{
 +  return FUNVECP (object) ? Qt : Qnil;
 +}
 +
  DEFUN ("char-or-string-p", Fchar_or_string_p, Schar_or_string_p, 1, 1, 0,
         doc: /* Return t if OBJECT is a character or a string.  */)
    (register Lisp_Object object)
@@@ -1452,7 -1439,7 +1449,7 @@@ usage: (setq-default [VAR VALUE]...)  *
  
    do
      {
 -      val = Feval (Fcar (Fcdr (args_left)));
 +      val = eval_sub (Fcar (Fcdr (args_left)));
        symbol = XCAR (args_left);
        Fset_default (symbol, val);
        args_left = Fcdr (XCDR (args_left));
@@@ -2114,15 -2101,15 +2111,15 @@@ or a byte-code object.  IDX starts at 0
      {
        int size = 0;
        if (VECTORP (array))
 -      size = XVECTOR (array)->size;
 -      else if (COMPILEDP (array))
 -      size = XVECTOR (array)->size & PSEUDOVECTOR_SIZE_MASK;
 +      size = ASIZE (array);
 +      else if (FUNVECP (array))
 +      size = FUNVEC_SIZE (array);
        else
        wrong_type_argument (Qarrayp, array);
  
        if (idxval < 0 || idxval >= size)
        args_out_of_range (array, idx);
 -      return XVECTOR (array)->contents[idxval];
 +      return AREF (array, idxval);
      }
  }
  
@@@ -2385,7 -2372,7 +2382,7 @@@ NUMBER may be an integer or a floating 
  
    if (FLOATP (number))
      {
-       char pigbuf[350];       /* see comments in float_to_string */
+       char pigbuf[FLOAT_TO_STRING_BUFSIZE];
  
        float_to_string (pigbuf, XFLOAT_DATA (number));
        return build_string (pigbuf);
@@@ -3181,7 -3168,6 +3178,7 @@@ syms_of_data (void
    Qwindow = intern_c_string ("window");
    /* Qsubr = intern_c_string ("subr"); */
    Qcompiled_function = intern_c_string ("compiled-function");
 +  Qfunction_vector = intern_c_string ("function-vector");
    Qbuffer = intern_c_string ("buffer");
    Qframe = intern_c_string ("frame");
    Qvector = intern_c_string ("vector");
    staticpro (&Qwindow);
    /* staticpro (&Qsubr); */
    staticpro (&Qcompiled_function);
 +  staticpro (&Qfunction_vector);
    staticpro (&Qbuffer);
    staticpro (&Qframe);
    staticpro (&Qvector);
    defsubr (&Smarkerp);
    defsubr (&Ssubrp);
    defsubr (&Sbyte_code_function_p);
 +  defsubr (&Sfunvecp);
    defsubr (&Schar_or_string_p);
    defsubr (&Scar);
    defsubr (&Scdr);
  
    XSYMBOL (Qwholenump)->function = XSYMBOL (Qnatnump)->function;
  
-   DEFVAR_LISP ("most-positive-fixnum", &Vmost_positive_fixnum,
+   DEFVAR_LISP ("most-positive-fixnum", Vmost_positive_fixnum,
               doc: /* The largest value that is representable in a Lisp integer.  */);
    Vmost_positive_fixnum = make_number (MOST_POSITIVE_FIXNUM);
    XSYMBOL (intern_c_string ("most-positive-fixnum"))->constant = 1;
  
-   DEFVAR_LISP ("most-negative-fixnum", &Vmost_negative_fixnum,
+   DEFVAR_LISP ("most-negative-fixnum", Vmost_negative_fixnum,
               doc: /* The smallest value that is representable in a Lisp integer.  */);
    Vmost_negative_fixnum = make_number (MOST_NEGATIVE_FIXNUM);
    XSYMBOL (intern_c_string ("most-negative-fixnum"))->constant = 1;
@@@ -3351,5 -3335,3 +3348,3 @@@ init_data (void
  #endif /* uts */
  }
  
- /* arch-tag: 25879798-b84d-479a-9c89-7d148e2109f7
-    (do not change this comment) */
diff --combined src/doc.c
index 8ae152dca9afd878c55568c8f5882ee3591ea839,b47bf8132a06104e927bdea7c9db0bc2acb79620..f9f67c0386381af9111f0155efc213384d4c575c
+++ b/src/doc.c
@@@ -1,6 -1,5 +1,5 @@@
  /* Record indices of function doc strings stored in a file.
-    Copyright (C) 1985, 1986, 1993, 1994, 1995, 1997, 1998, 1999, 2000, 2001,
-                  2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
+    Copyright (C) 1985-1986, 1993-1995, 1997-2011
                   Free Software Foundation, Inc.
  
  This file is part of GNU Emacs.
@@@ -26,10 -25,7 +25,7 @@@ along with GNU Emacs.  If not, see <htt
  #include <ctype.h>
  #include <setjmp.h>
  #include <fcntl.h>
- #ifdef HAVE_UNISTD_H
  #include <unistd.h>
- #endif
  
  #include "lisp.h"
  #include "buffer.h"
  #include "keymap.h"
  #include "buildobj.h"
  
- Lisp_Object Vdoc_file_name;
  Lisp_Object Qfunction_documentation;
  
- /* A list of files used to build this Emacs binary.  */
- static Lisp_Object Vbuild_files;
 +extern Lisp_Object Qclosure;
  /* Buffer used for reading from documentation file.  */
  static char *get_doc_string_buffer;
  static int get_doc_string_buffer_size;
@@@ -130,12 -120,12 +121,12 @@@ get_doc_string (Lisp_Object filepos, in
        if (minsize < 8)
        minsize = 8;
        name = (char *) alloca (minsize + SCHARS (file) + 8);
-       strcpy (name, SDATA (Vdoc_directory));
-       strcat (name, SDATA (file));
+       strcpy (name, SSDATA (Vdoc_directory));
+       strcat (name, SSDATA (file));
      }
    else
      {
-       name = (char *) SDATA (file);
+       name = SSDATA (file);
      }
  
    fd = emacs_open (name, O_RDONLY, 0);
          /* Preparing to dump; DOC file is probably not installed.
             So check in ../etc. */
          strcpy (name, "../etc/");
-         strcat (name, SDATA (file));
+         strcat (name, SSDATA (file));
  
          fd = emacs_open (name, O_RDONLY, 0);
        }
@@@ -364,11 -354,6 +355,11 @@@ string is passed through `substitute-co
        else
        return Qnil;
      }
 +  else if (FUNVECP (fun))
 +    {
 +      /* Unless otherwise handled, funvecs have no documentation.  */
 +      return Qnil;
 +    }
    else if (STRINGP (fun) || VECTORP (fun))
      {
        return build_string ("Keyboard macro.");
          else
            return Qnil;
        }
 +      else if (EQ (funcar, Qclosure))
 +      return Fdocumentation (Fcdr (XCDR (fun)), raw);
        else if (EQ (funcar, Qmacro))
        return Fdocumentation (Fcdr (fun), raw);
        else
@@@ -490,7 -473,7 +481,7 @@@ aren't strings.  */
      }
    else if (!STRINGP (tem))
      /* Feval protects its argument.  */
 -    tem = Feval (tem);
 +    tem = Feval (tem, Qnil);
  
    if (NILP (raw) && STRINGP (tem))
      tem = Fsubstitute_command_keys (tem);
@@@ -525,8 -508,6 +516,8 @@@ store_function_docstring (Lisp_Object f
        }
        else if (EQ (tem, Qmacro))
        store_function_docstring (XCDR (fun), offset);
 +      else if (EQ (tem, Qclosure))
 +      store_function_docstring (Fcdr (XCDR (fun)), offset);
      }
  
    /* Bytecode objects sometimes have slots for it.  */
@@@ -578,9 -559,9 +569,9 @@@ the same file name is found in the `doc
        CHECK_STRING (Vdoc_directory);
        name = (char *) alloca (SCHARS (filename)
                          + SCHARS (Vdoc_directory) + 1);
-       strcpy (name, SDATA (Vdoc_directory));
+       strcpy (name, SSDATA (Vdoc_directory));
      }
-   strcat (name, SDATA (filename));    /*** Add this line ***/
+   strcat (name, SSDATA (filename));   /*** Add this line ***/
  
    /* Vbuild_files is nil when temacs is run, and non-nil after that.  */
    if (NILP (Vbuild_files))
@@@ -909,7 -890,7 +900,7 @@@ a new string, without any text properti
            bufp += length_byte;
            nchars += length;
            /* Check STRING again in case gc relocated it.  */
-           strp = (unsigned char *) SDATA (string) + idx;
+           strp = SDATA (string) + idx;
          }
        }
        else if (! multibyte)           /* just copy other chars */
@@@ -943,11 -924,11 +934,11 @@@ syms_of_doc (void
    Qfunction_documentation = intern_c_string ("function-documentation");
    staticpro (&Qfunction_documentation);
  
-   DEFVAR_LISP ("internal-doc-file-name", &Vdoc_file_name,
+   DEFVAR_LISP ("internal-doc-file-name", Vdoc_file_name,
               doc: /* Name of file containing documentation strings of built-in symbols.  */);
    Vdoc_file_name = Qnil;
  
-   DEFVAR_LISP ("build-files", &Vbuild_files,
+   DEFVAR_LISP ("build-files", Vbuild_files,
                 doc: /* A list of files used to build this Emacs binary.  */);
    Vbuild_files = Qnil;
  
    defsubr (&Ssnarf_documentation);
    defsubr (&Ssubstitute_command_keys);
  }
- /* arch-tag: 56281d4d-6949-43e2-be2e-f6517de744ba
-    (do not change this comment) */
diff --combined src/eval.c
index 36acca01c8bdfa5e71ee0ac6b932e2f5fdc575d7,d0effc755a21eb9e48c619b6ee78433b3ea7d0cf..e8b4ae1aba9af17fdff1dc14624ee4e313f989b2
@@@ -1,7 -1,5 +1,5 @@@
  /* Evaluator for GNU Emacs Lisp interpreter.
-    Copyright (C) 1985, 1986, 1987, 1993, 1994, 1995, 1999, 2000, 2001,
-                2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
-                Free Software Foundation, Inc.
+    Copyright (C) 1985-1987, 1993-1995, 1999-2011  Free Software Foundation, Inc.
  
  This file is part of GNU Emacs.
  
@@@ -58,13 -56,10 +56,13 @@@ int gcpro_level
  #endif
  
  Lisp_Object Qautoload, Qmacro, Qexit, Qinteractive, Qcommandp, Qdefun;
- Lisp_Object Qinhibit_quit, Vinhibit_quit, Vquit_flag;
+ Lisp_Object Qinhibit_quit;
  Lisp_Object Qand_rest, Qand_optional;
  Lisp_Object Qdebug_on_error;
  Lisp_Object Qdeclare;
 +Lisp_Object Qcurry;
 +Lisp_Object Qinternal_interpreter_environment, Qclosure;
 +
  Lisp_Object Qdebug;
  
  /* This holds either the symbol `run-hooks' or nil.
@@@ -80,16 -75,6 +78,16 @@@ Lisp_Object Vrun_hooks
  
  Lisp_Object Vautoload_queue;
  
 +/* When lexical binding is being used, this is non-nil, and contains an
 +   alist of lexically-bound variable, or (t), indicating an empty
 +   environment.  The lisp name of this variable is
 +   `internal-interpreter-environment'.  Every element of this list
 +   can be either a cons (VAR . VAL) specifying a lexical binding,
 +   or a single symbol VAR indicating that this variable should use
 +   dynamic scoping.  */
 +
 +Lisp_Object Vinternal_interpreter_environment;
 +
  /* Current number of specbindings allocated in specpdl.  */
  
  EMACS_INT specpdl_size;
@@@ -102,56 -87,10 +100,10 @@@ struct specbinding *specpdl
  
  struct specbinding *specpdl_ptr;
  
- /* Maximum size allowed for specpdl allocation */
- EMACS_INT max_specpdl_size;
  /* Depth in Lisp evaluations and function calls.  */
  
  EMACS_INT lisp_eval_depth;
  
- /* Maximum allowed depth in Lisp evaluations and function calls.  */
- EMACS_INT max_lisp_eval_depth;
- /* Nonzero means enter debugger before next function call */
- int debug_on_next_call;
- /* Non-zero means debugger may continue.  This is zero when the
-    debugger is called during redisplay, where it might not be safe to
-    continue the interrupted redisplay. */
- int debugger_may_continue;
- /* List of conditions (non-nil atom means all) which cause a backtrace
-    if an error is handled by the command loop's error handler.  */
- Lisp_Object Vstack_trace_on_error;
- /* List of conditions (non-nil atom means all) which enter the debugger
-    if an error is handled by the command loop's error handler.  */
- Lisp_Object Vdebug_on_error;
- /* List of conditions and regexps specifying error messages which
-    do not enter the debugger even if Vdebug_on_error says they should.  */
- Lisp_Object Vdebug_ignored_errors;
- /* Non-nil means call the debugger even if the error will be handled.  */
- Lisp_Object Vdebug_on_signal;
- /* Hook for edebug to use.  */
- Lisp_Object Vsignal_hook_function;
- /* Nonzero means enter debugger if a quit signal
-    is handled by the command loop's error handler. */
- int debug_on_quit;
  /* The value of num_nonmacro_input_events as of the last time we
     started to enter the debugger.  If we decide to enter the debugger
     again when this is still equal to num_nonmacro_input_events, then we
  
  int when_entered_debugger;
  
- Lisp_Object Vdebugger;
  /* The function from which the last `signal' was called.  Set in
     Fsignal.  */
  
@@@ -174,13 -111,10 +124,10 @@@ Lisp_Object Vsignaling_function
  
  int handling_signal;
  
- /* Function to process declarations in defmacro forms.  */
- Lisp_Object Vmacro_declaration_function;
 -static Lisp_Object funcall_lambda (Lisp_Object, int, Lisp_Object*);
 +static Lisp_Object apply_lambda (Lisp_Object fun, Lisp_Object args);
 +static Lisp_Object funcall_lambda (Lisp_Object, int, Lisp_Object *);
  static void unwind_to_catch (struct catchtag *, Lisp_Object) NO_RETURN;
 -static Lisp_Object apply_lambda (Lisp_Object, Lisp_Object, int);
+ static int interactive_p (int);
  \f
  void
  init_eval_once (void)
    specpdl = (struct specbinding *) xmalloc (specpdl_size * sizeof (struct specbinding));
    specpdl_ptr = specpdl;
    /* Don't forget to update docs (lispref node "Local Variables").  */
 -  max_specpdl_size = 1000;
 +  max_specpdl_size = 1200; /* 1000 is not enough for CEDET's c-by.el.  */
    max_lisp_eval_depth = 600;
  
    Vrun_hooks = Qnil;
@@@ -306,7 -240,7 +253,7 @@@ usage: (or CONDITIONS...)  */
  
    while (CONSP (args))
      {
 -      val = Feval (XCAR (args));
 +      val = eval_sub (XCAR (args));
        if (!NILP (val))
        break;
        args = XCDR (args);
@@@ -330,7 -264,7 +277,7 @@@ usage: (and CONDITIONS...)  */
  
    while (CONSP (args))
      {
 -      val = Feval (XCAR (args));
 +      val = eval_sub (XCAR (args));
        if (NILP (val))
        break;
        args = XCDR (args);
@@@ -352,11 -286,11 +299,11 @@@ usage: (if COND THEN ELSE...)  */
    struct gcpro gcpro1;
  
    GCPRO1 (args);
 -  cond = Feval (Fcar (args));
 +  cond = eval_sub (Fcar (args));
    UNGCPRO;
  
    if (!NILP (cond))
 -    return Feval (Fcar (Fcdr (args)));
 +    return eval_sub (Fcar (Fcdr (args)));
    return Fprogn (Fcdr (Fcdr (args)));
  }
  
@@@ -380,7 -314,7 +327,7 @@@ usage: (cond CLAUSES...)  */
    while (!NILP (args))
      {
        clause = Fcar (args);
 -      val = Feval (Fcar (clause));
 +      val = eval_sub (Fcar (clause));
        if (!NILP (val))
        {
          if (!EQ (XCDR (clause), Qnil))
@@@ -406,7 -340,7 +353,7 @@@ usage: (progn BODY...)  */
  
    while (CONSP (args))
      {
 -      val = Feval (XCAR (args));
 +      val = eval_sub (XCAR (args));
        args = XCDR (args);
      }
  
@@@ -436,9 -370,9 +383,9 @@@ usage: (prog1 FIRST BODY...)  */
    do
      {
        if (!(argnum++))
 -      val = Feval (Fcar (args_left));
 +      val = eval_sub (Fcar (args_left));
        else
 -      Feval (Fcar (args_left));
 +      eval_sub (Fcar (args_left));
        args_left = Fcdr (args_left);
      }
    while (!NILP(args_left));
@@@ -471,9 -405,9 +418,9 @@@ usage: (prog2 FORM1 FORM2 BODY...)  */
    do
      {
        if (!(argnum++))
 -      val = Feval (Fcar (args_left));
 +      val = eval_sub (Fcar (args_left));
        else
 -      Feval (Fcar (args_left));
 +      eval_sub (Fcar (args_left));
        args_left = Fcdr (args_left);
      }
    while (!NILP (args_left));
@@@ -494,7 -428,7 +441,7 @@@ usage: (setq [SYM VAL]...)  */
    (Lisp_Object args)
  {
    register Lisp_Object args_left;
 -  register Lisp_Object val, sym;
 +  register Lisp_Object val, sym, lex_binding;
    struct gcpro gcpro1;
  
    if (NILP (args))
  
    do
      {
 -      val = Feval (Fcar (Fcdr (args_left)));
 +      val = eval_sub (Fcar (Fcdr (args_left)));
        sym = Fcar (args_left);
 -      Fset (sym, val);
 +
 +      /* Like for eval_sub, we do not check declared_special here since
 +       it's been done when let-binding.  */
 +      if (!NILP (Vinternal_interpreter_environment) /* Mere optimization!  */
 +        && SYMBOLP (sym)
 +        && !NILP (lex_binding
 +                  = Fassq (sym, Vinternal_interpreter_environment)))
 +      XSETCDR (lex_binding, val); /* SYM is lexically bound.  */
 +      else
 +      Fset (sym, val);        /* SYM is dynamically bound.  */
 +
        args_left = Fcdr (Fcdr (args_left));
      }
    while (!NILP(args_left));
@@@ -543,20 -467,9 +490,20 @@@ In byte compilation, `function' causes 
  usage: (function ARG)  */)
    (Lisp_Object args)
  {
 +  Lisp_Object quoted = XCAR (args);
 +
    if (!NILP (Fcdr (args)))
      xsignal2 (Qwrong_number_of_arguments, Qfunction, Flength (args));
 -  return Fcar (args);
 +
 +  if (!NILP (Vinternal_interpreter_environment)
 +      && CONSP (quoted)
 +      && EQ (XCAR (quoted), Qlambda))
 +    /* This is a lambda expression within a lexical environment;
 +       return an interpreted closure instead of a simple lambda.  */
 +    return Fcons (Qclosure, Fcons (Vinternal_interpreter_environment, quoted));
 +  else
 +    /* Simply quote the argument.  */
 +    return quoted;
  }
  
  
@@@ -579,7 -492,7 +526,7 @@@ spec that specifies non-nil uncondition
  use `called-interactively-p'.  */)
    (void)
  {
 -  return (INTERACTIVE && interactive_p (1)) ? Qt : Qnil;
 +  return interactive_p (1) ? Qt : Qnil;
  }
  
  
@@@ -616,7 -529,7 +563,7 @@@ way to do this), or via (not (or execut
      EXCLUDE_SUBRS_P non-zero means always return 0 if the function
      called is a built-in.  */
  
- int
static int
  interactive_p (int exclude_subrs_p)
  {
    struct backtrace *btp;
@@@ -672,8 -585,6 +619,8 @@@ usage: (defun NAME ARGLIST [DOCSTRING] 
    fn_name = Fcar (args);
    CHECK_SYMBOL (fn_name);
    defn = Fcons (Qlambda, Fcdr (args));
 +  if (!NILP (Vinternal_interpreter_environment)) /* Mere optimization!  */
 +    defn = Ffunction (Fcons (defn, Qnil));
    if (!NILP (Vpurify_flag))
      defn = Fpurecopy (defn);
    if (CONSP (XSYMBOL (fn_name)->function)
@@@ -745,11 -656,7 +692,11 @@@ usage: (defmacro NAME ARGLIST [DOCSTRIN
      tail = Fcons (lambda_list, tail);
    else
      tail = Fcons (lambda_list, Fcons (doc, tail));
 -  defn = Fcons (Qmacro, Fcons (Qlambda, tail));
 +  
 +  defn = Fcons (Qlambda, tail);
 +  if (!NILP (Vinternal_interpreter_environment)) /* Mere optimization!  */
 +    defn = Ffunction (Fcons (defn, Qnil));
 +  defn = Fcons (Qmacro, defn);
  
    if (!NILP (Vpurify_flag))
      defn = Fpurecopy (defn);
@@@ -809,7 -716,6 +756,7 @@@ The return value is BASE-VARIABLE.  */
        error ("Don't know how to make a let-bound variable an alias");
    }
  
 +  sym->declared_special = 1;
    sym->redirect = SYMBOL_VARALIAS;
    SET_SYMBOL_ALIAS (sym, XSYMBOL (base_variable));
    sym->constant = SYMBOL_CONSTANT_P (base_variable);
@@@ -855,10 -761,6 +802,10 @@@ usage: (defvar SYMBOL &optional INITVAL
    tem = Fdefault_boundp (sym);
    if (!NILP (tail))
      {
 +      if (SYMBOLP (sym))
 +      /* Do it before evaluating the initial value, for self-references.  */
 +      XSYMBOL (sym)->declared_special = 1;
 +
        if (SYMBOL_CONSTANT_P (sym))
        {
          /* For upward compatibility, allow (defvar :foo (quote :foo)).  */
        }
  
        if (NILP (tem))
 -      Fset_default (sym, Feval (Fcar (tail)));
 +      Fset_default (sym, eval_sub (Fcar (tail)));
        else
        { /* Check if there is really a global binding rather than just a let
             binding that shadows the global unboundness of the var.  */
        }
        LOADHIST_ATTACH (sym);
      }
 +  else if (!NILP (Vinternal_interpreter_environment)
 +         && !XSYMBOL (sym)->declared_special)
 +    /* A simple (defvar foo) with lexical scoping does "nothing" except
 +       declare that var to be dynamically scoped *locally* (i.e. within
 +       the current file or let-block).  */
 +    Vinternal_interpreter_environment =
 +      Fcons (sym, Vinternal_interpreter_environment);
    else
      /* Simple (defvar <var>) should not count as a definition at all.
         It could get in the way of other definitions, and unloading this
         package could try to make the variable unbound.  */
      ;
 -
 +      
    return sym;
  }
  
@@@ -934,11 -829,10 +881,11 @@@ usage: (defconst SYMBOL INITVALUE [DOCS
    if (!NILP (Fcdr (Fcdr (Fcdr (args)))))
      error ("Too many arguments");
  
 -  tem = Feval (Fcar (Fcdr (args)));
 +  tem = eval_sub (Fcar (Fcdr (args)));
    if (!NILP (Vpurify_flag))
      tem = Fpurecopy (tem);
    Fset_default (sym, tem);
 +  XSYMBOL (sym)->declared_special = 1;
    tem = Fcar (Fcdr (Fcdr (args)));
    if (!NILP (tem))
      {
@@@ -1024,59 -918,30 +971,59 @@@ Each VALUEFORM can refer to the symbol
  usage: (let* VARLIST BODY...)  */)
    (Lisp_Object args)
  {
 -  Lisp_Object varlist, val, elt;
 +  Lisp_Object varlist, var, val, elt, lexenv;
    int count = SPECPDL_INDEX ();
    struct gcpro gcpro1, gcpro2, gcpro3;
  
    GCPRO3 (args, elt, varlist);
  
 +  lexenv = Vinternal_interpreter_environment;
 +
    varlist = Fcar (args);
 -  while (!NILP (varlist))
 +  while (CONSP (varlist))
      {
        QUIT;
 -      elt = Fcar (varlist);
 +
 +      elt = XCAR (varlist);
        if (SYMBOLP (elt))
 -      specbind (elt, Qnil);
 +      {
 +        var = elt;
 +        val = Qnil;
 +      }
        else if (! NILP (Fcdr (Fcdr (elt))))
        signal_error ("`let' bindings can have only one value-form", elt);
        else
        {
 -        val = Feval (Fcar (Fcdr (elt)));
 -        specbind (Fcar (elt), val);
 +        var = Fcar (elt);
 +        val = eval_sub (Fcar (Fcdr (elt)));
        }
 -      varlist = Fcdr (varlist);
 +
 +      if (!NILP (lexenv) && SYMBOLP (var)
 +        && !XSYMBOL (var)->declared_special
 +        && NILP (Fmemq (var, Vinternal_interpreter_environment)))
 +      /* Lexically bind VAR by adding it to the interpreter's binding
 +         alist.  */
 +      {
 +        Lisp_Object newenv
 +          = Fcons (Fcons (var, val), Vinternal_interpreter_environment);
 +        if (EQ (Vinternal_interpreter_environment, lexenv))
 +          /* Save the old lexical environment on the specpdl stack,
 +             but only for the first lexical binding, since we'll never
 +             need to revert to one of the intermediate ones.  */
 +          specbind (Qinternal_interpreter_environment, newenv);
 +        else
 +          Vinternal_interpreter_environment = newenv;
 +      }
 +      else
 +      specbind (var, val);
 +
 +      varlist = XCDR (varlist);
      }
 +
    UNGCPRO;
 +
    val = Fprogn (Fcdr (args));
 +
    return unbind_to (count, val);
  }
  
@@@ -1089,7 -954,7 +1036,7 @@@ All the VALUEFORMs are evalled before a
  usage: (let VARLIST BODY...)  */)
    (Lisp_Object args)
  {
 -  Lisp_Object *temps, tem;
 +  Lisp_Object *temps, tem, lexenv;
    register Lisp_Object elt, varlist;
    int count = SPECPDL_INDEX ();
    register int argnum;
        else if (! NILP (Fcdr (Fcdr (elt))))
        signal_error ("`let' bindings can have only one value-form", elt);
        else
 -      temps [argnum++] = Feval (Fcar (Fcdr (elt)));
 +      temps [argnum++] = eval_sub (Fcar (Fcdr (elt)));
        gcpro2.nvars = argnum;
      }
    UNGCPRO;
  
 +  lexenv = Vinternal_interpreter_environment;
 +
    varlist = Fcar (args);
    for (argnum = 0; CONSP (varlist); varlist = XCDR (varlist))
      {
 +      Lisp_Object var;
 +
        elt = XCAR (varlist);
 +      var = SYMBOLP (elt) ? elt : Fcar (elt);
        tem = temps[argnum++];
 -      if (SYMBOLP (elt))
 -      specbind (elt, tem);
 +
 +      if (!NILP (lexenv) && SYMBOLP (var)
 +        && !XSYMBOL (var)->declared_special
 +        && NILP (Fmemq (var, Vinternal_interpreter_environment)))
 +      /* Lexically bind VAR by adding it to the lexenv alist.  */
 +      lexenv = Fcons (Fcons (var, tem), lexenv);
        else
 -      specbind (Fcar (elt), tem);
 +      /* Dynamically bind VAR.  */
 +      specbind (var, tem);
      }
  
 +  if (!EQ (lexenv, Vinternal_interpreter_environment))
 +    /* Instantiate a new lexical environment.  */
 +    specbind (Qinternal_interpreter_environment, lexenv);
 +
    elt = Fprogn (Fcdr (args));
    SAFE_FREE ();
    return unbind_to (count, elt);
@@@ -1165,7 -1016,7 +1112,7 @@@ usage: (while TEST BODY...)  */
  
    test = Fcar (args);
    body = Fcdr (args);
 -  while (!NILP (Feval (test)))
 +  while (!NILP (eval_sub (test)))
      {
        QUIT;
        Fprogn (body);
@@@ -1267,7 -1118,7 +1214,7 @@@ usage: (catch TAG BODY...)  */
    struct gcpro gcpro1;
  
    GCPRO1 (args);
 -  tag = Feval (Fcar (args));
 +  tag = eval_sub (Fcar (args));
    UNGCPRO;
    return internal_catch (tag, Fprogn, Fcdr (args));
  }
@@@ -1400,7 -1251,7 +1347,7 @@@ usage: (unwind-protect BODYFORM UNWINDF
    int count = SPECPDL_INDEX ();
  
    record_unwind_protect (Fprogn, Fcdr (args));
 -  val = Feval (Fcar (args));
 +  val = eval_sub (Fcar (args));
    return unbind_to (count, val);
  }
  \f
@@@ -1501,7 -1352,7 +1448,7 @@@ internal_lisp_condition_case (volatile 
    h.tag = &c;
    handlerlist = &h;
  
 -  val = Feval (bodyform);
 +  val = eval_sub (bodyform);
    catchlist = c.next;
    handlerlist = h.next;
    return val;
@@@ -1706,6 -1557,8 +1653,8 @@@ internal_condition_case_n (Lisp_Object 
  \f
  static Lisp_Object find_handler_clause (Lisp_Object, Lisp_Object,
                                        Lisp_Object, Lisp_Object);
+ static int maybe_call_debugger (Lisp_Object conditions, Lisp_Object sig,
+                               Lisp_Object data);
  
  DEFUN ("signal", Fsignal, Ssignal, 2, 2, 0,
         doc: /* Signal an error.  Args are ERROR-SYMBOL and associated DATA.
@@@ -1726,10 -1579,12 +1675,12 @@@ See also the function `condition-case'
    /* When memory is full, ERROR-SYMBOL is nil,
       and DATA is (REAL-ERROR-SYMBOL . REAL-DATA).
       That is a special case--don't do this in other situations.  */
-   register struct handler *allhandlers = handlerlist;
    Lisp_Object conditions;
    Lisp_Object string;
-   Lisp_Object real_error_symbol;
+   Lisp_Object real_error_symbol
+     = (NILP (error_symbol) ? Fcar (data) : error_symbol);
+   register Lisp_Object clause = Qnil;
+   struct handler *h;
    struct backtrace *bp;
  
    immediate_quit = handling_signal = 0;
    if (gc_in_progress || waiting_for_input)
      abort ();
  
-   if (NILP (error_symbol))
-     real_error_symbol = Fcar (data);
-   else
-     real_error_symbol = error_symbol;
  #if 0 /* rms: I don't know why this was here,
         but it is surely wrong for an error that is handled.  */
  #ifdef HAVE_WINDOW_SYSTEM
        Vsignaling_function = *bp->function;
      }
  
-   for (; handlerlist; handlerlist = handlerlist->next)
+   for (h = handlerlist; h; h = h->next)
      {
-       register Lisp_Object clause;
-       clause = find_handler_clause (handlerlist->handler, conditions,
+       clause = find_handler_clause (h->handler, conditions,
                                    error_symbol, data);
-       if (EQ (clause, Qlambda))
-       {
-         /* We can't return values to code which signaled an error, but we
-            can continue code which has signaled a quit.  */
-         if (EQ (real_error_symbol, Qquit))
-           return Qnil;
-         else
-           error ("Cannot return from the debugger in an error");
-       }
        if (!NILP (clause))
-       {
-         Lisp_Object unwind_data;
-         struct handler *h = handlerlist;
-         handlerlist = allhandlers;
-         if (NILP (error_symbol))
-           unwind_data = data;
-         else
-           unwind_data = Fcons (error_symbol, data);
-         h->chosen_clause = clause;
-         unwind_to_catch (h->tag, unwind_data);
-       }
+       break;
      }
+         
+   if (/* Don't run the debugger for a memory-full error.
+        (There is no room in memory to do that!) */
+       !NILP (error_symbol)
+       && (!NILP (Vdebug_on_signal)
+         /* If no handler is present now, try to run the debugger.  */
+         || NILP (clause)
+         /* Special handler that means "print a message and run debugger
+            if requested".  */
+         || EQ (h->handler, Qerror)))
+     {
+       int debugger_called
+       = maybe_call_debugger (conditions, error_symbol, data);
+       /* We can't return values to code which signaled an error, but we
+        can continue code which has signaled a quit.  */
+       if (debugger_called && EQ (real_error_symbol, Qquit))
+       return Qnil;
+     }      
  
-   handlerlist = allhandlers;
-   /* If no handler is present now, try to run the debugger,
-      and if that fails, throw to top level.  */
-   find_handler_clause (Qerror, conditions, error_symbol, data);
-   if (catchlist != 0)
-     Fthrow (Qtop_level, Qt);
+   if (!NILP (clause))
+     {
+       Lisp_Object unwind_data
+       = (NILP (error_symbol) ? data : Fcons (error_symbol, data));
+       
+       h->chosen_clause = clause;
+       unwind_to_catch (h->tag, unwind_data);
+     }
+   else
+     {
+       if (catchlist != 0)
+       Fthrow (Qtop_level, Qt);
+     }
  
    if (! NILP (error_symbol))
      data = Fcons (error_symbol, data);
+       
    string = Ferror_message_string (data);
    fatal ("%s", SDATA (string), 0);
  }
@@@ -1997,63 -1847,24 +1943,24 @@@ find_handler_clause (Lisp_Object handle
                     Lisp_Object sig, Lisp_Object data)
  {
    register Lisp_Object h;
-   register Lisp_Object tem;
-   int debugger_called = 0;
-   int debugger_considered = 0;
  
    /* t is used by handlers for all conditions, set up by C code.  */
    if (EQ (handlers, Qt))
      return Qt;
  
-   /* Don't run the debugger for a memory-full error.
-      (There is no room in memory to do that!)  */
-   if (NILP (sig))
-     debugger_considered = 1;
    /* error is used similarly, but means print an error message
       and run the debugger if that is enabled.  */
-   if (EQ (handlers, Qerror)
-       || !NILP (Vdebug_on_signal)) /* This says call debugger even if
-                                     there is a handler.  */
-     {
-       if (!NILP (sig) && wants_debugger (Vstack_trace_on_error, conditions))
-       {
-         max_lisp_eval_depth += 15;
-         max_specpdl_size++;
-         if (noninteractive)
-           Fbacktrace ();
-         else
-           internal_with_output_to_temp_buffer
-             ("*Backtrace*",
-              (Lisp_Object (*) (Lisp_Object)) Fbacktrace,
-              Qnil);
-         max_specpdl_size--;
-         max_lisp_eval_depth -= 15;
-       }
-       if (!debugger_considered)
-       {
-         debugger_considered = 1;
-         debugger_called = maybe_call_debugger (conditions, sig, data);
-       }
-       /* If there is no handler, return saying whether we ran the debugger.  */
-       if (EQ (handlers, Qerror))
-       {
-         if (debugger_called)
-           return Qlambda;
-         return Qt;
-       }
-     }
+   if (EQ (handlers, Qerror))
+     return Qt;
  
-   for (h = handlers; CONSP (h); h = Fcdr (h))
+   for (h = handlers; CONSP (h); h = XCDR (h))
      {
-       Lisp_Object handler, condit;
+       Lisp_Object handler = XCAR (h);
+       Lisp_Object condit, tem;
  
-       handler = Fcar (h);
        if (!CONSP (handler))
        continue;
-       condit = Fcar (handler);
+       condit = XCAR (handler);
        /* Handle a single condition name in handler HANDLER.  */
        if (SYMBOLP (condit))
        {
          Lisp_Object tail;
          for (tail = condit; CONSP (tail); tail = XCDR (tail))
            {
-             tem = Fmemq (Fcar (tail), conditions);
+             tem = Fmemq (XCAR (tail), conditions);
              if (!NILP (tem))
-               {
-                 /* This handler is going to apply.
-                    Does it allow the debugger to run first?  */
-                 if (! debugger_considered && !NILP (Fmemq (Qdebug, condit)))
-                   maybe_call_debugger (conditions, sig, data);
-                 return handler;
-               }
+               return handler;
            }
        }
      }
@@@ -2092,7 -1897,6 +1993,6 @@@ verror (const char *m, va_list ap
    EMACS_INT size = 200;
    int mlen;
    char *buffer = buf;
-   char *args[3];
    int allocated = 0;
    Lisp_Object string;
  
@@@ -2312,21 -2116,9 +2212,21 @@@ do_autoload (Lisp_Object fundef, Lisp_O
  }
  
  \f
 -DEFUN ("eval", Feval, Seval, 1, 1, 0,
 -       doc: /* Evaluate FORM and return its value.  */)
 -  (Lisp_Object form)
 +DEFUN ("eval", Feval, Seval, 1, 2, 0,
 +       doc: /* Evaluate FORM and return its value.
 +If LEXICAL is t, evaluate using lexical scoping.  */)
 +  (Lisp_Object form, Lisp_Object lexical)
 +{
 +  int count = SPECPDL_INDEX ();
 +  specbind (Qinternal_interpreter_environment,
 +          NILP (lexical) ? Qnil : Fcons (Qt, Qnil));
 +  return unbind_to (count, eval_sub (form));
 +}
 +
 +/* Eval a sub-expression of the current expression (i.e. in the same
 +   lexical scope).  */
 +Lisp_Object
 +eval_sub (Lisp_Object form)
  {
    Lisp_Object fun, val, original_fun, original_args;
    Lisp_Object funcar;
      abort ();
  
    if (SYMBOLP (form))
 -    return Fsymbol_value (form);
 +    {
 +      /* Look up its binding in the lexical environment.
 +       We do not pay attention to the declared_special flag here, since we
 +       already did that when let-binding the variable.  */
 +      Lisp_Object lex_binding
 +      = !NILP (Vinternal_interpreter_environment) /* Mere optimization!  */
 +      ? Fassq (form, Vinternal_interpreter_environment)
 +      : Qnil;
 +      if (CONSP (lex_binding))
 +      return XCDR (lex_binding);
 +      else
 +      return Fsymbol_value (form);
 +    }
 +
    if (!CONSP (form))
      return form;
  
          (XSUBR (fun)->max_args >= 0 && XSUBR (fun)->max_args < XINT (numargs)))
        xsignal2 (Qwrong_number_of_arguments, original_fun, numargs);
  
-       if (XSUBR (fun)->max_args == UNEVALLED)
+       else if (XSUBR (fun)->max_args == UNEVALLED)
        {
          backtrace.evalargs = 0;
          val = (XSUBR (fun)->function.aUNEVALLED) (args_left);
  
          while (!NILP (args_left))
            {
 -            vals[argnum++] = Feval (Fcar (args_left));
 +            vals[argnum++] = eval_sub (Fcar (args_left));
              args_left = Fcdr (args_left);
              gcpro3.nvars = argnum;
            }
          GCPRO3 (args_left, fun, fun);
          gcpro3.var = argvals;
          gcpro3.nvars = 0;
-         
          maxargs = XSUBR (fun)->max_args;
          for (i = 0; i < maxargs; args_left = Fcdr (args_left))
            {
 -            argvals[i] = Feval (Fcar (args_left));
 +            argvals[i] = eval_sub (Fcar (args_left));
              gcpro3.nvars = ++i;
            }
-         
          UNGCPRO;
  
          backtrace.args = argvals;
          switch (i)
            {
            case 0:
-             val = (XSUBR (fun)->function.a0) ();
+             val = (XSUBR (fun)->function.a0 ());
              break;
            case 1:
-             val = (XSUBR (fun)->function.a1) (argvals[0]);
+             val = (XSUBR (fun)->function.a1 (argvals[0]));
              break;
            case 2:
-             val = (XSUBR (fun)->function.a2) (argvals[0], argvals[1]);
+             val = (XSUBR (fun)->function.a2 (argvals[0], argvals[1]));
              break;
            case 3:
-             val = (XSUBR (fun)->function.a3) (argvals[0], argvals[1],
-                                               argvals[2]);
+             val = (XSUBR (fun)->function.a3
+                    (argvals[0], argvals[1], argvals[2]));
              break;
            case 4:
-             val = (XSUBR (fun)->function.a4) (argvals[0], argvals[1],
-                                               argvals[2], argvals[3]);
+             val = (XSUBR (fun)->function.a4
+                    (argvals[0], argvals[1], argvals[2], argvals[3]));
              break;
            case 5:
-             val = (XSUBR (fun)->function.a5) (argvals[0], argvals[1], argvals[2],
-                                               argvals[3], argvals[4]);
+             val = (XSUBR (fun)->function.a5
+                    (argvals[0], argvals[1], argvals[2], argvals[3],
+                     argvals[4]));
              break;
            case 6:
-             val = (XSUBR (fun)->function.a6) (argvals[0], argvals[1], argvals[2],
-                                               argvals[3], argvals[4], argvals[5]);
+             val = (XSUBR (fun)->function.a6
+                    (argvals[0], argvals[1], argvals[2], argvals[3],
+                     argvals[4], argvals[5]));
              break;
            case 7:
-             val = (XSUBR (fun)->function.a7) (argvals[0], argvals[1], argvals[2],
-                                               argvals[3], argvals[4], argvals[5],
-                                               argvals[6]);
+             val = (XSUBR (fun)->function.a7
+                    (argvals[0], argvals[1], argvals[2], argvals[3],
+                     argvals[4], argvals[5], argvals[6]));
              break;
-           case 8:
-             val = (XSUBR (fun)->function.a8) (argvals[0], argvals[1], argvals[2],
-                                               argvals[3], argvals[4], argvals[5],
-                                               argvals[6], argvals[7]);
  
+           case 8:
+             val = (XSUBR (fun)->function.a8
+                    (argvals[0], argvals[1], argvals[2], argvals[3],
+                     argvals[4], argvals[5], argvals[6], argvals[7]));
              break;
            default:
              /* Someone has created a subr that takes more arguments than
                 is supported by this code.  We need to either rewrite the
            }
        }
      }
 -  else if (COMPILEDP (fun))
 -    val = apply_lambda (fun, original_args, 1);
 +  else if (FUNVECP (fun))
 +    val = apply_lambda (fun, original_args);
    else
      {
        if (EQ (fun, Qunbound))
          goto retry;
        }
        if (EQ (funcar, Qmacro))
 -      val = Feval (apply1 (Fcdr (fun), original_args));
 -      else if (EQ (funcar, Qlambda))
 -      val = apply_lambda (fun, original_args, 1);
 +      val = eval_sub (apply1 (Fcdr (fun), original_args));
 +      else if (EQ (funcar, Qlambda)
 +             || EQ (funcar, Qclosure))
 +      val = apply_lambda (fun, original_args);
        else
        xsignal1 (Qinvalid_function, original_fun);
      }
@@@ -2806,53 -2586,6 +2708,6 @@@ run_hook_with_args (int nargs, Lisp_Obj
      }
  }
  
- /* Run a hook symbol ARGS[0], but use FUNLIST instead of the actual
-    present value of that symbol.
-    Call each element of FUNLIST,
-    passing each of them the rest of ARGS.
-    The caller (or its caller, etc) must gcpro all of ARGS,
-    except that it isn't necessary to gcpro ARGS[0].  */
- Lisp_Object
- run_hook_list_with_args (Lisp_Object funlist, int nargs, Lisp_Object *args)
- {
-   Lisp_Object sym;
-   Lisp_Object val;
-   Lisp_Object globals;
-   struct gcpro gcpro1, gcpro2, gcpro3;
-   sym = args[0];
-   globals = Qnil;
-   GCPRO3 (sym, val, globals);
-   for (val = funlist; CONSP (val); val = XCDR (val))
-     {
-       if (EQ (XCAR (val), Qt))
-       {
-         /* t indicates this hook has a local binding;
-            it means to run the global binding too.  */
-         for (globals = Fdefault_value (sym);
-              CONSP (globals);
-              globals = XCDR (globals))
-           {
-             args[0] = XCAR (globals);
-             /* In a global value, t should not occur.  If it does, we
-                must ignore it to avoid an endless loop.  */
-             if (!EQ (args[0], Qt))
-               Ffuncall (nargs, args);
-           }
-       }
-       else
-       {
-         args[0] = XCAR (val);
-         Ffuncall (nargs, args);
-       }
-     }
-   UNGCPRO;
-   return Qnil;
- }
  /* Run the hook HOOK, giving each function the two args ARG1 and ARG2.  */
  
  void
@@@ -3021,39 -2754,6 +2876,39 @@@ call7 (Lisp_Object fn, Lisp_Object arg1
  
  /* The caller should GCPRO all the elements of ARGS.  */
  
 +DEFUN ("functionp", Ffunctionp, Sfunctionp, 1, 1, 0,
 +       doc: /* Return non-nil if OBJECT is a type of object that can be called as a function.  */)
 +     (Lisp_Object object)
 +{
 +  if (SYMBOLP (object) && !NILP (Ffboundp (object)))
 +    {
 +      object = Findirect_function (object, Qnil);
 +
 +      if (CONSP (object) && EQ (XCAR (object), Qautoload))
 +      {
 +        /* Autoloaded symbols are functions, except if they load
 +           macros or keymaps.  */
 +        int i;
 +        for (i = 0; i < 4 && CONSP (object); i++)
 +          object = XCDR (object);
 +
 +        return (CONSP (object) && !NILP (XCAR (object))) ? Qnil : Qt;
 +      }
 +    }
 +
 +  if (SUBRP (object))
 +    return (XSUBR (object)->max_args != UNEVALLED) ? Qt : Qnil;
 +  else if (FUNVECP (object))
 +    return Qt;
 +  else if (CONSP (object))
 +    {
 +      Lisp_Object car = XCAR (object);
 +      return (EQ (car, Qlambda) || EQ (car, Qclosure)) ? Qt : Qnil;
 +    }
 +  else
 +    return Qnil;
 +}
 +
  DEFUN ("funcall", Ffuncall, Sfuncall, 1, MANY, 0,
         doc: /* Call first argument as a function, passing remaining arguments to it.
  Return the value that function returns.
@@@ -3117,7 -2817,7 +2972,7 @@@ usage: (funcall FUNCTION &rest ARGUMENT
          xsignal2 (Qwrong_number_of_arguments, original_fun, lisp_numargs);
        }
  
-       if (XSUBR (fun)->max_args == UNEVALLED)
+       else if (XSUBR (fun)->max_args == UNEVALLED)
        xsignal1 (Qinvalid_function, original_fun);
  
        else if (XSUBR (fun)->max_args == MANY)
          switch (XSUBR (fun)->max_args)
            {
            case 0:
-             val = (XSUBR (fun)->function.a0) ();
+             val = (XSUBR (fun)->function.a0 ());
              break;
            case 1:
-             val = (XSUBR (fun)->function.a1) (internal_args[0]);
+             val = (XSUBR (fun)->function.a1 (internal_args[0]));
              break;
            case 2:
-             val = (XSUBR (fun)->function.a2) (internal_args[0], internal_args[1]);
+             val = (XSUBR (fun)->function.a2
+                    (internal_args[0], internal_args[1]));
              break;
            case 3:
-             val = (XSUBR (fun)->function.a3) (internal_args[0], internal_args[1],
-                                               internal_args[2]);
+             val = (XSUBR (fun)->function.a3
+                    (internal_args[0], internal_args[1], internal_args[2]));
              break;
            case 4:
-             val = (XSUBR (fun)->function.a4) (internal_args[0], internal_args[1],
-                                               internal_args[2], internal_args[3]);
+             val = (XSUBR (fun)->function.a4
+                    (internal_args[0], internal_args[1], internal_args[2],
+                    internal_args[3]));
              break;
            case 5:
-             val = (XSUBR (fun)->function.a5) (internal_args[0], internal_args[1],
-                                               internal_args[2], internal_args[3],
-                                               internal_args[4]);
+             val = (XSUBR (fun)->function.a5
+                    (internal_args[0], internal_args[1], internal_args[2],
+                     internal_args[3], internal_args[4]));
              break;
            case 6:
-             val = (XSUBR (fun)->function.a6) (internal_args[0], internal_args[1],
-                                               internal_args[2], internal_args[3],
-                                               internal_args[4], internal_args[5]);
+             val = (XSUBR (fun)->function.a6
+                    (internal_args[0], internal_args[1], internal_args[2],
+                     internal_args[3], internal_args[4], internal_args[5]));
              break;
            case 7:
-             val = (XSUBR (fun)->function.a7) (internal_args[0], internal_args[1],
-                                               internal_args[2], internal_args[3],
-                                               internal_args[4], internal_args[5],
-                                               internal_args[6]);
+             val = (XSUBR (fun)->function.a7
+                    (internal_args[0], internal_args[1], internal_args[2],
+                     internal_args[3], internal_args[4], internal_args[5],
+                     internal_args[6]));
              break;
  
            case 8:
-             val = (XSUBR (fun)->function.a8) (internal_args[0], internal_args[1],
-                                               internal_args[2], internal_args[3],
-                                               internal_args[4], internal_args[5],
-                                               internal_args[6], internal_args[7]);
+             val = (XSUBR (fun)->function.a8
+                    (internal_args[0], internal_args[1], internal_args[2],
+                     internal_args[3], internal_args[4], internal_args[5],
+                     internal_args[6], internal_args[7]));
              break;
  
            default:
            }
        }
      }
 -  else if (COMPILEDP (fun))
 +  else if (FUNVECP (fun))
      val = funcall_lambda (fun, numargs, args + 1);
    else
      {
        funcar = XCAR (fun);
        if (!SYMBOLP (funcar))
        xsignal1 (Qinvalid_function, original_fun);
 -      if (EQ (funcar, Qlambda))
 +      if (EQ (funcar, Qlambda)
 +        || EQ (funcar, Qclosure))
        val = funcall_lambda (fun, numargs, args + 1);
        else if (EQ (funcar, Qautoload))
        {
  }
  \f
  static Lisp_Object
 -apply_lambda (Lisp_Object fun, Lisp_Object args, int eval_flag)
 +apply_lambda (Lisp_Object fun, Lisp_Object args)
  {
    Lisp_Object args_left;
    Lisp_Object numargs;
    for (i = 0; i < XINT (numargs);)
      {
        tem = Fcar (args_left), args_left = Fcdr (args_left);
 -      if (eval_flag) tem = Feval (tem);
 +      tem = eval_sub (tem);
        arg_vector[i++] = tem;
        gcpro1.nvars = i;
      }
  
    UNGCPRO;
  
 -  if (eval_flag)
 -    {
 -      backtrace_list->args = arg_vector;
 -      backtrace_list->nargs = i;
 -    }
 +  backtrace_list->args = arg_vector;
 +  backtrace_list->nargs = i;
    backtrace_list->evalargs = 0;
    tem = funcall_lambda (fun, XINT (numargs), arg_vector);
  
    return tem;
  }
  
 +
 +/* Call a non-bytecode funvec object FUN, on the argments in ARGS (of
 +   length NARGS).  */
 +
 +static Lisp_Object
 +funcall_funvec (Lisp_Object fun, int nargs, Lisp_Object *args)
 +{
 +  int size = FUNVEC_SIZE (fun);
 +  Lisp_Object tag = (size > 0 ? AREF (fun, 0) : Qnil);
 +
 +  if (EQ (tag, Qcurry))
 +    {
 +      /* A curried function is a way to attach arguments to a another
 +       function. The first element of the vector is the identifier
 +       `curry', the second is the wrapped function, and remaining
 +       elements are the attached arguments.  */
 +      int num_curried_args = size - 2;
 +      /* Offset of the curried and user args in the final arglist.  Curried
 +       args are first in the new arg vector, after the function.  User
 +       args follow.  */
 +      int curried_args_offs = 1;
 +      int user_args_offs = curried_args_offs + num_curried_args;
 +      /* The curried function and arguments.  */
 +      Lisp_Object *curry_params = XVECTOR (fun)->contents + 1;
 +      /* The arguments in the curry vector.  */
 +      Lisp_Object *curried_args = curry_params + 1;
 +      /* The number of arguments with which we'll call funcall, and the
 +       arguments themselves.  */
 +      int num_funcall_args = 1 + num_curried_args + nargs;
 +      Lisp_Object *funcall_args
 +      = (Lisp_Object *) alloca (num_funcall_args * sizeof (Lisp_Object));
 +
 +      /* First comes the real function.  */
 +      funcall_args[0] = curry_params[0];
 +
 +      /* Then the arguments in the appropriate order.  */
 +      memcpy (funcall_args + curried_args_offs, curried_args,
 +            num_curried_args * sizeof (Lisp_Object));
 +      memcpy (funcall_args + user_args_offs, args,
 +            nargs * sizeof (Lisp_Object));
 +
 +      return Ffuncall (num_funcall_args, funcall_args);
 +    }
 +  else
 +    xsignal1 (Qinvalid_function, fun);
 +}
 +
 +
  /* Apply a Lisp function FUN to the NARGS evaluated arguments in ARG_VECTOR
     and return the result of evaluation.
     FUN must be either a lambda-expression or a compiled-code object.  */
  
  static Lisp_Object
 -funcall_lambda (Lisp_Object fun, int nargs, register Lisp_Object *arg_vector)
 +funcall_lambda (Lisp_Object fun, int nargs,
 +              register Lisp_Object *arg_vector)
  {
 -  Lisp_Object val, syms_left, next;
 +  Lisp_Object val, syms_left, next, lexenv;
    int count = SPECPDL_INDEX ();
    int i, optional, rest;
  
 +  if (COMPILEDP (fun)
 +      && FUNVEC_SIZE (fun) > COMPILED_PUSH_ARGS
 +      && ! NILP (XVECTOR (fun)->contents[COMPILED_PUSH_ARGS]))
 +    /* A byte-code object with a non-nil `push args' slot means we
 +       shouldn't bind any arguments, instead just call the byte-code
 +       interpreter directly; it will push arguments as necessary.
 +
 +       Byte-code objects with either a non-existant, or a nil value for
 +       the `push args' slot (the default), have dynamically-bound
 +       arguments, and use the argument-binding code below instead (as do
 +       all interpreted functions, even lexically bound ones).  */
 +    {
 +      /* If we have not actually read the bytecode string
 +       and constants vector yet, fetch them from the file.  */
 +      if (CONSP (AREF (fun, COMPILED_BYTECODE)))
 +      Ffetch_bytecode (fun);
 +      return exec_byte_code (AREF (fun, COMPILED_BYTECODE),
 +                           AREF (fun, COMPILED_CONSTANTS),
 +                           AREF (fun, COMPILED_STACK_DEPTH),
 +                           AREF (fun, COMPILED_ARGLIST),
 +                           nargs, arg_vector);
 +    }
 +
 +  if (FUNVECP (fun) && !FUNVEC_COMPILED_P (fun))
 +    /* Byte-compiled functions are handled directly below, but we
 +       call other funvec types via funcall_funvec.  */
 +    return funcall_funvec (fun, nargs, arg_vector);
 +
    if (CONSP (fun))
      {
 +      if (EQ (XCAR (fun), Qclosure))
 +      {
 +        fun = XCDR (fun);     /* Drop `closure'.  */
 +        lexenv = XCAR (fun);
 +        fun = XCDR (fun);     /* Drop the lexical environment.  */
 +      }
 +      else
 +      lexenv = Qnil;
        syms_left = XCDR (fun);
        if (CONSP (syms_left))
        syms_left = XCAR (syms_left);
        xsignal1 (Qinvalid_function, fun);
      }
    else if (COMPILEDP (fun))
 -    syms_left = AREF (fun, COMPILED_ARGLIST);
 +    {
 +      syms_left = AREF (fun, COMPILED_ARGLIST);
 +      lexenv = Qnil;
 +    }
    else
      abort ();
  
        rest = 1;
        else if (EQ (next, Qand_optional))
        optional = 1;
 -      else if (rest)
 +      else
        {
 -        specbind (next, Flist (nargs - i, &arg_vector[i]));
 -        i = nargs;
 +        Lisp_Object val;
 +        if (rest)
 +          {
 +            val = Flist (nargs - i, &arg_vector[i]);
 +            i = nargs;
 +          }
 +        else if (i < nargs)
 +          val = arg_vector[i++];
 +        else if (!optional)
 +          xsignal2 (Qwrong_number_of_arguments, fun, make_number (nargs));
 +        else
 +          val = Qnil;
 +          
 +        /* Bind the argument.  */
 +        if (!NILP (lexenv) && SYMBOLP (next)
 +            /* FIXME: there's no good reason to allow dynamic-scoping
 +               on function arguments, other than consistency with let.  */
 +            && !XSYMBOL (next)->declared_special
 +            && NILP (Fmemq (next, Vinternal_interpreter_environment)))
 +          /* Lexically bind NEXT by adding it to the lexenv alist.  */
 +          lexenv = Fcons (Fcons (next, val), lexenv);
 +        else
 +          /* Dynamically bind NEXT.  */
 +          specbind (next, val);
        }
 -      else if (i < nargs)
 -      specbind (next, arg_vector[i++]);
 -      else if (!optional)
 -      xsignal2 (Qwrong_number_of_arguments, fun, make_number (nargs));
 -      else
 -      specbind (next, Qnil);
      }
  
    if (!NILP (syms_left))
    else if (i < nargs)
      xsignal2 (Qwrong_number_of_arguments, fun, make_number (nargs));
  
 +  if (!EQ (lexenv, Vinternal_interpreter_environment))
 +    /* Instantiate a new lexical environment.  */
 +    specbind (Qinternal_interpreter_environment, lexenv);
 +
    if (CONSP (fun))
      val = Fprogn (XCDR (XCDR (fun)));
    else
         and constants vector yet, fetch them from the file.  */
        if (CONSP (AREF (fun, COMPILED_BYTECODE)))
        Ffetch_bytecode (fun);
 -      val = Fbyte_code (AREF (fun, COMPILED_BYTECODE),
 -                      AREF (fun, COMPILED_CONSTANTS),
 -                      AREF (fun, COMPILED_STACK_DEPTH));
 +      val = exec_byte_code (AREF (fun, COMPILED_BYTECODE),
 +                          AREF (fun, COMPILED_CONSTANTS),
 +                          AREF (fun, COMPILED_STACK_DEPTH),
 +                          Qnil, 0, 0);
      }
  
    return unbind_to (count, val);
@@@ -3668,39 -3263,7 +3525,39 @@@ unbind_to (int count, Lisp_Object value
    UNGCPRO;
    return value;
  }
 +
 +\f
 +
 +DEFUN ("special-variable-p", Fspecial_variable_p, Sspecial_variable_p, 1, 1, 0,
 +       doc: /* Return non-nil if SYMBOL's global binding has been declared special.
 +A special variable is one that will be bound dynamically, even in a
 +context where binding is lexical by default.  */)
 +  (Lisp_Object symbol)
 +{
 +   CHECK_SYMBOL (symbol);
 +   return XSYMBOL (symbol)->declared_special ? Qt : Qnil;
 +}
 +
  \f
 +
 +DEFUN ("curry", Fcurry, Scurry, 1, MANY, 0,
 +       doc: /* Return FUN curried with ARGS.
 +The result is a function-like object that will append any arguments it
 +is called with to ARGS, and call FUN with the resulting list of arguments.
 +
 +For instance:
 +  (funcall (curry '+ 3 4 5) 2) is the same as (funcall '+ 3 4 5 2)
 +and:
 +  (mapcar (curry 'concat "The ") '("a" "b" "c"))
 +  => ("The a" "The b" "The c")
 +
 +usage: (curry FUN &rest ARGS)  */)
 +     (int nargs, Lisp_Object *args)
 +{
 +  return make_funvec (Qcurry, 0, nargs, args);
 +}
 +\f
 +
  DEFUN ("backtrace-debug", Fbacktrace_debug, Sbacktrace_debug, 2, 2, 0,
         doc: /* Set the debug-on-exit flag of eval frame LEVEL levels down to FLAG.
  The debugger is entered when that frame exits, if the flag is non-nil.  */)
@@@ -3841,7 -3404,7 +3698,7 @@@ mark_backtrace (void
  void
  syms_of_eval (void)
  {
-   DEFVAR_INT ("max-specpdl-size", &max_specpdl_size,
+   DEFVAR_INT ("max-specpdl-size", max_specpdl_size,
              doc: /* *Limit on number of Lisp variable bindings and `unwind-protect's.
  If Lisp code tries to increase the total number past this amount,
  an error is signaled.
@@@ -3849,7 -3412,7 +3706,7 @@@ You can safely use a value considerabl
  if that proves inconveniently small.  However, if you increase it too far,
  Emacs could run out of memory trying to make the stack bigger.  */);
  
-   DEFVAR_INT ("max-lisp-eval-depth", &max_lisp_eval_depth,
+   DEFVAR_INT ("max-lisp-eval-depth", max_lisp_eval_depth,
              doc: /* *Limit on depth in `eval', `apply' and `funcall' before error.
  
  This limit serves to catch infinite recursions for you before they cause
@@@ -3858,7 -3421,7 +3715,7 @@@ You can safely make it considerably lar
  if that proves inconveniently small.  However, if you increase it too far,
  Emacs could overflow the real C stack, and crash.  */);
  
-   DEFVAR_LISP ("quit-flag", &Vquit_flag,
+   DEFVAR_LISP ("quit-flag", Vquit_flag,
               doc: /* Non-nil causes `eval' to abort, unless `inhibit-quit' is non-nil.
  If the value is t, that means do an ordinary quit.
  If the value equals `throw-on-input', that means quit by throwing
@@@ -3867,7 -3430,7 +3724,7 @@@ Typing C-g sets `quit-flag' to t, regar
  but `inhibit-quit' non-nil prevents anything from taking notice of that.  */);
    Vquit_flag = Qnil;
  
-   DEFVAR_LISP ("inhibit-quit", &Vinhibit_quit,
+   DEFVAR_LISP ("inhibit-quit", Vinhibit_quit,
               doc: /* Non-nil inhibits C-g quitting from happening immediately.
  Note that `quit-flag' will still be set by typing C-g,
  so a quit will be signaled as soon as `inhibit-quit' is nil.
@@@ -3910,24 -3473,10 +3767,16 @@@ before making `inhibit-quit' nil.  */)
    Qand_optional = intern_c_string ("&optional");
    staticpro (&Qand_optional);
  
 +  Qclosure = intern_c_string ("closure");
 +  staticpro (&Qclosure);
 +
 +  Qcurry = intern_c_string ("curry");
 +  staticpro (&Qcurry);
 +
    Qdebug = intern_c_string ("debug");
    staticpro (&Qdebug);
  
-   DEFVAR_LISP ("stack-trace-on-error", &Vstack_trace_on_error,
-              doc: /* *Non-nil means errors display a backtrace buffer.
- More precisely, this happens for any error that is handled
- by the editor command loop.
- If the value is a list, an error only means to display a backtrace
- if one of its condition symbols appears in the list.  */);
-   Vstack_trace_on_error = Qnil;
-   DEFVAR_LISP ("debug-on-error", &Vdebug_on_error,
+   DEFVAR_LISP ("debug-on-error", Vdebug_on_error,
               doc: /* *Non-nil means enter debugger if an error is signaled.
  Does not apply to errors handled by `condition-case' or those
  matched by `debug-ignored-errors'.
@@@ -3939,7 -3488,7 +3788,7 @@@ The command `toggle-debug-on-error' tog
  See also the variable `debug-on-quit'.  */);
    Vdebug_on_error = Qnil;
  
-   DEFVAR_LISP ("debug-ignored-errors", &Vdebug_ignored_errors,
+   DEFVAR_LISP ("debug-ignored-errors", Vdebug_ignored_errors,
      doc: /* *List of errors for which the debugger should not be called.
  Each element may be a condition-name or a regexp that matches error messages.
  If any element applies to a given error, that error skips the debugger
@@@ -3948,21 -3497,21 +3797,21 @@@ This overrides the variable `debug-on-e
  It does not apply to errors handled by `condition-case'.  */);
    Vdebug_ignored_errors = Qnil;
  
-   DEFVAR_BOOL ("debug-on-quit", &debug_on_quit,
+   DEFVAR_BOOL ("debug-on-quit", debug_on_quit,
      doc: /* *Non-nil means enter debugger if quit is signaled (C-g, for example).
  Does not apply if quit is handled by a `condition-case'.  */);
    debug_on_quit = 0;
  
-   DEFVAR_BOOL ("debug-on-next-call", &debug_on_next_call,
+   DEFVAR_BOOL ("debug-on-next-call", debug_on_next_call,
               doc: /* Non-nil means enter debugger before next `eval', `apply' or `funcall'.  */);
  
-   DEFVAR_BOOL ("debugger-may-continue", &debugger_may_continue,
+   DEFVAR_BOOL ("debugger-may-continue", debugger_may_continue,
               doc: /* Non-nil means debugger may continue execution.
  This is nil when the debugger is called under circumstances where it
  might not be safe to continue.  */);
    debugger_may_continue = 1;
  
-   DEFVAR_LISP ("debugger", &Vdebugger,
+   DEFVAR_LISP ("debugger", Vdebugger,
               doc: /* Function to call to invoke debugger.
  If due to frame exit, args are `exit' and the value being returned;
   this function's value will be returned instead of that.
@@@ -3971,19 -3520,19 +3820,19 @@@ If due to `apply' or `funcall' entry, o
  If due to `eval' entry, one arg, t.  */);
    Vdebugger = Qnil;
  
-   DEFVAR_LISP ("signal-hook-function", &Vsignal_hook_function,
+   DEFVAR_LISP ("signal-hook-function", Vsignal_hook_function,
               doc: /* If non-nil, this is a function for `signal' to call.
  It receives the same arguments that `signal' was given.
  The Edebug package uses this to regain control.  */);
    Vsignal_hook_function = Qnil;
  
-   DEFVAR_LISP ("debug-on-signal", &Vdebug_on_signal,
+   DEFVAR_LISP ("debug-on-signal", Vdebug_on_signal,
               doc: /* *Non-nil means call the debugger regardless of condition handlers.
  Note that `debug-on-error', `debug-on-quit' and friends
  still determine whether to handle the particular condition.  */);
    Vdebug_on_signal = Qnil;
  
-   DEFVAR_LISP ("macro-declaration-function", &Vmacro_declaration_function,
+   DEFVAR_LISP ("macro-declaration-function", Vmacro_declaration_function,
               doc: /* Function to process declarations in a macro definition.
  The function will be called with two args MACRO and DECL.
  MACRO is the name of the macro being defined.
@@@ -3991,17 -3540,6 +3840,20 @@@ DECL is a list `(declare ...)' containi
  The value the function returns is not used.  */);
    Vmacro_declaration_function = Qnil;
  
 +  Qinternal_interpreter_environment
 +    = intern_c_string ("internal-interpreter-environment");
 +  staticpro (&Qinternal_interpreter_environment);
++#if 0 /* Don't export this variable to Elisp, so noone can mess with it
++       (Just imagine if someone makes it buffer-local).  */
 +  DEFVAR_LISP ("internal-interpreter-environment",
 +             &Vinternal_interpreter_environment,
 +             doc: /* If non-nil, the current lexical environment of the lisp interpreter.
 +When lexical binding is not being used, this variable is nil.
 +A value of `(t)' indicates an empty environment, otherwise it is an
 +alist of active lexical bindings.  */);
++#endif
 +  Vinternal_interpreter_environment = Qnil;
 +
    Vrun_hooks = intern_c_string ("run-hooks");
    staticpro (&Vrun_hooks);
  
    defsubr (&Srun_hook_with_args_until_success);
    defsubr (&Srun_hook_with_args_until_failure);
    defsubr (&Sfetch_bytecode);
 +  defsubr (&Scurry);
    defsubr (&Sbacktrace_debug);
    defsubr (&Sbacktrace);
    defsubr (&Sbacktrace_frame);
 +  defsubr (&Scurry);
 +  defsubr (&Sspecial_variable_p);
 +  defsubr (&Sfunctionp);
  }
  
- /* arch-tag: 014a07aa-33ab-4a8f-a3d2-ee8a4a9ff7fb
-    (do not change this comment) */
diff --combined src/fns.c
index 7bae3bb0faee062a1cccd7ac4e154b437bba4611,e2853c2be944ecc48fff7c59401b9f9b3ee9aeb7..cf8cf3a3d837ee900b4e83a18978650cf9e54983
+++ b/src/fns.c
@@@ -1,7 -1,5 +1,5 @@@
  /* Random utility Lisp functions.
-    Copyright (C) 1985, 1986, 1987, 1993, 1994, 1995, 1997,
-                  1998, 1999, 2000, 2001, 2002, 2003, 2004,
-                  2005, 2006, 2007, 2008, 2009, 2010
+    Copyright (C) 1985-1987, 1993-1995, 1997-2011
                 Free Software Foundation, Inc.
  
  This file is part of GNU Emacs.
@@@ -21,9 -19,7 +19,7 @@@ along with GNU Emacs.  If not, see <htt
  
  #include <config.h>
  
- #ifdef HAVE_UNISTD_H
  #include <unistd.h>
- #endif
  #include <time.h>
  #include <setjmp.h>
  
  #define NULL ((POINTER_TYPE *)0)
  #endif
  
- /* Nonzero enables use of dialog boxes for questions
-    asked by mouse commands.  */
- int use_dialog_box;
- /* Nonzero enables use of a file dialog for file name
-    questions asked by mouse commands.  */
- int use_file_dialog;
  Lisp_Object Qstring_lessp, Qprovide, Qrequire;
  Lisp_Object Qyes_or_no_p_history;
  Lisp_Object Qcursor_in_echo_area;
@@@ -139,8 -127,8 +127,8 @@@ To get the number of bytes, use `string
      XSETFASTINT (val, MAX_CHAR);
    else if (BOOL_VECTOR_P (sequence))
      XSETFASTINT (val, XBOOL_VECTOR (sequence)->size);
 -  else if (COMPILEDP (sequence))
 -    XSETFASTINT (val, ASIZE (sequence) & PSEUDOVECTOR_SIZE_MASK);
 +  else if (FUNVECP (sequence))
 +    XSETFASTINT (val, FUNVEC_SIZE (sequence));
    else if (CONSP (sequence))
      {
        i = 0;
@@@ -500,7 -488,7 +488,7 @@@ concat (int nargs, Lisp_Object *args, e
      {
        this = args[argnum];
        if (!(CONSP (this) || NILP (this) || VECTORP (this) || STRINGP (this)
 -          || COMPILEDP (this) || BOOL_VECTOR_P (this)))
 +          || FUNVECP (this) || BOOL_VECTOR_P (this)))
        wrong_type_argument (Qsequencep, this);
      }
  
          Lisp_Object ch;
          EMACS_INT this_len_byte;
  
 -        if (VECTORP (this))
 +        if (VECTORP (this) || FUNVECP (this))
            for (i = 0; i < len; i++)
              {
                ch = AREF (this, i);
@@@ -872,7 -860,7 +860,7 @@@ string_byte_to_char (Lisp_Object string
  \f
  /* Convert STRING to a multibyte string.  */
  
- Lisp_Object
static Lisp_Object
  string_make_multibyte (Lisp_Object string)
  {
    unsigned char *buf;
@@@ -920,7 -908,7 +908,7 @@@ string_to_multibyte (Lisp_Object string
    /* If all the chars are ASCII, they won't need any more bytes once
       converted.  */
    if (nbytes == SBYTES (string))
-     return make_multibyte_string (SDATA (string), nbytes, nbytes);
+     return make_multibyte_string (SSDATA (string), nbytes, nbytes);
  
    SAFE_ALLOCA (buf, unsigned char *, nbytes);
    memcpy (buf, SDATA (string), SBYTES (string));
@@@ -1183,7 -1171,7 +1171,7 @@@ value is a new vector that contains th
  
    if (STRINGP (string))
      {
-       res = make_specified_string (SDATA (string) + from_byte,
+       res = make_specified_string (SSDATA (string) + from_byte,
                                   to_char - from_char, to_byte - from_byte,
                                   STRING_MULTIBYTE (string));
        copy_text_properties (make_number (from_char), make_number (to_char),
@@@ -1247,7 -1235,7 +1235,7 @@@ With one argument, just copy STRING wit
      args_out_of_range_3 (string, make_number (from_char),
                         make_number (to_char));
  
-   return make_specified_string (SDATA (string) + from_byte,
+   return make_specified_string (SSDATA (string) + from_byte,
                                to_char - from_char, to_byte - from_byte,
                                STRING_MULTIBYTE (string));
  }
@@@ -1278,7 -1266,7 +1266,7 @@@ substring_both (Lisp_Object string, EMA
  
    if (STRINGP (string))
      {
-       res = make_specified_string (SDATA (string) + from_byte,
+       res = make_specified_string (SSDATA (string) + from_byte,
                                   to - from, to_byte - from_byte,
                                   STRING_MULTIBYTE (string));
        copy_text_properties (make_number (from), make_number (to),
@@@ -1323,9 -1311,7 +1311,9 @@@ DEFUN ("elt", Felt, Selt, 2, 2, 0
      return Fcar (Fnthcdr (n, sequence));
  
    /* Faref signals a "not array" error, so check here.  */
 -  CHECK_ARRAY (sequence, Qsequencep);
 +  if (! FUNVECP (sequence))
 +    CHECK_ARRAY (sequence, Qsequencep);
 +
    return Faref (sequence, n);
  }
  
@@@ -2104,14 -2090,13 +2092,14 @@@ internal_equal (register Lisp_Object o1
        if (WINDOW_CONFIGURATIONP (o1))
          return compare_window_configurations (o1, o2, 0);
  
 -      /* Aside from them, only true vectors, char-tables, compiled
 -         functions, and fonts (font-spec, font-entity, font-ojbect)
 -         are sensible to compare, so eliminate the others now.  */
 +      /* Aside from them, only true vectors, char-tables, function vectors,
 +         and fonts (font-spec, font-entity, font-ojbect) are sensible to
 +         compare, so eliminate the others now.  */
        if (size & PSEUDOVECTOR_FLAG)
          {
 -          if (!(size & (PVEC_COMPILED
 -                        | PVEC_CHAR_TABLE | PVEC_SUB_CHAR_TABLE | PVEC_FONT)))
 +          if (!(size & (PVEC_FUNVEC
 +                        | PVEC_CHAR_TABLE | PVEC_SUB_CHAR_TABLE
 +                        | PVEC_FONT)))
              return 0;
            size &= PSEUDOVECTOR_SIZE_MASK;
          }
@@@ -2314,7 -2299,7 +2302,7 @@@ mapcar1 (EMACS_INT leni, Lisp_Object *v
      1) lists are not relocated and 2) the list is marked via `seq' so will not
      be freed */
  
 -  if (VECTORP (seq))
 +  if (VECTORP (seq) || FUNVECP (seq))
      {
        for (i = 0; i < leni; i++)
        {
@@@ -2465,10 -2450,11 +2453,11 @@@ do_yes_or_no_p (Lisp_Object prompt
  
  DEFUN ("yes-or-no-p", Fyes_or_no_p, Syes_or_no_p, 1, 1, 0,
         doc: /* Ask user a yes-or-no question.  Return t if answer is yes.
- Takes one argument, which is the string to display to ask the question.
- It should end in a space; `yes-or-no-p' adds `(yes or no) ' to it.
- The user must confirm the answer with RET,
- and can edit it until it has been confirmed.
+ PROMPT is the string to display to ask the question.  It should end in
+ a space; `yes-or-no-p' adds \"(yes or no) \" to it.
+ The user must confirm the answer with RET, and can edit it until it
+ has been confirmed.
  
  Under a windowing system a dialog box will be used if `last-nonmenu-event'
  is nil, and `use-dialog-box' is non-nil.  */)
        ans = Fdowncase (Fread_from_minibuffer (prompt, Qnil, Qnil, Qnil,
                                              Qyes_or_no_p_history, Qnil,
                                              Qnil));
-       if (SCHARS (ans) == 3 && !strcmp (SDATA (ans), "yes"))
+       if (SCHARS (ans) == 3 && !strcmp (SSDATA (ans), "yes"))
        {
          UNGCPRO;
          return Qt;
        }
-       if (SCHARS (ans) == 2 && !strcmp (SDATA (ans), "no"))
+       if (SCHARS (ans) == 2 && !strcmp (SSDATA (ans), "no"))
        {
          UNGCPRO;
          return Qnil;
@@@ -2564,7 -2550,7 +2553,7 @@@ advisable.  */
    return ret;
  }
  \f
- Lisp_Object Vfeatures, Qsubfeatures;
+ Lisp_Object Qsubfeatures;
  
  DEFUN ("featurep", Ffeaturep, Sfeaturep, 1, 2, 0,
         doc: /* Return t if FEATURE is present in this Emacs.
@@@ -3052,7 -3038,7 +3041,7 @@@ into shorter lines.  */
    /* We need to allocate enough room for decoding the text. */
    SAFE_ALLOCA (encoded, char *, allength);
  
-   encoded_length = base64_encode_1 (SDATA (string),
+   encoded_length = base64_encode_1 (SSDATA (string),
                                    encoded, length, NILP (no_line_break),
                                    STRING_MULTIBYTE (string));
    if (encoded_length > allength)
@@@ -3247,7 -3233,7 +3236,7 @@@ DEFUN ("base64-decode-string", Fbase64_
    SAFE_ALLOCA (decoded, char *, length);
  
    /* The decoded result should be unibyte. */
-   decoded_length = base64_decode_1 (SDATA (string), decoded, length,
+   decoded_length = base64_decode_1 (SSDATA (string), decoded, length,
                                    0, NULL);
    if (decoded_length > length)
      abort ();
@@@ -3704,7 -3690,7 +3693,7 @@@ make_hash_table (Lisp_Object test, Lisp
  /* Return a copy of hash table H1.  Keys and values are not copied,
     only the table itself is.  */
  
- Lisp_Object
static Lisp_Object
  copy_hash_table (struct Lisp_Hash_Table *h1)
  {
    Lisp_Object table;
@@@ -3912,7 -3898,7 +3901,7 @@@ hash_remove_from_table (struct Lisp_Has
  
  /* Clear hash table H.  */
  
- void
static void
  hash_clear (struct Lisp_Hash_Table *h)
  {
    if (h->count > 0)
@@@ -4759,7 -4745,7 +4748,7 @@@ guesswork fails.  Normally, an error i
        object = code_convert_string (object, coding_system, Qnil, 1, 0, 0);
      }
  
-   md5_buffer (SDATA (object) + start_byte,
+   md5_buffer (SSDATA (object) + start_byte,
              SBYTES (object) - (size_byte - end_byte),
              digest);
  
@@@ -4842,7 -4828,7 +4831,7 @@@ syms_of_fns (void
  
    Fset (Qyes_or_no_p_history, Qnil);
  
-   DEFVAR_LISP ("features", &Vfeatures,
+   DEFVAR_LISP ("features", Vfeatures,
      doc: /* A list of symbols which are the features of the executing Emacs.
  Used by `featurep' and `require', and altered by `provide'.  */);
    Vfeatures = Fcons (intern_c_string ("emacs"), Qnil);
    staticpro (&Qpaper);
  #endif        /* HAVE_LANGINFO_CODESET */
  
-   DEFVAR_BOOL ("use-dialog-box", &use_dialog_box,
+   DEFVAR_BOOL ("use-dialog-box", use_dialog_box,
      doc: /* *Non-nil means mouse commands use dialog boxes to ask questions.
  This applies to `y-or-n-p' and `yes-or-no-p' questions asked by commands
  invoked by mouse clicks and mouse menu items.
@@@ -4869,7 -4855,7 +4858,7 @@@ On some platforms, file selection dialo
  non-nil.  */);
    use_dialog_box = 1;
  
-   DEFVAR_BOOL ("use-file-dialog", &use_file_dialog,
+   DEFVAR_BOOL ("use-file-dialog", use_file_dialog,
      doc: /* *Non-nil means mouse commands use a file dialog to ask for files.
  This applies to commands from menus and tool bar buttons even when
  they are initiated from the keyboard.  If `use-dialog-box' is nil,
@@@ -4950,6 -4936,3 +4939,3 @@@ voi
  init_fns (void)
  {
  }
- /* arch-tag: 787f8219-5b74-46bd-8469-7e1cc475fa31
-    (do not change this comment) */
diff --combined src/globals.h
index 0000000000000000000000000000000000000000,5dc2d54040917ff89acc5c6fa8c5dfd82fe4b07c..f7162baafbc61bd39382ef999776f26c52b5d4cd
mode 000000,100644..100644
--- /dev/null
@@@ -1,0 -1,2900 +1,2902 @@@
+ /* Declare all global lisp variables.
+    Copyright (C) 2011  Free Software Foundation, Inc.
+    This file is part of GNU Emacs.
+    GNU Emacs is free software: you can redistribute it and/or modify
+    it under the terms of the GNU General Public License as published by
+    the Free Software Foundation, either version 3 of the License, or
+    (at your option) any later version.
+    GNU Emacs is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+    GNU General Public License for more details.
+    You should have received a copy of the GNU General Public License
+    along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.  */
+ struct emacs_globals
+ {
+   /* Count the amount of consing of various sorts of space.  */
+   EMACS_INT f_cons_cells_consed;
+   EMACS_INT f_floats_consed;
+   EMACS_INT f_vector_cells_consed;
+   EMACS_INT f_symbols_consed;
+   EMACS_INT f_string_chars_consed;
+   EMACS_INT f_misc_objects_consed;
+   EMACS_INT f_intervals_consed;
+   EMACS_INT f_strings_consed;
+   /* Minimum number of bytes of consing since GC before next GC. */
+   EMACS_INT f_gc_cons_threshold;
+   Lisp_Object f_Vgc_cons_percentage;
+   /* Nonzero means display messages at beginning and end of GC.  */
+   int f_garbage_collection_messages;
+   /* Non-nil means defun should do purecopy on the function definition.  */
+   Lisp_Object f_Vpurify_flag;
+   /* Non-nil means we are handling a memory-full error.  */
+   Lisp_Object f_Vmemory_full;
+   /* Total number of bytes allocated in pure storage. */
+   EMACS_INT f_pure_bytes_used;
+   /* Pre-computed signal argument for use when memory is exhausted.  */
+   Lisp_Object f_Vmemory_signal_data;
+   Lisp_Object f_Vpost_gc_hook;
+   Lisp_Object f_Vgc_elapsed;
+   EMACS_INT f_gcs_done;
+   /* Functions to call before and after each text change. */
+   Lisp_Object f_Vbefore_change_functions;
+   Lisp_Object f_Vafter_change_functions;
+   Lisp_Object f_Vtransient_mark_mode;
+   /* t means ignore all read-only text properties.
+      A list means ignore such a property if its value is a member of the list.
+      Any non-nil value means ignore buffer-read-only.  */
+   Lisp_Object f_Vinhibit_read_only;
+   /* List of functions to call that can query about killing a buffer.
+      If any of these functions returns nil, we don't kill it.  */
+   Lisp_Object f_Vkill_buffer_query_functions;
+   Lisp_Object f_Vchange_major_mode_hook;
+   /* List of functions to call before changing an unmodified buffer.  */
+   Lisp_Object f_Vfirst_change_hook;
+   /* If nonzero, all modification hooks are suppressed.  */
+   int f_inhibit_modification_hooks;
+   Lisp_Object f_Vbyte_code_meter;
+   int f_byte_metering_on;
+   Lisp_Object f_Vcurrent_prefix_arg;
+   Lisp_Object f_Vcommand_history;
+   Lisp_Object f_Vcommand_debug_status;
+   /* Non-nil means treat the mark as active
+      even if mark_active is 0.  */
+   Lisp_Object f_Vmark_even_if_inactive;
+   Lisp_Object f_Vmouse_leave_buffer_hook;
+   Lisp_Object f_Vexec_path;
+   Lisp_Object f_Vexec_directory;
+   Lisp_Object f_Vexec_suffixes;
+   Lisp_Object f_Vdata_directory;
+   Lisp_Object f_Vdoc_directory;
+   Lisp_Object f_Vconfigure_info_directory;
+   Lisp_Object f_Vshared_game_score_directory;
+   Lisp_Object f_Vshell_file_name;
+   Lisp_Object f_Vprocess_environment;
+   Lisp_Object f_Vinitial_environment;
+   /* Variables to determine word boundary.  */
+   Lisp_Object f_Vword_combining_categories;
+   Lisp_Object f_Vword_separating_categories;
+   /* This contains all code conversion map available to CCL.  */
+   Lisp_Object f_Vcode_conversion_map_vector;
+   /* Alist of fontname patterns vs corresponding CCL program.  */
+   Lisp_Object f_Vfont_ccl_encoder_alist;
+   /* Vector of registered hash tables for translation.  */
+   Lisp_Object f_Vtranslation_hash_table_vector;
+   /* Vector of translation table ever defined.
+      ID of a translation table is used to index this vector.  */
+   Lisp_Object f_Vtranslation_table_vector;
+   /* A char-table for characters which may invoke auto-filling.  */
+   Lisp_Object f_Vauto_fill_chars;
+   /* A char-table.  An element is non-nil iff the corresponding
+      character has a printable glyph.  */
+   Lisp_Object f_Vprintable_chars;
+   /* A char-table.  An elemnent is a column-width of the corresponding
+      character.  */
+   Lisp_Object f_Vchar_width_table;
+   /* A char-table.  An element is a symbol indicating the direction
+      property of corresponding character.  */
+   Lisp_Object f_Vchar_direction_table;
+   /* Char table of scripts.  */
+   Lisp_Object f_Vchar_script_table;
+   /* Alist of scripts vs representative characters.  */
+   Lisp_Object f_Vscript_representative_chars;
+   Lisp_Object f_Vunicode_category_table;
+   /* List of all charsets.  This variable is used only from Emacs
+      Lisp.  */
+   Lisp_Object f_Vcharset_list;
+   Lisp_Object f_Vcharset_map_path;
+   /* If nonzero, don't load charset maps.  */
+   int f_inhibit_load_charset_map;
+   Lisp_Object f_Vcurrent_iso639_language;
+   Lisp_Object f_Vpost_self_insert_hook;
+   int f_coding_system_require_warning;
+   Lisp_Object f_Vselect_safe_coding_system_function;
+   /* Mnemonic string for each format of end-of-line.  */
+   Lisp_Object f_eol_mnemonic_unix;
+   Lisp_Object f_eol_mnemonic_dos;
+   Lisp_Object f_eol_mnemonic_mac;
+   /* Mnemonic string to indicate format of end-of-line is not yet
+      decided.  */
+   Lisp_Object f_eol_mnemonic_undecided;
+   Lisp_Object f_Vcoding_system_list;
+   Lisp_Object f_Vcoding_system_alist;
+   /* Coding-system for reading files and receiving data from process.  */
+   Lisp_Object f_Vcoding_system_for_read;
+   /* Coding-system for writing files and sending data to process.  */
+   Lisp_Object f_Vcoding_system_for_write;
+   /* Coding-system actually used in the latest I/O.  */
+   Lisp_Object f_Vlast_coding_system_used;
+   /* Set to non-nil when an error is detected while code conversion.  */
+   Lisp_Object f_Vlast_code_conversion_error;
+   /* A vector of length 256 which contains information about special
+      Latin codes (especially for dealing with Microsoft codes).  */
+   Lisp_Object f_Vlatin_extra_code_table;
+   /* Flag to inhibit code conversion of end-of-line format.  */
+   int f_inhibit_eol_conversion;
+   /* Flag to inhibit ISO2022 escape sequence detection.  */
+   int f_inhibit_iso_escape_detection;
+   /* Flag to inhibit detection of binary files through null bytes.  */
+   int f_inhibit_null_byte_detection;
+   /* Flag to make buffer-file-coding-system inherit from process-coding.  */
+   int f_inherit_process_coding_system;
+   Lisp_Object f_Vfile_coding_system_alist;
+   Lisp_Object f_Vprocess_coding_system_alist;
+   Lisp_Object f_Vnetwork_coding_system_alist;
+   Lisp_Object f_Vlocale_coding_system;
+   /* Flag to tell if we look up translation table on character code
+      conversion.  */
+   Lisp_Object f_Venable_character_translation;
+   /* Standard translation table to look up on decoding (reading).  */
+   Lisp_Object f_Vstandard_translation_table_for_decode;
+   /* Standard translation table to look up on encoding (writing).  */
+   Lisp_Object f_Vstandard_translation_table_for_encode;
+   /* Alist of charsets vs revision number.  */
+   Lisp_Object f_Vcharset_revision_table;
+   /* Default coding systems used for process I/O.  */
+   Lisp_Object f_Vdefault_process_coding_system;
+   /* Char table for translating Quail and self-inserting input.  */
+   Lisp_Object f_Vtranslation_table_for_input;
+   /* List of symbols `coding-category-xxx' ordered by priority.  This
+      variable is exposed to Emacs Lisp.  */
+   Lisp_Object f_Vcoding_category_list;
+   /* Function to call to adjust composition.  */
+   Lisp_Object f_Vcompose_chars_after_function;
+   Lisp_Object f_Vauto_composition_mode;
+   Lisp_Object f_Vauto_composition_function;
+   Lisp_Object f_Vcomposition_function_table;
+   Lisp_Object f_Vmost_positive_fixnum;
+   Lisp_Object f_Vmost_negative_fixnum;
+   /* Registered buses.  */
+   Lisp_Object f_Vdbus_registered_buses;
+   /* Hash table which keeps function definitions.  */
+   Lisp_Object f_Vdbus_registered_objects_table;
+   /* Whether to debug D-Bus.  */
+   Lisp_Object f_Vdbus_debug;
+   Lisp_Object f_Vcompletion_ignored_extensions;
+   /* Non-zero means don't pause redisplay for pending input.  (This is
+      for debugging and for a future implementation of EDT-like
+      scrolling.  */
+   int f_redisplay_dont_pause;
+   /* If a number (float), check for user input every N seconds.  */
+   Lisp_Object f_Vredisplay_preemption_period;
+   /* Lisp variable visible-bell; enables use of screen-flash instead of
+      audible bell.  */
+   int f_visible_bell;
+   /* Invert the color of the whole frame, at a low level.  */
+   int f_inverse_video;
+   /* Line speed of the terminal.  */
+   EMACS_INT f_baud_rate;
+   /* Either nil or a symbol naming the window system under which Emacs
+      creates the first frame.  */
+   Lisp_Object f_Vinitial_window_system;
+   /* Version number of X windows: 10, 11 or nil.  */
+   Lisp_Object f_Vwindow_system_version;
+   /* Vector of glyph definitions.  Indexed by glyph number, the contents
+      are a string which is how to output the glyph.
+      If Vglyph_table is nil, a glyph is output by using its low 8 bits
+      as a character code.
+      This is an obsolete feature that is no longer used.  The variable
+      is retained for compatibility.  */
+   Lisp_Object f_Vglyph_table;
+   /* Display table to use for vectors that don't specify their own.  */
+   Lisp_Object f_Vstandard_display_table;
+   /* Nonzero means reading single-character input with prompt so put
+      cursor on mini-buffer after the prompt.  Positive means at end of
+      text in echo area; negative means at beginning of line.  */
+   int f_cursor_in_echo_area;
+   Lisp_Object f_Vdoc_file_name;
+   /* A list of files used to build this Emacs binary.  */
+   Lisp_Object f_Vbuild_files;
+   /* country info */
+   EMACS_INT f_dos_country_code;
+   EMACS_INT f_dos_codepage;
+   EMACS_INT f_dos_timezone_offset;
+   EMACS_INT f_dos_decimal_point;
+   EMACS_INT f_dos_keyboard_layout;
+   EMACS_INT f_dos_hyper_key;
+   EMACS_INT f_dos_super_key;
+   EMACS_INT f_dos_keypad_mode;
+   Lisp_Object f_Vdos_version;
+   Lisp_Object f_Vdos_display_scancodes;
+   Lisp_Object f_Vdos_windows_version;
+   Lisp_Object f_Vbuffer_access_fontify_functions;
+   Lisp_Object f_Vbuffer_access_fontified_property;
+   /* Non-nil means don't stop at field boundary in text motion commands.  */
+   Lisp_Object f_Vinhibit_field_text_motion;
+   /* Some static data, and a function to initialize it for each run */
+   Lisp_Object f_Vsystem_name;
+   Lisp_Object f_Vuser_real_login_name;
+   Lisp_Object f_Vuser_full_name;
+   Lisp_Object f_Vuser_login_name;
+   Lisp_Object f_Voperating_system_release;
+   /* Command line args from shell, as list of strings.  */
+   Lisp_Object f_Vcommand_line_args;
+   /* The name under which Emacs was invoked, with any leading directory
+      names discarded.  */
+   Lisp_Object f_Vinvocation_name;
+   /* The directory name from which Emacs was invoked.  */
+   Lisp_Object f_Vinvocation_directory;
+   /* The directory name in which to find subdirs such as lisp and etc.
+      nil means get them only from PATH_LOADSEARCH.  */
+   Lisp_Object f_Vinstallation_directory;
+   /* The values of `current-time' before and after Emacs initialization.  */
+   Lisp_Object f_Vbefore_init_time;
+   Lisp_Object f_Vafter_init_time;
+   /* Hook run by `kill-emacs' before it does really anything.  */
+   Lisp_Object f_Vkill_emacs_hook;
+   /* Search path separator.  */
+   Lisp_Object f_Vpath_separator;
+   /* Variable whose value is symbol giving operating system type.  */
+   Lisp_Object f_Vsystem_type;
+   /* Variable whose value is string giving configuration built for.  */
+   Lisp_Object f_Vsystem_configuration;
+   /* Variable whose value is string giving configuration options,
+      for use when reporting bugs.  */
+   Lisp_Object f_Vsystem_configuration_options;
+   /* Current and previous system locales for messages and time.  */
+   Lisp_Object f_Vsystem_messages_locale;
+   Lisp_Object f_Vprevious_system_messages_locale;
+   Lisp_Object f_Vsystem_time_locale;
+   Lisp_Object f_Vprevious_system_time_locale;
+   /* Copyright and version info.  The version number may be updated by
+      Lisp code.  */
+   Lisp_Object f_Vemacs_copyright;
+   Lisp_Object f_Vemacs_version;
+   /* Alist of external libraries and files implementing them.  */
+   Lisp_Object f_Vdynamic_library_alist;
+   /* Value of Lisp variable `noninteractive'.
+      Normally same as C variable `noninteractive'
+      but nothing terrible happens if user sets this one.  */
+   int f_noninteractive1;
+   /* Nonzero means Emacs was run in --quick mode.  */
+   int f_inhibit_x_resources;
+   Lisp_Object f_Vinhibit_quit;
+   Lisp_Object f_Vquit_flag;
+   /* Maximum size allowed for specpdl allocation */
+   EMACS_INT f_max_specpdl_size;
+   /* Maximum allowed depth in Lisp evaluations and function calls.  */
+   EMACS_INT f_max_lisp_eval_depth;
+   /* Nonzero means enter debugger before next function call */
+   int f_debug_on_next_call;
+   /* Non-zero means debugger may continue.  This is zero when the
+      debugger is called during redisplay, where it might not be safe to
+      continue the interrupted redisplay. */
+   int f_debugger_may_continue;
+   /* List of conditions (non-nil atom means all) which enter the debugger
+      if an error is handled by the command loop's error handler.  */
+   Lisp_Object f_Vdebug_on_error;
+   /* List of conditions and regexps specifying error messages which
+      do not enter the debugger even if Vdebug_on_error says they should.  */
+   Lisp_Object f_Vdebug_ignored_errors;
+   /* Non-nil means call the debugger even if the error will be handled.  */
+   Lisp_Object f_Vdebug_on_signal;
+   /* Hook for edebug to use.  */
+   Lisp_Object f_Vsignal_hook_function;
+   /* Nonzero means enter debugger if a quit signal
+      is handled by the command loop's error handler. */
+   int f_debug_on_quit;
+   Lisp_Object f_Vdebugger;
+   /* Function to process declarations in defmacro forms.  */
+   Lisp_Object f_Vmacro_declaration_function;
+   /* Coding system for file names, or nil if none.  */
+   Lisp_Object f_Vfile_name_coding_system;
+   /* Coding system for file names used only when
+      Vfile_name_coding_system is nil.  */
+   Lisp_Object f_Vdefault_file_name_coding_system;
+   /* Alist of elements (REGEXP . HANDLER) for file names
+      whose I/O is done with a special handler.  */
+   Lisp_Object f_Vfile_name_handler_alist;
+   /* Function to be called to decide a coding system of a reading file.  */
+   Lisp_Object f_Vset_auto_coding_function;
+   /* Functions to be called to process text properties in inserted file.  */
+   Lisp_Object f_Vafter_insert_file_functions;
+   /* Functions to be called to create text property annotations for file.  */
+   Lisp_Object f_Vwrite_region_annotate_functions;
+   Lisp_Object f_Vwrite_region_post_annotation_function;
+   /* During build_annotations, each time an annotation function is called,
+      this holds the annotations made by the previous functions.  */
+   Lisp_Object f_Vwrite_region_annotations_so_far;
+   /* File name in which we write a list of all our auto save files.  */
+   Lisp_Object f_Vauto_save_list_file_name;
+   /* Whether or not files are auto-saved into themselves.  */
+   Lisp_Object f_Vauto_save_visited_file_name;
+   /* Whether or not to continue auto-saving after a large deletion.  */
+   Lisp_Object f_Vauto_save_include_big_deletions;
+   /* Nonzero means skip the call to fsync in Fwrite-region.  */
+   int f_write_region_inhibit_fsync;
+   /* Non-zero means call move-file-to-trash in Fdelete_file or
+      Fdelete_directory_internal.  */
+   int f_delete_by_moving_to_trash;
+   /* These variables describe handlers that have "already" had a chance
+      to handle the current operation.
+      Vinhibit_file_name_handlers is a list of file name handlers.
+      Vinhibit_file_name_operation is the operation being handled.
+      If we try to handle that operation, we ignore those handlers.  */
+   Lisp_Object f_Vinhibit_file_name_handlers;
+   Lisp_Object f_Vinhibit_file_name_operation;
+   /* The directory for writing temporary files.  */
+   Lisp_Object f_Vtemporary_file_directory;
+   /* Nonzero enables use of dialog boxes for questions
+      asked by mouse commands.  */
+   int f_use_dialog_box;
+   /* Nonzero enables use of a file dialog for file name
+      questions asked by mouse commands.  */
+   int f_use_file_dialog;
+   Lisp_Object f_Vfeatures;
+   Lisp_Object f_Vfont_weight_table;
+   Lisp_Object f_Vfont_slant_table;
+   Lisp_Object f_Vfont_width_table;
+   Lisp_Object f_Vfont_encoding_alist;
+   Lisp_Object f_Vfont_log;
+   Lisp_Object f_Vfont_encoding_charset_alist;
+   Lisp_Object f_Vuse_default_ascent;
+   Lisp_Object f_Vignore_relative_composition;
+   Lisp_Object f_Valternate_fontname_alist;
+   Lisp_Object f_Vfontset_alias_alist;
+   Lisp_Object f_Vvertical_centering_font_regexp;
+   Lisp_Object f_Votf_script_alist;
+   /* If we shall make pointer invisible when typing or not.  */
+   Lisp_Object f_Vmake_pointer_invisible;
+   /* The name we're using in resource queries.  Most often "emacs".  */
+   Lisp_Object f_Vx_resource_name;
+   /* The application class we're using in resource queries.
+      Normally "Emacs".  */
+   Lisp_Object f_Vx_resource_class;
+   /* Lower limit value of the frame opacity (alpha transparency).  */
+   Lisp_Object f_Vframe_alpha_lower_limit;
+   Lisp_Object f_Vmenu_bar_mode;
+   Lisp_Object f_Vtool_bar_mode;
+   Lisp_Object f_Vterminal_frame;
+   Lisp_Object f_Vdefault_frame_alist;
+   Lisp_Object f_Vdefault_frame_scroll_bars;
+   Lisp_Object f_Vmouse_position_function;
+   Lisp_Object f_Vmouse_highlight;
+   Lisp_Object f_Vdelete_frame_functions;
+   int f_focus_follows_mouse;
+   /* Non-nil means that newline may flow into the right fringe.  */
+   Lisp_Object f_Voverflow_newline_into_fringe;
+   /* List of known fringe bitmap symbols.
+      The fringe bitmap number is stored in the `fringe' property on
+      those symbols.  Names for the built-in bitmaps are installed by
+      loading fringe.el.
+   */
+   Lisp_Object f_Vfringe_bitmaps;
+   /* Search path for bitmap files.  */
+   Lisp_Object f_Vx_bitmap_file_path;
+   /* A list of symbols, one for each supported image type.  */
+   Lisp_Object f_Vimage_types;
+   /* Time in seconds after which images should be removed from the cache
+      if not displayed.  */
+   Lisp_Object f_Vimage_cache_eviction_delay;
+   Lisp_Object f_Vmax_image_size;
+   /* Non-zero means draw a cross on images having `:conversion
+      disabled'.  */
+   int f_cross_disabled_images;
+   Lisp_Object f_Vimagemagick_render_type;
+   /* Indentation can insert tabs if this is non-zero;
+      otherwise always uses spaces.  */
+   int f_indent_tabs_mode;
+   /* Non-nil means don't call the after-change-functions right away,
+      just record an element in combine_after_change_list.  */
+   Lisp_Object f_Vcombine_after_change_calls;
+   /* Check all markers in the current buffer, looking for something invalid.  */
+   int f_check_markers_debug_flag;
+   /* Non-nil if the present key sequence was obtained by shift translation.  */
+   Lisp_Object f_Vthis_command_keys_shift_translated;
+   /* If non-nil, the function that implements the display of help.
+      It's called with one argument, the help string to display.  */
+   Lisp_Object f_Vshow_help_function;
+   /* Nonzero means do menu prompting.  */
+   int f_menu_prompting;
+   /* Character to see next line of menu prompt.  */
+   Lisp_Object f_menu_prompt_more_char;
+   /* Nonzero means disregard local maps for the menu bar.  */
+   int f_inhibit_local_menu_bar_menus;
+   /* The user's hook function for outputting an error message.  */
+   Lisp_Object f_Vcommand_error_function;
+   /* The user's ERASE setting.  */
+   Lisp_Object f_Vtty_erase_char;
+   /* Character to recognize as the help char.  */
+   Lisp_Object f_Vhelp_char;
+   /* List of other event types to recognize as meaning "help".  */
+   Lisp_Object f_Vhelp_event_list;
+   /* Form to execute when help char is typed.  */
+   Lisp_Object f_Vhelp_form;
+   /* Command to run when the help character follows a prefix key.  */
+   Lisp_Object f_Vprefix_help_command;
+   /* List of items that should move to the end of the menu bar.  */
+   Lisp_Object f_Vmenu_bar_final_items;
+   /* Expression to evaluate for the tool bar separator image.
+      This is used for build_desired_tool_bar_string only.  For GTK, we
+      use GTK tool bar seperators.  */
+   Lisp_Object f_Vtool_bar_separator_image_expression;
+   /* Non-nil means show the equivalent key-binding for
+      any M-x command that has one.
+      The value can be a length of time to show the message for.
+      If the value is non-nil and not a number, we wait 2 seconds.  */
+   Lisp_Object f_Vsuggest_key_bindings;
+   /* How long to display an echo-area message when the minibuffer is active.
+      If the value is not a number, such messages don't time out.  */
+   Lisp_Object f_Vminibuffer_message_timeout;
+   /* If non-nil, this is a map that overrides all other local maps.  */
+   Lisp_Object f_Voverriding_local_map;
+   /* If non-nil, Voverriding_local_map applies to the menu bar.  */
+   Lisp_Object f_Voverriding_local_map_menu_flag;
+   /* Keymap that defines special misc events that should
+      be processed immediately at a low level.  */
+   Lisp_Object f_Vspecial_event_map;
+   /* Total number of times command_loop has read a key sequence.  */
+   EMACS_INT f_num_input_keys;
+   /* Last input event read as a command.  */
+   Lisp_Object f_last_command_event;
+   /* Last input character read as a command, not counting menus
+      reached by the mouse.  */
+   Lisp_Object f_last_nonmenu_event;
+   /* Last input event read for any purpose.  */
+   Lisp_Object f_last_input_event;
+   /* If not Qnil, a list of objects to be read as subsequent command input.  */
+   Lisp_Object f_Vunread_command_events;
+   /* If not Qnil, a list of objects to be read as subsequent command input
+      including input method processing.  */
+   Lisp_Object f_Vunread_input_method_events;
+   /* If not Qnil, a list of objects to be read as subsequent command input
+      but NOT including input method processing.  */
+   Lisp_Object f_Vunread_post_input_method_events;
+   /* If not -1, an event to be read as subsequent command input.  */
+   EMACS_INT f_unread_command_char;
+   /* A mask of extra modifier bits to put into every keyboard char.  */
+   EMACS_INT f_extra_keyboard_modifiers;
+   /* Char to use as prefix when a meta character is typed in.
+      This is bound on entry to minibuffer in case ESC is changed there.  */
+   Lisp_Object f_meta_prefix_char;
+   /* Number of idle seconds before an auto-save and garbage collection.  */
+   Lisp_Object f_Vauto_save_timeout;
+   /* Total number of times read_char has returned, outside of macros.  */
+   EMACS_INT f_num_nonmacro_input_events;
+   /* Auto-save automatically when this many characters have been typed
+      since the last time.  */
+   EMACS_INT f_auto_save_interval;
+   /* The command being executed by the command loop.
+      Commands may set this, and the value set will be copied into
+      current_kboard->Vlast_command instead of the actual command.  */
+   Lisp_Object f_Vthis_command;
+   /* If the lookup of the command returns a binding, the original
+      command is stored in this-original-command.  It is nil otherwise.  */
+   Lisp_Object f_Vthis_original_command;
+   /* A user-visible version of the above, intended to allow users to
+      figure out where the last event came from, if the event doesn't
+      carry that information itself (i.e. if it was a character).  */
+   Lisp_Object f_Vlast_event_frame;
+   /* If non-nil, active regions automatically become the window selection.  */
+   Lisp_Object f_Vselect_active_regions;
+   /* The text in the active region prior to modifying the buffer.
+      Used by the `select-active-regions' feature.  */
+   Lisp_Object f_Vsaved_region_selection;
+   /* Echo unfinished commands after this many seconds of pause.  */
+   Lisp_Object f_Vecho_keystrokes;
+   /* Form to evaluate (if non-nil) when Emacs is started.  */
+   Lisp_Object f_Vtop_level;
+   /* If non-nil, this implements the current input method.  */
+   Lisp_Object f_Vinput_method_function;
+   /* When we call Vinput_method_function,
+      this holds the echo area message that was just erased.  */
+   Lisp_Object f_Vinput_method_previous_message;
+   /* Non-nil means deactivate the mark at end of this command.  */
+   Lisp_Object f_Vdeactivate_mark;
+   /* Menu bar specified in Lucid Emacs fashion.  */
+   Lisp_Object f_Vlucid_menu_bar_dirty_flag;
+   Lisp_Object f_Vpre_command_hook;
+   Lisp_Object f_Vpost_command_hook;
+   Lisp_Object f_Vcommand_hook_internal;
+   /* Parent keymap of terminal-local function-key-map instances.  */
+   Lisp_Object f_Vfunction_key_map;
+   /* Keymap of key translations that can override keymaps.  */
+   Lisp_Object f_Vkey_translation_map;
+   /* List of deferred actions to be performed at a later time.
+      The precise format isn't relevant here; we just check whether it is nil.  */
+   Lisp_Object f_Vdeferred_action_list;
+   /* Function to call to handle deferred actions, when there are any.  */
+   Lisp_Object f_Vdeferred_action_function;
+   /* If this flag is non-nil, we check mouse_moved to see when the
+      mouse moves, and motion events will appear in the input stream.
+      Otherwise, mouse motion is ignored.  */
+   Lisp_Object f_do_mouse_tracking;
+   /* List of absolute timers.  Appears in order of next scheduled event.  */
+   Lisp_Object f_Vtimer_list;
+   /* List of idle time timers.  Appears in order of next scheduled event.  */
+   Lisp_Object f_Vtimer_idle_list;
+   /* After a command is executed, if point is moved into a region that
+      has specific properties (e.g. composition, display), we adjust
+      point to the boundary of the region.  But, if a command sets this
+      variable to non-nil, we suppress this point adjustment.  This
+      variable is set to nil before reading a command.  */
+   Lisp_Object f_Vdisable_point_adjustment;
+   /* If non-nil, always disable point adjustment.  */
+   Lisp_Object f_Vglobal_disable_point_adjustment;
+   /* If non-nil, events produced by disabled menu items and tool-bar
+      buttons are not ignored.  Help functions bind this to allow help on
+      those items and buttons.  */
+   Lisp_Object f_Venable_disabled_menus_and_buttons;
+   /* Nonzero means don't try to suspend even if the operating system seems
+      to support it.  */
+   int f_cannot_suspend;
+   /* Number of seconds between polling for input.  This is a Lisp
+      variable that can be bound.  */
+   EMACS_INT f_polling_period;
+   /* subprocesses */
+   Lisp_Object f_Vthrow_on_input;
+   /* The maximum time between clicks to make a double-click, or Qnil to
+      disable double-click detection, or Qt for no time limit.  */
+   Lisp_Object f_Vdouble_click_time;
+   /* Maximum number of pixels the mouse may be moved between clicks
+      to make a double-click.  */
+   EMACS_INT f_double_click_fuzz;
+   /* was MinibufLocalMap */
+   Lisp_Object f_Vminibuffer_local_map;
+   /* was MinibufLocalNSMap */
+   Lisp_Object f_Vminibuffer_local_ns_map;
+   /* was MinibufLocalCompletionMap */
+   Lisp_Object f_Vminibuffer_local_completion_map;
+   /* keymap used for minibuffers when doing completion in filenames */
+   Lisp_Object f_Vminibuffer_local_filename_completion_map;
+   /* keymap used for minibuffers when doing completion in filenames
+      with require-match*/
+   Lisp_Object f_Vminibuffer_local_filename_must_match_map;
+   /* was MinibufLocalMustMatchMap */
+   Lisp_Object f_Vminibuffer_local_must_match_map;
+   /* Alist of minor mode variables and keymaps.  */
+   Lisp_Object f_Vminor_mode_map_alist;
+   /* Alist of major-mode-specific overrides for
+      minor mode variables and keymaps.  */
+   Lisp_Object f_Vminor_mode_overriding_map_alist;
+   /* List of emulation mode keymap alists.  */
+   Lisp_Object f_Vemulation_mode_map_alists;
+   /* A list of all commands given new bindings since a certain time
+      when nil was stored here.
+      This is used to speed up recomputation of menu key equivalents
+      when Emacs starts up.   t means don't record anything here.  */
+   Lisp_Object f_Vdefine_key_rebound_commands;
+   Lisp_Object f_Vwhere_is_preferred_modifier;
+   Lisp_Object f_Vvalues;
+   Lisp_Object f_Vstandard_input;
+   Lisp_Object f_Vafter_load_alist;
++  Lisp_Object f_Vlexical_binding;
++  
+   Lisp_Object f_Veval_buffer_list;
+   /* non-zero if inside `load' */
+   int f_load_in_progress;
+   /* Directory in which the sources were found.  */
+   Lisp_Object f_Vsource_directory;
+   /* Search path and suffixes for files to be loaded. */
+   Lisp_Object f_Vload_path;
+   Lisp_Object f_Vload_suffixes;
+   Lisp_Object f_Vload_file_rep_suffixes;
+   /* File name of user's init file.  */
+   Lisp_Object f_Vuser_init_file;
+   /* This is the user-visible association list that maps features to
+      lists of defs in their load files. */
+   Lisp_Object f_Vload_history;
+   /* This is used to build the load history. */
+   Lisp_Object f_Vcurrent_load_list;
+   /* List of files that were preloaded.  */
+   Lisp_Object f_Vpreloaded_file_list;
+   /* Name of file actually being read by `load'.  */
+   Lisp_Object f_Vload_file_name;
+   /* Function to use for reading, in `load' and friends.  */
+   Lisp_Object f_Vload_read_function;
+   /* Non-nil means read recursive structures using #n= and #n# syntax.  */
+   Lisp_Object f_Vread_circle;
+   /* Nonzero means load should forcibly load all dynamic doc strings.  */
+   int f_load_force_doc_strings;
+   /* Nonzero means read should convert strings to unibyte.  */
+   int f_load_convert_to_unibyte;
+   /* Function to use for loading an Emacs Lisp source file (not
+      compiled) instead of readevalloop.  */
+   Lisp_Object f_Vload_source_file_function;
+   /* List of all DEFVAR_BOOL variables.  Used by the byte optimizer.  */
+   Lisp_Object f_Vbyte_boolean_vars;
+   /* Whether or not to add a `read-positions' property to symbols
+      read. */
+   Lisp_Object f_Vread_with_symbol_positions;
+   /* List of (SYMBOL . POSITION) accumulated so far. */
+   Lisp_Object f_Vread_symbol_positions_list;
+   Lisp_Object f_Vold_style_backquotes;
+   /* Non-zero means load dangerous compiled Lisp files.  */
+   int f_load_dangerous_libraries;
+   /* Non-zero means force printing messages when loading Lisp files.  */
+   int f_force_load_messages;
+   /* A regular expression used to detect files compiled with Emacs.  */
+   Lisp_Object f_Vbytecomp_version_regexp;
+   Lisp_Object f_Vobarray;
+   /* Normal hook run whenever a keyboard macro terminates.  */
+   Lisp_Object f_Vkbd_macro_termination_hook;
+   /* Kbd macro currently being executed (a string or vector).  */
+   Lisp_Object f_Vexecuting_kbd_macro;
+   /* Index of next character to fetch from that macro.  */
+   EMACS_INT f_executing_kbd_macro_index;
+   /* Nonzero means enable debugging checks on byte/char correspondences.  */
+   int f_byte_debug_flag;
+   Lisp_Object f_Vhistory_length;
+   /* No duplicates in history.  */
+   int f_history_delete_duplicates;
+   /* Non-nil means add new input to history.  */
+   Lisp_Object f_Vhistory_add_new_input;
+   /* Nonzero means let functions called when within a minibuffer
+      invoke recursive minibuffers (to read arguments, or whatever) */
+   int f_enable_recursive_minibuffers;
+   /* Nonzero means don't ignore text properties
+      in Fread_from_minibuffer.  */
+   int f_minibuffer_allow_text_properties;
+   /* help-form is bound to this while in the minibuffer.  */
+   Lisp_Object f_Vminibuffer_help_form;
+   /* Variable which is the history list to add minibuffer values to.  */
+   Lisp_Object f_Vminibuffer_history_variable;
+   /* Current position in the history list (adjusted by M-n and M-p).  */
+   Lisp_Object f_Vminibuffer_history_position;
+   /* Text properties that are added to minibuffer prompts.
+      These are in addition to the basic `field' property, and stickiness
+      properties.  */
+   Lisp_Object f_Vminibuffer_prompt_properties;
+   Lisp_Object f_Vminibuffer_setup_hook;
+   Lisp_Object f_Vminibuffer_exit_hook;
+   Lisp_Object f_Vread_expression_history;
+   /* Function to call to read a buffer name.  */
+   Lisp_Object f_Vread_buffer_function;
+   /* Nonzero means completion ignores case.  */
+   int f_completion_ignore_case;
+   int f_read_buffer_completion_ignore_case;
+   /* List of regexps that should restrict possible completions.  */
+   Lisp_Object f_Vcompletion_regexp_list;
+   /* Nonzero means raise the minibuffer frame when the minibuffer
+      is entered.  */
+   int f_minibuffer_auto_raise;
+   /* Keymap for reading expressions.  */
+   Lisp_Object f_Vread_expression_map;
+   Lisp_Object f_Vminibuffer_completion_table;
+   Lisp_Object f_Vminibuffer_completion_predicate;
+   Lisp_Object f_Vminibuffer_completion_confirm;
+   Lisp_Object f_Vminibuffer_completing_file_name;
+   Lisp_Object f_Vdos_unsupported_char_glyph;
+   Lisp_Object f_Vstandard_output;
+   Lisp_Object f_Vfloat_output_format;
+   /* Maximum length of list to print in full; noninteger means
+      effectively infinity */
+   Lisp_Object f_Vprint_length;
+   /* Maximum depth of list to print in full; noninteger means
+      effectively infinity.  */
+   Lisp_Object f_Vprint_level;
+   /* Nonzero means print newlines in strings as \n.  */
+   int f_print_escape_newlines;
+   /* Nonzero means to print single-byte non-ascii characters in strings as
+      octal escapes.  */
+   int f_print_escape_nonascii;
+   /* Nonzero means to print multibyte characters in strings as hex escapes.  */
+   int f_print_escape_multibyte;
+   /* Nonzero means print (quote foo) forms as 'foo, etc.  */
+   int f_print_quoted;
+   /* Non-nil means print #: before uninterned symbols.  */
+   Lisp_Object f_Vprint_gensym;
+   /* Non-nil means print recursive structures using #n= and #n# syntax.  */
+   Lisp_Object f_Vprint_circle;
+   /* Non-nil means keep continuous number for #n= and #n# syntax
+      between several print functions.  */
+   Lisp_Object f_Vprint_continuous_numbering;
+   Lisp_Object f_Vprint_number_table;
+   /* A flag to control printing of `charset' text property.
+      The default value is Qdefault. */
+   Lisp_Object f_Vprint_charset_text_property;
+   /* Nonzero means delete a process right away if it exits.  */
+   int f_delete_exited_processes;
+   /* t means use pty, nil means use a pipe,
+      maybe other values to come.  */
+   Lisp_Object f_Vprocess_connection_type;
+   /* Non-nil means to delay reading process output to improve buffering.
+      A value of t means that delay is reset after each send, any other
+      non-nil value does not reset the delay.  A value of nil disables
+      adaptive read buffering completely.  */
+   Lisp_Object f_Vprocess_adaptive_read_buffering;
+   Lisp_Object f_Vsearch_spaces_regexp;
+   /* If non-nil, the match data will not be changed during call to
+      searching or matching functions.  This variable is for internal use
+      only.  */
+   Lisp_Object f_Vinhibit_changing_match_data;
+   int f_words_include_escapes;
+   int f_parse_sexp_lookup_properties;
+   /* Nonzero means `scan-sexps' treat all multibyte characters as symbol.  */
+   int f_multibyte_syntax_as_symbol;
+   /* Non-zero means an open parenthesis in column 0 is always considered
+      to be the start of a defun.  Zero means an open parenthesis in
+      column 0 has no special meaning.  */
+   int f_open_paren_in_column_0_is_defun_start;
+   int f_parse_sexp_ignore_comments;
+   /* Char-table of functions that find the next or previous word
+      boundary.  */
+   Lisp_Object f_Vfind_word_boundary_function_table;
+   /* If true, use "vs", otherwise use "ve" to make the cursor visible.  */
+   int f_visible_cursor;
+   /* Functions to call after suspending a tty. */
+   Lisp_Object f_Vsuspend_tty_functions;
+   /* Functions to call after resuming a tty. */
+   Lisp_Object f_Vresume_tty_functions;
+   /* Nonzero means no need to redraw the entire frame on resuming a
+      suspended Emacs.  This is useful on terminals with multiple
+      pages, where one page is used for Emacs and another for all
+      else. */
+   int f_no_redraw_on_reenter;
+   /* Provided for lisp packages.  */
+   int f_system_uses_terminfo;
+   /* Function to use to ring the bell.  */
+   Lisp_Object f_Vring_bell_function;
+   Lisp_Object f_Vdelete_terminal_functions;
+   Lisp_Object f_Vinhibit_point_motion_hooks;
+   Lisp_Object f_Vdefault_text_properties;
+   Lisp_Object f_Vchar_property_alias_alist;
+   Lisp_Object f_Vtext_property_default_nonsticky;
+   /* Limits controlling how much undo information to keep.  */
+   EMACS_INT f_undo_limit;
+   EMACS_INT f_undo_strong_limit;
+   Lisp_Object f_Vundo_outer_limit;
+   /* Function to call when undo_outer_limit is exceeded.  */
+   Lisp_Object f_Vundo_outer_limit_function;
+   /* Nonzero means do not record point in record_point.  */
+   int f_undo_inhibit_record_point;
+   /* Coding system for communicating with other Windows programs via the
+      clipboard.  */
+   Lisp_Object f_Vselection_coding_system;
+   /* Coding system for the next communicating with other Windows programs.  */
+   Lisp_Object f_Vnext_selection_coding_system;
+   /* Determine whether to make frame dimensions match the screen buffer,
+      or the current window size.  The former is desirable when running
+      over telnet, while the latter is more useful when working directly at
+      the console with a large scroll-back buffer.  */
+   int f_w32_use_full_screen_buffer;
+   /* The colormap for converting color names to RGB values */
+   Lisp_Object f_Vw32_color_map;
+   /* Non nil if alt key presses are passed on to Windows.  */
+   Lisp_Object f_Vw32_pass_alt_to_system;
+   /* Non nil if alt key is translated to meta_modifier, nil if it is translated
+      to alt_modifier.  */
+   Lisp_Object f_Vw32_alt_is_meta;
+   /* If non-zero, the windows virtual key code for an alternative quit key. */
+   int f_w32_quit_key;
+   /* Non nil if left window key events are passed on to Windows (this only
+      affects whether "tapping" the key opens the Start menu).  */
+   Lisp_Object f_Vw32_pass_lwindow_to_system;
+   /* Non nil if right window key events are passed on to Windows (this
+      only affects whether "tapping" the key opens the Start menu).  */
+   Lisp_Object f_Vw32_pass_rwindow_to_system;
+   /* Virtual key code used to generate "phantom" key presses in order
+      to stop system from acting on Windows key events.  */
+   Lisp_Object f_Vw32_phantom_key_code;
+   /* Modifier associated with the left "Windows" key, or nil to act as a
+      normal key.  */
+   Lisp_Object f_Vw32_lwindow_modifier;
+   /* Modifier associated with the right "Windows" key, or nil to act as a
+      normal key.  */
+   Lisp_Object f_Vw32_rwindow_modifier;
+   /* Modifier associated with the "Apps" key, or nil to act as a normal
+      key.  */
+   Lisp_Object f_Vw32_apps_modifier;
+   /* Value is nil if Num Lock acts as a function key.  */
+   Lisp_Object f_Vw32_enable_num_lock;
+   /* Value is nil if Caps Lock acts as a function key.  */
+   Lisp_Object f_Vw32_enable_caps_lock;
+   /* Modifier associated with Scroll Lock, or nil to act as a normal key.  */
+   Lisp_Object f_Vw32_scroll_lock_modifier;
+   /* Switch to control whether we inhibit requests for synthesized bold
+      and italic versions of fonts.  */
+   int f_w32_enable_synthesized_fonts;
+   /* Enable palette management. */
+   Lisp_Object f_Vw32_enable_palette;
+   /* Control how close left/right button down events must be to
+      be converted to a middle button down event. */
+   int f_w32_mouse_button_tolerance;
+   /* Minimum interval between mouse movement (and scroll bar drag)
+      events that are passed on to the event loop. */
+   int f_w32_mouse_move_interval;
+   /* Flag to indicate if XBUTTON events should be passed on to Windows.  */
+   int f_w32_pass_extra_mouse_buttons_to_system;
+   /* Flag to indicate if media keys should be passed on to Windows.  */
+   int f_w32_pass_multimedia_buttons_to_system;
+   /* Non nil if no window manager is in use.  */
+   Lisp_Object f_Vx_no_window_manager;
+   /* The background and shape of the mouse pointer, and shape when not
+      over text or in the modeline.  */
+   Lisp_Object f_Vx_pointer_shape;
+   Lisp_Object f_Vx_nontext_pointer_shape;
+   Lisp_Object f_Vx_mode_pointer_shape;
+   /* TODO: Mouse cursor customization.  */
+   Lisp_Object f_Vx_hourglass_pointer_shape;
+   Lisp_Object f_Vx_window_horizontal_drag_shape;
+   /* The shape when over mouse-sensitive text.  */
+   Lisp_Object f_Vx_sensitive_text_pointer_shape;
+   /* Color of chars displayed in cursor box.  */
+   Lisp_Object f_Vx_cursor_fore_pixel;
+   /* Regexp matching a font name whose width is the same as `PIXEL_SIZE'.  */
+   Lisp_Object f_Vx_pixel_size_width_font_regexp;
+   /* Alist of bdf fonts and the files that define them.  */
+   Lisp_Object f_Vw32_bdf_filename_alist;
+   /* A flag to control whether fonts are matched strictly or not.  */
+   int f_w32_strict_fontnames;
+   /* A flag to control whether we should only repaint if GetUpdateRect
+      indicates there is an update region.  */
+   int f_w32_strict_painting;
+   /* The ANSI codepage.  */
+   int f_w32_ansi_code_page;
+   /* Maximum size for tooltips; a cons (COLUMNS . ROWS).  */
+   Lisp_Object f_Vx_max_tooltip_size;
+   /* Associative list linking character set strings to Windows codepages. */
+   Lisp_Object f_Vw32_charset_info_alist;
+   /* Control whether spawnve quotes arguments as necessary to ensure
+      correct parsing by child process.  Because not all uses of spawnve
+      are careful about constructing argv arrays, we make this behavior
+      conditional (off by default). */
+   Lisp_Object f_Vw32_quote_process_args;
+   /* Control whether create_child causes the process' window to be
+      hidden.  The default is nil. */
+   Lisp_Object f_Vw32_start_process_show_window;
+   /* Control whether create_child causes the process to inherit Emacs'
+      console window, or be given a new one of its own.  The default is
+      nil, to allow multiple DOS programs to run on Win95.  Having separate
+      consoles also allows Emacs to cleanly terminate process groups.  */
+   Lisp_Object f_Vw32_start_process_share_console;
+   /* Control whether create_child cause the process to inherit Emacs'
+      error mode setting.  The default is t, to minimize the possibility of
+      subprocesses blocking when accessing unmounted drives.  */
+   Lisp_Object f_Vw32_start_process_inherit_error_mode;
+   /* Time to sleep before reading from a subprocess output pipe - this
+      avoids the inefficiency of frequently reading small amounts of data.
+      This is primarily necessary for handling DOS processes on Windows 95,
+      but is useful for W32 processes on both Windows 95 and NT as well.  */
+   int f_w32_pipe_read_delay;
+   /* Control conversion of upper case file names to lower case.
+      nil means no, t means yes. */
+   Lisp_Object f_Vw32_downcase_file_names;
+   /* Control whether stat() attempts to generate fake but hopefully
+      "accurate" inode values, by hashing the absolute truenames of files.
+      This should detect aliasing between long and short names, but still
+      allows the possibility of hash collisions.  */
+   Lisp_Object f_Vw32_generate_fake_inodes;
+   /* Control whether stat() attempts to determine file type and link count
+      exactly, at the expense of slower operation.  Since true hard links
+      are supported on NTFS volumes, this is only relevant on NT.  */
+   Lisp_Object f_Vw32_get_true_file_attributes;
+   /* Coding system for communicating with other programs via the
+      clipboard.  */
+   /* Coding system for the next communication with other programs.  */
+   /* Non-nil means Emacs uses toolkit scroll bars.  */
+   Lisp_Object f_Vx_toolkit_scroll_bars;
+   /* Non-zero means make use of UNDERLINE_POSITION font properties.  */
+   int f_x_use_underline_position_properties;
+   /* Non-zero means to draw the underline at the same place as the descent line.  */
+   int f_x_underline_at_descent_line;
+   int f_w32_use_visible_system_caret;
+   int f_w32_num_mouse_buttons;
+   Lisp_Object f_Vw32_swap_mouse_buttons;
+   /* Control whether x_raise_frame also sets input focus.  */
+   Lisp_Object f_Vw32_grab_focus_on_raise;
+   /* Control whether Caps Lock affects non-ascii characters.  */
+   Lisp_Object f_Vw32_capslock_is_shiftlock;
+   /* Control whether right-alt and left-ctrl should be recognized as AltGr.  */
+   Lisp_Object f_Vw32_recognize_altgr;
+   /* Non-nil means it is the window for C-M-v to scroll
+      when the mini-buffer is selected.  */
+   Lisp_Object f_Vminibuf_scroll_window;
+   /* Non-nil means this is the buffer whose window C-M-v should scroll.  */
+   Lisp_Object f_Vother_window_scroll_buffer;
+   /* Non-nil means it's function to call to display temp buffers.  */
+   Lisp_Object f_Vtemp_buffer_show_function;
+   /* Non-zero means line and page scrolling on tall lines (with images)
+      does partial scrolling by modifying window-vscroll.  */
+   int f_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 f_mode_line_in_non_selected_windows;
+   /* If a window gets smaller than either of these, it is removed. */
+   EMACS_INT f_window_min_height;
+   EMACS_INT f_window_min_width;
+   /* Number of lines of continuity in scrolling by screenfuls.  */
+   EMACS_INT f_next_screen_context_lines;
+   Lisp_Object f_Vwindow_configuration_change_hook;
+   /* Non-nil means scroll commands try to put point
+      at the same screen height as previously.  */
+   Lisp_Object f_Vscroll_preserve_screen_position;
+   /* Non-nil means that text is inserted before window's markers.  */
+   Lisp_Object f_Vwindow_point_insertion_type;
+   /* If non-nil, then the `recenter' command with a nil argument
+      the entire frame to be redrawn; the special value `tty' causes the
+      frame to be redrawn only if it is a tty frame.  */
+   Lisp_Object f_Vrecenter_redisplay;
+   Lisp_Object f_Vwindow_scroll_functions;
+   Lisp_Object f_Vwindow_text_change_functions;
+   Lisp_Object f_Vredisplay_end_trigger_functions;
+   /* Functions called to fontify regions of text.  */
+   Lisp_Object f_Vfontification_functions;
+   /* Non-nil means automatically select any window when the mouse
+      cursor moves into it.  */
+   Lisp_Object f_Vmouse_autoselect_window;
+   Lisp_Object f_Vwrap_prefix;
+   Lisp_Object f_Vline_prefix;
+   /* Non-zero means draw tool bar buttons raised when the mouse moves
+      over them.  */
+   int f_auto_raise_tool_bar_buttons_p;
+   /* Non-zero means to reposition window if cursor line is only partially visible.  */
+   int f_make_cursor_line_fully_visible_p;
+   /* Margin below tool bar in pixels.  0 or nil means no margin.
+      If value is `internal-border-width' or `border-width',
+      the corresponding frame parameter is used.  */
+   Lisp_Object f_Vtool_bar_border;
+   /* Margin around tool bar buttons in pixels.  */
+   Lisp_Object f_Vtool_bar_button_margin;
+   /* Thickness of shadow to draw around tool bar buttons.  */
+   EMACS_INT f_tool_bar_button_relief;
+   /* Non-nil means automatically resize tool-bars so that all tool-bar
+      items are visible, and no blank lines remain.
+      If value is `grow-only', only make tool-bar bigger.  */
+   Lisp_Object f_Vauto_resize_tool_bars;
+   /* Type of tool bar.  Can be symbols image, text, both or both-hroiz.  */
+   Lisp_Object f_Vtool_bar_style;
+   /* Maximum number of characters a label can have to be shown.  */
+   EMACS_INT f_tool_bar_max_label_size;
+   /* Non-zero means draw block and hollow cursor as wide as the glyph
+      under it.  For example, if a block cursor is over a tab, it will be
+      drawn as wide as that tab on the display.  */
+   int f_x_stretch_cursor_p;
+   Lisp_Object f_Vinhibit_redisplay;
+   /* Non-zero means Lisp evaluation during redisplay is inhibited.  */
+   int f_inhibit_eval_during_redisplay;
+   /* Symbols used in text property values.  */
+   Lisp_Object f_Vdisplay_pixels_per_inch;
+   /* Non-nil means highlight trailing whitespace.  */
+   Lisp_Object f_Vshow_trailing_whitespace;
+   /* Non-nil means escape non-break space and hyphens.  */
+   Lisp_Object f_Vnobreak_char_display;
+   /* Non-nil means show the text cursor in void text areas
+      i.e. in blank areas after eol and eob.  This used to be
+      the default in 21.3.  */
+   Lisp_Object f_Vvoid_text_area_pointer;
+   /* Nonzero means truncate lines in all windows less wide than the
+      frame.  */
+   Lisp_Object f_Vtruncate_partial_width_windows;
+   /* A flag to control how to display unibyte 8-bit character.  */
+   int f_unibyte_display_via_language_environment;
+   /* Nonzero means we have more than one non-mini-buffer-only frame.
+      Not guaranteed to be accurate except while parsing
+      frame-title-format.  */
+   int f_multiple_frames;
+   Lisp_Object f_Vglobal_mode_string;
+   /* List of variables (symbols) which hold markers for overlay arrows.
+      The symbols on this list are examined during redisplay to determine
+      where to display overlay arrows.  */
+   Lisp_Object f_Voverlay_arrow_variable_list;
+   /* Marker for where to display an arrow on top of the buffer text.  */
+   Lisp_Object f_Voverlay_arrow_position;
+   /* String to display for the arrow.  Only used on terminal frames.  */
+   Lisp_Object f_Voverlay_arrow_string;
+   /* Like mode-line-format, but for the title bar on a visible frame.  */
+   Lisp_Object f_Vframe_title_format;
+   /* Like mode-line-format, but for the title bar on an iconified frame.  */
+   Lisp_Object f_Vicon_title_format;
+   /* List of functions to call when a window's size changes.  These
+      functions get one arg, a frame on which one or more windows' sizes
+      have changed.  */
+   Lisp_Object f_Vwindow_size_change_functions;
+   Lisp_Object f_Vmenu_bar_update_hook;
+   /* Nonzero means highlight the region even in nonselected windows.  */
+   int f_highlight_nonselected_windows;
+   /* If cursor motion alone moves point off frame, try scrolling this
+      many lines up or down if that will bring it back.  */
+   EMACS_INT f_emacs_scroll_step;
+   /* Nonzero means scroll just far enough to bring point back on the
+      screen, when appropriate.  */
+   EMACS_INT f_scroll_conservatively;
+   /* Recenter the window whenever point gets within this many lines of
+      the top or bottom of the window.  This value is translated into a
+      pixel value by multiplying it with FRAME_LINE_HEIGHT, which means
+      that there is really a fixed pixel height scroll margin.  */
+   EMACS_INT f_scroll_margin;
+   /* Zero means display the mode-line/header-line/menu-bar in the default face
+      (this slightly odd definition is for compatibility with previous versions
+      of emacs), non-zero means display them using their respective faces.
+      This variable is deprecated.  */
+   int f_mode_line_inverse_video;
+   /* Maximum buffer size for which to display line numbers.  */
+   Lisp_Object f_Vline_number_display_limit;
+   /* Line width to consider when repositioning for line number display.  */
+   EMACS_INT f_line_number_display_limit_width;
+   /* Number of lines to keep in the message log buffer.  t means
+      infinite.  nil means don't log at all.  */
+   Lisp_Object f_Vmessage_log_max;
+   int f_inhibit_menubar_update;
+   /* When evaluating expressions from menu bar items (enable conditions,
+      for instance), this is the frame they are being processed for.  */
+   Lisp_Object f_Vmenu_updating_frame;
+   /* Maximum height for resizing mini-windows.  Either a float
+      specifying a fraction of the available height, or an integer
+      specifying a number of lines.  */
+   Lisp_Object f_Vmax_mini_window_height;
+   /* Non-zero means messages should be displayed with truncated
+      lines instead of being continued.  */
+   int f_message_truncate_lines;
+   /* How to blink the default frame cursor off.  */
+   Lisp_Object f_Vblink_cursor_alist;
+   /* Variables to turn off display optimizations from Lisp.  */
+   int f_inhibit_try_window_id;
+   int f_inhibit_try_window_reusing;
+   int f_inhibit_try_cursor_movement;
+   /* Non-zero means automatically scroll windows horizontally to make
+      point visible.  */
+   int f_automatic_hscrolling_p;
+   /* How close to the margin can point get before the window is scrolled
+      horizontally.  */
+   EMACS_INT f_hscroll_margin;
+   /* How much to scroll horizontally when point is inside the above margin.  */
+   Lisp_Object f_Vhscroll_step;
+   /* The variable `resize-mini-windows'.  If nil, don't resize
+      mini-windows.  If t, always resize them to fit the text they
+      display.  If `grow-only', let mini-windows grow only until they
+      become empty.  */
+   Lisp_Object f_Vresize_mini_windows;
+   /* Space between overline and text. */
+   EMACS_INT f_overline_margin;
+   /* Require underline to be at least this many screen pixels below baseline
+      This to avoid underline "merging" with the base of letters at small
+      font sizes, particularly when x_use_underline_position_properties is on. */
+   EMACS_INT f_underline_minimum_offset;
+   /* Non-zero means don't free realized faces.  Bound while freeing
+      realized faces is dangerous because glyph matrices might still
+      reference them.  */
+   int f_inhibit_free_realized_faces;
+   /* Non-zero means we're allowed to display a hourglass pointer.  */
+   int f_display_hourglass_p;
+   /* Number of seconds to wait before displaying an hourglass cursor.  */
+   Lisp_Object f_Vhourglass_delay;
+   /* Char-table to control the display of glyphless characters.  */
+   Lisp_Object f_Vglyphless_char_display;
+   EMACS_INT f_debug_end_pos;
+   /* Default stipple pattern used on monochrome displays.  This stipple
+      pattern is used on monochrome displays instead of shades of gray
+      for a face background color.  See `set-face-stipple' for possible
+      values for this variable.  */
+   Lisp_Object f_Vface_default_stipple;
+   Lisp_Object f_Vscalable_fonts_allowed;
+   /* List of regular expressions that matches names of fonts to ignore. */
+   Lisp_Object f_Vface_ignored_fonts;
+   /* Alist of font name patterns vs the rescaling factor.  */
+   Lisp_Object f_Vface_font_rescale_alist;
+   /* Maximum number of fonts to consider in font_list.  If not an
+      integer > 0, DEFAULT_FONT_LIST_LIMIT is used instead.  */
+   Lisp_Object f_Vfont_list_limit;
+   /* Alist of global face definitions.  Each element is of the form
+      (FACE . LFACE) where FACE is a symbol naming a face and LFACE
+      is a Lisp vector of face attributes.  These faces are used
+      to initialize faces for new frames.  */
+   Lisp_Object f_Vface_new_frame_defaults;
+   /* Alist of face remappings.  Each element is of the form:
+      (FACE REPLACEMENT...) which causes display of the face FACE to use
+      REPLACEMENT... instead.  REPLACEMENT... is interpreted the same way
+      the value of a `face' text property is: it may be (1) A face name,
+      (2) A list of face names, (3) A property-list of face attribute/value
+      pairs, or (4) A list of face names intermixed with lists containing
+      face attribute/value pairs.
+      Multiple entries in REPLACEMENT... are merged together to form the final
+      result, with faces or attributes earlier in the list taking precedence
+      over those that are later.
+      Face-name remapping cycles are suppressed; recursive references use
+      the underlying face instead of the remapped face.  */
+   Lisp_Object f_Vface_remapping_alist;
+   /* An alist of defined terminal colors and their RGB values.  */
+   Lisp_Object f_Vtty_defined_color_alist;
+   /* LessTif/Motif version info.  */
+   Lisp_Object f_Vmotif_version_string;
+   /* GTK+ version info */
+   Lisp_Object f_Vgtk_version_string;
+   /* Non-zero means prompt with the old GTK file selection dialog.  */
+   int f_x_gtk_use_old_file_dialog;
+   /* If non-zero, by default show hidden files in the GTK file chooser.  */
+   int f_x_gtk_show_hidden_files;
+   /* If non-zero, don't show additional help text in the GTK file chooser.  */
+   int f_x_gtk_file_dialog_help_text;
+   /* If non-zero, don't collapse to tool bar when it is detached.  */
+   int f_x_gtk_whole_detached_tool_bar;
+   /* If non-zero, use Gtk+ tooltips.  */
+   int f_x_gtk_use_system_tooltips;
+   /* The background and shape of the mouse pointer, and shape when not
+      over text or in the modeline.  */
+   /* The shape when over mouse-sensitive text.  */
+   /* If non-nil, the pointer shape to indicate that windows can be
+      dragged horizontally.  */
+   /* Color of chars displayed in cursor box.  */
+   /* Non nil if no window manager is in use.  */
+   /* Regexp matching a font name whose width is the same as `PIXEL_SIZE'.  */
+   /* Maximum size for tooltips; a cons (COLUMNS . ROWS).  */
+   Lisp_Object f_Vx_lost_selection_functions;
+   Lisp_Object f_Vx_sent_selection_functions;
+   /* This is an alist whose CARs are selection-types (whose names are the same
+      as the names of X Atoms) and whose CDRs are the names of Lisp functions to
+      call to convert the given Emacs selection value to a string representing
+      the given selection type.  This is for Lisp-level extension of the emacs
+      selection handling.  */
+   Lisp_Object f_Vselection_converter_alist;
+   /* If the selection owner takes too long to reply to a selection request,
+      we give up on it.  This is in milliseconds (0 = no timeout.)  */
+   EMACS_INT f_x_selection_timeout;
+   int f_use_system_font;
+   Lisp_Object f_Vxft_settings;
+   /* The client session id for this session as a lisp object.  */
+   Lisp_Object f_Vx_session_id;
+   /* The id we had the previous session.  This is only available if we
+      have been started by the session manager with SMID_OPT.  */
+   Lisp_Object f_Vx_session_previous_id;
+   /* Non-nil means Emacs uses toolkit scroll bars.  */
+   /* Non-zero means make use of UNDERLINE_POSITION font properties.  */
+   /* Non-zero means to draw the underline at the same place as the descent line.  */
+   /* Non-zero means to not move point as a result of clicking on a
+      frame to focus it (when focus-follows-mouse is nil).  */
+   int f_x_mouse_click_focus_ignore_position;
+   /* The keysyms to use for the various modifiers.  */
+   Lisp_Object f_Vx_alt_keysym;
+   Lisp_Object f_Vx_hyper_keysym;
+   Lisp_Object f_Vx_meta_keysym;
+   Lisp_Object f_Vx_super_keysym;
+   Lisp_Object f_Vx_keysym_table;
+   /* Lisp communications */
+   Lisp_Object f_ns_input_file, f_ns_input_font, f_ns_input_fontsize,
+     f_ns_input_line;
+   Lisp_Object f_ns_input_color, f_ns_input_text, f_ns_working_text;
+   Lisp_Object f_ns_input_spi_name, f_ns_input_spi_arg;
+   /* Specifies which emacs modifier should be generated when NS receives
+      the Alternate modifier.  May be Qnone or any of the modifier lisp symbols.
+   */
+   Lisp_Object f_ns_alternate_modifier;
+   /* Specifies which emacs modifier should be generated when NS receives
+      the right Alternate modifier.  Has same values as ns_alternate_modifier
+      plus the value Qleft which means whatever value ns_alternate_modifier has.
+   */
+   Lisp_Object f_ns_right_alternate_modifier;
+   /* Specifies which emacs modifier should be generated when NS receives
+      the Command modifier.  May be any of the modifier lisp symbols. */
+   Lisp_Object f_ns_command_modifier;
+   /* Specifies which emacs modifier should be generated when NS receives
+      the right Command modifier.  Has same values as ns_command_modifier plus
+      the value Qleft which means whatever value ns_command_modifier has.  */
+   Lisp_Object f_ns_right_command_modifier;
+   /* Specifies which emacs modifier should be generated when NS receives
+      the Control modifier.  May be any of the modifier lisp symbols. */
+   Lisp_Object f_ns_control_modifier;
+   /* Specifies which emacs modifier should be generated when NS receives
+      the right Control modifier.  Has same values as ns_control_modifier plus
+      the value Qleft which means whatever value ns_control_modifier has.  */
+   Lisp_Object f_ns_right_control_modifier;
+   /* Specifies which emacs modifier should be generated when NS receives
+      the Function modifier (laptops).  May be any of the modifier lisp symbols.
+   */
+   Lisp_Object f_ns_function_modifier;
+   /* Control via default 'GSFontAntiAlias' on OS X and GNUstep. */
+   Lisp_Object f_ns_antialias_text;
+   /* Confirm on exit. */
+   Lisp_Object f_ns_confirm_quit;
+   /* Alist of elements (REGEXP . IMAGE) for images of icons associated
+      to frames.*/
+   Lisp_Object f_Vns_icon_type_alist;
+   /* Toolkit version support. */
+   Lisp_Object f_Vns_version_string;
+   Lisp_Object f_Vns_sent_selection_hooks;
+   Lisp_Object f_Vns_lost_selection_hooks;
+   /* This is an association list whose elements are of the form
+        ( SELECTION-NAME SELECTION-VALUE SELECTION-TIMESTAMP FRAME)
+      SELECTION-NAME is a lisp symbol, whose name is the name of an X Atom.
+      SELECTION-VALUE is the value that emacs owns for that selection.
+        It may be any kind of Lisp object.
+      SELECTION-TIMESTAMP is the time at which emacs began owning this
+        selection, as a cons of two 16-bit numbers (making a 32 bit time.)
+      FRAME is the frame for which we made the selection.
+      If there is an entry in this alist, then it can be assumed that Emacs owns
+       that selection.
+      The only (eq) parts of this list that are visible from Lisp are the
+       selection-values.  */
+   Lisp_Object f_Vselection_alist;
+   Lisp_Object f_Vns_reg_to_script;
+ };
+ extern struct emacs_globals globals;
+ #define Vafter_change_functions \
+     globals.f_Vafter_change_functions
+ #define Vafter_init_time \
+     globals.f_Vafter_init_time
+ #define Vafter_insert_file_functions \
+     globals.f_Vafter_insert_file_functions
+ #define Vafter_load_alist \
+     globals.f_Vafter_load_alist
+ #define Valternate_fontname_alist \
+     globals.f_Valternate_fontname_alist
+ #define Vauto_composition_function \
+     globals.f_Vauto_composition_function
+ #define Vauto_composition_mode \
+     globals.f_Vauto_composition_mode
+ #define Vauto_fill_chars \
+     globals.f_Vauto_fill_chars
+ #define Vauto_resize_tool_bars \
+     globals.f_Vauto_resize_tool_bars
+ #define Vauto_save_include_big_deletions \
+     globals.f_Vauto_save_include_big_deletions
+ #define Vauto_save_list_file_name \
+     globals.f_Vauto_save_list_file_name
+ #define Vauto_save_timeout \
+     globals.f_Vauto_save_timeout
+ #define Vauto_save_visited_file_name \
+     globals.f_Vauto_save_visited_file_name
+ #define Vbefore_change_functions \
+     globals.f_Vbefore_change_functions
+ #define Vbefore_init_time \
+     globals.f_Vbefore_init_time
+ #define Vblink_cursor_alist \
+     globals.f_Vblink_cursor_alist
+ #define Vbuffer_access_fontified_property \
+     globals.f_Vbuffer_access_fontified_property
+ #define Vbuffer_access_fontify_functions \
+     globals.f_Vbuffer_access_fontify_functions
+ #define Vbuild_files \
+     globals.f_Vbuild_files
+ #define Vbyte_boolean_vars \
+     globals.f_Vbyte_boolean_vars
+ #define Vbyte_code_meter \
+     globals.f_Vbyte_code_meter
+ #define Vbytecomp_version_regexp \
+     globals.f_Vbytecomp_version_regexp
+ #define Vchange_major_mode_hook \
+     globals.f_Vchange_major_mode_hook
+ #define Vchar_direction_table \
+     globals.f_Vchar_direction_table
+ #define Vchar_property_alias_alist \
+     globals.f_Vchar_property_alias_alist
+ #define Vchar_script_table \
+     globals.f_Vchar_script_table
+ #define Vchar_width_table \
+     globals.f_Vchar_width_table
+ #define Vcharset_list \
+     globals.f_Vcharset_list
+ #define Vcharset_map_path \
+     globals.f_Vcharset_map_path
+ #define Vcharset_revision_table \
+     globals.f_Vcharset_revision_table
+ #define Vcode_conversion_map_vector \
+     globals.f_Vcode_conversion_map_vector
+ #define Vcoding_category_list \
+     globals.f_Vcoding_category_list
+ #define Vcoding_system_alist \
+     globals.f_Vcoding_system_alist
+ #define Vcoding_system_for_read \
+     globals.f_Vcoding_system_for_read
+ #define Vcoding_system_for_write \
+     globals.f_Vcoding_system_for_write
+ #define Vcoding_system_list \
+     globals.f_Vcoding_system_list
+ #define Vcombine_after_change_calls \
+     globals.f_Vcombine_after_change_calls
+ #define Vcommand_debug_status \
+     globals.f_Vcommand_debug_status
+ #define Vcommand_error_function \
+     globals.f_Vcommand_error_function
+ #define Vcommand_history \
+     globals.f_Vcommand_history
+ #define Vcommand_hook_internal \
+     globals.f_Vcommand_hook_internal
+ #define Vcommand_line_args \
+     globals.f_Vcommand_line_args
+ #define Vcompletion_ignored_extensions \
+     globals.f_Vcompletion_ignored_extensions
+ #define Vcompletion_regexp_list \
+     globals.f_Vcompletion_regexp_list
+ #define Vcompose_chars_after_function \
+     globals.f_Vcompose_chars_after_function
+ #define Vcomposition_function_table \
+     globals.f_Vcomposition_function_table
+ #define Vconfigure_info_directory \
+     globals.f_Vconfigure_info_directory
+ #define Vcurrent_iso639_language \
+     globals.f_Vcurrent_iso639_language
+ #define Vcurrent_load_list \
+     globals.f_Vcurrent_load_list
+ #define Vcurrent_prefix_arg \
+     globals.f_Vcurrent_prefix_arg
+ #define Vdata_directory \
+     globals.f_Vdata_directory
+ #define Vdbus_debug \
+     globals.f_Vdbus_debug
+ #define Vdbus_registered_buses \
+     globals.f_Vdbus_registered_buses
+ #define Vdbus_registered_objects_table \
+     globals.f_Vdbus_registered_objects_table
+ #define Vdeactivate_mark \
+     globals.f_Vdeactivate_mark
+ #define Vdebug_ignored_errors \
+     globals.f_Vdebug_ignored_errors
+ #define Vdebug_on_error \
+     globals.f_Vdebug_on_error
+ #define Vdebug_on_signal \
+     globals.f_Vdebug_on_signal
+ #define Vdebugger \
+     globals.f_Vdebugger
+ #define Vdefault_file_name_coding_system \
+     globals.f_Vdefault_file_name_coding_system
+ #define Vdefault_frame_alist \
+     globals.f_Vdefault_frame_alist
+ #define Vdefault_frame_scroll_bars \
+     globals.f_Vdefault_frame_scroll_bars
+ #define Vdefault_process_coding_system \
+     globals.f_Vdefault_process_coding_system
+ #define Vdefault_text_properties \
+     globals.f_Vdefault_text_properties
+ #define Vdeferred_action_function \
+     globals.f_Vdeferred_action_function
+ #define Vdeferred_action_list \
+     globals.f_Vdeferred_action_list
+ #define Vdefine_key_rebound_commands \
+     globals.f_Vdefine_key_rebound_commands
+ #define Vdelete_frame_functions \
+     globals.f_Vdelete_frame_functions
+ #define Vdelete_terminal_functions \
+     globals.f_Vdelete_terminal_functions
+ #define Vdisable_point_adjustment \
+     globals.f_Vdisable_point_adjustment
+ #define Vdisplay_pixels_per_inch \
+     globals.f_Vdisplay_pixels_per_inch
+ #define Vdoc_directory \
+     globals.f_Vdoc_directory
+ #define Vdoc_file_name \
+     globals.f_Vdoc_file_name
+ #define Vdos_display_scancodes \
+     globals.f_Vdos_display_scancodes
+ #define Vdos_unsupported_char_glyph \
+     globals.f_Vdos_unsupported_char_glyph
+ #define Vdos_version \
+     globals.f_Vdos_version
+ #define Vdos_windows_version \
+     globals.f_Vdos_windows_version
+ #define Vdouble_click_time \
+     globals.f_Vdouble_click_time
+ #define Vdynamic_library_alist \
+     globals.f_Vdynamic_library_alist
+ #define Vecho_keystrokes \
+     globals.f_Vecho_keystrokes
+ #define Vemacs_copyright \
+     globals.f_Vemacs_copyright
+ #define Vemacs_version \
+     globals.f_Vemacs_version
+ #define Vemulation_mode_map_alists \
+     globals.f_Vemulation_mode_map_alists
+ #define Venable_character_translation \
+     globals.f_Venable_character_translation
+ #define Venable_disabled_menus_and_buttons \
+     globals.f_Venable_disabled_menus_and_buttons
+ #define Veval_buffer_list \
+     globals.f_Veval_buffer_list
+ #define Vexec_directory \
+     globals.f_Vexec_directory
+ #define Vexec_path \
+     globals.f_Vexec_path
+ #define Vexec_suffixes \
+     globals.f_Vexec_suffixes
+ #define Vkbd_macro_termination_hook \
+     globals.f_Vkbd_macro_termination_hook
+ #define Vexecuting_kbd_macro \
+     globals.f_Vexecuting_kbd_macro
+ #define Vface_default_stipple \
+     globals.f_Vface_default_stipple
+ #define Vface_font_rescale_alist \
+     globals.f_Vface_font_rescale_alist
+ #define Vface_ignored_fonts \
+     globals.f_Vface_ignored_fonts
+ #define Vface_new_frame_defaults \
+     globals.f_Vface_new_frame_defaults
+ #define Vface_remapping_alist \
+     globals.f_Vface_remapping_alist
+ #define Vfeatures \
+     globals.f_Vfeatures
+ #define Vfile_coding_system_alist \
+     globals.f_Vfile_coding_system_alist
+ #define Vfile_name_coding_system \
+     globals.f_Vfile_name_coding_system
+ #define Vfile_name_handler_alist \
+     globals.f_Vfile_name_handler_alist
+ #define Vfind_word_boundary_function_table \
+     globals.f_Vfind_word_boundary_function_table
+ #define Vfirst_change_hook \
+     globals.f_Vfirst_change_hook
+ #define Vfloat_output_format \
+     globals.f_Vfloat_output_format
+ #define Vfont_ccl_encoder_alist \
+     globals.f_Vfont_ccl_encoder_alist
+ #define Vfont_encoding_alist \
+     globals.f_Vfont_encoding_alist
+ #define Vfont_encoding_charset_alist \
+     globals.f_Vfont_encoding_charset_alist
+ #define Vfont_list_limit \
+     globals.f_Vfont_list_limit
+ #define Vfont_log \
+     globals.f_Vfont_log
+ #define Vfont_slant_table \
+     globals.f_Vfont_slant_table
+ #define Vfont_weight_table \
+     globals.f_Vfont_weight_table
+ #define Vfont_width_table \
+     globals.f_Vfont_width_table
+ #define Vfontification_functions \
+     globals.f_Vfontification_functions
+ #define Vfontset_alias_alist \
+     globals.f_Vfontset_alias_alist
+ #define Vframe_alpha_lower_limit \
+     globals.f_Vframe_alpha_lower_limit
+ #define Vframe_title_format \
+     globals.f_Vframe_title_format
+ #define Vfringe_bitmaps \
+     globals.f_Vfringe_bitmaps
+ #define Vfunction_key_map \
+     globals.f_Vfunction_key_map
+ #define Vgc_cons_percentage \
+     globals.f_Vgc_cons_percentage
+ #define Vgc_elapsed \
+     globals.f_Vgc_elapsed
+ #define Vglobal_disable_point_adjustment \
+     globals.f_Vglobal_disable_point_adjustment
+ #define Vglobal_mode_string \
+     globals.f_Vglobal_mode_string
+ #define Vglyph_table \
+     globals.f_Vglyph_table
+ #define Vglyphless_char_display \
+     globals.f_Vglyphless_char_display
+ #define Vgtk_version_string \
+     globals.f_Vgtk_version_string
+ #define Vhelp_char \
+     globals.f_Vhelp_char
+ #define Vhelp_event_list \
+     globals.f_Vhelp_event_list
+ #define Vhelp_form \
+     globals.f_Vhelp_form
+ #define Vhistory_add_new_input \
+     globals.f_Vhistory_add_new_input
+ #define Vhistory_length \
+     globals.f_Vhistory_length
+ #define Vhourglass_delay \
+     globals.f_Vhourglass_delay
+ #define Vhscroll_step \
+     globals.f_Vhscroll_step
+ #define Vicon_title_format \
+     globals.f_Vicon_title_format
+ #define Vignore_relative_composition \
+     globals.f_Vignore_relative_composition
+ #define Vimage_cache_eviction_delay \
+     globals.f_Vimage_cache_eviction_delay
+ #define Vimage_types \
+     globals.f_Vimage_types
+ #define Vimagemagick_render_type \
+     globals.f_Vimagemagick_render_type
+ #define Vinhibit_changing_match_data \
+     globals.f_Vinhibit_changing_match_data
+ #define Vinhibit_field_text_motion \
+     globals.f_Vinhibit_field_text_motion
+ #define Vinhibit_file_name_handlers \
+     globals.f_Vinhibit_file_name_handlers
+ #define Vinhibit_file_name_operation \
+     globals.f_Vinhibit_file_name_operation
+ #define Vinhibit_point_motion_hooks \
+     globals.f_Vinhibit_point_motion_hooks
+ #define Vinhibit_quit \
+     globals.f_Vinhibit_quit
+ #define Vinhibit_read_only \
+     globals.f_Vinhibit_read_only
+ #define Vinhibit_redisplay \
+     globals.f_Vinhibit_redisplay
+ #define Vinitial_environment \
+     globals.f_Vinitial_environment
+ #define Vinitial_window_system \
+     globals.f_Vinitial_window_system
+ #define Vinput_method_function \
+     globals.f_Vinput_method_function
+ #define Vinput_method_previous_message \
+     globals.f_Vinput_method_previous_message
+ #define Vinstallation_directory \
+     globals.f_Vinstallation_directory
+ #define Vinvocation_directory \
+     globals.f_Vinvocation_directory
+ #define Vinvocation_name \
+     globals.f_Vinvocation_name
+ #define Vkey_translation_map \
+     globals.f_Vkey_translation_map
+ #define Vkill_buffer_query_functions \
+     globals.f_Vkill_buffer_query_functions
+ #define Vkill_emacs_hook \
+     globals.f_Vkill_emacs_hook
+ #define Vlast_code_conversion_error \
+     globals.f_Vlast_code_conversion_error
+ #define Vlast_coding_system_used \
+     globals.f_Vlast_coding_system_used
+ #define Vlast_event_frame \
+     globals.f_Vlast_event_frame
+ #define Vlatin_extra_code_table \
+     globals.f_Vlatin_extra_code_table
+ #define Vline_number_display_limit \
+     globals.f_Vline_number_display_limit
+ #define Vline_prefix \
+     globals.f_Vline_prefix
+ #define Vload_file_name \
+     globals.f_Vload_file_name
+ #define Vload_file_rep_suffixes \
+     globals.f_Vload_file_rep_suffixes
+ #define Vload_history \
+     globals.f_Vload_history
+ #define Vload_path \
+     globals.f_Vload_path
+ #define Vload_read_function \
+     globals.f_Vload_read_function
+ #define Vload_source_file_function \
+     globals.f_Vload_source_file_function
+ #define Vload_suffixes \
+     globals.f_Vload_suffixes
+ #define Vlocale_coding_system \
+     globals.f_Vlocale_coding_system
+ #define Vlucid_menu_bar_dirty_flag \
+     globals.f_Vlucid_menu_bar_dirty_flag
+ #define Vmacro_declaration_function \
+     globals.f_Vmacro_declaration_function
+ #define Vmake_pointer_invisible \
+     globals.f_Vmake_pointer_invisible
+ #define Vmark_even_if_inactive \
+     globals.f_Vmark_even_if_inactive
+ #define Vmax_image_size \
+     globals.f_Vmax_image_size
+ #define Vmax_mini_window_height \
+     globals.f_Vmax_mini_window_height
+ #define Vmemory_full \
+     globals.f_Vmemory_full
+ #define Vmemory_signal_data \
+     globals.f_Vmemory_signal_data
+ #define Vmenu_bar_final_items \
+     globals.f_Vmenu_bar_final_items
+ #define Vmenu_bar_mode \
+     globals.f_Vmenu_bar_mode
+ #define Vmenu_bar_update_hook \
+     globals.f_Vmenu_bar_update_hook
+ #define Vmenu_updating_frame \
+     globals.f_Vmenu_updating_frame
+ #define Vmessage_log_max \
+     globals.f_Vmessage_log_max
+ #define Vminibuf_scroll_window \
+     globals.f_Vminibuf_scroll_window
+ #define Vminibuffer_completing_file_name \
+     globals.f_Vminibuffer_completing_file_name
+ #define Vminibuffer_completion_confirm \
+     globals.f_Vminibuffer_completion_confirm
+ #define Vminibuffer_completion_predicate \
+     globals.f_Vminibuffer_completion_predicate
+ #define Vminibuffer_completion_table \
+     globals.f_Vminibuffer_completion_table
+ #define Vminibuffer_exit_hook \
+     globals.f_Vminibuffer_exit_hook
+ #define Vminibuffer_help_form \
+     globals.f_Vminibuffer_help_form
+ #define Vminibuffer_history_position \
+     globals.f_Vminibuffer_history_position
+ #define Vminibuffer_history_variable \
+     globals.f_Vminibuffer_history_variable
+ #define Vminibuffer_local_completion_map \
+     globals.f_Vminibuffer_local_completion_map
+ #define Vminibuffer_local_filename_completion_map \
+     globals.f_Vminibuffer_local_filename_completion_map
+ #define Vminibuffer_local_filename_must_match_map \
+     globals.f_Vminibuffer_local_filename_must_match_map
+ #define Vminibuffer_local_map \
+     globals.f_Vminibuffer_local_map
+ #define Vminibuffer_local_must_match_map \
+     globals.f_Vminibuffer_local_must_match_map
+ #define Vminibuffer_local_ns_map \
+     globals.f_Vminibuffer_local_ns_map
+ #define Vminibuffer_message_timeout \
+     globals.f_Vminibuffer_message_timeout
+ #define Vminibuffer_prompt_properties \
+     globals.f_Vminibuffer_prompt_properties
+ #define Vminibuffer_setup_hook \
+     globals.f_Vminibuffer_setup_hook
+ #define Vminor_mode_map_alist \
+     globals.f_Vminor_mode_map_alist
+ #define Vminor_mode_overriding_map_alist \
+     globals.f_Vminor_mode_overriding_map_alist
+ #define Vmost_negative_fixnum \
+     globals.f_Vmost_negative_fixnum
+ #define Vmost_positive_fixnum \
+     globals.f_Vmost_positive_fixnum
+ #define Vmotif_version_string \
+     globals.f_Vmotif_version_string
+ #define Vmouse_autoselect_window \
+     globals.f_Vmouse_autoselect_window
+ #define Vmouse_highlight \
+     globals.f_Vmouse_highlight
+ #define Vmouse_leave_buffer_hook \
+     globals.f_Vmouse_leave_buffer_hook
+ #define Vmouse_position_function \
+     globals.f_Vmouse_position_function
+ #define Vnetwork_coding_system_alist \
+     globals.f_Vnetwork_coding_system_alist
+ #define Vnext_selection_coding_system \
+     globals.f_Vnext_selection_coding_system
+ #define Vnobreak_char_display \
+     globals.f_Vnobreak_char_display
+ #define Vobarray \
+     globals.f_Vobarray
+ #define Vold_style_backquotes \
+     globals.f_Vold_style_backquotes
+ #define Voperating_system_release \
+     globals.f_Voperating_system_release
+ #define Votf_script_alist \
+     globals.f_Votf_script_alist
+ #define Vother_window_scroll_buffer \
+     globals.f_Vother_window_scroll_buffer
+ #define Voverflow_newline_into_fringe \
+     globals.f_Voverflow_newline_into_fringe
+ #define Voverlay_arrow_position \
+     globals.f_Voverlay_arrow_position
+ #define Voverlay_arrow_string \
+     globals.f_Voverlay_arrow_string
+ #define Voverlay_arrow_variable_list \
+     globals.f_Voverlay_arrow_variable_list
+ #define Voverriding_local_map \
+     globals.f_Voverriding_local_map
+ #define Voverriding_local_map_menu_flag \
+     globals.f_Voverriding_local_map_menu_flag
+ #define Vpath_separator \
+     globals.f_Vpath_separator
+ #define Vpost_command_hook \
+     globals.f_Vpost_command_hook
+ #define Vpost_gc_hook \
+     globals.f_Vpost_gc_hook
+ #define Vpost_self_insert_hook \
+     globals.f_Vpost_self_insert_hook
+ #define Vpre_command_hook \
+     globals.f_Vpre_command_hook
+ #define Vprefix_help_command \
+     globals.f_Vprefix_help_command
+ #define Vpreloaded_file_list \
+     globals.f_Vpreloaded_file_list
+ #define Vprevious_system_messages_locale \
+     globals.f_Vprevious_system_messages_locale
+ #define Vprevious_system_time_locale \
+     globals.f_Vprevious_system_time_locale
+ #define Vprint_charset_text_property \
+     globals.f_Vprint_charset_text_property
+ #define Vprint_circle \
+     globals.f_Vprint_circle
+ #define Vprint_continuous_numbering \
+     globals.f_Vprint_continuous_numbering
+ #define Vprint_gensym \
+     globals.f_Vprint_gensym
+ #define Vprint_length \
+     globals.f_Vprint_length
+ #define Vprint_level \
+     globals.f_Vprint_level
+ #define Vprint_number_table \
+     globals.f_Vprint_number_table
+ #define Vprintable_chars \
+     globals.f_Vprintable_chars
+ #define Vprocess_adaptive_read_buffering \
+     globals.f_Vprocess_adaptive_read_buffering
+ #define Vprocess_coding_system_alist \
+     globals.f_Vprocess_coding_system_alist
+ #define Vprocess_connection_type \
+     globals.f_Vprocess_connection_type
+ #define Vprocess_environment \
+     globals.f_Vprocess_environment
+ #define Vpurify_flag \
+     globals.f_Vpurify_flag
+ #define Vquit_flag \
+     globals.f_Vquit_flag
+ #define Vread_buffer_function \
+     globals.f_Vread_buffer_function
+ #define Vread_expression_history \
+     globals.f_Vread_expression_history
+ #define Vread_circle \
+     globals.f_Vread_circle
+ #define Vread_expression_map \
+     globals.f_Vread_expression_map
+ #define Vread_symbol_positions_list \
+     globals.f_Vread_symbol_positions_list
+ #define Vread_with_symbol_positions \
+     globals.f_Vread_with_symbol_positions
+ #define Vrecenter_redisplay \
+     globals.f_Vrecenter_redisplay
+ #define Vredisplay_end_trigger_functions \
+     globals.f_Vredisplay_end_trigger_functions
+ #define Vredisplay_preemption_period \
+     globals.f_Vredisplay_preemption_period
+ #define Vresize_mini_windows \
+     globals.f_Vresize_mini_windows
+ #define Vresume_tty_functions \
+     globals.f_Vresume_tty_functions
+ #define Vring_bell_function \
+     globals.f_Vring_bell_function
+ #define Vsaved_region_selection \
+     globals.f_Vsaved_region_selection
+ #define Vscalable_fonts_allowed \
+     globals.f_Vscalable_fonts_allowed
+ #define Vscript_representative_chars \
+     globals.f_Vscript_representative_chars
+ #define Vscroll_preserve_screen_position \
+     globals.f_Vscroll_preserve_screen_position
+ #define Vsearch_spaces_regexp \
+     globals.f_Vsearch_spaces_regexp
+ #define Vselect_active_regions \
+     globals.f_Vselect_active_regions
+ #define Vselect_safe_coding_system_function \
+     globals.f_Vselect_safe_coding_system_function
+ #define Vselection_coding_system \
+     globals.f_Vselection_coding_system
+ #define Vselection_converter_alist \
+     globals.f_Vselection_converter_alist
+ #define Vset_auto_coding_function \
+     globals.f_Vset_auto_coding_function
+ #define Vshared_game_score_directory \
+     globals.f_Vshared_game_score_directory
+ #define Vshell_file_name \
+     globals.f_Vshell_file_name
+ #define Vshow_help_function \
+     globals.f_Vshow_help_function
+ #define Vshow_trailing_whitespace \
+     globals.f_Vshow_trailing_whitespace
+ #define Vsignal_hook_function \
+     globals.f_Vsignal_hook_function
+ #define Vsource_directory \
+     globals.f_Vsource_directory
+ #define Vspecial_event_map \
+     globals.f_Vspecial_event_map
+ #define Vstandard_display_table \
+     globals.f_Vstandard_display_table
+ #define Vstandard_input \
+     globals.f_Vstandard_input
+ #define Vstandard_output \
+     globals.f_Vstandard_output
+ #define Vstandard_translation_table_for_decode \
+     globals.f_Vstandard_translation_table_for_decode
+ #define Vstandard_translation_table_for_encode \
+     globals.f_Vstandard_translation_table_for_encode
+ #define Vsuggest_key_bindings \
+     globals.f_Vsuggest_key_bindings
+ #define Vsuspend_tty_functions \
+     globals.f_Vsuspend_tty_functions
+ #define Vsystem_configuration \
+     globals.f_Vsystem_configuration
+ #define Vsystem_configuration_options \
+     globals.f_Vsystem_configuration_options
+ #define Vsystem_messages_locale \
+     globals.f_Vsystem_messages_locale
+ #define Vsystem_name \
+     globals.f_Vsystem_name
+ #define Vsystem_time_locale \
+     globals.f_Vsystem_time_locale
+ #define Vsystem_type \
+     globals.f_Vsystem_type
+ #define Vtemp_buffer_show_function \
+     globals.f_Vtemp_buffer_show_function
+ #define Vtemporary_file_directory \
+     globals.f_Vtemporary_file_directory
+ #define Vterminal_frame \
+     globals.f_Vterminal_frame
+ #define Vtext_property_default_nonsticky \
+     globals.f_Vtext_property_default_nonsticky
+ #define Vthis_command \
+     globals.f_Vthis_command
+ #define Vthis_command_keys_shift_translated \
+     globals.f_Vthis_command_keys_shift_translated
+ #define Vthis_original_command \
+     globals.f_Vthis_original_command
+ #define Vthrow_on_input \
+     globals.f_Vthrow_on_input
+ #define Vtimer_idle_list \
+     globals.f_Vtimer_idle_list
+ #define Vtimer_list \
+     globals.f_Vtimer_list
+ #define Vtool_bar_border \
+     globals.f_Vtool_bar_border
+ #define Vtool_bar_button_margin \
+     globals.f_Vtool_bar_button_margin
+ #define Vtool_bar_mode \
+     globals.f_Vtool_bar_mode
+ #define Vtool_bar_separator_image_expression \
+     globals.f_Vtool_bar_separator_image_expression
+ #define Vtool_bar_style \
+     globals.f_Vtool_bar_style
+ #define Vtop_level \
+     globals.f_Vtop_level
+ #define Vtransient_mark_mode \
+     globals.f_Vtransient_mark_mode
+ #define Vtranslation_hash_table_vector \
+     globals.f_Vtranslation_hash_table_vector
+ #define Vtranslation_table_for_input \
+     globals.f_Vtranslation_table_for_input
+ #define Vtranslation_table_vector \
+     globals.f_Vtranslation_table_vector
+ #define Vtruncate_partial_width_windows \
+     globals.f_Vtruncate_partial_width_windows
+ #define Vtty_defined_color_alist \
+     globals.f_Vtty_defined_color_alist
+ #define Vtty_erase_char \
+     globals.f_Vtty_erase_char
+ #define Vundo_outer_limit \
+     globals.f_Vundo_outer_limit
+ #define Vundo_outer_limit_function \
+     globals.f_Vundo_outer_limit_function
+ #define Vunicode_category_table \
+     globals.f_Vunicode_category_table
+ #define Vunread_command_events \
+     globals.f_Vunread_command_events
+ #define Vunread_input_method_events \
+     globals.f_Vunread_input_method_events
+ #define Vunread_post_input_method_events \
+     globals.f_Vunread_post_input_method_events
+ #define Vuse_default_ascent \
+     globals.f_Vuse_default_ascent
+ #define Vuser_full_name \
+     globals.f_Vuser_full_name
+ #define Vuser_init_file \
+     globals.f_Vuser_init_file
+ #define Vuser_login_name \
+     globals.f_Vuser_login_name
+ #define Vuser_real_login_name \
+     globals.f_Vuser_real_login_name
+ #define Vvalues \
+     globals.f_Vvalues
+ #define Vvertical_centering_font_regexp \
+     globals.f_Vvertical_centering_font_regexp
+ #define Vvoid_text_area_pointer \
+     globals.f_Vvoid_text_area_pointer
+ #define Vw32_alt_is_meta \
+     globals.f_Vw32_alt_is_meta
+ #define Vw32_apps_modifier \
+     globals.f_Vw32_apps_modifier
+ #define Vw32_bdf_filename_alist \
+     globals.f_Vw32_bdf_filename_alist
+ #define Vw32_capslock_is_shiftlock \
+     globals.f_Vw32_capslock_is_shiftlock
+ #define Vw32_charset_info_alist \
+     globals.f_Vw32_charset_info_alist
+ #define Vw32_color_map \
+     globals.f_Vw32_color_map
+ #define Vw32_downcase_file_names \
+     globals.f_Vw32_downcase_file_names
+ #define Vw32_enable_caps_lock \
+     globals.f_Vw32_enable_caps_lock
+ #define Vw32_enable_num_lock \
+     globals.f_Vw32_enable_num_lock
+ #define Vw32_enable_palette \
+     globals.f_Vw32_enable_palette
+ #define Vw32_generate_fake_inodes \
+     globals.f_Vw32_generate_fake_inodes
+ #define Vw32_get_true_file_attributes \
+     globals.f_Vw32_get_true_file_attributes
+ #define Vw32_grab_focus_on_raise \
+     globals.f_Vw32_grab_focus_on_raise
+ #define Vw32_lwindow_modifier \
+     globals.f_Vw32_lwindow_modifier
+ #define Vw32_pass_alt_to_system \
+     globals.f_Vw32_pass_alt_to_system
+ #define Vw32_pass_lwindow_to_system \
+     globals.f_Vw32_pass_lwindow_to_system
+ #define Vw32_pass_rwindow_to_system \
+     globals.f_Vw32_pass_rwindow_to_system
+ #define Vw32_phantom_key_code \
+     globals.f_Vw32_phantom_key_code
+ #define Vw32_quote_process_args \
+     globals.f_Vw32_quote_process_args
+ #define Vw32_recognize_altgr \
+     globals.f_Vw32_recognize_altgr
+ #define Vw32_rwindow_modifier \
+     globals.f_Vw32_rwindow_modifier
+ #define Vw32_scroll_lock_modifier \
+     globals.f_Vw32_scroll_lock_modifier
+ #define Vw32_start_process_inherit_error_mode \
+     globals.f_Vw32_start_process_inherit_error_mode
+ #define Vw32_start_process_share_console \
+     globals.f_Vw32_start_process_share_console
+ #define Vw32_start_process_show_window \
+     globals.f_Vw32_start_process_show_window
+ #define Vw32_swap_mouse_buttons \
+     globals.f_Vw32_swap_mouse_buttons
+ #define Vwhere_is_preferred_modifier \
+     globals.f_Vwhere_is_preferred_modifier
+ #define Vwindow_configuration_change_hook \
+     globals.f_Vwindow_configuration_change_hook
+ #define Vwindow_point_insertion_type \
+     globals.f_Vwindow_point_insertion_type
+ #define Vwindow_scroll_functions \
+     globals.f_Vwindow_scroll_functions
+ #define Vwindow_size_change_functions \
+     globals.f_Vwindow_size_change_functions
+ #define Vwindow_system_version \
+     globals.f_Vwindow_system_version
+ #define Vwindow_text_change_functions \
+     globals.f_Vwindow_text_change_functions
+ #define Vword_combining_categories \
+     globals.f_Vword_combining_categories
+ #define Vword_separating_categories \
+     globals.f_Vword_separating_categories
+ #define Vwrap_prefix \
+     globals.f_Vwrap_prefix
+ #define Vwrite_region_annotate_functions \
+     globals.f_Vwrite_region_annotate_functions
+ #define Vwrite_region_annotations_so_far \
+     globals.f_Vwrite_region_annotations_so_far
+ #define Vwrite_region_post_annotation_function \
+     globals.f_Vwrite_region_post_annotation_function
+ #define Vx_alt_keysym \
+     globals.f_Vx_alt_keysym
+ #define Vx_bitmap_file_path \
+     globals.f_Vx_bitmap_file_path
+ #define Vx_cursor_fore_pixel \
+     globals.f_Vx_cursor_fore_pixel
+ #define Vx_hourglass_pointer_shape \
+     globals.f_Vx_hourglass_pointer_shape
+ #define Vx_hyper_keysym \
+     globals.f_Vx_hyper_keysym
+ #define Vx_keysym_table \
+     globals.f_Vx_keysym_table
+ #define Vx_lost_selection_functions \
+     globals.f_Vx_lost_selection_functions
+ #define Vx_max_tooltip_size \
+     globals.f_Vx_max_tooltip_size
+ #define Vx_meta_keysym \
+     globals.f_Vx_meta_keysym
+ #define Vx_mode_pointer_shape \
+     globals.f_Vx_mode_pointer_shape
+ #define Vx_no_window_manager \
+     globals.f_Vx_no_window_manager
+ #define Vx_nontext_pointer_shape \
+     globals.f_Vx_nontext_pointer_shape
+ #define Vx_pixel_size_width_font_regexp \
+     globals.f_Vx_pixel_size_width_font_regexp
+ #define Vx_pointer_shape \
+     globals.f_Vx_pointer_shape
+ #define Vx_resource_class \
+     globals.f_Vx_resource_class
+ #define Vx_resource_name \
+     globals.f_Vx_resource_name
+ #define Vx_sensitive_text_pointer_shape \
+     globals.f_Vx_sensitive_text_pointer_shape
+ #define Vx_sent_selection_functions \
+     globals.f_Vx_sent_selection_functions
+ #define Vx_session_id \
+     globals.f_Vx_session_id
+ #define Vx_session_previous_id \
+     globals.f_Vx_session_previous_id
+ #define Vx_super_keysym \
+     globals.f_Vx_super_keysym
+ #define Vx_toolkit_scroll_bars \
+     globals.f_Vx_toolkit_scroll_bars
+ #define Vx_window_horizontal_drag_shape \
+     globals.f_Vx_window_horizontal_drag_shape
+ #define Vxft_settings \
+     globals.f_Vxft_settings
+ #define auto_raise_tool_bar_buttons_p \
+     globals.f_auto_raise_tool_bar_buttons_p
+ #define auto_save_interval \
+     globals.f_auto_save_interval
+ #define auto_window_vscroll_p \
+     globals.f_auto_window_vscroll_p
+ #define automatic_hscrolling_p \
+     globals.f_automatic_hscrolling_p
+ #define baud_rate \
+     globals.f_baud_rate
+ #define byte_debug_flag \
+     globals.f_byte_debug_flag
+ #define byte_metering_on \
+     globals.f_byte_metering_on
+ #define cannot_suspend \
+     globals.f_cannot_suspend
+ #define check_markers_debug_flag \
+     globals.f_check_markers_debug_flag
+ #define coding_system_require_warning \
+     globals.f_coding_system_require_warning
+ #define completion_ignore_case \
+     globals.f_completion_ignore_case
+ #define cons_cells_consed \
+     globals.f_cons_cells_consed
+ #define cross_disabled_images \
+     globals.f_cross_disabled_images
+ #define cursor_in_echo_area \
+     globals.f_cursor_in_echo_area
+ #define debug_end_pos \
+     globals.f_debug_end_pos
+ #define debug_on_next_call \
+     globals.f_debug_on_next_call
+ #define debug_on_quit \
+     globals.f_debug_on_quit
+ #define debugger_may_continue \
+     globals.f_debugger_may_continue
+ #define delete_by_moving_to_trash \
+     globals.f_delete_by_moving_to_trash
+ #define delete_exited_processes \
+     globals.f_delete_exited_processes
+ #define display_hourglass_p \
+     globals.f_display_hourglass_p
+ #define do_mouse_tracking \
+     globals.f_do_mouse_tracking
+ #define dos_codepage \
+     globals.f_dos_codepage
+ #define dos_country_code \
+     globals.f_dos_country_code
+ #define dos_decimal_point \
+     globals.f_dos_decimal_point
+ #define dos_hyper_key \
+     globals.f_dos_hyper_key
+ #define dos_keyboard_layout \
+     globals.f_dos_keyboard_layout
+ #define dos_keypad_mode \
+     globals.f_dos_keypad_mode
+ #define dos_super_key \
+     globals.f_dos_super_key
+ #define dos_timezone_offset \
+     globals.f_dos_timezone_offset
+ #define double_click_fuzz \
+     globals.f_double_click_fuzz
+ #define emacs_scroll_step \
+     globals.f_emacs_scroll_step
+ #define enable_recursive_minibuffers \
+     globals.f_enable_recursive_minibuffers
+ #define eol_mnemonic_dos \
+     globals.f_eol_mnemonic_dos
+ #define eol_mnemonic_mac \
+     globals.f_eol_mnemonic_mac
+ #define eol_mnemonic_undecided \
+     globals.f_eol_mnemonic_undecided
+ #define eol_mnemonic_unix \
+     globals.f_eol_mnemonic_unix
+ #define executing_kbd_macro_index \
+     globals.f_executing_kbd_macro_index
+ #define extra_keyboard_modifiers \
+     globals.f_extra_keyboard_modifiers
+ #define floats_consed \
+     globals.f_floats_consed
+ #define focus_follows_mouse \
+     globals.f_focus_follows_mouse
+ #define force_load_messages \
+     globals.f_force_load_messages
+ #define garbage_collection_messages \
+     globals.f_garbage_collection_messages
+ #define gc_cons_threshold \
+     globals.f_gc_cons_threshold
+ #define gcs_done \
+     globals.f_gcs_done
+ #define highlight_nonselected_windows \
+     globals.f_highlight_nonselected_windows
+ #define history_delete_duplicates \
+     globals.f_history_delete_duplicates
+ #define hscroll_margin \
+     globals.f_hscroll_margin
+ #define indent_tabs_mode \
+     globals.f_indent_tabs_mode
+ #define inherit_process_coding_system \
+     globals.f_inherit_process_coding_system
+ #define inhibit_eol_conversion \
+     globals.f_inhibit_eol_conversion
+ #define inhibit_eval_during_redisplay \
+     globals.f_inhibit_eval_during_redisplay
+ #define inhibit_free_realized_faces \
+     globals.f_inhibit_free_realized_faces
+ #define inhibit_iso_escape_detection \
+     globals.f_inhibit_iso_escape_detection
+ #define inhibit_load_charset_map \
+     globals.f_inhibit_load_charset_map
+ #define inhibit_local_menu_bar_menus \
+     globals.f_inhibit_local_menu_bar_menus
+ #define inhibit_menubar_update \
+     globals.f_inhibit_menubar_update
+ #define inhibit_modification_hooks \
+     globals.f_inhibit_modification_hooks
+ #define inhibit_null_byte_detection \
+     globals.f_inhibit_null_byte_detection
+ #define inhibit_try_cursor_movement \
+     globals.f_inhibit_try_cursor_movement
+ #define inhibit_try_window_id \
+     globals.f_inhibit_try_window_id
+ #define inhibit_try_window_reusing \
+     globals.f_inhibit_try_window_reusing
+ #define inhibit_x_resources \
+     globals.f_inhibit_x_resources
+ #define intervals_consed \
+     globals.f_intervals_consed
+ #define inverse_video \
+     globals.f_inverse_video
+ #define last_command_event \
+     globals.f_last_command_event
+ #define last_input_event \
+     globals.f_last_input_event
+ #define last_nonmenu_event \
+     globals.f_last_nonmenu_event
+ #define line_number_display_limit_width \
+     globals.f_line_number_display_limit_width
+ #define load_convert_to_unibyte \
+     globals.f_load_convert_to_unibyte
+ #define load_dangerous_libraries \
+     globals.f_load_dangerous_libraries
+ #define load_force_doc_strings \
+     globals.f_load_force_doc_strings
+ #define load_in_progress \
+     globals.f_load_in_progress
+ #define make_cursor_line_fully_visible_p \
+     globals.f_make_cursor_line_fully_visible_p
+ #define max_lisp_eval_depth \
+     globals.f_max_lisp_eval_depth
+ #define max_specpdl_size \
+     globals.f_max_specpdl_size
+ #define menu_prompt_more_char \
+     globals.f_menu_prompt_more_char
+ #define menu_prompting \
+     globals.f_menu_prompting
+ #define message_truncate_lines \
+     globals.f_message_truncate_lines
+ #define meta_prefix_char \
+     globals.f_meta_prefix_char
+ #define minibuffer_allow_text_properties \
+     globals.f_minibuffer_allow_text_properties
+ #define minibuffer_auto_raise \
+     globals.f_minibuffer_auto_raise
+ #define misc_objects_consed \
+     globals.f_misc_objects_consed
+ #define mode_line_in_non_selected_windows \
+     globals.f_mode_line_in_non_selected_windows
+ #define mode_line_inverse_video \
+     globals.f_mode_line_inverse_video
+ #define multibyte_syntax_as_symbol \
+     globals.f_multibyte_syntax_as_symbol
+ #define multiple_frames \
+     globals.f_multiple_frames
+ #define next_screen_context_lines \
+     globals.f_next_screen_context_lines
+ #define no_redraw_on_reenter \
+     globals.f_no_redraw_on_reenter
+ #define noninteractive1 \
+     globals.f_noninteractive1
+ #define num_input_keys \
+     globals.f_num_input_keys
+ #define num_nonmacro_input_events \
+     globals.f_num_nonmacro_input_events
+ #define open_paren_in_column_0_is_defun_start \
+     globals.f_open_paren_in_column_0_is_defun_start
+ #define overline_margin \
+     globals.f_overline_margin
+ #define parse_sexp_ignore_comments \
+     globals.f_parse_sexp_ignore_comments
+ #define parse_sexp_lookup_properties \
+     globals.f_parse_sexp_lookup_properties
+ #define polling_period \
+     globals.f_polling_period
+ #define print_escape_multibyte \
+     globals.f_print_escape_multibyte
+ #define print_escape_newlines \
+     globals.f_print_escape_newlines
+ #define print_escape_nonascii \
+     globals.f_print_escape_nonascii
+ #define print_quoted \
+     globals.f_print_quoted
+ #define pure_bytes_used \
+     globals.f_pure_bytes_used
+ #define read_buffer_completion_ignore_case \
+     globals.f_read_buffer_completion_ignore_case
+ #define redisplay_dont_pause \
+     globals.f_redisplay_dont_pause
+ #define scroll_conservatively \
+     globals.f_scroll_conservatively
+ #define scroll_margin \
+     globals.f_scroll_margin
+ #define string_chars_consed \
+     globals.f_string_chars_consed
+ #define strings_consed \
+     globals.f_strings_consed
+ #define symbols_consed \
+     globals.f_symbols_consed
+ #define system_uses_terminfo \
+     globals.f_system_uses_terminfo
+ #define tool_bar_button_relief \
+     globals.f_tool_bar_button_relief
+ #define tool_bar_max_label_size \
+     globals.f_tool_bar_max_label_size
+ #define underline_minimum_offset \
+     globals.f_underline_minimum_offset
+ #define undo_inhibit_record_point \
+     globals.f_undo_inhibit_record_point
+ #define undo_limit \
+     globals.f_undo_limit
+ #define undo_strong_limit \
+     globals.f_undo_strong_limit
+ #define unibyte_display_via_language_environment \
+     globals.f_unibyte_display_via_language_environment
+ #define unread_command_char \
+     globals.f_unread_command_char
+ #define use_dialog_box \
+     globals.f_use_dialog_box
+ #define use_file_dialog \
+     globals.f_use_file_dialog
+ #define use_system_font \
+     globals.f_use_system_font
+ #define vector_cells_consed \
+     globals.f_vector_cells_consed
+ #define visible_bell \
+     globals.f_visible_bell
+ #define visible_cursor \
+     globals.f_visible_cursor
+ #define w32_ansi_code_page \
+     globals.f_w32_ansi_code_page
+ #define w32_enable_synthesized_fonts \
+     globals.f_w32_enable_synthesized_fonts
+ #define w32_mouse_button_tolerance \
+     globals.f_w32_mouse_button_tolerance
+ #define w32_mouse_move_interval \
+     globals.f_w32_mouse_move_interval
+ #define w32_num_mouse_buttons \
+     globals.f_w32_num_mouse_buttons
+ #define w32_pass_extra_mouse_buttons_to_system \
+     globals.f_w32_pass_extra_mouse_buttons_to_system
+ #define w32_pass_multimedia_buttons_to_system \
+     globals.f_w32_pass_multimedia_buttons_to_system
+ #define w32_pipe_read_delay \
+     globals.f_w32_pipe_read_delay
+ #define w32_quit_key \
+     globals.f_w32_quit_key
+ #define w32_strict_fontnames \
+     globals.f_w32_strict_fontnames
+ #define w32_strict_painting \
+     globals.f_w32_strict_painting
+ #define w32_use_full_screen_buffer \
+     globals.f_w32_use_full_screen_buffer
+ #define w32_use_visible_system_caret \
+     globals.f_w32_use_visible_system_caret
+ #define window_min_height \
+     globals.f_window_min_height
+ #define window_min_width \
+     globals.f_window_min_width
+ #define words_include_escapes \
+     globals.f_words_include_escapes
+ #define write_region_inhibit_fsync \
+     globals.f_write_region_inhibit_fsync
+ #define x_gtk_file_dialog_help_text \
+     globals.f_x_gtk_file_dialog_help_text
+ #define x_gtk_show_hidden_files \
+     globals.f_x_gtk_show_hidden_files
+ #define x_gtk_use_old_file_dialog \
+     globals.f_x_gtk_use_old_file_dialog
+ #define x_gtk_use_system_tooltips \
+     globals.f_x_gtk_use_system_tooltips
+ #define x_gtk_whole_detached_tool_bar \
+     globals.f_x_gtk_whole_detached_tool_bar
+ #define x_mouse_click_focus_ignore_position \
+     globals.f_x_mouse_click_focus_ignore_position
+ #define x_selection_timeout \
+     globals.f_x_selection_timeout
+ #define x_stretch_cursor_p \
+     globals.f_x_stretch_cursor_p
+ #define x_underline_at_descent_line \
+     globals.f_x_underline_at_descent_line
+ #define x_use_underline_position_properties \
+     globals.f_x_use_underline_position_properties
+ #define ns_input_file \
+     globals.f_ns_input_file
+ #define ns_input_font \
+     globals.f_ns_input_font
+ #define ns_input_fontsize \
+     globals.f_ns_input_fontsize
+ #define ns_input_line \
+     globals.f_ns_input_line
+ #define ns_input_color \
+     globals.f_ns_input_color
+ #define ns_input_text \
+     globals.f_ns_input_text
+ #define ns_working_text \
+     globals.f_ns_working_text
+ #define ns_input_spi_name \
+     globals.f_ns_input_spi_name
+ #define ns_input_spi_arg \
+     globals.f_ns_input_spi_arg
+ #define ns_alternate_modifier \
+     globals.f_ns_alternate_modifier
+ #define ns_right_alternate_modifier \
+     globals.f_ns_right_alternate_modifier
+ #define ns_command_modifier \
+     globals.f_ns_command_modifier
+ #define ns_right_command_modifier \
+     globals.f_ns_right_command_modifier
+ #define ns_control_modifier \
+     globals.f_ns_control_modifier
+ #define ns_right_control_modifier \
+     globals.f_ns_right_control_modifier
+ #define ns_function_modifier \
+     globals.f_ns_function_modifier
+ #define ns_antialias_text \
+     globals.f_ns_antialias_text
+ #define ns_confirm_quit \
+     globals.f_ns_confirm_quit
+ #define Vns_icon_type_alist \
+     globals.f_Vns_icon_type_alist
+ #define Vns_version_string \
+     globals.f_Vns_version_string
+ #define Vns_sent_selection_hooks \
+     globals.f_Vns_sent_selection_hooks
+ #define Vns_lost_selection_hooks \
+     globals.f_Vns_lost_selection_hooks
+ #define Vselection_alist \
+     globals.f_Vselection_alist
+ #define Vns_reg_to_script \
+     globals.f_Vns_reg_to_script
diff --combined src/image.c
index e16b63ae0f46b41f25b8ca3510aca57f1d40b3a9,d533d7edee6a9d2c2e2fc1d811e44748addbbb07..10038eecd8544894dd522c33178548016dc21a92
@@@ -1,7 -1,5 +1,5 @@@
  /* Functions for image support on window system.
-    Copyright (C) 1989, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
-                  2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
-                  Free Software Foundation, Inc.
+    Copyright (C) 1989, 1992-2011 Free Software Foundation, Inc.
  
  This file is part of GNU Emacs.
  
@@@ -22,10 -20,7 +20,7 @@@ along with GNU Emacs.  If not, see <htt
  #include <stdio.h>
  #include <math.h>
  #include <ctype.h>
- #ifdef HAVE_UNISTD_H
  #include <unistd.h>
- #endif
  
  #ifdef HAVE_PNG
  #if defined HAVE_LIBPNG_PNG_H
@@@ -94,6 -89,11 +89,11 @@@ typedef struct w32_bitmap_record Bitmap
     without modifying lots of files).  */
  extern void x_query_colors (struct frame *f, XColor *colors, int ncolors);
  extern void x_query_color (struct frame *f, XColor *color);
+ /* Version of libpng that we were compiled with, or -1 if no PNG
+    support was compiled in.  This is tested by w32-win.el to correctly
+    set up the alist used to search for PNG libraries.  */
+ Lisp_Object Qlibpng_version;
  #endif /* HAVE_NTGUI */
  
  #ifdef HAVE_NS
@@@ -122,10 -122,6 +122,6 @@@ typedef struct ns_bitmap_record Bitmap_
  #endif /* HAVE_NS */
  
  
- /* Search path for bitmap files.  */
- Lisp_Object Vx_bitmap_file_path;
  /* The symbol `postscript' identifying images of this type.  */
  
  Lisp_Object Qpostscript;
@@@ -352,7 -348,7 +348,7 @@@ x_create_bitmap_from_file (struct fram
      {
        if (dpyinfo->bitmaps[id].refcount
          && dpyinfo->bitmaps[id].file
-         && !strcmp (dpyinfo->bitmaps[id].file, (char *) SDATA (file)))
+         && !strcmp (dpyinfo->bitmaps[id].file, SSDATA (file)))
        {
          ++dpyinfo->bitmaps[id].refcount;
          return id + 1;
      return -1;
    emacs_close (fd);
  
-   filename = (char *) SDATA (found);
+   filename = SSDATA (found);
  
    result = XReadBitmapFile (FRAME_X_DISPLAY (f), FRAME_X_WINDOW (f),
                            filename, &width, &height, &bitmap, &xhot, &yhot);
    dpyinfo->bitmaps[id - 1].depth = 1;
    dpyinfo->bitmaps[id - 1].height = height;
    dpyinfo->bitmaps[id - 1].width = width;
-   strcpy (dpyinfo->bitmaps[id - 1].file, SDATA (file));
+   strcpy (dpyinfo->bitmaps[id - 1].file, SSDATA (file));
  
    return id;
  #endif /* HAVE_X_WINDOWS */
@@@ -563,10 -559,6 +559,6 @@@ x_create_bitmap_mask (struct frame *f, 
  
  static struct image_type *image_types;
  
- /* A list of symbols, one for each supported image type.  */
- Lisp_Object Vimage_types;
  /* Cache for delayed-loading image types.  */
  
  static Lisp_Object Vimage_type_cache;
@@@ -585,11 -577,6 +577,6 @@@ Lisp_Object QCindex, QCmatrix, QCcolor_
  
  Lisp_Object Qlaplace, Qemboss, Qedge_detection, Qheuristic;
  
- /* Time in seconds after which images should be removed from the cache
-    if not displayed.  */
- Lisp_Object Vimage_cache_eviction_delay;
  /* Function prototypes.  */
  
  static Lisp_Object define_image_type (struct image_type *type, int loaded);
@@@ -783,7 -770,7 +770,7 @@@ parse_image_spec (Lisp_Object spec, str
  
        /* Find key in KEYWORDS.  Error if not found.  */
        for (i = 0; i < nkeywords; ++i)
-       if (strcmp (keywords[i].name, SDATA (SYMBOL_NAME (key))) == 0)
+       if (strcmp (keywords[i].name, SSDATA (SYMBOL_NAME (key))) == 0)
          break;
  
        if (i == nkeywords)
        case IMAGE_FUNCTION_VALUE:
          value = indirect_function (value);
          if (SUBRP (value)
 -            || COMPILEDP (value)
 +            || FUNVECP (value)
              || (CONSP (value) && EQ (XCAR (value), Qlambda)))
            break;
          return 0;
@@@ -1001,8 -988,6 +988,6 @@@ static void free_image (struct frame *f
  static int check_image_size (struct frame *f, int width, int height);
  
  #define MAX_IMAGE_SIZE 6.0
- Lisp_Object Vmax_image_size;
  /* Allocate and return a new image structure for image specification
     SPEC.  SPEC has a hash value of HASH.  */
  
@@@ -1381,7 -1366,7 +1366,7 @@@ x_alloc_image_color (struct frame *f, s
  
    xassert (STRINGP (color_name));
  
-   if (x_defined_color (f, SDATA (color_name), &color, 1))
+   if (x_defined_color (f, SSDATA (color_name), &color, 1))
      {
        /* This isn't called frequently so we get away with simply
         reallocating the color vector to the needed size, here.  */
@@@ -2872,7 -2857,7 +2857,7 @@@ xbm_load (struct frame *f, struct imag
          return 0;
        }
  
-       contents = slurp_file (SDATA (file), &size);
+       contents = slurp_file (SSDATA (file), &size);
        if (contents == NULL)
        {
          image_error ("Error loading XBM image `%s'", img->spec, Qnil);
                }
            }
          else if (STRINGP (data))
-           bits = SDATA (data);
+           bits = SSDATA (data);
          else
            bits = XBOOL_VECTOR (data)->data;
  
@@@ -3332,7 -3317,7 +3317,7 @@@ xpm_image_p (Lisp_Object object
  
  #if defined (HAVE_XPM) && defined (HAVE_X_WINDOWS)
  int
- x_create_bitmap_from_xpm_data (struct frame *f, char **bits)
+ x_create_bitmap_from_xpm_data (struct frame *f, const char **bits)
  {
    Display_Info *dpyinfo = FRAME_X_DISPLAY_INFO (f);
    int id, rc;
    attrs.valuemask |= XpmColormap;
  
    rc = XpmCreatePixmapFromData (FRAME_X_DISPLAY (f), FRAME_X_WINDOW (f),
-                               bits, &bitmap, &mask, &attrs);
+                               (char **) bits, &bitmap, &mask, &attrs);
    if (rc != XpmSuccess)
      {
        XpmFreeAttributes (&attrs);
@@@ -3456,14 -3441,14 +3441,14 @@@ xpm_load (struct frame *f, struct imag
          if (STRINGP (name))
            {
              xpm_syms[i].name = (char *) alloca (SCHARS (name) + 1);
-             strcpy (xpm_syms[i].name, SDATA (name));
+             strcpy (xpm_syms[i].name, SSDATA (name));
            }
          else
            xpm_syms[i].name = "";
          if (STRINGP (color))
            {
              xpm_syms[i].value = (char *) alloca (SCHARS (color) + 1);
-             strcpy (xpm_syms[i].value, SDATA (color));
+             strcpy (xpm_syms[i].value, SSDATA (color));
            }
          else
            xpm_syms[i].value = "";
                                  &attrs);
  #else
        rc = XpmReadFileToPixmap (FRAME_X_DISPLAY (f), FRAME_X_WINDOW (f),
-                               SDATA (file), &img->pixmap, &img->mask,
+                               SSDATA (file), &img->pixmap, &img->mask,
                                &attrs);
  #endif /* HAVE_NTGUI */
      }
                                        &attrs);
  #else
        rc = XpmCreatePixmapFromBuffer (FRAME_X_DISPLAY (f), FRAME_X_WINDOW (f),
-                                     SDATA (buffer),
+                                     SSDATA (buffer),
                                      &img->pixmap, &img->mask,
                                      &attrs);
  #endif /* HAVE_NTGUI */
@@@ -4405,11 -4390,6 +4390,6 @@@ static void x_detect_edges (struct fram
  static void XPutPixel (XImagePtr , int, int, COLORREF);
  #endif /* HAVE_NTGUI */
  
- /* Non-zero means draw a cross on images having `:conversion
-    disabled'.  */
- int cross_disabled_images;
  /* Edge detection matrices for different edge-detection
     strategies.  */
  
@@@ -5121,7 -5101,7 +5101,7 @@@ pbm_load (struct frame *f, struct imag
          return 0;
        }
  
-       contents = slurp_file (SDATA (file), &size);
+       contents = slurp_file (SSDATA (file), &size);
        if (contents == NULL)
        {
          image_error ("Error reading `%s'", file, Qnil);
@@@ -5530,6 -5510,8 +5510,8 @@@ static voi
  my_png_error (png_struct *png_ptr, const char *msg)
  {
    xassert (png_ptr != NULL);
+   /* Avoid compiler warning about deprecated direct access to
+      png_ptr's fields in libpng versions 1.4.x.  */
    image_error ("PNG error: %s", build_string (msg), Qnil);
    longjmp (png_ptr->jmpbuf, 1);
  }
@@@ -5621,7 -5603,7 +5603,7 @@@ png_load (struct frame *f, struct imag
        }
  
        /* Open the image file.  */
-       fp = fopen (SDATA (file), "rb");
+       fp = fopen (SSDATA (file), "rb");
        if (!fp)
        {
          image_error ("Cannot open image file `%s'", file, Qnil);
        /* The user specified `:background', use that.  */
        {
          XColor color;
-         if (x_defined_color (f, SDATA (specified_bg), &color, 0))
+         if (x_defined_color (f, SSDATA (specified_bg), &color, 0))
            {
              png_color_16 user_bg;
  
@@@ -6339,7 -6321,7 +6321,7 @@@ jpeg_load (struct frame *f, struct imag
          return 0;
        }
  
-       fp = fopen (SDATA (file), "rb");
+       fp = fopen (SSDATA (file), "rb");
        if (fp == NULL)
        {
          image_error ("Cannot open `%s'", file, Qnil);
@@@ -6774,7 -6756,7 +6756,7 @@@ tiff_load (struct frame *f, struct imag
  
        /* Try to open the image file.  Casting return value avoids a
         GCC warning on W32.  */
-       tiff = (TIFF *)fn_TIFFOpen (SDATA (file), "r");
+       tiff = (TIFF *)fn_TIFFOpen (SSDATA (file), "r");
        if (tiff == NULL)
        {
          image_error ("Cannot open `%s'", file, Qnil);
@@@ -7376,13 -7358,10 +7358,10 @@@ gif_load (struct frame *f, struct imag
                                 imagemagick
  ***********************************************************************/
  #if defined (HAVE_IMAGEMAGICK)
- Lisp_Object Vimagemagick_render_type;
  
  /* The symbol `imagemagick' identifying images of this type.  */
  
  Lisp_Object Qimagemagick;
- Lisp_Object Vimagemagick_render_type;
  /* Indices of image specification fields in imagemagick_format, below.  */
  
  enum imagemagick_keyword_index
@@@ -7514,6 -7493,9 +7493,9 @@@ imagemagick_load_image (/* Pointer to e
       image.  Interface :index is same as for GIF.  First we "ping" the
       image to see how many sub-images it contains. Pinging is faster
       than loading the image to find out things about it.  */
+   /* `MagickWandGenesis' initializes the imagemagick environment.  */
+   MagickWandGenesis ();
    image = image_spec_value (img->spec, QCindex, NULL);
    ino = INTEGERP (image) ? XFASTINT (image) : 0;
    ping_wand = NewMagickWand ();
                      img->data.lisp_val));
  
    DestroyMagickWand (ping_wand);
    /* Now, after pinging, we know how many images are inside the
       file. If its not a bundle, just one.  */
  
        exception = AcquireExceptionInfo ();
  
        im_image = ReadImage (image_info, exception);
-       CatchException (exception);
+       DestroyExceptionInfo (exception);
  
-       image_wand = NewMagickWandFromImage (im_image);
+       if (im_image != NULL)
+       {
+         image_wand = NewMagickWandFromImage (im_image);
+           DestroyImage(im_image);
+         status = MagickTrue;
+       }
+       else
+       status = MagickFalse;
      }
    else
      {
        image_wand = NewMagickWand ();
        status = MagickReadImageBlob (image_wand, contents, size);
      }
-   image_error ("im read failed", Qnil, Qnil);
    if (status == MagickFalse) goto imagemagick_error;
  
    /* If width and/or height is set in the display spec assume we want
       width, height, and then transfer ownerwship to Emacs.  */
    height = MagickGetImageHeight (image_wand);
    width = MagickGetImageWidth (image_wand);
-   if (status == MagickFalse)
-     {
-       image_error ("Imagemagick image get size failed", Qnil, Qnil);
-       goto imagemagick_error;
-     }
  
    if (! check_image_size (f, width, height))
      {
        if (!x_create_x_image_and_pixmap (f, width, height, 0,
                                          &ximg, &img->pixmap))
          {
+ #ifdef COLOR_TABLE_SUPPORT
+         free_color_table ();
+ #endif
            image_error("Imagemagick X bitmap allocation failure", Qnil, Qnil);
            goto imagemagick_error;
          }
        iterator = NewPixelIterator (image_wand);
        if (iterator == (PixelIterator *) NULL)
          {
+ #ifdef COLOR_TABLE_SUPPORT
+         free_color_table ();
+ #endif
+         x_destroy_x_image (ximg);
            image_error ("Imagemagick pixel iterator creation failed",
                         Qnil, Qnil);
            goto imagemagick_error;
        if (!x_create_x_image_and_pixmap (f, width, height, imagedepth,
                                          &ximg, &img->pixmap))
        {
+ #ifdef COLOR_TABLE_SUPPORT
+         free_color_table ();
+ #endif
          image_error("Imagemagick X bitmap allocation failure", Qnil, Qnil);
          goto imagemagick_error;
        }
  
    /* Final cleanup. image_wand should be the only resource left. */
    DestroyMagickWand (image_wand);
+   /* `MagickWandTerminus' terminates the imagemagick environment.  */
+   MagickWandTerminus ();
  
    return 1;
  
   imagemagick_error:
+   DestroyMagickWand (image_wand);
+   MagickWandTerminus ();
    /* TODO more cleanup.  */
    image_error ("Error parsing IMAGEMAGICK image `%s'", img->spec, Qnil);
    return 0;
@@@ -8662,8 -8661,6 +8661,6 @@@ of `dynamic-library-alist', which see)
  #if defined (HAVE_IMAGEMAGICK)
    if (EQ (type, Qimagemagick))
      {
-       /* MagickWandGenesis() initializes the imagemagick library.  */
-       MagickWandGenesis ();
        return CHECK_LIB_AVAILABLE (&imagemagick_type, init_imagemagick_functions,
                                  libraries);
      }
@@@ -8689,13 -8686,13 +8686,13 @@@ syms_of_image (void
  
    /* Must be defined now becase we're going to update it below, while
       defining the supported image types.  */
-   DEFVAR_LISP ("image-types", &Vimage_types,
+   DEFVAR_LISP ("image-types", Vimage_types,
      doc: /* List of potentially supported image types.
  Each element of the list is a symbol for an image type, like 'jpeg or 'png.
  To check whether it is really supported, use `image-type-available-p'.  */);
    Vimage_types = Qnil;
  
-   DEFVAR_LISP ("max-image-size", &Vmax_image_size,
+   DEFVAR_LISP ("max-image-size", Vmax_image_size,
      doc: /* Maximum size of images.
  Emacs will not load an image into memory if its pixel width or
  pixel height exceeds this limit.
@@@ -8776,6 -8773,18 +8773,18 @@@ non-numeric, there is no explicit limi
    staticpro (&QCpt_height);
  #endif /* HAVE_GHOSTSCRIPT */
  
+ #ifdef HAVE_NTGUI
+   Qlibpng_version = intern_c_string ("libpng-version");
+   staticpro (&Qlibpng_version);
+   Fset (Qlibpng_version,
+ #if HAVE_PNG
+       make_number (PNG_LIBPNG_VER)
+ #else
+       make_number (-1)
+ #endif
+       );
+ #endif
  #if defined (HAVE_XPM) || defined (HAVE_NS)
    Qxpm = intern_c_string ("xpm");
    staticpro (&Qxpm);
    defsubr (&Slookup_image);
  #endif
  
-   DEFVAR_BOOL ("cross-disabled-images", &cross_disabled_images,
+   DEFVAR_BOOL ("cross-disabled-images", cross_disabled_images,
      doc: /* Non-nil means always draw a cross over disabled images.
  Disabled images are those having a `:conversion disabled' property.
  A cross is always drawn on black & white displays.  */);
    cross_disabled_images = 0;
  
-   DEFVAR_LISP ("x-bitmap-file-path", &Vx_bitmap_file_path,
+   DEFVAR_LISP ("x-bitmap-file-path", Vx_bitmap_file_path,
      doc: /* List of directories to search for window system bitmap files.  */);
    Vx_bitmap_file_path = decode_env_path ((char *) 0, PATH_BITMAPS);
  
-   DEFVAR_LISP ("image-cache-eviction-delay", &Vimage_cache_eviction_delay,
+   DEFVAR_LISP ("image-cache-eviction-delay", Vimage_cache_eviction_delay,
      doc: /* Maximum time after which images are removed from the cache.
  When an image has not been displayed this many seconds, Emacs
  automatically removes it from the image cache.  If the cache contains
@@@ -8862,7 -8871,7 +8871,7 @@@ The value can also be nil, meaning the 
  The function `clear-image-cache' disregards this variable.  */);
    Vimage_cache_eviction_delay = make_number (300);
  #ifdef HAVE_IMAGEMAGICK
-   DEFVAR_LISP ("imagemagick-render-type", &Vimagemagick_render_type,
+   DEFVAR_LISP ("imagemagick-render-type", Vimagemagick_render_type,
                 doc: /* Choose between ImageMagick render methods.  */);
  #endif
  
@@@ -8872,6 -8881,3 +8881,3 @@@ voi
  init_image (void)
  {
  }
- /* arch-tag: 123c2a5e-14a8-4c53-ab95-af47d7db49b9
-    (do not change this comment) */
diff --combined src/keyboard.c
index df69c526f71712f19e7ceecf419f88c50194278b,d53321306db95d24933d4abd5c4afac20bb96fa9..badc785b1c12ae214a78f07753278c2f1d69f326
@@@ -1,7 -1,6 +1,6 @@@
  /* Keyboard and mouse input; editor command loop.
-    Copyright (C) 1985, 1986, 1987, 1988, 1989, 1993, 1994, 1995,
-                  1996, 1997, 1999, 2000, 2001, 2002, 2003, 2004,
-                  2005, 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
+ Copyright (C) 1985-1989, 1993-1997, 1999-2011  Free Software Foundation, Inc.
  
  This file is part of GNU Emacs.
  
@@@ -58,10 -57,7 +57,7 @@@ along with GNU Emacs.  If not, see <htt
  #include "syssignal.h"
  
  #include <sys/types.h>
- #ifdef HAVE_UNISTD_H
  #include <unistd.h>
- #endif
  #include <fcntl.h>
  
  /* This is to get the definitions of the XK_ symbols.  */
@@@ -128,9 -124,6 +124,6 @@@ int this_command_key_count_reset
  Lisp_Object raw_keybuf;
  int raw_keybuf_count;
  
- /* Non-nil if the present key sequence was obtained by shift translation.  */
- Lisp_Object Vthis_command_keys_shift_translated;
  #define GROW_RAW_KEYBUF                                                       \
   if (raw_keybuf_count == XVECTOR (raw_keybuf)->size)                  \
     raw_keybuf = larger_vector (raw_keybuf, raw_keybuf_count * 2, Qnil)  \
@@@ -144,19 -137,6 +137,6 @@@ int this_single_command_key_start
  static int before_command_key_count;
  static int before_command_echo_length;
  
- /* If non-nil, the function that implements the display of help.
-    It's called with one argument, the help string to display.  */
- Lisp_Object Vshow_help_function;
- /* Nonzero means do menu prompting.  */
- static int menu_prompting;
- /* Character to see next line of menu prompt.  */
- static Lisp_Object menu_prompt_more_char;
  /* For longjmp to where kbd input is being done.  */
  
  static jmp_buf getcjmp;
@@@ -185,43 -165,9 +165,9 @@@ struct kboard *echo_kboard
  
  Lisp_Object echo_message_buffer;
  
- /* Nonzero means disregard local maps for the menu bar.  */
- static int inhibit_local_menu_bar_menus;
  /* Nonzero means C-g should cause immediate error-signal.  */
  int immediate_quit;
  
- /* The user's hook function for outputting an error message.  */
- Lisp_Object Vcommand_error_function;
- /* The user's ERASE setting.  */
- Lisp_Object Vtty_erase_char;
- /* Character to recognize as the help char.  */
- Lisp_Object Vhelp_char;
- /* List of other event types to recognize as meaning "help".  */
- Lisp_Object Vhelp_event_list;
- /* Form to execute when help char is typed.  */
- Lisp_Object Vhelp_form;
- /* Command to run when the help character follows a prefix key.  */
- Lisp_Object Vprefix_help_command;
- /* List of items that should move to the end of the menu bar.  */
- Lisp_Object Vmenu_bar_final_items;
- /* Non-nil means show the equivalent key-binding for
-    any M-x command that has one.
-    The value can be a length of time to show the message for.
-    If the value is non-nil and not a number, we wait 2 seconds.  */
- Lisp_Object Vsuggest_key_bindings;
- /* How long to display an echo-area message when the minibuffer is active.
-    If the value is not a number, such messages don't time out.  */
- Lisp_Object Vminibuffer_message_timeout;
  /* Character that causes a quit.  Normally C-g.
  
     If we are running on an ordinary terminal, this must be an ordinary
     ASCII character.  */
  int quit_char;
  
- /* If non-nil, this is a map that overrides all other local maps.  */
- Lisp_Object Voverriding_local_map;
- /* If non-nil, Voverriding_local_map applies to the menu bar.  */
- Lisp_Object Voverriding_local_map_menu_flag;
- /* Keymap that defines special misc events that should
-    be processed immediately at a low level.  */
- Lisp_Object Vspecial_event_map;
  /* Current depth in recursive edits.  */
  int command_loop_level;
  
- /* Total number of times command_loop has read a key sequence.  */
- EMACS_INT num_input_keys;
- /* Last input event read as a command.  */
- Lisp_Object last_command_event;
- /* Last input character read as a command, not counting menus
-    reached by the mouse.  */
- Lisp_Object last_nonmenu_event;
- /* Last input event read for any purpose.  */
- Lisp_Object last_input_event;
- /* If not Qnil, a list of objects to be read as subsequent command input.  */
- Lisp_Object Vunread_command_events;
- /* If not Qnil, a list of objects to be read as subsequent command input
-    including input method processing.  */
- Lisp_Object Vunread_input_method_events;
- /* If not Qnil, a list of objects to be read as subsequent command input
-    but NOT including input method processing.  */
- Lisp_Object Vunread_post_input_method_events;
- /* If not -1, an event to be read as subsequent command input.  */
- EMACS_INT unread_command_char;
  /* If not Qnil, this is a switch-frame event which we decided to put
     off until the end of a key sequence.  This should be read as the
     next command input, after any unread_command_events.
     events until a non-ASCII event is acceptable as input.  */
  Lisp_Object unread_switch_frame;
  
- /* A mask of extra modifier bits to put into every keyboard char.  */
- EMACS_INT extra_keyboard_modifiers;
- /* Char to use as prefix when a meta character is typed in.
-    This is bound on entry to minibuffer in case ESC is changed there.  */
- Lisp_Object meta_prefix_char;
  /* Last size recorded for a current buffer which is not a minibuffer.  */
  static EMACS_INT last_non_minibuf_size;
  
- /* Number of idle seconds before an auto-save and garbage collection.  */
- static Lisp_Object Vauto_save_timeout;
  /* Total number of times read_char has returned.  */
  int num_input_events;
  
- /* Total number of times read_char has returned, outside of macros.  */
- EMACS_INT num_nonmacro_input_events;
- /* Auto-save automatically when this many characters have been typed
-    since the last time.  */
- static EMACS_INT auto_save_interval;
  /* Value of num_nonmacro_input_events as of last auto save.  */
  
  int last_auto_save;
  
- /* The command being executed by the command loop.
-    Commands may set this, and the value set will be copied into
-    current_kboard->Vlast_command instead of the actual command.  */
- Lisp_Object Vthis_command;
  /* This is like Vthis_command, except that commands never set it.  */
  Lisp_Object real_this_command;
  
- /* If the lookup of the command returns a binding, the original
-    command is stored in this-original-command.  It is nil otherwise.  */
- Lisp_Object Vthis_original_command;
  /* The value of point when the last command was started.  */
  EMACS_INT last_point_position;
  
@@@ -346,22 -227,10 +227,10 @@@ Lisp_Object last_point_position_window
     generated by the next character.  */
  Lisp_Object internal_last_event_frame;
  
- /* A user-visible version of the above, intended to allow users to
-    figure out where the last event came from, if the event doesn't
-    carry that information itself (i.e. if it was a character).  */
- Lisp_Object Vlast_event_frame;
  /* The timestamp of the last input event we received from the X server.
     X Windows wants this for selection ownership.  */
  unsigned long last_event_timestamp;
  
- /* If non-nil, active regions automatically become the window selection.  */
- Lisp_Object Vselect_active_regions;
- /* The text in the active region prior to modifying the buffer.
-    Used by the `select-active-regions' feature.  */
- Lisp_Object Vsaved_region_selection;
  Lisp_Object Qx_set_selection, QPRIMARY, Qhandle_switch_frame;
  
  Lisp_Object Qself_insert_command;
@@@ -374,48 -243,19 +243,19 @@@ Lisp_Object Qtimer_event_handler
     key sequence that it reads.  */
  Lisp_Object read_key_sequence_cmd;
  
- /* Echo unfinished commands after this many seconds of pause.  */
- Lisp_Object Vecho_keystrokes;
- /* Form to evaluate (if non-nil) when Emacs is started.  */
- Lisp_Object Vtop_level;
- /* If non-nil, this implements the current input method.  */
- Lisp_Object Vinput_method_function;
  Lisp_Object Qinput_method_function;
  
- /* When we call Vinput_method_function,
-    this holds the echo area message that was just erased.  */
- Lisp_Object Vinput_method_previous_message;
- /* Non-nil means deactivate the mark at end of this command.  */
- Lisp_Object Vdeactivate_mark;
  Lisp_Object Qdeactivate_mark;
  
- /* Menu bar specified in Lucid Emacs fashion.  */
- Lisp_Object Vlucid_menu_bar_dirty_flag;
  Lisp_Object Qrecompute_lucid_menubar, Qactivate_menubar_hook;
  
  Lisp_Object Qecho_area_clear_hook;
  
  /* Hooks to run before and after each command.  */
- Lisp_Object Qpre_command_hook, Vpre_command_hook;
- Lisp_Object Qpost_command_hook, Vpost_command_hook;
- Lisp_Object Qcommand_hook_internal, Vcommand_hook_internal;
- /* Parent keymap of terminal-local function-key-map instances.  */
- Lisp_Object Vfunction_key_map;
- /* Keymap of key translations that can override keymaps.  */
- Lisp_Object Vkey_translation_map;
- /* List of deferred actions to be performed at a later time.
-    The precise format isn't relevant here; we just check whether it is nil.  */
- Lisp_Object Vdeferred_action_list;
+ Lisp_Object Qpre_command_hook;
+ Lisp_Object Qpost_command_hook;
+ Lisp_Object Qcommand_hook_internal;
  
- /* Function to call to handle deferred actions, when there are any.  */
- Lisp_Object Vdeferred_action_function;
  Lisp_Object Qdeferred_action_function;
  
  Lisp_Object Qinput_method_exit_on_first_char;
@@@ -451,11 -291,6 +291,6 @@@ static struct input_event * volatile kb
     dequeuing functions?  Such a flag could be screwed up by interrupts
     at inopportune times.  */
  
- /* If this flag is non-nil, we check mouse_moved to see when the
-    mouse moves, and motion events will appear in the input stream.
-    Otherwise, mouse motion is ignored.  */
- Lisp_Object do_mouse_tracking;
  /* Symbols to head events.  */
  Lisp_Object Qmouse_movement;
  Lisp_Object Qscroll_bar_movement;
@@@ -523,12 -358,6 +358,6 @@@ static int echo_length (void)
  
  Lisp_Object Qpolling_period;
  
- /* List of absolute timers.  Appears in order of next scheduled event.  */
- Lisp_Object Vtimer_list;
- /* List of idle time timers.  Appears in order of next scheduled event.  */
- Lisp_Object Vtimer_idle_list;
  /* Incremented whenever a timer is run.  */
  int timers_run;
  
@@@ -562,18 -391,6 +391,6 @@@ int interrupts_deferred
  #define POLL_FOR_INPUT
  #endif
  
- /* After a command is executed, if point is moved into a region that
-    has specific properties (e.g. composition, display), we adjust
-    point to the boundary of the region.  But, if a command sets this
-    variable to non-nil, we suppress this point adjustment.  This
-    variable is set to nil before reading a command.  */
- Lisp_Object Vdisable_point_adjustment;
- /* If non-nil, always disable point adjustment.  */
- Lisp_Object Vglobal_disable_point_adjustment;
  /* The time when Emacs started being idle.  */
  
  static EMACS_TIME timer_idleness_start_time;
  
  static EMACS_TIME timer_last_idleness_start_time;
  
- /* If non-nil, events produced by disabled menu items and tool-bar
-    buttons are not ignored.  Help functions bind this to allow help on
-    those items and buttons.  */
- Lisp_Object Venable_disabled_menus_and_buttons;
  \f
  /* Global variable declarations.  */
  
@@@ -634,10 -446,6 +446,6 @@@ static SIGTYPE handle_user_signal (int)
  static char *find_user_signal_name (int);
  static int store_user_signal_events (void);
  
- /* Nonzero means don't try to suspend even if the operating system seems
-    to support it.  */
- static int cannot_suspend;
  \f
  /* Add C to the echo string, if echoing is going on.
     C can be a character, which is printed prettily ("M-C-x" and all that
@@@ -1327,7 -1135,7 +1135,7 @@@ command_loop_2 (Lisp_Object ignore
  Lisp_Object
  top_level_2 (void)
  {
 -  return Feval (Vtop_level);
 +  return Feval (Vtop_level, Qnil);
  }
  
  Lisp_Object
@@@ -2043,11 -1851,6 +1851,6 @@@ safe_run_hooks (Lisp_Object hook
  }
  
  \f
- /* Number of seconds between polling for input.  This is a Lisp
-    variable that can be bound.  */
- EMACS_INT polling_period;
  /* Nonzero means polling for input is temporarily suppressed.  */
  
  int poll_suppress_count;
@@@ -3255,7 -3058,7 +3058,7 @@@ read_char (int commandflag, int nmaps, 
                 help_form_saved_window_configs);
        record_unwind_protect (read_char_help_form_unwind, Qnil);
  
 -      tem0 = Feval (Vhelp_form);
 +      tem0 = Feval (Vhelp_form, Qnil);
        if (STRINGP (tem0))
        internal_with_output_to_temp_buffer ("*Help*", print_help, tem0);
  
@@@ -3608,11 -3411,7 +3411,7 @@@ kbd_buffer_nr_stored (void
         : ((kbd_buffer + KBD_BUFFER_SIZE) - kbd_fetch_ptr
            + (kbd_store_ptr - kbd_buffer)));
  }
- #endif        /* subprocesses */
- Lisp_Object Vthrow_on_input;
- /* Store an event obtained at interrupt level into kbd_buffer, fifo */
+ #endif        /* Store an event obtained at interrupt level into kbd_buffer, fifo */
  
  void
  kbd_buffer_store_event (register struct input_event *event)
@@@ -4102,7 -3901,7 +3901,7 @@@ kbd_buffer_get_event (KBOARD **kbp
  #endif
        else if (event->kind == SAVE_SESSION_EVENT)
          {
-           obj = Fcons (Qsave_session, Qnil);
+           obj = Fcons (Qsave_session, Fcons (event->arg, Qnil));
          kbd_fetch_ptr = event + 1;
          }
        /* Just discard these, by returning nil.
@@@ -5229,16 -5028,6 +5028,6 @@@ static int last_mouse_x
  static int last_mouse_y;
  static unsigned long button_down_time;
  
- /* The maximum time between clicks to make a double-click, or Qnil to
-    disable double-click detection, or Qt for no time limit.  */
- Lisp_Object Vdouble_click_time;
- /* Maximum number of pixels the mouse may be moved between clicks
-    to make a double-click.  */
- EMACS_INT double_click_fuzz;
  /* The number of clicks in this multiple-click. */
  
  int double_click_count;
@@@ -5364,8 -5153,12 +5153,12 @@@ make_lispy_position (struct frame *f, L
          int width2, height2;
          /* The pixel X coordinate passed to buffer_posn_from_coords
             is the X coordinate relative to the text area for
-            text-area clicks, zero otherwise.  */
-         int x2 = (part == ON_TEXT) ? xret : 0;
+            text-area and right-margin clicks, zero otherwise.  */
+         int x2
+           = (part == ON_TEXT) ? xret
+           : (part == ON_RIGHT_FRINGE || part == ON_RIGHT_MARGIN)
+           ? (XINT (x) - window_box_left (w, TEXT_AREA))
+           : 0;
          int y2 = wy;
  
          string2 = buffer_posn_from_coords (w, &x2, &y2, &p,
@@@ -6232,7 -6025,7 +6025,7 @@@ parse_modifiers_uncached (Lisp_Object s
  
  #define MULTI_LETTER_MOD(BIT, NAME, LEN)                      \
          if (i + LEN + 1 <= SBYTES (name)                      \
-             && ! strncmp (SDATA (name) + i, NAME, LEN))       \
+             && ! strncmp (SSDATA (name) + i, NAME, LEN))      \
            {                                                   \
              this_mod_end = i + LEN;                           \
              this_mod = BIT;                                   \
    if (! (modifiers & (down_modifier | drag_modifier
                      | double_modifier | triple_modifier))
        && i + 7 == SBYTES (name)
-       && strncmp (SDATA (name) + i, "mouse-", 6) == 0
+       && strncmp (SSDATA (name) + i, "mouse-", 6) == 0
        && ('0' <= SREF (name, i + 6) && SREF (name, i + 6) <= '9'))
      modifiers |= click_modifier;
  
    if (! (modifiers & (double_modifier | triple_modifier))
        && i + 6 < SBYTES (name)
-       && strncmp (SDATA (name) + i, "wheel-", 6) == 0)
+       && strncmp (SSDATA (name) + i, "wheel-", 6) == 0)
      modifiers |= click_modifier;
  
    if (modifier_end)
@@@ -6394,7 -6187,7 +6187,7 @@@ parse_modifiers (Lisp_Object symbol
        Lisp_Object unmodified;
        Lisp_Object mask;
  
-       unmodified = Fintern (make_string (SDATA (SYMBOL_NAME (symbol)) + end,
+       unmodified = Fintern (make_string (SSDATA (SYMBOL_NAME (symbol)) + end,
                                         SBYTES (SYMBOL_NAME (symbol)) - end),
                            Qnil);
  
@@@ -6462,7 -6255,7 +6255,7 @@@ apply_modifiers (int modifiers, Lisp_Ob
      {
        /* We have to create the symbol ourselves.  */
        new_symbol = apply_modifiers_uncached (modifiers,
-                                            SDATA (SYMBOL_NAME (base)),
+                                            SSDATA (SYMBOL_NAME (base)),
                                             SCHARS (SYMBOL_NAME (base)),
                                             SBYTES (SYMBOL_NAME (base)));
  
@@@ -7464,6 -7257,54 +7257,54 @@@ static Lisp_Object menu_bar_one_keymap_
  static Lisp_Object menu_bar_items_vector;
  static int menu_bar_items_index;
  
+ static const char* separator_names[] = {
+   "space",
+   "no-line",
+   "single-line",
+   "double-line",
+   "single-dashed-line",
+   "double-dashed-line",
+   "shadow-etched-in",
+   "shadow-etched-out",
+   "shadow-etched-in-dash",
+   "shadow-etched-out-dash",
+   "shadow-double-etched-in",
+   "shadow-double-etched-out",
+   "shadow-double-etched-in-dash",
+   "shadow-double-etched-out-dash",
+   0,
+ };
+ /* Return non-zero if LABEL specifies a separator.  */
+ int
+ menu_separator_name_p (const char *label)
+ {
+   if (!label)
+     return 0;
+   else if (strlen (label) > 3
+          && strncmp (label, "--", 2) == 0
+          && label[2] != '-')
+     {
+       int i;
+       label += 2;
+       for (i = 0; separator_names[i]; ++i)
+       if (strcmp (label, separator_names[i]) == 0)
+           return 1;
+     }
+   else
+     {
+       /* It's a separator if it contains only dashes.  */
+       while (*label == '-')
+       ++label;
+       return (*label == 0);
+     }
+   return 0;
+ }
  /* Return a vector of menu items for a menu bar, appropriate
     to the current buffer.  Each item has three elements in the vector:
     KEY STRING MAPLIST.
@@@ -7696,12 -7537,6 +7537,12 @@@ menu_item_eval_property_1 (Lisp_Object 
    return Qnil;
  }
  
 +static Lisp_Object
 +eval_dyn (Lisp_Object form)
 +{
 +  return Feval (form, Qnil);
 +}
 +
  /* Evaluate an expression and return the result (or nil if something
     went wrong).  Used to evaluate dynamic parts of menu items.  */
  Lisp_Object
@@@ -7710,7 -7545,7 +7551,7 @@@ menu_item_eval_property (Lisp_Object se
    int count = SPECPDL_INDEX ();
    Lisp_Object val;
    specbind (Qinhibit_redisplay, Qt);
 -  val = internal_condition_case_1 (Feval, sexpr, Qerror,
 +  val = internal_condition_case_1 (eval_dyn, sexpr, Qerror,
                                   menu_item_eval_property_1);
    return unbind_to (count, val);
  }
@@@ -7920,7 -7755,7 +7761,7 @@@ parse_menu_item (Lisp_Object item, int 
      /* The previous code preferred :key-sequence to :keys, so we
         preserve this behavior.  */
      if (STRINGP (keyeq) && !CONSP (keyhint))
-       keyeq = Fsubstitute_command_keys (keyeq);
+       keyeq = concat2 (build_string ("  "), Fsubstitute_command_keys (keyeq));
      else
        {
        Lisp_Object prefix = keyeq;
@@@ -8207,10 -8042,14 +8048,14 @@@ parse_tool_bar_item (Lisp_Object key, L
       Rule out items that aren't lists, don't start with
       `menu-item' or whose rest following `tool-bar-item' is not a
       list.  */
-   if (!CONSP (item)
-       || !EQ (XCAR (item), Qmenu_item)
-       || (item = XCDR (item),
-         !CONSP (item)))
+   if (!CONSP (item))
+     return 0;
+   /* As an exception, allow old-style menu separators.  */
+   if (STRINGP (XCAR (item)))
+     item = Fcons (XCAR (item), Qnil);
+   else if (!EQ (XCAR (item), Qmenu_item)
+          || (item = XCDR (item), !CONSP (item)))
      return 0;
  
    /* Create tool_bar_item_properties vector if necessary.  Reset it to
      }
    PROP (TOOL_BAR_ITEM_CAPTION) = caption;
  
-   /* Give up if rest following the caption is not a list.  */
+   /* If the rest following the caption is not a list, the menu item is
+      either a separator, or invalid.  */
    item = XCDR (item);
    if (!CONSP (item))
-     return 0;
+     {
+       if (menu_separator_name_p (SSDATA (caption)))
+       {
+         PROP (TOOL_BAR_ITEM_TYPE) = Qt;
+ #if !defined (USE_GTK) && !defined (HAVE_NS)
+         /* If we use build_desired_tool_bar_string to render the
+            tool bar, the separator is rendered as an image.  */
+         PROP (TOOL_BAR_ITEM_IMAGES)
+           = menu_item_eval_property (Vtool_bar_separator_image_expression);
+         PROP (TOOL_BAR_ITEM_ENABLED_P) = Qnil;
+         PROP (TOOL_BAR_ITEM_SELECTED_P) = Qnil;
+         PROP (TOOL_BAR_ITEM_CAPTION) = Qnil;
+ #endif
+         return 1;
+       }
+       return 0;
+     }
  
    /* Store the binding.  */
    PROP (TOOL_BAR_ITEM_BINDING) = XCAR (item);
          if (NILP (menu_item_eval_property (value)))
            return 0;
        }
-       else if (EQ (key, QChelp)) 
+       else if (EQ (key, QChelp))
          /* `:help HELP-STRING'.  */
          PROP (TOOL_BAR_ITEM_HELP) = value;
-       else if (EQ (key, QCvert_only)) 
+       else if (EQ (key, QCvert_only))
          /* `:vert-only t/nil'.  */
          PROP (TOOL_BAR_ITEM_VERT_ONLY) = value;
        else if (EQ (key, QClabel))
        /* Try to make one from caption and key.  */
        Lisp_Object key = PROP (TOOL_BAR_ITEM_KEY);
        Lisp_Object capt = PROP (TOOL_BAR_ITEM_CAPTION);
-       const char *label = SYMBOLP (key) ? (char *) SDATA (SYMBOL_NAME (key)) : "";
-       const char *caption = STRINGP (capt) ? (char *) SDATA (capt) : "";
+       const char *label = SYMBOLP (key) ? SSDATA (SYMBOL_NAME (key)) : "";
+       const char *caption = STRINGP (capt) ? SSDATA (capt) : "";
        EMACS_INT max_lbl = 2 * tool_bar_max_label_size;
        char *buf = (char *) xmalloc (max_lbl + 1);
        Lisp_Object new_lbl;
@@@ -8583,7 -8439,7 +8445,7 @@@ read_char_minibuf_menu_prompt (int comm
    menu = read_char_minibuf_menu_text;
  
    /* Prompt string always starts with map's prompt, and a space.  */
-   strcpy (menu, SDATA (name));
+   strcpy (menu, SSDATA (name));
    nlength = SBYTES (name);
    menu[nlength++] = ':';
    menu[nlength++] = ' ';
@@@ -10317,7 -10173,7 +10179,7 @@@ a special event, so ignore the prefix a
        return Fexecute_kbd_macro (final, prefixarg, Qnil);
      }
  
 -  if (CONSP (final) || SUBRP (final) || COMPILEDP (final))
 +  if (CONSP (final) || SUBRP (final) || FUNVECP (final))
      /* Don't call Fcall_interactively directly because we want to make
         sure the backtrace has an entry for `call-interactively'.
         For the same reason, pass `cmd' rather than `final'.  */
@@@ -10706,7 -10562,7 +10568,7 @@@ If FILE is nil, close any open dribble 
    if (!NILP (file))
      {
        file = Fexpand_file_name (file, Qnil);
-       dribble = fopen (SDATA (file), "w");
+       dribble = fopen (SSDATA (file), "w");
        if (dribble == 0)
        report_file_error ("Opening dribble", Fcons (file, Qnil));
      }
@@@ -11822,19 -11678,19 +11684,19 @@@ syms_of_keyboard (void
    defsubr (&Sposn_at_point);
    defsubr (&Sposn_at_x_y);
  
-   DEFVAR_LISP ("last-command-event", &last_command_event,
+   DEFVAR_LISP ("last-command-event", last_command_event,
                     doc: /* Last input event that was part of a command.  */);
  
-   DEFVAR_LISP ("last-nonmenu-event", &last_nonmenu_event,
+   DEFVAR_LISP ("last-nonmenu-event", last_nonmenu_event,
               doc: /* Last input event in a command, except for mouse menu events.
  Mouse menus give back keys that don't look like mouse events;
  this variable holds the actual mouse event that led to the menu,
  so that you can determine whether the command was run by mouse or not.  */);
  
-   DEFVAR_LISP ("last-input-event", &last_input_event,
+   DEFVAR_LISP ("last-input-event", last_input_event,
               doc: /* Last input event.  */);
  
-   DEFVAR_LISP ("unread-command-events", &Vunread_command_events,
+   DEFVAR_LISP ("unread-command-events", Vunread_command_events,
               doc: /* List of events to be read as the command input.
  These events are processed first, before actual keyboard input.
  Events read from this list are not normally added to `this-command-keys',
@@@ -11842,16 -11698,16 +11704,16 @@@ as they will already have been added on
  An element of the form (t . EVENT) forces EVENT to be added to that list.  */);
    Vunread_command_events = Qnil;
  
-   DEFVAR_INT ("unread-command-char", &unread_command_char,
+   DEFVAR_INT ("unread-command-char", unread_command_char,
              doc: /* If not -1, an object to be read as next command input event.  */);
  
-   DEFVAR_LISP ("unread-post-input-method-events", &Vunread_post_input_method_events,
+   DEFVAR_LISP ("unread-post-input-method-events", Vunread_post_input_method_events,
               doc: /* List of events to be processed as input by input methods.
  These events are processed before `unread-command-events'
  and actual keyboard input, but are not given to `input-method-function'.  */);
    Vunread_post_input_method_events = Qnil;
  
-   DEFVAR_LISP ("unread-input-method-events", &Vunread_input_method_events,
+   DEFVAR_LISP ("unread-input-method-events", Vunread_input_method_events,
               doc: /* List of events to be processed as input by input methods.
  These events are processed after `unread-command-events', but
  before actual keyboard input.
@@@ -11859,7 -11715,7 +11721,7 @@@ If there's an active input method, the 
  `input-method-function'.  */);
    Vunread_input_method_events = Qnil;
  
-   DEFVAR_LISP ("meta-prefix-char", &meta_prefix_char,
+   DEFVAR_LISP ("meta-prefix-char", meta_prefix_char,
               doc: /* Meta-prefix character code.
  Meta-foo as command input turns into this character followed by foo.  */);
    XSETINT (meta_prefix_char, 033);
@@@ -11889,59 -11745,59 +11751,59 @@@ See Info node `(elisp)Multiple Terminal
  The last command executed that was not bound to an input event.
  This is the command `repeat' will try to repeat.  */);
  
-   DEFVAR_LISP ("this-command", &Vthis_command,
+   DEFVAR_LISP ("this-command", Vthis_command,
               doc: /* The command now being executed.
  The command can set this variable; whatever is put here
  will be in `last-command' during the following command.  */);
    Vthis_command = Qnil;
  
    DEFVAR_LISP ("this-command-keys-shift-translated",
-              &Vthis_command_keys_shift_translated,
+              Vthis_command_keys_shift_translated,
               doc: /* Non-nil if the key sequence activating this command was shift-translated.
  Shift-translation occurs when there is no binding for the key sequence
  as entered, but a binding was found by changing an upper-case letter
  to lower-case, or a shifted function key to an unshifted one.  */);
    Vthis_command_keys_shift_translated = Qnil;
  
-   DEFVAR_LISP ("this-original-command", &Vthis_original_command,
+   DEFVAR_LISP ("this-original-command", Vthis_original_command,
               doc: /* The command bound to the current key sequence before remapping.
  It equals `this-command' if the original command was not remapped through
  any of the active keymaps.  Otherwise, the value of `this-command' is the
  result of looking up the original command in the active keymaps.  */);
    Vthis_original_command = Qnil;
  
-   DEFVAR_INT ("auto-save-interval", &auto_save_interval,
+   DEFVAR_INT ("auto-save-interval", auto_save_interval,
              doc: /* *Number of input events between auto-saves.
  Zero means disable autosaving due to number of characters typed.  */);
    auto_save_interval = 300;
  
-   DEFVAR_LISP ("auto-save-timeout", &Vauto_save_timeout,
+   DEFVAR_LISP ("auto-save-timeout", Vauto_save_timeout,
               doc: /* *Number of seconds idle time before auto-save.
  Zero or nil means disable auto-saving due to idleness.
  After auto-saving due to this many seconds of idle time,
  Emacs also does a garbage collection if that seems to be warranted.  */);
    XSETFASTINT (Vauto_save_timeout, 30);
  
-   DEFVAR_LISP ("echo-keystrokes", &Vecho_keystrokes,
+   DEFVAR_LISP ("echo-keystrokes", Vecho_keystrokes,
               doc: /* *Nonzero means echo unfinished commands after this many seconds of pause.
  The value may be integer or floating point.  */);
    Vecho_keystrokes = make_number (1);
  
-   DEFVAR_INT ("polling-period", &polling_period,
+   DEFVAR_INT ("polling-period", polling_period,
              doc: /* *Interval between polling for input during Lisp execution.
  The reason for polling is to make C-g work to stop a running program.
  Polling is needed only when using X windows and SIGIO does not work.
  Polling is automatically disabled in all other cases.  */);
    polling_period = 2;
  
-   DEFVAR_LISP ("double-click-time", &Vdouble_click_time,
+   DEFVAR_LISP ("double-click-time", Vdouble_click_time,
               doc: /* *Maximum time between mouse clicks to make a double-click.
  Measured in milliseconds.  The value nil means disable double-click
  recognition; t means double-clicks have no time limit and are detected
  by position only.  */);
    Vdouble_click_time = make_number (500);
  
-   DEFVAR_INT ("double-click-fuzz", &double_click_fuzz,
+   DEFVAR_INT ("double-click-fuzz", double_click_fuzz,
              doc: /* *Maximum mouse movement between clicks to make a double-click.
  On window-system frames, value is the number of pixels the mouse may have
  moved horizontally or vertically between two clicks to make a double-click.
@@@ -11952,54 -11808,54 +11814,54 @@@ This variable is also the threshold fo
  to count as a drag.  */);
    double_click_fuzz = 3;
  
-   DEFVAR_BOOL ("inhibit-local-menu-bar-menus", &inhibit_local_menu_bar_menus,
+   DEFVAR_BOOL ("inhibit-local-menu-bar-menus", inhibit_local_menu_bar_menus,
               doc: /* *Non-nil means inhibit local map menu bar menus.  */);
    inhibit_local_menu_bar_menus = 0;
  
-   DEFVAR_INT ("num-input-keys", &num_input_keys,
+   DEFVAR_INT ("num-input-keys", num_input_keys,
              doc: /* Number of complete key sequences read as input so far.
  This includes key sequences read from keyboard macros.
  The number is effectively the number of interactive command invocations.  */);
    num_input_keys = 0;
  
-   DEFVAR_INT ("num-nonmacro-input-events", &num_nonmacro_input_events,
+   DEFVAR_INT ("num-nonmacro-input-events", num_nonmacro_input_events,
              doc: /* Number of input events read from the keyboard so far.
  This does not include events generated by keyboard macros.  */);
    num_nonmacro_input_events = 0;
  
-   DEFVAR_LISP ("last-event-frame", &Vlast_event_frame,
+   DEFVAR_LISP ("last-event-frame", Vlast_event_frame,
               doc: /* The frame in which the most recently read event occurred.
  If the last event came from a keyboard macro, this is set to `macro'.  */);
    Vlast_event_frame = Qnil;
  
    /* This variable is set up in sysdep.c.  */
-   DEFVAR_LISP ("tty-erase-char", &Vtty_erase_char,
+   DEFVAR_LISP ("tty-erase-char", Vtty_erase_char,
               doc: /* The ERASE character as set by the user with stty.  */);
  
-   DEFVAR_LISP ("help-char", &Vhelp_char,
+   DEFVAR_LISP ("help-char", Vhelp_char,
               doc: /* Character to recognize as meaning Help.
  When it is read, do `(eval help-form)', and display result if it's a string.
  If the value of `help-form' is nil, this char can be read normally.  */);
    XSETINT (Vhelp_char, Ctl ('H'));
  
-   DEFVAR_LISP ("help-event-list", &Vhelp_event_list,
+   DEFVAR_LISP ("help-event-list", Vhelp_event_list,
               doc: /* List of input events to recognize as meaning Help.
  These work just like the value of `help-char' (see that).  */);
    Vhelp_event_list = Qnil;
  
-   DEFVAR_LISP ("help-form", &Vhelp_form,
+   DEFVAR_LISP ("help-form", Vhelp_form,
               doc: /* Form to execute when character `help-char' is read.
  If the form returns a string, that string is displayed.
  If `help-form' is nil, the help char is not recognized.  */);
    Vhelp_form = Qnil;
  
-   DEFVAR_LISP ("prefix-help-command", &Vprefix_help_command,
+   DEFVAR_LISP ("prefix-help-command", Vprefix_help_command,
               doc: /* Command to run when `help-char' character follows a prefix key.
  This command is used only when there is no actual binding
  for that character after that prefix key.  */);
    Vprefix_help_command = Qnil;
  
-   DEFVAR_LISP ("top-level", &Vtop_level,
+   DEFVAR_LISP ("top-level", Vtop_level,
               doc: /* Form to evaluate when Emacs starts up.
  Useful to set before you dump a modified Emacs.  */);
    Vtop_level = Qnil;
@@@ -12020,12 -11876,12 +11882,12 @@@ output.  See also `translation-table-fo
  This variable has a separate binding for each terminal.
  See Info node `(elisp)Multiple Terminals'.  */);
  
-   DEFVAR_BOOL ("cannot-suspend", &cannot_suspend,
+   DEFVAR_BOOL ("cannot-suspend", cannot_suspend,
               doc: /* Non-nil means to always spawn a subshell instead of suspending.
  \(Even if the operating system has support for stopping a process.\)  */);
    cannot_suspend = 0;
  
-   DEFVAR_BOOL ("menu-prompting", &menu_prompting,
+   DEFVAR_BOOL ("menu-prompting", menu_prompting,
               doc: /* Non-nil means prompt with menus when appropriate.
  This is done when reading from a keymap that has a prompt string,
  for elements that have prompt strings.
@@@ -12035,12 -11891,12 +11897,12 @@@ time and the previous event was a mous
  Otherwise, menu prompting uses the echo area.  */);
    menu_prompting = 1;
  
-   DEFVAR_LISP ("menu-prompt-more-char", &menu_prompt_more_char,
+   DEFVAR_LISP ("menu-prompt-more-char", menu_prompt_more_char,
               doc: /* Character to see next line of menu prompt.
  Type this character while in a menu prompt to rotate around the lines of it.  */);
    XSETINT (menu_prompt_more_char, ' ');
  
-   DEFVAR_INT ("extra-keyboard-modifiers", &extra_keyboard_modifiers,
+   DEFVAR_INT ("extra-keyboard-modifiers", extra_keyboard_modifiers,
              doc: /* A mask of additional modifier keys to use with every keyboard character.
  Emacs applies the modifiers of the character stored here to each keyboard
  character it reads.  For example, after evaluating the expression
@@@ -12053,7 -11909,7 +11915,7 @@@ with no modifiers; thus, setting `extra
  cancels any modification.  */);
    extra_keyboard_modifiers = 0;
  
-   DEFVAR_LISP ("deactivate-mark", &Vdeactivate_mark,
+   DEFVAR_LISP ("deactivate-mark", Vdeactivate_mark,
               doc: /* If an editing command sets this to t, deactivate the mark afterward.
  The command loop sets this to nil before each command,
  and tests the value when the command returns.
@@@ -12062,18 -11918,18 +11924,18 @@@ Buffer modification stores t in this va
    Qdeactivate_mark = intern_c_string ("deactivate-mark");
    staticpro (&Qdeactivate_mark);
  
-   DEFVAR_LISP ("command-hook-internal", &Vcommand_hook_internal,
+   DEFVAR_LISP ("command-hook-internal", Vcommand_hook_internal,
               doc: /* Temporary storage of `pre-command-hook' or `post-command-hook'.  */);
    Vcommand_hook_internal = Qnil;
  
-   DEFVAR_LISP ("pre-command-hook", &Vpre_command_hook,
+   DEFVAR_LISP ("pre-command-hook", Vpre_command_hook,
               doc: /* Normal hook run before each command is executed.
  If an unhandled error happens in running this hook,
  the hook value is set to nil, since otherwise the error
  might happen repeatedly and make Emacs nonfunctional.  */);
    Vpre_command_hook = Qnil;
  
-   DEFVAR_LISP ("post-command-hook", &Vpost_command_hook,
+   DEFVAR_LISP ("post-command-hook", Vpost_command_hook,
               doc: /* Normal hook run after each command is executed.
  If an unhandled error happens in running this hook,
  the hook value is set to nil, since otherwise the error
@@@ -12088,15 -11944,21 +11950,21 @@@ might happen repeatedly and make Emacs 
    staticpro (&Qecho_area_clear_hook);
    Fset (Qecho_area_clear_hook, Qnil);
  
-   DEFVAR_LISP ("lucid-menu-bar-dirty-flag", &Vlucid_menu_bar_dirty_flag,
+   DEFVAR_LISP ("lucid-menu-bar-dirty-flag", Vlucid_menu_bar_dirty_flag,
               doc: /* Non-nil means menu bar, specified Lucid style, needs to be recomputed.  */);
    Vlucid_menu_bar_dirty_flag = Qnil;
  
-   DEFVAR_LISP ("menu-bar-final-items", &Vmenu_bar_final_items,
+   DEFVAR_LISP ("menu-bar-final-items", Vmenu_bar_final_items,
               doc: /* List of menu bar items to move to the end of the menu bar.
  The elements of the list are event types that may have menu bar bindings.  */);
    Vmenu_bar_final_items = Qnil;
  
+   DEFVAR_LISP ("tool-bar-separator-image-expression", Vtool_bar_separator_image_expression,
+     doc: /* Expression evaluating to the image spec for a tool-bar separator.
+ This is used internally by graphical displays that do not render
+ tool-bar separators natively.  Otherwise it is unused (e.g. on GTK).  */);
+   Vtool_bar_separator_image_expression = Qnil;
    DEFVAR_KBOARD ("overriding-terminal-local-map",
                 Voverriding_terminal_local_map,
                 doc: /* Per-terminal keymap that overrides all other local keymaps.
@@@ -12111,23 -11973,23 +11979,23 @@@ set up a different keymap for reading t
  terminal device.
  See Info node `(elisp)Multiple Terminals'.  */);
  
-   DEFVAR_LISP ("overriding-local-map", &Voverriding_local_map,
+   DEFVAR_LISP ("overriding-local-map", Voverriding_local_map,
               doc: /* Keymap that overrides all other local keymaps.
  If this variable is non-nil, it is used as a keymap--replacing the
  buffer's local map, the minor mode keymaps, and char property keymaps.  */);
    Voverriding_local_map = Qnil;
  
-   DEFVAR_LISP ("overriding-local-map-menu-flag", &Voverriding_local_map_menu_flag,
+   DEFVAR_LISP ("overriding-local-map-menu-flag", Voverriding_local_map_menu_flag,
               doc: /* Non-nil means `overriding-local-map' applies to the menu bar.
  Otherwise, the menu bar continues to reflect the buffer's local map
  and the minor mode maps regardless of `overriding-local-map'.  */);
    Voverriding_local_map_menu_flag = Qnil;
  
-   DEFVAR_LISP ("special-event-map", &Vspecial_event_map,
+   DEFVAR_LISP ("special-event-map", Vspecial_event_map,
               doc: /* Keymap defining bindings for special events to execute at low level.  */);
    Vspecial_event_map = Fcons (intern_c_string ("keymap"), Qnil);
  
-   DEFVAR_LISP ("track-mouse", &do_mouse_tracking,
+   DEFVAR_LISP ("track-mouse", do_mouse_tracking,
               doc: /* *Non-nil means generate motion events for mouse motion.  */);
  
    DEFVAR_KBOARD ("system-key-alist", Vsystem_key_alist,
@@@ -12187,7 -12049,7 +12055,7 @@@ themselves looked up in `input-decode-m
  
  This variable is keyboard-local.  */);
  
-   DEFVAR_LISP ("function-key-map", &Vfunction_key_map,
+   DEFVAR_LISP ("function-key-map", Vfunction_key_map,
                 doc: /* The parent keymap of all `local-function-key-map' instances.
  Function key definitions that apply to all terminal devices should go
  here.  If a mapping is defined in both the current
  definition will take precendence.  */);
    Vfunction_key_map = Fmake_sparse_keymap (Qnil);
  
-   DEFVAR_LISP ("key-translation-map", &Vkey_translation_map,
+   DEFVAR_LISP ("key-translation-map", Vkey_translation_map,
                 doc: /* Keymap of key translations that can override keymaps.
  This keymap works like `function-key-map', but comes after that,
  and its non-prefix bindings override ordinary bindings.
  Another difference is that it is global rather than keyboard-local.  */);
    Vkey_translation_map = Fmake_sparse_keymap (Qnil);
  
-   DEFVAR_LISP ("deferred-action-list", &Vdeferred_action_list,
+   DEFVAR_LISP ("deferred-action-list", Vdeferred_action_list,
               doc: /* List of deferred actions to be performed at a later time.
  The precise format isn't relevant here; we just check whether it is nil.  */);
    Vdeferred_action_list = Qnil;
  
-   DEFVAR_LISP ("deferred-action-function", &Vdeferred_action_function,
+   DEFVAR_LISP ("deferred-action-function", Vdeferred_action_function,
               doc: /* Function to call to handle deferred actions, after each command.
  This function is called with no arguments after each command
  whenever `deferred-action-list' is non-nil.  */);
    Vdeferred_action_function = Qnil;
  
-   DEFVAR_LISP ("suggest-key-bindings", &Vsuggest_key_bindings,
+   DEFVAR_LISP ("suggest-key-bindings", Vsuggest_key_bindings,
               doc: /* *Non-nil means show the equivalent key-binding when M-x command has one.
  The value can be a length of time to show the message for.
  If the value is non-nil and not a number, we wait 2 seconds.  */);
    Vsuggest_key_bindings = Qt;
  
-   DEFVAR_LISP ("timer-list", &Vtimer_list,
+   DEFVAR_LISP ("timer-list", Vtimer_list,
               doc: /* List of active absolute time timers in order of increasing time.  */);
    Vtimer_list = Qnil;
  
-   DEFVAR_LISP ("timer-idle-list", &Vtimer_idle_list,
+   DEFVAR_LISP ("timer-idle-list", Vtimer_idle_list,
               doc: /* List of active idle-time timers in order of increasing time.  */);
    Vtimer_idle_list = Qnil;
  
-   DEFVAR_LISP ("input-method-function", &Vinput_method_function,
+   DEFVAR_LISP ("input-method-function", Vinput_method_function,
               doc: /* If non-nil, the function that implements the current input method.
  It's called with one argument, a printing character that was just read.
  \(That means a character with code 040...0176.)
@@@ -12249,18 -12111,18 +12117,18 @@@ for guidance on what to do.  */)
    Vinput_method_function = Qnil;
  
    DEFVAR_LISP ("input-method-previous-message",
-              &Vinput_method_previous_message,
+              Vinput_method_previous_message,
               doc: /* When `input-method-function' is called, hold the previous echo area message.
  This variable exists because `read-event' clears the echo area
  before running the input method.  It is nil if there was no message.  */);
    Vinput_method_previous_message = Qnil;
  
-   DEFVAR_LISP ("show-help-function", &Vshow_help_function,
+   DEFVAR_LISP ("show-help-function", Vshow_help_function,
               doc: /* If non-nil, the function that implements the display of help.
  It's called with one argument, the help string to display.  */);
    Vshow_help_function = Qnil;
  
-   DEFVAR_LISP ("disable-point-adjustment", &Vdisable_point_adjustment,
+   DEFVAR_LISP ("disable-point-adjustment", Vdisable_point_adjustment,
               doc: /* If non-nil, suppress point adjustment after executing a command.
  
  After a command is executed, if point is moved into a region that has
@@@ -12273,7 -12135,7 +12141,7 @@@ just after executing the command.  */)
    Vdisable_point_adjustment = Qnil;
  
    DEFVAR_LISP ("global-disable-point-adjustment",
-              &Vglobal_disable_point_adjustment,
+              Vglobal_disable_point_adjustment,
               doc: /* *If non-nil, always suppress point adjustment.
  
  The default value is nil, in which case, point adjustment are
@@@ -12281,18 -12143,18 +12149,18 @@@ suppressed only after special commands 
  `disable-point-adjustment' (which see) to non-nil.  */);
    Vglobal_disable_point_adjustment = Qnil;
  
-   DEFVAR_LISP ("minibuffer-message-timeout", &Vminibuffer_message_timeout,
+   DEFVAR_LISP ("minibuffer-message-timeout", Vminibuffer_message_timeout,
               doc: /* *How long to display an echo-area message when the minibuffer is active.
  If the value is not a number, such messages don't time out.  */);
    Vminibuffer_message_timeout = make_number (2);
  
-   DEFVAR_LISP ("throw-on-input", &Vthrow_on_input,
+   DEFVAR_LISP ("throw-on-input", Vthrow_on_input,
               doc: /* If non-nil, any keyboard input throws to this symbol.
  The value of that variable is passed to `quit-flag' and later causes a
  peculiar kind of quitting.  */);
    Vthrow_on_input = Qnil;
  
-   DEFVAR_LISP ("command-error-function", &Vcommand_error_function,
+   DEFVAR_LISP ("command-error-function", Vcommand_error_function,
               doc: /* If non-nil, function to output error messages.
  The arguments are the error data, a list of the form
   (SIGNALED-CONDITIONS . SIGNAL-DATA)
@@@ -12302,7 -12164,7 +12170,7 @@@ and the Lisp function within which the 
    Vcommand_error_function = Qnil;
  
    DEFVAR_LISP ("enable-disabled-menus-and-buttons",
-              &Venable_disabled_menus_and_buttons,
+              Venable_disabled_menus_and_buttons,
               doc: /* If non-nil, don't ignore events produced by disabled menu items and tool-bar.
  
  Help functions bind this to allow help on disabled menu items
@@@ -12310,8 -12172,8 +12178,8 @@@ and tool-bar buttons.  */)
    Venable_disabled_menus_and_buttons = Qnil;
  
    DEFVAR_LISP ("select-active-regions",
-              &Vselect_active_regions,
-              doc: /* If non-nil, an active region automatically becomes the window selection.
+              Vselect_active_regions,
+              doc: /* If non-nil, an active region automatically sets the primary selection.
  If the value is `only', only temporarily active regions (usually made
  by mouse-dragging or shift-selection) set the window selection.
  
@@@ -12319,7 -12181,7 +12187,7 @@@ This takes effect only when Transient M
    Vselect_active_regions = Qt;
  
    DEFVAR_LISP ("saved-region-selection",
-              &Vsaved_region_selection,
+              Vsaved_region_selection,
               doc: /* Contents of active region prior to buffer modification.
  If `select-active-regions' is non-nil, Emacs sets this to the
  text in the region before modifying the buffer.  The next
@@@ -12439,4 -12301,3 +12307,3 @@@ mark_kboards (void
        }
    }
  }
diff --combined src/lisp.h
index db78996be55bc0197549ddf6f4aba2e22e460391,cfff42a84a46254644c356125707580f7918ddb8..67efda398a200e7903f1ba705a92d8ad21148eda
@@@ -1,6 -1,5 +1,5 @@@
  /* Fundamental definitions for GNU Emacs Lisp interpreter.
-    Copyright (C) 1985, 1986, 1987, 1993, 1994, 1995, 1997, 1998, 1999, 2000,
-                  2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
+    Copyright (C) 1985-1987, 1993-1995, 1997-2011
                   Free Software Foundation, Inc.
  
  This file is part of GNU Emacs.
@@@ -122,16 -121,18 +121,18 @@@ extern void die (const char *, const ch
     TYPEBITS-aligned. */
  #ifndef NO_DECL_ALIGN
  # ifndef DECL_ALIGN
- /* What compiler directive should we use for non-gcc compilers?  -stef  */
- #  if defined (__GNUC__)
+ #  if HAVE_ATTRIBUTE_ALIGNED
  #   define DECL_ALIGN(type, var) \
       type __attribute__ ((__aligned__ (1 << GCTYPEBITS))) var
+ #  else
+      /* What directives do other compilers use?  */
  #  endif
  # endif
  #endif
  
  /* Let's USE_LSB_TAG on systems where we know malloc returns mult-of-8.  */
- #if defined GNU_MALLOC || defined DOUG_LEA_MALLOC || defined __GLIBC__ || defined DARWIN_OS
+ #if (defined GNU_MALLOC || defined DOUG_LEA_MALLOC || defined __GLIBC__ \
+      || defined DARWIN_OS || defined __sun)
  /* We also need to be able to specify mult-of-8 alignment on static vars.  */
  # if defined DECL_ALIGN
  #  define USE_LSB_TAG
@@@ -327,13 -328,14 +328,14 @@@ typedef EMACS_INT Lisp_Object
  #define LISP_MAKE_RVALUE(o) (0+(o))
  #endif /* USE_LISP_UNION_TYPE */
  
- /* In the size word of a vector, this bit means the vector has been marked.  */
+ /* In the size word of a vector, this bit means the vector has been marked.
+    (Shift -1 left, not 1, to avoid provoking overflow diagnostics.)  */
  
- #define ARRAY_MARK_FLAG ((EMACS_UINT) 1 << (BITS_PER_EMACS_INT - 1))
+ #define ARRAY_MARK_FLAG ((EMACS_INT) -1 << (BITS_PER_EMACS_INT - 1))
  
  /* In the size word of a struct Lisp_Vector, this bit means it's really
     some other vector-like object.  */
- #define PSEUDOVECTOR_FLAG ((ARRAY_MARK_FLAG >> 1))
+ #define PSEUDOVECTOR_FLAG ((EMACS_INT) 1 << (BITS_PER_EMACS_INT - 2))
  
  /* In a pseudovector, the size field actually contains a word with one
     PSEUDOVECTOR_FLAG bit set, and exactly one of the following bits to
@@@ -347,7 -349,7 +349,7 @@@ enum pvec_typ
    PVEC_NORMAL_VECTOR = 0,
    PVEC_PROCESS = 0x200,
    PVEC_FRAME = 0x400,
 -  PVEC_COMPILED = 0x800,
 +  PVEC_FUNVEC = 0x800,
    PVEC_WINDOW = 0x1000,
    PVEC_WINDOW_CONFIGURATION = 0x2000,
    PVEC_SUBR = 0x4000,
    ((((EMACS_INT) (N)) & VALMASK) | ((EMACS_INT) Lisp_Int) << VALBITS)
  #endif
  
- #define XSET(var, type, ptr) \
-    ((var) = ((EMACS_INT)(type) << VALBITS) + ((EMACS_INT) (ptr) & VALMASK))
+ #define XSET(var, type, ptr)                            \
+    ((var) = ((EMACS_INT) ((EMACS_UINT) (type) << VALBITS) \
+            + ((EMACS_INT) (ptr) & VALMASK)))
  
+ #ifdef DATA_SEG_BITS
+ /* DATA_SEG_BITS forces extra bits to be or'd in with any pointers
+    which were stored in a Lisp_Object */
+ #define XPNTR(a) ((EMACS_UINT) (((a) & VALMASK) | DATA_SEG_BITS))
+ #else
  #define XPNTR(a) ((EMACS_UINT) ((a) & VALMASK))
+ #endif
  
  #endif /* not USE_LSB_TAG */
  
  # define XSET(var, vartype, ptr) \
     (((var).s.val = ((EMACS_INT) (ptr))), ((var).s.type = ((char) (vartype))))
  
+ #ifdef DATA_SEG_BITS
+ /* DATA_SEG_BITS forces extra bits to be or'd in with any pointers
+    which were stored in a Lisp_Object */
+ #define XPNTR(a) (XUINT (a) | DATA_SEG_BITS)
+ #else
+ #define XPNTR(a) ((EMACS_INT) XUINT (a))
+ #endif
  #endif        /* !USE_LSB_TAG */
  
  #if __GNUC__ >= 2 && defined (__OPTIMIZE__)
@@@ -499,23 -516,6 +516,6 @@@ extern Lisp_Object make_number (EMACS_I
  
  #define EQ(x, y) (XHASH (x) == XHASH (y))
  
- #ifndef XPNTR
- #ifdef DATA_SEG_BITS
- /* This case is used for the rt-pc.
-    In the diffs I was given, it checked for ptr = 0
-    and did not adjust it in that case.
-    But I don't think that zero should ever be found
-    in a Lisp object whose data type says it points to something.  */
- #define XPNTR(a) (XUINT (a) | DATA_SEG_BITS)
- #else
- /* Some versions of gcc seem to consider the bitfield width when
-    issuing the "cast to pointer from integer of different size"
-    warning, so the cast is here to widen the value back to its natural
-    size.  */
- #define XPNTR(a) ((EMACS_INT) XUINT (a))
- #endif
- #endif /* no XPNTR */
  /* Largest and smallest representable fixnum values.  These are the C
     values.  */
  
  #define XSETWINDOW(a, b) (XSETPSEUDOVECTOR (a, b, PVEC_WINDOW))
  #define XSETTERMINAL(a, b) (XSETPSEUDOVECTOR (a, b, PVEC_TERMINAL))
  #define XSETSUBR(a, b) (XSETPSEUDOVECTOR (a, b, PVEC_SUBR))
 -#define XSETCOMPILED(a, b) (XSETPSEUDOVECTOR (a, b, PVEC_COMPILED))
 +#define XSETFUNVEC(a, b) (XSETPSEUDOVECTOR (a, b, PVEC_FUNVEC))
  #define XSETBUFFER(a, b) (XSETPSEUDOVECTOR (a, b, PVEC_BUFFER))
  #define XSETCHAR_TABLE(a, b) (XSETPSEUDOVECTOR (a, b, PVEC_CHAR_TABLE))
  #define XSETBOOL_VECTOR(a, b) (XSETPSEUDOVECTOR (a, b, PVEC_BOOL_VECTOR))
     eassert ((IDX) >= 0 && (IDX) < ASIZE (ARRAY)),     \
     AREF ((ARRAY), (IDX)) = (VAL))
  
 +/* Return the size of the psuedo-vector object FUNVEC.  */
 +#define FUNVEC_SIZE(funvec)   (ASIZE (funvec) & PSEUDOVECTOR_SIZE_MASK)
 +
  /* Convenience macros for dealing with Lisp strings.  */
  
  #define SDATA(string)         (XSTRING (string)->data + 0)
  #define SCHARS(string)                (XSTRING (string)->size + 0)
  #define SBYTES(string)                (STRING_BYTES (XSTRING (string)) + 0)
  
+ /* Avoid "differ in sign" warnings.  */
+ #define SSDATA(x)  ((char *) SDATA (x))
  #define STRING_SET_CHARS(string, newsize) \
      (XSTRING (string)->size = (newsize))
  
@@@ -1012,10 -1012,6 +1015,10 @@@ struct Lisp_Symbo
    /* Interned state of the symbol.  This is an enumerator from
       enum symbol_interned.  */
    unsigned interned : 2;
 +  
 +  /* Non-zero means that this variable has been explicitly declared
 +     special (with `defvar' etc), and shouldn't be lexically bound.  */
 +  unsigned declared_special : 1;
  
    /* The symbol's name, as a Lisp string.
  
@@@ -1471,7 -1467,7 +1474,7 @@@ struct Lisp_Floa
  typedef unsigned char UCHAR;
  #endif
  
 -/* Meanings of slots in a Lisp_Compiled:  */
 +/* Meanings of slots in a byte-compiled function vector:  */
  
  #define COMPILED_ARGLIST 0
  #define COMPILED_BYTECODE 1
  #define COMPILED_STACK_DEPTH 3
  #define COMPILED_DOC_STRING 4
  #define COMPILED_INTERACTIVE 5
 +#define COMPILED_PUSH_ARGS 6
 +
 +/* Return non-zero if TAG, the first element from a funvec object, refers
 +   to a byte-code object.  Byte-code objects are distinguished from other
 +   `funvec' objects by having a (possibly empty) list as their first
 +   element -- other funvec types use a non-nil symbol there.  */
 +#define FUNVEC_COMPILED_TAG_P(tag)                                          \
 +  (NILP (tag) || CONSP (tag))
 +
 +/* Return non-zero if FUNVEC, which should be a `funvec' object, is a
 +   byte-compiled function. Byte-compiled function are funvecs with the
 +   arglist as the first element (other funvec types will have a symbol
 +   identifying the type as the first object).  */
 +#define FUNVEC_COMPILED_P(funvec)                                           \
 +  (FUNVEC_SIZE (funvec) > 0 && FUNVEC_COMPILED_TAG_P (AREF (funvec, 0)))
 +
 +/* Return non-zero if OBJ is byte-compile function.  */
 +#define COMPILEDP(obj)                                                              \
 +  (FUNVECP (obj) && FUNVEC_COMPILED_P (obj))
  
  /* Flag bits in a character.  These also get used in termhooks.h.
     Richard Stallman <rms@gnu.ai.mit.edu> thinks that MULE
@@@ -1654,7 -1631,7 +1657,7 @@@ typedef struct 
  #define WINDOWP(x) PSEUDOVECTORP (x, PVEC_WINDOW)
  #define TERMINALP(x) PSEUDOVECTORP (x, PVEC_TERMINAL)
  #define SUBRP(x) PSEUDOVECTORP (x, PVEC_SUBR)
 -#define COMPILEDP(x) PSEUDOVECTORP (x, PVEC_COMPILED)
 +#define FUNVECP(x) PSEUDOVECTORP (x, PVEC_FUNVEC)
  #define BUFFERP(x) PSEUDOVECTORP (x, PVEC_BUFFER)
  #define CHAR_TABLE_P(x) PSEUDOVECTORP (x, PVEC_CHAR_TABLE)
  #define SUB_CHAR_TABLE_P(x) PSEUDOVECTORP (x, PVEC_SUB_CHAR_TABLE)
  #define FUNCTIONP(OBJ)                                        \
       ((CONSP (OBJ) && EQ (XCAR (OBJ), Qlambda))               \
        || (SYMBOLP (OBJ) && !NILP (Ffboundp (OBJ)))    \
 -      || COMPILEDP (OBJ)                              \
 +      || FUNVECP (OBJ)                                        \
        || SUBRP (OBJ))
  
  /* defsubr (Sname);
@@@ -1865,27 -1842,47 +1868,47 @@@ extern void defvar_int (struct Lisp_Int
  extern void defvar_kboard (struct Lisp_Kboard_Objfwd *, const char *, int);
  
  /* Macros we use to define forwarded Lisp variables.
-    These are used in the syms_of_FILENAME functions.  */
+    These are used in the syms_of_FILENAME functions.
+    An ordinary (not in buffer_defaults, per-buffer, or per-keyboard)
+    lisp variable is actually a field in `struct emacs_globals'.  The
+    field's name begins with "f_", which is a convention enforced by
+    these macros.  Each such global has a corresponding #define in
+    globals.h; the plain name should be used in the code.
+    E.g., the global "cons_cells_consed" is declared as "int
+    f_cons_cells_consed" in globals.h, but there is a define:
+       #define cons_cells_consed globals.f_cons_cells_consed
+    All C code uses the `cons_cells_consed' name.  This is all done
+    this way to support indirection for multi-threaded Emacs.  */
  
  #define DEFVAR_LISP(lname, vname, doc)                \
    do {                                                \
      static struct Lisp_Objfwd o_fwd;          \
-     defvar_lisp (&o_fwd, lname, vname);               \
+     defvar_lisp (&o_fwd, lname, &globals.f_ ## vname);                \
    } while (0)
  #define DEFVAR_LISP_NOPRO(lname, vname, doc)  \
    do {                                                \
      static struct Lisp_Objfwd o_fwd;          \
-     defvar_lisp_nopro (&o_fwd, lname, vname); \
+     defvar_lisp_nopro (&o_fwd, lname, &globals.f_ ## vname);  \
    } while (0)
  #define DEFVAR_BOOL(lname, vname, doc)                \
    do {                                                \
      static struct Lisp_Boolfwd b_fwd;         \
-     defvar_bool (&b_fwd, lname, vname);               \
+     defvar_bool (&b_fwd, lname, &globals.f_ ## vname);                \
    } while (0)
  #define DEFVAR_INT(lname, vname, doc)         \
    do {                                                \
      static struct Lisp_Intfwd i_fwd;          \
-     defvar_int (&i_fwd, lname, vname);                \
+     defvar_int (&i_fwd, lname, &globals.f_ ## vname);         \
+   } while (0)
+ #define DEFVAR_BUFFER_DEFAULTS(lname, vname, doc)             \
+   do {                                                                \
+     static struct Lisp_Objfwd o_fwd;                          \
+     defvar_lisp_nopro (&o_fwd, lname, &buffer_defaults.vname);        \
    } while (0)
  
  #define DEFVAR_KBOARD(lname, vname, doc)                      \
@@@ -1932,8 -1929,6 +1955,6 @@@ extern struct specbinding *specpdl
  extern struct specbinding *specpdl_ptr;
  extern EMACS_INT specpdl_size;
  
- extern EMACS_INT max_specpdl_size;
  #define SPECPDL_INDEX()       ((int) (specpdl_ptr - specpdl))
  
  /* Everything needed to describe an active condition case.  */
@@@ -2097,10 -2092,6 +2118,6 @@@ extern Lisp_Object Vascii_canon_table, 
  
  extern int consing_since_gc;
  
- /* Thresholds for doing another gc.  */
- extern EMACS_INT gc_cons_threshold;
  extern EMACS_INT gc_relative_threshold;
  
  extern EMACS_INT memory_full_cons_threshold;
@@@ -2343,29 -2334,7 +2360,7 @@@ EXFUN (Fbyteorder, 0)
  /* Defined in frame.c */
  extern Lisp_Object Qframep;
  
- EXFUN (Feq, 2);
- EXFUN (Fnull, 1);
- EXFUN (Flistp, 1);
- EXFUN (Fconsp, 1);
- EXFUN (Fatom, 1);
- EXFUN (Fnlistp, 1);
- EXFUN (Fintegerp, 1);
- EXFUN (Fnatnump, 1);
- EXFUN (Fsymbolp, 1);
- EXFUN (Fvectorp, 1);
- EXFUN (Fstringp, 1);
- EXFUN (Fmultibyte_string_p, 1);
- EXFUN (Farrayp, 1);
- EXFUN (Fsequencep, 1);
- EXFUN (Fbufferp, 1);
- EXFUN (Fmarkerp, 1);
- EXFUN (Fsubrp, 1);
- EXFUN (Fchar_or_string_p, 1);
- EXFUN (Finteger_or_marker_p, 1);
- EXFUN (Ffloatp, 1);
- EXFUN (Finteger_or_floatp, 1);
- EXFUN (Finteger_or_float_or_marker_p, 1);
+ /* Defined in data.c */
  EXFUN (Fcar, 1);
  EXFUN (Fcar_safe, 1);
  EXFUN (Fcdr, 1);
@@@ -2374,15 -2343,11 +2369,11 @@@ EXFUN (Fsetcar, 2)
  EXFUN (Fsetcdr, 2);
  EXFUN (Fboundp, 1);
  EXFUN (Ffboundp, 1);
- EXFUN (Fmakunbound, 1);
- EXFUN (Ffmakunbound, 1);
  EXFUN (Fsymbol_function, 1);
- EXFUN (Fsymbol_plist, 1);
  EXFUN (Fsymbol_name, 1);
  extern Lisp_Object indirect_function (Lisp_Object);
  EXFUN (Findirect_function, 2);
  EXFUN (Ffset, 2);
- EXFUN (Fsetplist, 2);
  EXFUN (Fsymbol_value, 1);
  extern Lisp_Object find_symbol_value (Lisp_Object);
  EXFUN (Fset, 2);
@@@ -2391,19 -2356,16 +2382,16 @@@ EXFUN (Fset_default, 2)
  EXFUN (Fdefault_boundp, 1);
  EXFUN (Fmake_local_variable, 1);
  EXFUN (Flocal_variable_p, 2);
- EXFUN (Flocal_variable_if_set_p, 2);
  
  EXFUN (Faref, 2);
  EXFUN (Faset, 3);
  
  EXFUN (Fstring_to_number, 2);
  EXFUN (Fnumber_to_string, 1);
- EXFUN (Feqlsign, 2);
  EXFUN (Fgtr, 2);
  EXFUN (Flss, 2);
  EXFUN (Fgeq, 2);
  EXFUN (Fleq, 2);
- EXFUN (Fneq, 2);
  EXFUN (Fzerop, 1);
  EXFUN (Fplus, MANY);
  EXFUN (Fminus, MANY);
@@@ -2412,12 -2374,6 +2400,6 @@@ EXFUN (Fquo, MANY)
  EXFUN (Frem, 2);
  EXFUN (Fmax, MANY);
  EXFUN (Fmin, MANY);
- EXFUN (Flogand, MANY);
- EXFUN (Flogior, MANY);
- EXFUN (Flogxor, MANY);
- EXFUN (Flognot, 1);
- EXFUN (Flsh, 2);
- EXFUN (Fash, 2);
  
  EXFUN (Fadd1, 1);
  EXFUN (Fsub1, 1);
@@@ -2444,6 -2400,7 +2426,7 @@@ extern void syms_of_cmds (void)
  extern void keys_of_cmds (void);
  
  /* Defined in coding.c */
+ extern Lisp_Object Qcharset;
  EXFUN (Fcoding_system_p, 1);
  EXFUN (Fcoding_system_base, 1);
  EXFUN (Fcoding_system_eol_type, 1);
@@@ -2451,8 -2408,6 +2434,6 @@@ EXFUN (Fcheck_coding_system, 1)
  EXFUN (Fread_coding_system, 2);
  EXFUN (Fread_non_nil_coding_system, 1);
  EXFUN (Ffind_operation_coding_system, MANY);
- EXFUN (Fupdate_coding_systems_internal, 0);
- EXFUN (Fencode_coding_string, 4);
  EXFUN (Fdecode_coding_string, 4);
  extern Lisp_Object detect_coding_system (const unsigned char *, EMACS_INT,
                                           EMACS_INT, int, int, Lisp_Object);
@@@ -2461,19 -2416,17 +2442,17 @@@ extern void init_coding_once (void)
  extern void syms_of_coding (void);
  
  /* Defined in character.c */
- extern void init_character_once (void);
- extern void syms_of_character (void);
  EXFUN (Funibyte_char_to_multibyte, 1);
- /* Defined in charset.c */
- EXFUN (Fchar_bytes, 1);
  EXFUN (Fchar_width, 1);
  EXFUN (Fstring, MANY);
  extern EMACS_INT chars_in_text (const unsigned char *, EMACS_INT);
  extern EMACS_INT multibyte_chars_in_text (const unsigned char *, EMACS_INT);
  extern int multibyte_char_to_unibyte (int, Lisp_Object);
  extern int multibyte_char_to_unibyte_safe (int);
- extern Lisp_Object Qcharset;
+ extern void init_character_once (void);
+ extern void syms_of_character (void);
+ /* Defined in charset.c */
  extern void init_charset (void);
  extern void init_charset_once (void);
  extern void syms_of_charset (void);
@@@ -2488,55 -2441,33 +2467,33 @@@ EXFUN (Fforward_word, 1)
  EXFUN (Fskip_chars_forward, 2);
  EXFUN (Fskip_chars_backward, 2);
  EXFUN (Fsyntax_table_p, 1);
- EXFUN (Fsyntax_table, 0);
- EXFUN (Fset_syntax_table, 1);
  extern void init_syntax_once (void);
  extern void syms_of_syntax (void);
  
  /* Defined in fns.c */
  extern Lisp_Object QCrehash_size, QCrehash_threshold;
- extern int use_dialog_box;
- extern int use_file_dialog;
  extern int next_almost_prime (int);
  extern Lisp_Object larger_vector (Lisp_Object, int, Lisp_Object);
  extern void sweep_weak_hash_tables (void);
  extern Lisp_Object Qcursor_in_echo_area;
  extern Lisp_Object Qstring_lessp;
- extern Lisp_Object Vfeatures;
  extern Lisp_Object QCsize, QCtest, QCweakness, Qequal, Qeq, Qeql;
  unsigned sxhash (Lisp_Object, int);
  Lisp_Object make_hash_table (Lisp_Object, Lisp_Object, Lisp_Object,
                               Lisp_Object, Lisp_Object, Lisp_Object,
                               Lisp_Object);
- Lisp_Object copy_hash_table (struct Lisp_Hash_Table *);
  int hash_lookup (struct Lisp_Hash_Table *, Lisp_Object, unsigned *);
  int hash_put (struct Lisp_Hash_Table *, Lisp_Object, Lisp_Object,
                unsigned);
- void hash_clear (struct Lisp_Hash_Table *);
  void init_weak_hash_tables (void);
  extern void init_fns (void);
- EXFUN (Fsxhash, 1);
  EXFUN (Fmake_hash_table, MANY);
- EXFUN (Fmakehash, 1);
- EXFUN (Fcopy_hash_table, 1);
- EXFUN (Fhash_table_count, 1);
- EXFUN (Fhash_table_rehash_size, 1);
- EXFUN (Fhash_table_rehash_threshold, 1);
- EXFUN (Fhash_table_size, 1);
- EXFUN (Fhash_table_test, 1);
- EXFUN (Fhash_table_weak, 1);
- EXFUN (Fhash_table_p, 1);
- EXFUN (Fclrhash, 1);
  EXFUN (Fgethash, 3);
  EXFUN (Fputhash, 3);
  EXFUN (Fremhash, 2);
- EXFUN (Fmaphash, 2);
- EXFUN (Fdefine_hash_table_test, 3);
  
  EXFUN (Fidentity, 1);
- EXFUN (Frandom, 1);
  EXFUN (Flength, 1);
- EXFUN (Fsafe_length, 1);
  EXFUN (Fappend, MANY);
  EXFUN (Fconcat, MANY);
  EXFUN (Fvconcat, MANY);
@@@ -2546,7 -2477,6 +2503,6 @@@ EXFUN (Fstring_make_unibyte, 1)
  EXFUN (Fstring_as_multibyte, 1);
  EXFUN (Fstring_as_unibyte, 1);
  EXFUN (Fstring_to_multibyte, 1);
- EXFUN (Fstring_to_unibyte, 1);
  EXFUN (Fsubstring, 3);
  extern Lisp_Object substring_both (Lisp_Object, EMACS_INT, EMACS_INT,
                                   EMACS_INT, EMACS_INT);
@@@ -2566,12 -2496,10 +2522,10 @@@ EXFUN (Fnreverse, 1)
  EXFUN (Fget, 2);
  EXFUN (Fput, 3);
  EXFUN (Fequal, 2);
- EXFUN (Ffillarray, 2);
  EXFUN (Fnconc, MANY);
  EXFUN (Fmapcar, 2);
  EXFUN (Fmapconcat, 3);
  extern Lisp_Object do_yes_or_no_p (Lisp_Object);
- EXFUN (Frequire, 3);
  EXFUN (Fprovide, 2);
  extern Lisp_Object concat2 (Lisp_Object, Lisp_Object);
  extern Lisp_Object concat3 (Lisp_Object, Lisp_Object, Lisp_Object);
@@@ -2581,7 -2509,6 +2535,6 @@@ extern Lisp_Object assoc_no_quit (Lisp_
  extern void clear_string_char_byte_cache (void);
  extern EMACS_INT string_char_to_byte (Lisp_Object, EMACS_INT);
  extern EMACS_INT string_byte_to_char (Lisp_Object, EMACS_INT);
- extern Lisp_Object string_make_multibyte (Lisp_Object);
  extern Lisp_Object string_to_multibyte (Lisp_Object);
  extern Lisp_Object string_make_unibyte (Lisp_Object);
  EXFUN (Fcopy_alist, 1);
@@@ -2612,6 -2539,7 +2565,7 @@@ extern Lisp_Object QCascent, QCmargin, 
  extern Lisp_Object QCconversion, QCcolor_symbols, QCheuristic_mask;
  extern Lisp_Object QCindex, QCmatrix, QCcolor_adjustment, QCmask;
  EXFUN (Finit_image_library, 2);
+ extern int x_bitmap_mask (struct frame *, int);
  extern void syms_of_image (void);
  extern void init_image (void);
  
@@@ -2669,11 -2597,8 +2623,8 @@@ extern void syms_of_insdel (void)
  
  /* Defined in dispnew.c */
  extern Lisp_Object selected_frame;
- extern Lisp_Object Vwindow_system_version;
- extern EMACS_INT baud_rate;
  EXFUN (Fding, 1);
  EXFUN (Fredraw_frame, 1);
- EXFUN (Fredraw_display, 0);
  EXFUN (Fsleep_for, 2);
  EXFUN (Fredisplay, 1);
  extern Lisp_Object sit_for (Lisp_Object, int, int);
@@@ -2686,24 -2611,21 +2637,21 @@@ extern Lisp_Object Qinhibit_redisplay, 
  extern Lisp_Object Qinhibit_eval_during_redisplay;
  extern Lisp_Object Qmessage_truncate_lines;
  extern Lisp_Object Qmenu_bar_update_hook;
- extern Lisp_Object Qwindow_scroll_functions, Vwindow_scroll_functions;
+ extern Lisp_Object Qwindow_scroll_functions;
  extern Lisp_Object Qoverriding_local_map, Qoverriding_terminal_local_map;
  extern Lisp_Object Qimage, Qtext, Qboth, Qboth_horiz, Qtext_image_horiz;
  extern Lisp_Object Qspace, Qcenter, QCalign_to;
  extern Lisp_Object Qbar, Qhbar, Qbox, Qhollow;
  extern Lisp_Object Qleft_margin, Qright_margin;
  extern Lisp_Object Qglyphless_char;
- extern Lisp_Object Vmessage_log_max;
  extern Lisp_Object QCdata, QCfile;
  extern Lisp_Object QCmap;
  extern Lisp_Object Qrisky_local_variable;
- extern Lisp_Object Vinhibit_redisplay;
  extern struct frame *last_glyphless_glyph_frame;
  extern unsigned last_glyphless_glyph_face_id;
  extern int last_glyphless_glyph_merged_face_id;
  extern int message_enable_multibyte;
  extern int noninteractive_need_newline;
- extern EMACS_INT scroll_margin;
  extern Lisp_Object echo_area_buffer[2];
  extern void add_to_log (const char *, Lisp_Object, Lisp_Object);
  extern void check_message_stack (void);
@@@ -2760,21 -2682,19 +2708,20 @@@ extern int survives_gc_p (Lisp_Object)
  extern void mark_object (Lisp_Object);
  extern void refill_memory_reserve (void);
  extern const char *pending_malloc_warning;
- extern Lisp_Object Vpurify_flag;
- extern Lisp_Object Vmemory_full;
  extern Lisp_Object *stack_base;
  EXFUN (Fcons, 2);
- EXFUN (list1, 1);
- EXFUN (list2, 2);
- EXFUN (list3, 3);
- EXFUN (list4, 4);
- EXFUN (list5, 5);
+ extern Lisp_Object list1 (Lisp_Object);
+ extern Lisp_Object list2 (Lisp_Object, Lisp_Object);
+ extern Lisp_Object list3 (Lisp_Object, Lisp_Object, Lisp_Object);
+ extern Lisp_Object list4 (Lisp_Object, Lisp_Object, Lisp_Object, Lisp_Object);
+ extern Lisp_Object list5 (Lisp_Object, Lisp_Object, Lisp_Object, Lisp_Object,
+                         Lisp_Object);
  EXFUN (Flist, MANY);
  EXFUN (Fmake_list, 2);
  extern Lisp_Object allocate_misc (void);
  EXFUN (Fmake_vector, 2);
  EXFUN (Fvector, MANY);
 +EXFUN (Ffunvec, MANY);
  EXFUN (Fmake_symbol, 1);
  EXFUN (Fmake_marker, 0);
  EXFUN (Fmake_string, 2);
@@@ -2794,7 -2714,6 +2741,7 @@@ extern Lisp_Object make_pure_c_string (
  extern Lisp_Object pure_cons (Lisp_Object, Lisp_Object);
  extern Lisp_Object make_pure_vector (EMACS_INT);
  EXFUN (Fgarbage_collect, 0);
 +extern Lisp_Object make_funvec (Lisp_Object, int, int, Lisp_Object *);
  EXFUN (Fmake_byte_code, MANY);
  EXFUN (Fmake_bool_vector, 2);
  extern Lisp_Object Qchar_table_extra_slots;
@@@ -2826,17 -2745,12 +2773,12 @@@ extern int valid_lisp_object_p (Lisp_Ob
  
  /* Defined in chartab.c */
  EXFUN (Fmake_char_table, 2);
- EXFUN (Fchar_table_parent, 1);
  EXFUN (Fset_char_table_parent, 2);
  EXFUN (Fchar_table_extra_slot, 2);
  EXFUN (Fset_char_table_extra_slot, 3);
- EXFUN (Fchar_table_range, 2);
  EXFUN (Fset_char_table_range, 3);
- EXFUN (Fset_char_table_default, 3);
  EXFUN (Foptimize_char_table, 2);
- EXFUN (Fmap_char_table, 2);
  extern Lisp_Object copy_char_table (Lisp_Object);
- extern Lisp_Object sub_char_table_ref (Lisp_Object, int);
  extern Lisp_Object char_table_ref (Lisp_Object, int);
  extern Lisp_Object char_table_ref_and_range (Lisp_Object, int,
                                               int *, int *);
@@@ -2855,7 -2769,6 +2797,6 @@@ extern void syms_of_chartab (void)
  
  /* Defined in print.c */
  extern Lisp_Object Vprin1_to_string_buffer;
- extern Lisp_Object Vprint_level, Vprint_length;
  extern void debug_print (Lisp_Object) EXTERNALLY_VISIBLE;
  extern void safe_debug_print (Lisp_Object) EXTERNALLY_VISIBLE;
  EXFUN (Fprin1, 2);
@@@ -2864,39 -2777,34 +2805,34 @@@ EXFUN (Fprinc, 2)
  EXFUN (Fterpri, 1);
  EXFUN (Fprint, 2);
  EXFUN (Ferror_message_string, 1);
- extern Lisp_Object Vstandard_output, Qstandard_output;
+ extern Lisp_Object Qstandard_output;
  extern Lisp_Object Qexternal_debugging_output;
  extern void temp_output_buffer_setup (const char *);
- extern int print_level, print_escape_newlines;
+ extern int print_level;
  extern Lisp_Object Qprint_escape_newlines;
  extern void write_string (const char *, int);
- extern void write_string_1 (const char *, int, Lisp_Object);
  extern void print_error_message (Lisp_Object, Lisp_Object, const char *,
                                 Lisp_Object);
  extern Lisp_Object internal_with_output_to_temp_buffer
          (const char *, Lisp_Object (*) (Lisp_Object), Lisp_Object);
+ #define FLOAT_TO_STRING_BUFSIZE 350
  extern void float_to_string (unsigned char *, double);
  extern void syms_of_print (void);
  
  /* Defined in doprnt.c */
  extern EMACS_INT doprnt (char *, int, const char *, const char *, va_list);
  
- /* Defined in lread.c */
- extern Lisp_Object Vafter_load_alist;
  extern Lisp_Object Qvariable_documentation, Qstandard_input;
  extern Lisp_Object Qbackquote, Qcomma, Qcomma_at, Qcomma_dot, Qfunction;
- extern Lisp_Object Vobarray, initial_obarray, Vstandard_input;
- extern int load_in_progress;
+ extern Lisp_Object initial_obarray;
  EXFUN (Fread, 1);
  EXFUN (Fread_from_string, 3);
  EXFUN (Fintern, 2);
  EXFUN (Fintern_soft, 2);
  EXFUN (Fload, 5);
  EXFUN (Fget_load_suffixes, 0);
- EXFUN (Fget_file_char, 0);
  EXFUN (Fread_char, 3);
  EXFUN (Fread_event, 3);
- extern Lisp_Object read_filtered_event (int, int, int, int, Lisp_Object);
  EXFUN (Feval_region, 4);
  extern Lisp_Object check_obarray (Lisp_Object);
  extern Lisp_Object intern (const char *);
@@@ -2907,8 -2815,6 +2843,6 @@@ extern Lisp_Object oblookup (Lisp_Objec
    do {                                                                        \
      if (initialized) Vcurrent_load_list = Fcons (x, Vcurrent_load_list); \
    } while (0)
- extern Lisp_Object Vcurrent_load_list;
- extern Lisp_Object Vload_history, Vload_suffixes, Vload_file_rep_suffixes;
  extern int openp (Lisp_Object, Lisp_Object, Lisp_Object,
                    Lisp_Object *, Lisp_Object);
  extern int isfloat_string (const char *, int);
@@@ -2922,14 -2828,10 +2856,10 @@@ extern void syms_of_lread (void)
  
  /* Defined in eval.c */
  extern Lisp_Object Qautoload, Qexit, Qinteractive, Qcommandp, Qdefun, Qmacro;
- extern Lisp_Object Vinhibit_quit, Qinhibit_quit, Vquit_flag;
+ extern Lisp_Object Qinhibit_quit;
  extern Lisp_Object Vautoload_queue;
- extern Lisp_Object Vdebug_on_error;
  extern Lisp_Object Vsignaling_function;
  extern int handling_signal;
- extern int debug_on_next_call;
- extern int interactive_p (int);
  /* To run a normal hook, use the appropriate function from the list below.
     The calling convention:
  
  extern Lisp_Object Vrun_hooks;
  EXFUN (Frun_hooks, MANY);
  EXFUN (Frun_hook_with_args, MANY);
- EXFUN (Frun_hook_with_args_until_success, MANY);
  EXFUN (Frun_hook_with_args_until_failure, MANY);
- extern Lisp_Object run_hook_list_with_args (Lisp_Object, int, Lisp_Object *);
  extern void run_hook_with_args_2 (Lisp_Object, Lisp_Object, Lisp_Object);
- EXFUN (Fand, UNEVALLED);
- EXFUN (For, UNEVALLED);
- EXFUN (Fif, UNEVALLED);
  EXFUN (Fprogn, UNEVALLED);
- EXFUN (Fprog1, UNEVALLED);
- EXFUN (Fprog2, UNEVALLED);
- EXFUN (Fsetq, UNEVALLED);
- EXFUN (Fquote, UNEVALLED);
- EXFUN (Fuser_variable_p, 1);
  EXFUN (Finteractive_p, 0);
- EXFUN (Fdefun, UNEVALLED);
- EXFUN (Flet, UNEVALLED);
- EXFUN (FletX, UNEVALLED);
- EXFUN (Fwhile, UNEVALLED);
- EXFUN (Fcatch, UNEVALLED);
  EXFUN (Fthrow, 2) NO_RETURN;
- EXFUN (Funwind_protect, UNEVALLED);
- EXFUN (Fcondition_case, UNEVALLED);
  EXFUN (Fsignal, 2);
  extern void xsignal (Lisp_Object, Lisp_Object) NO_RETURN;
  extern void xsignal0 (Lisp_Object) NO_RETURN;
@@@ -2969,10 -2854,8 +2882,9 @@@ extern void xsignal1 (Lisp_Object, Lisp
  extern void xsignal2 (Lisp_Object, Lisp_Object, Lisp_Object) NO_RETURN;
  extern void xsignal3 (Lisp_Object, Lisp_Object, Lisp_Object, Lisp_Object) NO_RETURN;
  extern void signal_error (const char *, Lisp_Object) NO_RETURN;
- EXFUN (Fautoload, 5);
  EXFUN (Fcommandp, 2);
 -EXFUN (Feval, 1);
 +EXFUN (Feval, 2);
 +extern Lisp_Object eval_sub (Lisp_Object form);
  EXFUN (Fapply, MANY);
  EXFUN (Ffuncall, MANY);
  EXFUN (Fbacktrace, 0);
@@@ -3007,31 -2890,18 +2919,18 @@@ extern Lisp_Object safe_call2 (Lisp_Obj
  extern void init_eval (void);
  extern void syms_of_eval (void);
  
- /* Defined in editfns.c */
- extern Lisp_Object last_nonmenu_event;
  extern Lisp_Object Qfield;
- extern Lisp_Object Vinhibit_field_text_motion;
- extern Lisp_Object Vsystem_name;
- extern Lisp_Object Vuser_login_name;
- EXFUN (Fpropertize, MANY);
  EXFUN (Fcurrent_message, 0);
  EXFUN (Fgoto_char, 1);
- EXFUN (Fpoint_min_marker, 0);
  EXFUN (Fpoint_max_marker, 0);
- EXFUN (Fpoint_min, 0);
- EXFUN (Fpoint_max, 0);
  EXFUN (Fpoint, 0);
  EXFUN (Fpoint_marker, 0);
- EXFUN (Fmark_marker, 0);
  EXFUN (Fline_beginning_position, 1);
  EXFUN (Fline_end_position, 1);
  EXFUN (Ffollowing_char, 0);
  EXFUN (Fprevious_char, 0);
  EXFUN (Fchar_after, 1);
  EXFUN (Finsert, MANY);
- EXFUN (Finsert_and_inherit, MANY);
- EXFUN (Finsert_before_markers, MANY);
- EXFUN (Finsert_buffer_substring, 3);
  EXFUN (Finsert_char, 3);
  extern void insert1 (Lisp_Object);
  EXFUN (Feolp, 0);
@@@ -3061,11 -2931,7 +2960,7 @@@ extern Lisp_Object make_buffer_string_b
  extern void init_editfns (void);
  extern void syms_of_editfns (void);
  EXFUN (Fconstrain_to_field, 5);
- EXFUN (Ffield_string, 1);
- EXFUN (Fdelete_field, 1);
- EXFUN (Ffield_beginning, 3);
  EXFUN (Ffield_end, 3);
- EXFUN (Ffield_string_no_properties, 1);
  extern void set_time_zone_rule (const char *);
  
  /* Defined in buffer.c */
@@@ -3074,20 -2940,18 +2969,18 @@@ extern void nsberror (Lisp_Object) NO_R
  EXFUN (Fset_buffer_multibyte, 1);
  EXFUN (Foverlay_start, 1);
  EXFUN (Foverlay_end, 1);
- EXFUN (Foverlay_buffer, 1);
  extern void adjust_overlays_for_insert (EMACS_INT, EMACS_INT);
  extern void adjust_overlays_for_delete (EMACS_INT, EMACS_INT);
  extern void fix_start_end_in_overlays (EMACS_INT, EMACS_INT);
  extern void report_overlay_modification (Lisp_Object, Lisp_Object, int,
                                           Lisp_Object, Lisp_Object, Lisp_Object);
  extern int overlay_touches_p (EMACS_INT);
- extern Lisp_Object Vbuffer_alist, Vinhibit_read_only;
- EXFUN (Fbuffer_list, 1);
+ extern Lisp_Object Vbuffer_alist;
  EXFUN (Fget_buffer, 1);
  EXFUN (Fget_buffer_create, 1);
  EXFUN (Fgenerate_new_buffer_name, 2);
  EXFUN (Fset_buffer, 1);
EXFUN (set_buffer_if_live, 1);
extern Lisp_Object set_buffer_if_live (Lisp_Object);
  EXFUN (Fbarf_if_buffer_read_only, 0);
  EXFUN (Fcurrent_buffer, 0);
  EXFUN (Fswitch_to_buffer, 2);
@@@ -3097,7 -2961,6 +2990,6 @@@ EXFUN (Fbuffer_modified_p, 1)
  EXFUN (Fset_buffer_modified_p, 1);
  EXFUN (Fkill_buffer, 1);
  EXFUN (Fkill_all_local_variables, 0);
- EXFUN (Fbuffer_disable_undo, 1);
  EXFUN (Fbuffer_enable_undo, 1);
  EXFUN (Ferase_buffer, 0);
  extern Lisp_Object Qoverlayp;
@@@ -3136,10 -2999,8 +3028,8 @@@ extern Lisp_Object Qfile_error
  extern Lisp_Object Qfile_exists_p;
  extern Lisp_Object Qfile_directory_p;
  extern Lisp_Object Qinsert_file_contents;
- extern Lisp_Object Vauto_save_list_file_name;
  EXFUN (Ffind_file_name_handler, 2);
  EXFUN (Ffile_name_as_directory, 1);
- EXFUN (Fmake_temp_name, 1);
  EXFUN (Fexpand_file_name, 2);
  EXFUN (Ffile_name_nondirectory, 1);
  EXFUN (Fsubstitute_in_file_name, 1);
@@@ -3179,7 -3040,6 +3069,6 @@@ EXFUN (Fset_match_data, 2)
  EXFUN (Fmatch_beginning, 1);
  EXFUN (Fmatch_end, 1);
  extern void record_unwind_save_match_data (void);
- EXFUN (Flooking_at, 1);
  extern int fast_string_match (Lisp_Object, Lisp_Object);
  extern int fast_c_string_match_ignore_case (Lisp_Object, const char *);
  extern int fast_string_match_ignore_case (Lisp_Object, Lisp_Object);
@@@ -3198,13 -3058,8 +3087,8 @@@ extern void clear_regexp_cache (void)
  /* Defined in minibuf.c */
  
  extern Lisp_Object Qcompletion_ignore_case;
- extern Lisp_Object Vcompletion_regexp_list;
- extern Lisp_Object Vhistory_length;
  extern Lisp_Object Vminibuffer_list;
  extern Lisp_Object last_minibuf_string;
- extern int completion_ignore_case;
- extern int history_delete_duplicates;
- extern int minibuffer_auto_raise;
  extern void choose_minibuf_frame (void);
  EXFUN (Fcompleting_read, 8);
  EXFUN (Fread_from_minibuffer, 7);
@@@ -3213,21 -3068,16 +3097,16 @@@ EXFUN (Fread_buffer, 3)
  EXFUN (Fread_minibuffer, 2);
  EXFUN (Feval_minibuffer, 2);
  EXFUN (Fread_string, 5);
- EXFUN (Fread_no_blanks_input, 3);
  EXFUN (Fassoc_string, 3);
  extern Lisp_Object get_minibuffer (int);
- extern void temp_echo_area_glyphs (Lisp_Object);
  extern void init_minibuf_once (void);
  extern void syms_of_minibuf (void);
  
  /* Defined in callint.c */
  
- extern Lisp_Object Qminus, Qplus, Vcurrent_prefix_arg;
+ extern Lisp_Object Qminus, Qplus;
  extern Lisp_Object Qwhen;
- extern Lisp_Object Vcommand_history;
- extern Lisp_Object Vmark_even_if_inactive;
  extern Lisp_Object Qcall_interactively, Qmouse_leave_buffer_hook;
- EXFUN (Fcall_interactively, 3);
  EXFUN (Fprefix_numeric_value, 1);
  extern void syms_of_callint (void);
  
  extern Lisp_Object Qidentity;
  EXFUN (Fdowncase, 1);
  EXFUN (Fupcase, 1);
- EXFUN (Fcapitalize, 1);
  EXFUN (Fupcase_region, 2);
  EXFUN (Fupcase_initials, 1);
  EXFUN (Fupcase_initials_region, 2);
@@@ -3260,18 -3109,11 +3138,11 @@@ extern Lisp_Object Qdisabled, QCfilter
  extern Lisp_Object Qabove_handle, Qhandle, Qbelow_handle;
  extern Lisp_Object Qup, Qdown, Qbottom, Qend_scroll;
  extern Lisp_Object Qtop, Qratio;
- extern Lisp_Object Vsaved_region_selection;
- extern Lisp_Object Vselect_active_regions;
- extern Lisp_Object Vtty_erase_char, Vhelp_form, Vtop_level;
- extern Lisp_Object Vthrow_on_input;
  extern int input_pending;
  EXFUN (Fdiscard_input, 0);
  EXFUN (Frecursive_edit, 0);
  EXFUN (Ftop_level, 0) NO_RETURN;
- EXFUN (Fexit_recursive_edit, 0) NO_RETURN;
- EXFUN (Fabort_recursive_edit, 0) NO_RETURN;
  EXFUN (Fcommand_execute, 4);
- EXFUN (Finput_pending_p, 0);
  extern Lisp_Object menu_bar_items (Lisp_Object);
  extern Lisp_Object tool_bar_items (Lisp_Object, int *);
  extern Lisp_Object Qvertical_scroll_bar;
@@@ -3279,9 -3121,6 +3150,6 @@@ extern void discard_mouse_events (void)
  EXFUN (Fevent_convert_list, 1);
  EXFUN (Fread_key_sequence, 5);
  EXFUN (Fset_input_interrupt_mode, 1);
- EXFUN (Fset_output_flow_control, 2);
- EXFUN (Fset_input_meta_mode, 2);
- EXFUN (Fset_quit_char, 1);
  EXFUN (Fset_input_mode, 4);
  extern Lisp_Object pending_funcalls;
  extern int detect_input_pending (void);
@@@ -3301,7 -3140,6 +3169,6 @@@ extern char *push_key_description (unsi
  /* Defined in indent.c */
  EXFUN (Fvertical_motion, 2);
  EXFUN (Findent_to, 2);
- EXFUN (Fcurrent_column, 0);
  EXFUN (Fmove_to_column, 2);
  extern double current_column (void);
  extern void invalidate_current_column (void);
@@@ -3310,8 -3148,6 +3177,6 @@@ extern void syms_of_indent (void)
  
  /* Defined in frame.c */
  #ifdef HAVE_WINDOW_SYSTEM
- extern Lisp_Object Vx_resource_name;
- extern Lisp_Object Vx_resource_class;
  #endif /* HAVE_WINDOW_SYSTEM */
  extern Lisp_Object Qonly;
  extern Lisp_Object Qvisible;
@@@ -3320,36 -3156,21 +3185,21 @@@ extern void store_in_alist (Lisp_Objec
  extern Lisp_Object do_switch_frame (Lisp_Object, int, int, Lisp_Object);
  extern Lisp_Object get_frame_param (struct frame *, Lisp_Object);
  extern Lisp_Object frame_buffer_predicate (Lisp_Object);
- EXFUN (Fframep, 1);
  EXFUN (Fselect_frame, 2);
  EXFUN (Fselected_frame, 0);
  EXFUN (Fwindow_frame, 1);
  EXFUN (Fframe_root_window, 1);
  EXFUN (Fframe_first_window, 1);
- EXFUN (Fframe_selected_window, 1);
- EXFUN (Fframe_list, 0);
- EXFUN (Fnext_frame, 2);
- EXFUN (Fdelete_frame, 2);
- EXFUN (Fset_mouse_position, 3);
  EXFUN (Fmake_frame_visible, 1);
- EXFUN (Fmake_frame_invisible, 2);
  EXFUN (Ficonify_frame, 1);
- EXFUN (Fframe_visible_p, 1);
- EXFUN (Fvisible_frame_list, 0);
  EXFUN (Fframe_parameter, 2);
- EXFUN (Fframe_parameters, 1);
  EXFUN (Fmodify_frame_parameters, 2);
- EXFUN (Fset_frame_height, 3);
- EXFUN (Fset_frame_width, 3);
- EXFUN (Fset_frame_size, 3);
- EXFUN (Fset_frame_position, 3);
  EXFUN (Fraise_frame, 1);
  EXFUN (Fredirect_frame_focus, 2);
  EXFUN (Fset_frame_selected_window, 3);
  extern Lisp_Object frame_buffer_list (Lisp_Object);
  extern void frames_discard_buffer (Lisp_Object);
  extern void set_frame_buffer_list (Lisp_Object, Lisp_Object);
- extern void frames_bury_buffer (Lisp_Object);
  extern void syms_of_frame (void);
  
  /* Defined in emacs.c */
@@@ -3359,12 -3180,8 +3209,8 @@@ extern int initial_argc
  extern int display_arg;
  #endif
  extern Lisp_Object decode_env_path (const char *, const char *);
- extern Lisp_Object Vinvocation_name, Vinvocation_directory;
- extern Lisp_Object Vbefore_init_time, Vafter_init_time;
- extern Lisp_Object Vinstallation_directory;
  extern Lisp_Object empty_unibyte_string, empty_multibyte_string;
  extern Lisp_Object Qfile_name_handler_alist;
- extern Lisp_Object Vdynamic_library_alist;
  extern void (*fatal_error_signal_hook) (void);
  EXFUN (Fkill_emacs, 1) NO_RETURN;
  #if HAVE_SETLOCALE
@@@ -3381,8 -3198,8 +3227,8 @@@ void shut_down_emacs (int, int, Lisp_Ob
  /* Nonzero means don't do interactive redisplay and don't change tty modes.  */
  extern int noninteractive;
  
- /* Nonzero means don't load X resources or Windows Registry settings.  */
- extern int inhibit_x_resources;
+ /* Nonzero means remove site-lisp directories from load-path.  */
+ extern int no_site_lisp;
  
  /* Pipe used to send exit notification to the daemon parent at
     startup.  */
@@@ -3398,10 -3215,8 +3244,8 @@@ extern int running_asynch_code
  extern Lisp_Object QCtype, Qlocal;
  EXFUN (Fget_process, 1);
  EXFUN (Fget_buffer_process, 1);
- EXFUN (Fprocessp, 1);
  EXFUN (Fprocess_status, 1);
  EXFUN (Fkill_process, 2);
- EXFUN (Fprocess_send_eof, 1);
  EXFUN (Fwaiting_for_user_input_p, 0);
  extern Lisp_Object Qprocessp;
  extern void kill_buffer_processes (Lisp_Object);
@@@ -3418,11 -3233,6 +3262,6 @@@ extern void init_process (void)
  extern void syms_of_process (void);
  extern void setup_process_coding_systems (Lisp_Object);
  
- /* Defined in callproc.c */
- extern Lisp_Object Vexec_path, Vexec_suffixes,
-                    Vexec_directory, Vdata_directory;
- extern Lisp_Object Vdoc_directory;
- extern Lisp_Object Vshell_file_name;
  EXFUN (Fcall_process, MANY);
  extern int child_setup (int, int, int, char **, int, Lisp_Object);
  extern void init_callproc_1 (void);
@@@ -3432,9 -3242,7 +3271,7 @@@ extern void syms_of_callproc (void)
  
  /* Defined in doc.c */
  extern Lisp_Object Qfunction_documentation;
- extern Lisp_Object Vdoc_file_name;
  EXFUN (Fsubstitute_command_keys, 1);
- EXFUN (Fdocumentation, 2);
  EXFUN (Fdocumentation_property, 3);
  extern Lisp_Object read_doc_string (Lisp_Object);
  extern Lisp_Object get_doc_string (Lisp_Object, int, int);
@@@ -3443,13 -3251,11 +3280,13 @@@ extern int read_bytecode_char (int)
  
  /* Defined in bytecode.c */
  extern Lisp_Object Qbytecode;
 -EXFUN (Fbyte_code, 3);
 +EXFUN (Fbyte_code, MANY);
  extern void syms_of_bytecode (void);
  extern struct byte_stack *byte_stack_list;
  extern void mark_byte_stack (void);
  extern void unmark_byte_stack (void);
 +extern Lisp_Object exec_byte_code (Lisp_Object, Lisp_Object, Lisp_Object,
 +                                 Lisp_Object, int, Lisp_Object *);
  
  /* Defined in macros.c */
  extern Lisp_Object Qexecute_kbd_macro;
@@@ -3472,8 -3278,6 +3309,6 @@@ extern void record_property_change (EMA
                                    Lisp_Object, Lisp_Object,
                                      Lisp_Object);
  extern void syms_of_undo (void);
- extern Lisp_Object Vundo_outer_limit;
  /* Defined in textprop.c */
  extern Lisp_Object Qfont, Qmouse_face;
  extern Lisp_Object Qinsert_in_front_hooks, Qinsert_behind_hooks;
@@@ -3488,10 -3292,6 +3323,6 @@@ EXFUN (Fput_text_property, 5)
  EXFUN (Fprevious_char_property_change, 2);
  EXFUN (Fnext_char_property_change, 2);
  extern void report_interval_modification (Lisp_Object, Lisp_Object);
- extern Lisp_Object next_single_char_property_change (Lisp_Object,
-                                                      Lisp_Object,
-                                                      Lisp_Object,
-                                                      Lisp_Object);
  
  /* Defined in menu.c */
  extern void syms_of_menu (void);
@@@ -3543,10 -3343,7 +3374,7 @@@ extern void *memmove (void *, void *, s
  extern int memcmp (void *, void *, size_t);
  #endif
  
- /* Defined in filelock.c */
- extern Lisp_Object Vtemporary_file_directory;
  EXFUN (Funlock_buffer, 0);
- EXFUN (Ffile_locked_p, 1);
  extern void unlock_all_files (void);
  extern void lock_file (Lisp_Object);
  extern void unlock_file (Lisp_Object);
@@@ -3590,14 -3387,10 +3418,10 @@@ extern void init_font (void)
  #ifdef HAVE_WINDOW_SYSTEM
  /* Defined in fontset.c */
  extern void syms_of_fontset (void);
- EXFUN (Fset_fontset_font, 5);
- EXFUN (Fnew_fontset, 2);
  
  /* Defined in xfns.c, w32fns.c, or macfns.c */
  extern Lisp_Object Qfont_param;
- extern Lisp_Object Vx_no_window_manager;
  EXFUN (Fxw_display_color_p, 1);
- EXFUN (Fx_file_dialog, 5);
  EXFUN (Fx_focus_frame, 1);
  #endif
  
@@@ -3610,10 -3403,7 +3434,7 @@@ extern Lisp_Object Qnormal
  extern Lisp_Object QCfamily, QCweight, QCslant;
  extern Lisp_Object QCheight, QCname, QCwidth, QCforeground, QCbackground;
  extern Lisp_Object Vface_alternative_font_family_alist;
- extern Lisp_Object Vface_font_rescale_alist;
- extern Lisp_Object Vface_ignored_fonts;
  extern Lisp_Object Vface_alternative_font_registry_alist;
- extern Lisp_Object Vscalable_fonts_allowed;
  EXFUN (Fclear_face_cache, 1);
  EXFUN (Fx_load_color_file, 1);
  extern void syms_of_xfaces (void);
@@@ -3838,7 -3628,6 +3659,6 @@@ extern Lisp_Object safe_alloca_unwind (
    } while (0)
  
  
- #endif /* EMACS_LISP_H */
+ #include "globals.h"
  
- /* arch-tag: 9b2ed020-70eb-47ac-94ee-e1c2a5107d5e
-    (do not change this comment) */
+ #endif /* EMACS_LISP_H */
diff --combined src/lread.c
index 550b5f076f93ff796023f7d0a13dffad5aae2fbf,ca2f6cf04be6d05fc0c9984734b83448708482a9..c4ae8313525a516187f1e8887f24caf554f6ea83
@@@ -1,8 -1,6 +1,6 @@@
  /* Lisp parsing and input streams.
  
- Copyright (C) 1985, 1986, 1987, 1988, 1989, 1993, 1994, 1995, 1997,
-   1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008,
-   2009, 2010  Free Software Foundation, Inc.
+ Copyright (C) 1985-1989, 1993-1995, 1997-2011  Free Software Foundation, Inc.
  
  This file is part of GNU Emacs.
  
@@@ -45,10 -43,7 +43,7 @@@ along with GNU Emacs.  If not, see <htt
  #include "msdos.h"
  #endif
  
- #ifdef HAVE_UNISTD_H
  #include <unistd.h>
- #endif
  #include <math.h>
  
  #ifdef HAVE_SETLOCALE
@@@ -73,12 -68,11 +68,12 @@@ Lisp_Object Qrehash_size
  Lisp_Object Qrehash_threshold;
  
  Lisp_Object Qread_char, Qget_file_char, Qstandard_input, Qcurrent_load_list;
- Lisp_Object Qvariable_documentation, Vvalues, Vstandard_input, Vafter_load_alist;
+ Lisp_Object Qvariable_documentation;
  Lisp_Object Qascii_character, Qload, Qload_file_name;
  Lisp_Object Qbackquote, Qcomma, Qcomma_at, Qcomma_dot, Qfunction;
  Lisp_Object Qinhibit_file_name_operation;
- Lisp_Object Qeval_buffer_list, Veval_buffer_list;
+ Lisp_Object Qeval_buffer_list;
 +Lisp_Object Qlexical_binding;
  Lisp_Object Qfile_truename, Qdo_after_load_evaluation; /* ACM 2006/5/16 */
  
  /* Used instead of Qget_file_char while loading *.elc files compiled
@@@ -87,74 -81,19 +82,24 @@@ static Lisp_Object Qget_emacs_mule_file
  
  static Lisp_Object Qload_force_doc_strings;
  
- /* non-zero if inside `load' */
- int load_in_progress;
 +extern Lisp_Object Qinternal_interpreter_environment;
 +
  static Lisp_Object Qload_in_progress;
  
- /* Directory in which the sources were found.  */
- Lisp_Object Vsource_directory;
- /* Search path and suffixes for files to be loaded. */
- Lisp_Object Vload_path, Vload_suffixes, Vload_file_rep_suffixes;
- /* File name of user's init file.  */
- Lisp_Object Vuser_init_file;
- /* This is the user-visible association list that maps features to
-    lists of defs in their load files. */
- Lisp_Object Vload_history;
- /* This is used to build the load history. */
- Lisp_Object Vcurrent_load_list;
- /* List of files that were preloaded.  */
- Lisp_Object Vpreloaded_file_list;
- /* Name of file actually being read by `load'.  */
- Lisp_Object Vload_file_name;
- /* Function to use for reading, in `load' and friends.  */
- Lisp_Object Vload_read_function;
- /* Non-nil means read recursive structures using #n= and #n# syntax.  */
- Lisp_Object Vread_circle;
  /* The association list of objects read with the #n=object form.
     Each member of the list has the form (n . object), and is used to
     look up the object for the corresponding #n# construct.
     It must be set to nil before all top-level calls to read0.  */
  Lisp_Object read_objects;
  
- /* Nonzero means load should forcibly load all dynamic doc strings.  */
- static int load_force_doc_strings;
- /* Nonzero means read should convert strings to unibyte.  */
- static int load_convert_to_unibyte;
  /* Nonzero means READCHAR should read bytes one by one (not character)
     when READCHARFUN is Qget_file_char or Qget_emacs_mule_file_char.
     This is set to 1 by read1 temporarily while handling #@NUMBER.  */
  static int load_each_byte;
  
- /* Function to use for loading an Emacs Lisp source file (not
-    compiled) instead of readevalloop.  */
- Lisp_Object Vload_source_file_function;
- /* List of all DEFVAR_BOOL variables.  Used by the byte optimizer.  */
- Lisp_Object Vbyte_boolean_vars;
- /* Whether or not to add a `read-positions' property to symbols
-    read. */
- Lisp_Object Vread_with_symbol_positions;
- /* List of (SYMBOL . POSITION) accumulated so far. */
- Lisp_Object Vread_symbol_positions_list;
 +/* If non-nil `readevalloop' evaluates code in a lexical environment.  */
 +Lisp_Object Vlexical_binding;
 +
  /* List of descriptors now open for Fload.  */
  static Lisp_Object load_descriptor_list;
  
@@@ -198,29 -137,18 +143,17 @@@ static file_offset prev_saved_doc_strin
     Fread initializes this to zero, so we need not specbind it
     or worry about what happens to it when there is an error.  */
  static int new_backquote_flag;
- static Lisp_Object Vold_style_backquotes, Qold_style_backquotes;
+ static Lisp_Object Qold_style_backquotes;
  
  /* A list of file names for files being loaded in Fload.  Used to
     check for recursive loads.  */
  
  static Lisp_Object Vloads_in_progress;
  
- /* Non-zero means load dangerous compiled Lisp files.  */
- int load_dangerous_libraries;
- /* Non-zero means force printing messages when loading Lisp files.  */
- int force_load_messages;
- /* A regular expression used to detect files compiled with Emacs.  */
- static Lisp_Object Vbytecomp_version_regexp;
  static int read_emacs_mule_char (int, int (*) (int, Lisp_Object),
                                   Lisp_Object);
  
 -static void readevalloop (Lisp_Object, FILE*, Lisp_Object,
 -                          Lisp_Object (*) (Lisp_Object), int,
 +static void readevalloop (Lisp_Object, FILE*, Lisp_Object, int,
                            Lisp_Object, Lisp_Object,
                            Lisp_Object, Lisp_Object);
  static Lisp_Object load_unwind (Lisp_Object);
@@@ -655,7 -583,7 +588,7 @@@ static void substitute_in_interval (INT
     If SECONDS is a number, we wait that many seconds for input, and
     return Qnil if no input arrives within that time.  */
  
- Lisp_Object
static Lisp_Object
  read_filtered_event (int no_switch_frame, int ascii_required,
                     int error_nonascii, int input_method, Lisp_Object seconds)
  {
@@@ -840,117 -768,6 +773,117 @@@ DEFUN ("get-file-char", Fget_file_char
  }
  
  
 +\f
 +
 +/* Return true if the lisp code read using READCHARFUN defines a non-nil
 +   `lexical-binding' file variable.  After returning, the stream is
 +   positioned following the first line, if it is a comment, otherwise
 +   nothing is read.  */
 +
 +static int
 +lisp_file_lexically_bound_p (Lisp_Object readcharfun)
 +{
 +  int ch = READCHAR;
 +  if (ch != ';')
 +    /* The first line isn't a comment, just give up.  */
 +    {
 +      UNREAD (ch);
 +      return 0;
 +    }
 +  else
 +    /* Look for an appropriate file-variable in the first line.  */
 +    {
 +      int rv = 0;
 +      enum {
 +      NOMINAL, AFTER_FIRST_DASH, AFTER_ASTERIX,
 +      } beg_end_state = NOMINAL;
 +      int in_file_vars = 0;
 +
 +#define UPDATE_BEG_END_STATE(ch)                                            \
 +  if (beg_end_state == NOMINAL)                                                     \
 +    beg_end_state = (ch == '-' ? AFTER_FIRST_DASH : NOMINAL);               \
 +  else if (beg_end_state == AFTER_FIRST_DASH)                               \
 +    beg_end_state = (ch == '*' ? AFTER_ASTERIX : NOMINAL);                  \
 +  else if (beg_end_state == AFTER_ASTERIX)                                  \
 +    {                                                                       \
 +      if (ch == '-')                                                        \
 +      in_file_vars = !in_file_vars;                                         \
 +      beg_end_state = NOMINAL;                                                      \
 +    }
 +
 +      /* Skip until we get to the file vars, if any.  */
 +      do
 +      {
 +        ch = READCHAR;
 +        UPDATE_BEG_END_STATE (ch);
 +      }
 +      while (!in_file_vars && ch != '\n' && ch != EOF);
 +
 +      while (in_file_vars)
 +      {
 +        char var[100], *var_end, val[100], *val_end;
 +
 +        ch = READCHAR;
 +
 +        /* Read a variable name.  */
 +        while (ch == ' ' || ch == '\t')
 +          ch = READCHAR;
 +
 +        var_end = var;
 +        while (ch != ':' && ch != '\n' && ch != EOF)
 +          {
 +            if (var_end < var + sizeof var - 1)
 +              *var_end++ = ch;
 +            UPDATE_BEG_END_STATE (ch);
 +            ch = READCHAR;
 +          }
 +        
 +        while (var_end > var
 +               && (var_end[-1] == ' ' || var_end[-1] == '\t'))
 +          var_end--;
 +        *var_end = '\0';
 +
 +        if (ch == ':')
 +          {
 +            /* Read a variable value.  */
 +            ch = READCHAR;
 +
 +            while (ch == ' ' || ch == '\t')
 +              ch = READCHAR;
 +
 +            val_end = val;
 +            while (ch != ';' && ch != '\n' && ch != EOF && in_file_vars)
 +              {
 +                if (val_end < val + sizeof val - 1)
 +                  *val_end++ = ch;
 +                UPDATE_BEG_END_STATE (ch);
 +                ch = READCHAR;
 +              }
 +            if (! in_file_vars)
 +              /* The value was terminated by an end-marker, which
 +                 remove.  */
 +              val_end -= 3;
 +            while (val_end > val
 +                   && (val_end[-1] == ' ' || val_end[-1] == '\t'))
 +              val_end--;
 +            *val_end = '\0';
 +
 +            if (strcmp (var, "lexical-binding") == 0)
 +              /* This is it...  */
 +              {
 +                rv = (strcmp (val, "nil") != 0);
 +                break;
 +              }
 +          }
 +      }
 +
 +      while (ch != '\n' && ch != EOF)
 +      ch = READCHAR;
 +
 +      return rv;
 +    }
 +}
 +
  \f
  /* Value is a version number of byte compiled code if the file
     associated with file descriptor FD is a compiled Lisp file that's
@@@ -1146,10 -963,10 +1079,10 @@@ Return t if the file exists and loads s
        {
          /* Don't insist on adding a suffix if FILE already ends with one.  */
          if (size > 3
-             && !strcmp (SDATA (file) + size - 3, ".el"))
+             && !strcmp (SSDATA (file) + size - 3, ".el"))
            must_suffix = Qnil;
          else if (size > 4
-                  && !strcmp (SDATA (file) + size - 4, ".elc"))
+                  && !strcmp (SSDATA (file) + size - 4, ".elc"))
            must_suffix = Qnil;
          /* Don't insist on adding a suffix
             if the argument includes a directory name.  */
      Vloads_in_progress = Fcons (found, Vloads_in_progress);
    }
  
 +  /* All loads are by default dynamic, unless the file itself specifies
 +     otherwise using a file-variable in the first line.  This is bound here
 +     so that it takes effect whether or not we use
 +     Vload_source_file_function.  */
 +  specbind (Qlexical_binding, Qnil);
 +
    /* Get the name for load-history. */
    hist_file_name = (! NILP (Vpurify_flag)
                      ? Fconcat (2, (tmp[0] = Ffile_name_directory (file),
  #ifdef DOS_NT
          fmode = "rb";
  #endif /* DOS_NT */
-         stat ((char *)SDATA (efound), &s1);
+         stat (SSDATA (efound), &s1);
          SSET (efound, SBYTES (efound) - 1, 0);
-         result = stat ((char *)SDATA (efound), &s2);
+         result = stat (SSDATA (efound), &s2);
          SSET (efound, SBYTES (efound) - 1, 'c');
  
          if (result >= 0 && (unsigned) s1.st_mtime < (unsigned) s2.st_mtime)
  #ifdef WINDOWSNT
    emacs_close (fd);
    efound = ENCODE_FILE (found);
-   stream = fopen ((char *) SDATA (efound), fmode);
+   stream = fopen (SSDATA (efound), fmode);
  #else  /* not WINDOWSNT */
    stream = fdopen (fd, fmode);
  #endif /* not WINDOWSNT */
    specbind (Qinhibit_file_name_operation, Qnil);
    load_descriptor_list
      = Fcons (make_number (fileno (stream)), load_descriptor_list);
 +
    specbind (Qload_in_progress, Qt);
 +
 +  instream = stream;
 +  if (lisp_file_lexically_bound_p (Qget_file_char))
 +    Fset (Qlexical_binding, Qt);
 +
    if (! version || version >= 22)
      readevalloop (Qget_file_char, stream, hist_file_name,
 -                Feval, 0, Qnil, Qnil, Qnil, Qnil);
 +                0, Qnil, Qnil, Qnil, Qnil);
    else
      {
        /* We can't handle a file which was compiled with
         byte-compile-dynamic by older version of Emacs.  */
        specbind (Qload_force_doc_strings, Qt);
 -      readevalloop (Qget_emacs_mule_file_char, stream, hist_file_name, Feval,
 +      readevalloop (Qget_emacs_mule_file_char, stream, hist_file_name,
                    0, Qnil, Qnil, Qnil, Qnil);
      }
    unbind_to (count, Qnil);
@@@ -1543,19 -1348,19 +1476,19 @@@ openp (Lisp_Object path, Lisp_Object st
              && SREF (filename, 0) == '/'
              && SREF (filename, 1) == ':')
            {
-             strncpy (fn, SDATA (filename) + 2,
+             strncpy (fn, SSDATA (filename) + 2,
                       SBYTES (filename) - 2);
              fn[SBYTES (filename) - 2] = 0;
            }
          else
            {
-             strncpy (fn, SDATA (filename),
+             strncpy (fn, SSDATA (filename),
                       SBYTES (filename));
              fn[SBYTES (filename)] = 0;
            }
  
          if (lsuffix != 0)  /* Bug happens on CCI if lsuffix is 0.  */
-           strncat (fn, SDATA (XCAR (tail)), lsuffix);
+           strncat (fn, SSDATA (XCAR (tail)), lsuffix);
  
          /* Check that the file exists and is not a directory.  */
          /* We used to only check for handlers on non-absolute file names:
              const char *pfn;
  
              encoded_fn = ENCODE_FILE (string);
-             pfn = SDATA (encoded_fn);
+             pfn = SSDATA (encoded_fn);
              exists = (stat (pfn, &st) >= 0
                        && (st.st_mode & S_IFMT) != S_IFDIR);
              if (exists)
@@@ -1725,6 -1530,7 +1658,6 @@@ static voi
  readevalloop (Lisp_Object readcharfun,
              FILE *stream,
              Lisp_Object sourcename,
 -            Lisp_Object (*evalfun) (Lisp_Object),
              int printflag,
              Lisp_Object unibyte, Lisp_Object readfun,
              Lisp_Object start, Lisp_Object end)
    struct gcpro gcpro1, gcpro2, gcpro3, gcpro4;
    struct buffer *b = 0;
    int continue_reading_p;
 +  Lisp_Object lex_bound;
    /* Nonzero if reading an entire buffer.  */
    int whole_buffer = 0;
    /* 1 on the first time around.  */
    record_unwind_protect (readevalloop_1, load_convert_to_unibyte ? Qt : Qnil);
    load_convert_to_unibyte = !NILP (unibyte);
  
 +  /* If lexical binding is active (either because it was specified in
 +     the file's header, or via a buffer-local variable), create an empty
 +     lexical environment, otherwise, turn off lexical binding.  */
 +  lex_bound = find_symbol_value (Qlexical_binding);
 +  specbind (Qinternal_interpreter_environment,
 +          NILP (lex_bound) || EQ (lex_bound, Qunbound)
 +          ? Qnil : Fcons (Qt, Qnil));
 +
    GCPRO4 (sourcename, readfun, start, end);
  
    /* Try to ensure sourcename is a truename, except whilst preloading. */
        unbind_to (count1, Qnil);
  
        /* Now eval what we just read.  */
 -      val = (*evalfun) (val);
 +      val = eval_sub (val);
  
        if (printflag)
        {
@@@ -1928,12 -1725,9 +1861,12 @@@ This function preserves the position o
  
    specbind (Qeval_buffer_list, Fcons (buf, Veval_buffer_list));
    specbind (Qstandard_output, tem);
 +  specbind (Qlexical_binding, Qnil);
    record_unwind_protect (save_excursion_restore, save_excursion_save ());
    BUF_TEMP_SET_PT (XBUFFER (buf), BUF_BEGV (XBUFFER (buf)));
 -  readevalloop (buf, 0, filename, Feval,
 +  if (lisp_file_lexically_bound_p (buf))
 +    Fset (Qlexical_binding, Qt);
 +  readevalloop (buf, 0, filename,
                !NILP (printflag), unibyte, Qnil, Qnil, Qnil);
    unbind_to (count, Qnil);
  
@@@ -1967,7 -1761,7 +1900,7 @@@ This function does not move point.  */
    specbind (Qeval_buffer_list, Fcons (cbuf, Veval_buffer_list));
  
    /* readevalloop calls functions which check the type of start and end.  */
 -  readevalloop (cbuf, 0, XBUFFER (cbuf)->filename, Feval,
 +  readevalloop (cbuf, 0, XBUFFER (cbuf)->filename,
                !NILP (printflag), Qnil, read_function,
                start, end);
  
@@@ -2561,8 -2355,14 +2494,8 @@@ read1 (register Lisp_Object readcharfun
          invalid_syntax ("#&...", 5);
        }
        if (c == '[')
 -      {
 -        /* Accept compiled functions at read-time so that we don't have to
 -           build them using function calls.  */
 -        Lisp_Object tmp;
 -        tmp = read_vector (readcharfun, 1);
 -        return Fmake_byte_code (XVECTOR (tmp)->size,
 -                                XVECTOR (tmp)->contents);
 -      }
 +      /* `function vector' objects, including byte-compiled functions.  */
 +      return read_vector (readcharfun, 1);
        if (c == '(')
        {
          Lisp_Object tmp;
        {
          char *end = read_buffer + read_buffer_size;
  
-         while (c > 040
-                && c != 0x8a0 /* NBSP */
-                && (c >= 0200
-                    || !(strchr ("\"';()[]#`,", c))))
+         do
            {
              if (end - p < MAX_MULTIBYTE_LENGTH)
                {
              else
                *p++ = c;
              c = READCHAR;
-           }
+           } while (c > 040
+                    && c != 0x8a0 /* NBSP */
+                    && (c >= 0200
+                        || !(strchr ("\"';()[]#`,", c))));
  
          if (p == end)
            {
@@@ -3372,7 -3172,7 +3305,7 @@@ isfloat_string (const char *cp, int ign
  
  \f
  static Lisp_Object
 -read_vector (Lisp_Object readcharfun, int bytecodeflag)
 +read_vector (Lisp_Object readcharfun, int read_funvec)
  {
    register int i;
    register int size;
    register Lisp_Object tem, item, vector;
    register struct Lisp_Cons *otem;
    Lisp_Object len;
 +  /* If we're reading a funvec object we start out assuming it's also a
 +     byte-code object (a subset of funvecs), so we can do any special
 +     processing needed.  If it's just an ordinary funvec object, we'll
 +     realize that as soon as we've read the first element.  */
 +  int read_bytecode = read_funvec;
  
    tem = read_list (1, readcharfun);
    len = Flength (tem);
    for (i = 0; i < size; i++)
      {
        item = Fcar (tem);
 +
 +      /* If READ_BYTECODE is set, check whether this is really a byte-code
 +       object, or just an ordinary `funvec' object -- non-byte-code
 +       funvec objects use the same reader syntax.  We can tell from the
 +       first element which one it is.  */
 +      if (read_bytecode && i == 0 && ! FUNVEC_COMPILED_TAG_P (item))
 +      read_bytecode = 0;      /* Nope. */
 +
        /* If `load-force-doc-strings' is t when reading a lazily-loaded
         bytecode object, the docstring containing the bytecode and
         constants values must be treated as unibyte and passed to
         Fread, to get the actual bytecode string and constants vector.  */
 -      if (bytecodeflag && load_force_doc_strings)
 +      if (read_bytecode && load_force_doc_strings)
        {
          if (i == COMPILED_BYTECODE)
            {
        tem = Fcdr (tem);
        free_cons (otem);
      }
 +
 +  if (read_bytecode && size >= 4)
 +    /* Convert this vector to a bytecode object.  */
 +    vector = Fmake_byte_code (size, XVECTOR (vector)->contents);
 +  else if (read_funvec && size >= 1)
 +    /* Convert this vector to an ordinary funvec object.  */
 +    XSETFUNVEC (vector, XVECTOR (vector));
 +
    return vector;
  }
  
@@@ -3657,7 -3436,6 +3590,6 @@@ read_list (int flag, register Lisp_Obje
      }
  }
  \f
- Lisp_Object Vobarray;
  Lisp_Object initial_obarray;
  
  /* oblookup stores the bucket number here, for the sake of Funintern.  */
@@@ -3749,7 -3527,7 +3681,7 @@@ it defaults to the value of `obarray'
  
    CHECK_STRING (string);
  
-   tem = oblookup (obarray, SDATA (string),
+   tem = oblookup (obarray, SSDATA (string),
                  SCHARS (string),
                  SBYTES (string));
    if (!INTEGERP (tem))
@@@ -3802,7 -3580,7 +3734,7 @@@ it defaults to the value of `obarray'
    else
      string = SYMBOL_NAME (name);
  
-   tem = oblookup (obarray, SDATA (string), SCHARS (string), SBYTES (string));
+   tem = oblookup (obarray, SSDATA (string), SCHARS (string), SBYTES (string));
    if (INTEGERP (tem) || (SYMBOLP (name) && !EQ (name, tem)))
      return Qnil;
    else
@@@ -3831,7 -3609,7 +3763,7 @@@ OBARRAY defaults to the value of the va
        string = name;
      }
  
-   tem = oblookup (obarray, SDATA (string),
+   tem = oblookup (obarray, SSDATA (string),
                  SCHARS (string),
                  SBYTES (string));
    if (INTEGERP (tem))
@@@ -4051,7 -3829,6 +3983,7 @@@ defvar_int (struct Lisp_Intfwd *i_fwd
    sym = intern_c_string (namestring);
    i_fwd->type = Lisp_Fwd_Int;
    i_fwd->intvar = address;
 +  XSYMBOL (sym)->declared_special = 1;
    XSYMBOL (sym)->redirect = SYMBOL_FORWARDED;
    SET_SYMBOL_FWD (XSYMBOL (sym), (union Lisp_Fwd *)i_fwd);
  }
@@@ -4066,7 -3843,6 +3998,7 @@@ defvar_bool (struct Lisp_Boolfwd *b_fwd
    sym = intern_c_string (namestring);
    b_fwd->type = Lisp_Fwd_Bool;
    b_fwd->boolvar = address;
 +  XSYMBOL (sym)->declared_special = 1;
    XSYMBOL (sym)->redirect = SYMBOL_FORWARDED;
    SET_SYMBOL_FWD (XSYMBOL (sym), (union Lisp_Fwd *)b_fwd);
    Vbyte_boolean_vars = Fcons (sym, Vbyte_boolean_vars);
@@@ -4085,7 -3861,6 +4017,7 @@@ defvar_lisp_nopro (struct Lisp_Objfwd *
    sym = intern_c_string (namestring);
    o_fwd->type = Lisp_Fwd_Obj;
    o_fwd->objvar = address;
 +  XSYMBOL (sym)->declared_special = 1;
    XSYMBOL (sym)->redirect = SYMBOL_FORWARDED;
    SET_SYMBOL_FWD (XSYMBOL (sym), (union Lisp_Fwd *)o_fwd);
  }
@@@ -4098,7 -3873,6 +4030,7 @@@ defvar_lisp (struct Lisp_Objfwd *o_fwd
    staticpro (address);
  }
  
 +
  /* Similar but define a variable whose value is the Lisp Object stored
     at a particular offset in the current kboard object.  */
  
@@@ -4110,7 -3884,6 +4042,7 @@@ defvar_kboard (struct Lisp_Kboard_Objfw
    sym = intern_c_string (namestring);
    ko_fwd->type = Lisp_Fwd_Kboard_Obj;
    ko_fwd->offset = offset;
 +  XSYMBOL (sym)->declared_special = 1;
    XSYMBOL (sym)->redirect = SYMBOL_FORWARDED;
    SET_SYMBOL_FWD (XSYMBOL (sym), (union Lisp_Fwd *)ko_fwd);
  }
@@@ -4245,7 -4018,7 +4177,7 @@@ init_lread (void
                        Vload_path = Fcons (tem, Vload_path);
                    }
                }
-             if (!NILP (sitelisp))
+             if (!NILP (sitelisp) && !no_site_lisp)
                Vload_path = nconc2 (Fnreverse (sitelisp), Vload_path);
            }
        }
          if (STRINGP (dirfile))
            {
              dirfile = Fdirectory_file_name (dirfile);
-             if (access (SDATA (dirfile), 0) < 0)
+             if (access (SSDATA (dirfile), 0) < 0)
                dir_warning ("Warning: Lisp directory `%s' does not exist.\n",
                             XCAR (path_tail));
            }
@@@ -4344,22 -4117,22 +4276,22 @@@ syms_of_lread (void
    defsubr (&Smapatoms);
    defsubr (&Slocate_file_internal);
  
-   DEFVAR_LISP ("obarray", &Vobarray,
+   DEFVAR_LISP ("obarray", Vobarray,
               doc: /* Symbol table for use by `intern' and `read'.
  It is a vector whose length ought to be prime for best results.
  The vector's contents don't make sense if examined from Lisp programs;
  to find all the symbols in an obarray, use `mapatoms'.  */);
  
-   DEFVAR_LISP ("values", &Vvalues,
+   DEFVAR_LISP ("values", Vvalues,
               doc: /* List of values of all expressions which were read, evaluated and printed.
  Order is reverse chronological.  */);
  
-   DEFVAR_LISP ("standard-input", &Vstandard_input,
+   DEFVAR_LISP ("standard-input", Vstandard_input,
               doc: /* Stream for read to get input from.
  See documentation of `read' for possible values.  */);
    Vstandard_input = Qt;
  
-   DEFVAR_LISP ("read-with-symbol-positions", &Vread_with_symbol_positions,
+   DEFVAR_LISP ("read-with-symbol-positions", Vread_with_symbol_positions,
               doc: /* If non-nil, add position of read symbols to `read-symbol-positions-list'.
  
  If this variable is a buffer, then only forms read from that buffer
@@@ -4373,7 -4146,7 +4305,7 @@@ The positions are relative to the last 
  the toplevel; bind it instead. */);
    Vread_with_symbol_positions = Qnil;
  
-   DEFVAR_LISP ("read-symbol-positions-list", &Vread_symbol_positions_list,
+   DEFVAR_LISP ("read-symbol-positions-list", Vread_symbol_positions_list,
               doc: /* A list mapping read symbols to their positions.
  This variable is modified during calls to `read' or
  `read-from-string', but only when `read-with-symbol-positions' is
@@@ -4388,24 -4161,24 +4320,24 @@@ read multiple times.  The list is in th
  were read in. */);
    Vread_symbol_positions_list = Qnil;
  
-   DEFVAR_LISP ("read-circle", &Vread_circle,
+   DEFVAR_LISP ("read-circle", Vread_circle,
               doc: /* Non-nil means read recursive structures using #N= and #N# syntax.  */);
    Vread_circle = Qt;
  
-   DEFVAR_LISP ("load-path", &Vload_path,
+   DEFVAR_LISP ("load-path", Vload_path,
               doc: /* *List of directories to search for files to load.
  Each element is a string (directory name) or nil (try default directory).
  Initialized based on EMACSLOADPATH environment variable, if any,
  otherwise to default specified by file `epaths.h' when Emacs was built.  */);
  
-   DEFVAR_LISP ("load-suffixes", &Vload_suffixes,
+   DEFVAR_LISP ("load-suffixes", Vload_suffixes,
               doc: /* List of suffixes for (compiled or source) Emacs Lisp files.
  This list should not include the empty string.
  `load' and related functions try to append these suffixes, in order,
  to the specified file name if a Lisp suffix is allowed or required.  */);
    Vload_suffixes = Fcons (make_pure_c_string (".elc"),
                          Fcons (make_pure_c_string (".el"), Qnil));
-   DEFVAR_LISP ("load-file-rep-suffixes", &Vload_file_rep_suffixes,
+   DEFVAR_LISP ("load-file-rep-suffixes", Vload_file_rep_suffixes,
               doc: /* List of suffixes that indicate representations of \
  the same file.
  This list should normally start with the empty string.
@@@ -4420,12 -4193,12 +4352,12 @@@ the loading functions recognize as comp
  customize `jka-compr-load-suffixes' rather than the present variable.  */);
    Vload_file_rep_suffixes = Fcons (empty_unibyte_string, Qnil);
  
-   DEFVAR_BOOL ("load-in-progress", &load_in_progress,
+   DEFVAR_BOOL ("load-in-progress", load_in_progress,
               doc: /* Non-nil if inside of `load'.  */);
    Qload_in_progress = intern_c_string ("load-in-progress");
    staticpro (&Qload_in_progress);
  
-   DEFVAR_LISP ("after-load-alist", &Vafter_load_alist,
+   DEFVAR_LISP ("after-load-alist", Vafter_load_alist,
               doc: /* An alist of expressions to be evalled when particular files are loaded.
  Each element looks like (REGEXP-OR-FEATURE FORMS...).
  
@@@ -4440,7 -4213,7 +4372,7 @@@ An error in FORMS does not undo the loa
  the rest of the FORMS.  */);
    Vafter_load_alist = Qnil;
  
-   DEFVAR_LISP ("load-history", &Vload_history,
+   DEFVAR_LISP ("load-history", Vload_history,
               doc: /* Alist mapping loaded file names to symbols and features.
  Each alist element should be a list (FILE-NAME ENTRIES...), where
  FILE-NAME is the name of a file that has been loaded into Emacs.
@@@ -4460,11 -4233,11 +4392,11 @@@ During preloading, the file name record
  directory.  These file names are converted to absolute at startup.  */);
    Vload_history = Qnil;
  
-   DEFVAR_LISP ("load-file-name", &Vload_file_name,
+   DEFVAR_LISP ("load-file-name", Vload_file_name,
               doc: /* Full name of file being loaded by `load'.  */);
    Vload_file_name = Qnil;
  
-   DEFVAR_LISP ("user-init-file", &Vuser_init_file,
+   DEFVAR_LISP ("user-init-file", Vuser_init_file,
               doc: /* File name, including directory, of user's initialization file.
  If the file loaded had extension `.elc', and the corresponding source file
  exists, this variable contains the name of source file, suitable for use
@@@ -4473,16 -4246,16 +4405,16 @@@ While Emacs loads and evaluates the ini
  of the file, regardless of whether or not it has the `.elc' extension.  */);
    Vuser_init_file = Qnil;
  
-   DEFVAR_LISP ("current-load-list", &Vcurrent_load_list,
+   DEFVAR_LISP ("current-load-list", Vcurrent_load_list,
               doc: /* Used for internal purposes by `load'.  */);
    Vcurrent_load_list = Qnil;
  
-   DEFVAR_LISP ("load-read-function", &Vload_read_function,
+   DEFVAR_LISP ("load-read-function", Vload_read_function,
               doc: /* Function used by `load' and `eval-region' for reading expressions.
  The default is nil, which means use the function `read'.  */);
    Vload_read_function = Qnil;
  
-   DEFVAR_LISP ("load-source-file-function", &Vload_source_file_function,
+   DEFVAR_LISP ("load-source-file-function", Vload_source_file_function,
               doc: /* Function called in `load' for loading an Emacs Lisp source file.
  This function is for doing code conversion before reading the source file.
  If nil, loading is done without any code conversion.
@@@ -4491,45 -4264,45 +4423,45 @@@ Arguments are FULLNAME, FILE, NOERROR, 
  See `load' for the meaning of the remaining arguments.  */);
    Vload_source_file_function = Qnil;
  
-   DEFVAR_BOOL ("load-force-doc-strings", &load_force_doc_strings,
+   DEFVAR_BOOL ("load-force-doc-strings", load_force_doc_strings,
               doc: /* Non-nil means `load' should force-load all dynamic doc strings.
  This is useful when the file being loaded is a temporary copy.  */);
    load_force_doc_strings = 0;
  
-   DEFVAR_BOOL ("load-convert-to-unibyte", &load_convert_to_unibyte,
+   DEFVAR_BOOL ("load-convert-to-unibyte", load_convert_to_unibyte,
               doc: /* Non-nil means `read' converts strings to unibyte whenever possible.
  This is normally bound by `load' and `eval-buffer' to control `read',
  and is not meant for users to change.  */);
    load_convert_to_unibyte = 0;
  
-   DEFVAR_LISP ("source-directory", &Vsource_directory,
+   DEFVAR_LISP ("source-directory", Vsource_directory,
               doc: /* Directory in which Emacs sources were found when Emacs was built.
  You cannot count on them to still be there!  */);
    Vsource_directory
      = Fexpand_file_name (build_string ("../"),
                         Fcar (decode_env_path (0, PATH_DUMPLOADSEARCH)));
  
-   DEFVAR_LISP ("preloaded-file-list", &Vpreloaded_file_list,
+   DEFVAR_LISP ("preloaded-file-list", Vpreloaded_file_list,
               doc: /* List of files that were preloaded (when dumping Emacs).  */);
    Vpreloaded_file_list = Qnil;
  
-   DEFVAR_LISP ("byte-boolean-vars", &Vbyte_boolean_vars,
+   DEFVAR_LISP ("byte-boolean-vars", Vbyte_boolean_vars,
               doc: /* List of all DEFVAR_BOOL variables, used by the byte code optimizer.  */);
    Vbyte_boolean_vars = Qnil;
  
-   DEFVAR_BOOL ("load-dangerous-libraries", &load_dangerous_libraries,
+   DEFVAR_BOOL ("load-dangerous-libraries", load_dangerous_libraries,
               doc: /* Non-nil means load dangerous compiled Lisp files.
  Some versions of XEmacs use different byte codes than Emacs.  These
  incompatible byte codes can make Emacs crash when it tries to execute
  them.  */);
    load_dangerous_libraries = 0;
  
-   DEFVAR_BOOL ("force-load-messages", &force_load_messages,
+   DEFVAR_BOOL ("force-load-messages", force_load_messages,
               doc: /* Non-nil means force printing messages when loading Lisp files.
  This overrides the value of the NOMESSAGE argument to `load'.  */);
    force_load_messages = 0;
  
-   DEFVAR_LISP ("bytecomp-version-regexp", &Vbytecomp_version_regexp,
+   DEFVAR_LISP ("bytecomp-version-regexp", Vbytecomp_version_regexp,
               doc: /* Regular expression matching safe to load compiled Lisp files.
  When Emacs loads a compiled Lisp file, it reads the first 512 bytes
  from the file, and matches them against this regular expression.
@@@ -4538,20 -4311,11 +4470,20 @@@ to load.  See also `load-dangerous-libr
    Vbytecomp_version_regexp
      = make_pure_c_string ("^;;;.\\(in Emacs version\\|bytecomp version FSF\\)");
  
-   DEFVAR_LISP ("lexical-binding", &Vlexical_binding,
 +  Qlexical_binding = intern ("lexical-binding");
 +  staticpro (&Qlexical_binding);
-   DEFVAR_LISP ("eval-buffer-list", &Veval_buffer_list,
++  DEFVAR_LISP ("lexical-binding", Vlexical_binding,
 +             doc: /* If non-nil, use lexical binding when evaluating code.
 +This only applies to code evaluated by `eval-buffer' and `eval-region'.
 +This variable is automatically set from the file variables of an interpreted
 +  lisp file read using `load'.  */);
 +  Fmake_variable_buffer_local (Qlexical_binding);
 +
+   DEFVAR_LISP ("eval-buffer-list", Veval_buffer_list,
               doc: /* List of buffers being read from by calls to `eval-buffer' and `eval-region'.  */);
    Veval_buffer_list = Qnil;
  
-   DEFVAR_LISP ("old-style-backquotes", &Vold_style_backquotes,
+   DEFVAR_LISP ("old-style-backquotes", Vold_style_backquotes,
               doc: /* Set to non-nil when `read' encounters an old-style backquote.  */);
    Vold_style_backquotes = Qnil;
    Qold_style_backquotes = intern_c_string ("old-style-backquotes");
    Qrehash_threshold = intern_c_string ("rehash-threshold");
    staticpro (&Qrehash_threshold);
  }
diff --combined src/minibuf.c
index 9dd32a8bab4a329ae6ea266b0e247e1dbeae33fb,921657b450ac4efa0da0ca04b0155abfd21a2170..a19a650d008f67b1e78e13114bd8c41ce0ea2680
@@@ -1,7 -1,6 +1,6 @@@
  /* Minibuffer input and completion.
-    Copyright (C) 1985, 1986, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
-                  2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007,
-                  2008, 2009, 2010  Free Software Foundation, Inc.
+ Copyright (C) 1985-1986, 1993-2011  Free Software Foundation, Inc.
  
  This file is part of GNU Emacs.
  
@@@ -54,83 -53,25 +53,25 @@@ int minibuf_level
  
  /* The maximum length of a minibuffer history.  */
  
- Lisp_Object Qhistory_length, Vhistory_length;
- /* No duplicates in history.  */
- int history_delete_duplicates;
- /* Non-nil means add new input to history.  */
- Lisp_Object Vhistory_add_new_input;
+ Lisp_Object Qhistory_length;
  
  /* Fread_minibuffer leaves the input here as a string. */
  
  Lisp_Object last_minibuf_string;
  
- /* Nonzero means let functions called when within a minibuffer
-    invoke recursive minibuffers (to read arguments, or whatever) */
- int enable_recursive_minibuffers;
- /* Nonzero means don't ignore text properties
-    in Fread_from_minibuffer.  */
- int minibuffer_allow_text_properties;
- /* help-form is bound to this while in the minibuffer.  */
- Lisp_Object Vminibuffer_help_form;
- /* Variable which is the history list to add minibuffer values to.  */
- Lisp_Object Vminibuffer_history_variable;
- /* Current position in the history list (adjusted by M-n and M-p).  */
- Lisp_Object Vminibuffer_history_position;
- /* Text properties that are added to minibuffer prompts.
-    These are in addition to the basic `field' property, and stickiness
-    properties.  */
- Lisp_Object Vminibuffer_prompt_properties;
  Lisp_Object Qminibuffer_history, Qbuffer_name_history;
  
  Lisp_Object Qread_file_name_internal;
  
  /* Normal hooks for entry to and exit from minibuffer.  */
  
- Lisp_Object Qminibuffer_setup_hook, Vminibuffer_setup_hook;
- Lisp_Object Qminibuffer_exit_hook, Vminibuffer_exit_hook;
- /* Function to call to read a buffer name.  */
- Lisp_Object Vread_buffer_function;
+ Lisp_Object Qminibuffer_setup_hook;
+ Lisp_Object Qminibuffer_exit_hook;
  
- /* Nonzero means completion ignores case.  */
- int completion_ignore_case;
  Lisp_Object Qcompletion_ignore_case;
- int read_buffer_completion_ignore_case;
- /* List of regexps that should restrict possible completions.  */
- Lisp_Object Vcompletion_regexp_list;
- /* Nonzero means raise the minibuffer frame when the minibuffer
-    is entered.  */
- int minibuffer_auto_raise;
- /* Keymap for reading expressions.  */
- Lisp_Object Vread_expression_map;
- Lisp_Object Vminibuffer_completion_table, Qminibuffer_completion_table;
- Lisp_Object Vminibuffer_completion_predicate, Qminibuffer_completion_predicate;
- Lisp_Object Vminibuffer_completion_confirm, Qminibuffer_completion_confirm;
- Lisp_Object Vminibuffer_completing_file_name;
+ Lisp_Object Qminibuffer_completion_table;
+ Lisp_Object Qminibuffer_completion_predicate;
+ Lisp_Object Qminibuffer_completion_confirm;
  Lisp_Object Quser_variable_p;
  
  Lisp_Object Qminibuffer_default;
@@@ -1028,8 -969,7 +969,8 @@@ Such arguments are used as in `read-fro
  {
    return Feval (read_minibuf (Vread_expression_map, initial_contents,
                              prompt, Qnil, 1, Qread_expression_history,
 -                            make_number (0), Qnil, 0, 0));
 +                            make_number (0), Qnil, 0, 0),
 +              Qnil);
  }
  
  /* Functions that use the minibuffer to read various things. */
@@@ -1822,7 -1762,7 +1763,7 @@@ the values STRING, PREDICATE and `lambd
      {
        /* Bypass intern-soft as that loses for nil.  */
        tem = oblookup (collection,
-                     SDATA (string),
+                     SSDATA (string),
                      SCHARS (string),
                      SBYTES (string));
        if (!SYMBOLP (tem))
            string = Fstring_make_multibyte (string);
  
          tem = oblookup (collection,
-                         SDATA (string),
+                         SSDATA (string),
                          SCHARS (string),
                          SBYTES (string));
        }
@@@ -2075,48 -2015,53 +2016,53 @@@ syms_of_minibuf (void
    Qcase_fold_search = intern_c_string ("case-fold-search");
    staticpro (&Qcase_fold_search);
  
+   DEFVAR_LISP ("read-expression-history", Vread_expression_history,
+              doc: /* A history list for arguments that are Lisp expressions to evaluate.
+ For example, `eval-expression' uses this.  */);
+   Vread_expression_history = Qnil;
    Qread_expression_history = intern_c_string ("read-expression-history");
    staticpro (&Qread_expression_history);
  
-   DEFVAR_LISP ("read-buffer-function", &Vread_buffer_function,
+   DEFVAR_LISP ("read-buffer-function", Vread_buffer_function,
               doc: /* If this is non-nil, `read-buffer' does its work by calling this function.
  The function is called with the arguments passed to `read-buffer'.  */);
    Vread_buffer_function = Qnil;
  
    DEFVAR_BOOL ("read-buffer-completion-ignore-case",
-              &read_buffer_completion_ignore_case,
+              read_buffer_completion_ignore_case,
               doc: /* *Non-nil means completion ignores case when reading a buffer name.  */);
    read_buffer_completion_ignore_case = 0;
  
-   DEFVAR_LISP ("minibuffer-setup-hook", &Vminibuffer_setup_hook,
+   DEFVAR_LISP ("minibuffer-setup-hook", Vminibuffer_setup_hook,
               doc: /* Normal hook run just after entry to minibuffer.  */);
    Vminibuffer_setup_hook = Qnil;
  
-   DEFVAR_LISP ("minibuffer-exit-hook", &Vminibuffer_exit_hook,
+   DEFVAR_LISP ("minibuffer-exit-hook", Vminibuffer_exit_hook,
               doc: /* Normal hook run just after exit from minibuffer.  */);
    Vminibuffer_exit_hook = Qnil;
  
-   DEFVAR_LISP ("history-length", &Vhistory_length,
+   DEFVAR_LISP ("history-length", Vhistory_length,
               doc: /* *Maximum length for history lists before truncation takes place.
  A number means that length; t means infinite.  Truncation takes place
  just after a new element is inserted.  Setting the `history-length'
  property of a history variable overrides this default.  */);
    XSETFASTINT (Vhistory_length, 30);
  
-   DEFVAR_BOOL ("history-delete-duplicates", &history_delete_duplicates,
+   DEFVAR_BOOL ("history-delete-duplicates", history_delete_duplicates,
               doc: /* *Non-nil means to delete duplicates in history.
  If set to t when adding a new history element, all previous identical
  elements are deleted from the history list.  */);
    history_delete_duplicates = 0;
  
-   DEFVAR_LISP ("history-add-new-input", &Vhistory_add_new_input,
+   DEFVAR_LISP ("history-add-new-input", Vhistory_add_new_input,
               doc: /* *Non-nil means to add new elements in history.
  If set to nil, minibuffer reading functions don't add new elements to the
  history list, so it is possible to do this afterwards by calling
  `add-to-history' explicitly.  */);
    Vhistory_add_new_input = Qt;
  
-   DEFVAR_BOOL ("completion-ignore-case", &completion_ignore_case,
+   DEFVAR_BOOL ("completion-ignore-case", completion_ignore_case,
               doc: /* Non-nil means don't consider case significant in completion.
  For file-name completion, `read-file-name-completion-ignore-case'
  controls the behavior, rather than this variable.
@@@ -2124,12 -2069,12 +2070,12 @@@ For buffer name completion, `read-buffe
  controls the behavior, rather than this variable.  */);
    completion_ignore_case = 0;
  
-   DEFVAR_BOOL ("enable-recursive-minibuffers", &enable_recursive_minibuffers,
+   DEFVAR_BOOL ("enable-recursive-minibuffers", enable_recursive_minibuffers,
               doc: /* *Non-nil means to allow minibuffer commands while in the minibuffer.
  This variable makes a difference whenever the minibuffer window is active. */);
    enable_recursive_minibuffers = 0;
  
-   DEFVAR_LISP ("minibuffer-completion-table", &Vminibuffer_completion_table,
+   DEFVAR_LISP ("minibuffer-completion-table", Vminibuffer_completion_table,
               doc: /* Alist or obarray used for completion in the minibuffer.
  This becomes the ALIST argument to `try-completion' and `all-completions'.
  The value can also be a list of strings or a hash table.
@@@ -2144,11 -2089,11 +2090,11 @@@ CODE can be nil, t or `lambda'
    lambda -- return t if STRING is a valid completion as it stands.  */);
    Vminibuffer_completion_table = Qnil;
  
-   DEFVAR_LISP ("minibuffer-completion-predicate", &Vminibuffer_completion_predicate,
+   DEFVAR_LISP ("minibuffer-completion-predicate", Vminibuffer_completion_predicate,
               doc: /* Within call to `completing-read', this holds the PREDICATE argument.  */);
    Vminibuffer_completion_predicate = Qnil;
  
-   DEFVAR_LISP ("minibuffer-completion-confirm", &Vminibuffer_completion_confirm,
+   DEFVAR_LISP ("minibuffer-completion-confirm", Vminibuffer_completion_confirm,
               doc: /* Whether to demand confirmation of completion before exiting minibuffer.
  If nil, confirmation is not required.
  If the value is `confirm', the user may exit with an input that is not
@@@ -2160,15 -2105,15 +2106,15 @@@ If the value is `confirm-after-completi
    Vminibuffer_completion_confirm = Qnil;
  
    DEFVAR_LISP ("minibuffer-completing-file-name",
-              &Vminibuffer_completing_file_name,
+              Vminibuffer_completing_file_name,
               doc: /* Non-nil means completing file names.  */);
    Vminibuffer_completing_file_name = Qnil;
  
-   DEFVAR_LISP ("minibuffer-help-form", &Vminibuffer_help_form,
+   DEFVAR_LISP ("minibuffer-help-form", Vminibuffer_help_form,
               doc: /* Value that `help-form' takes on inside the minibuffer.  */);
    Vminibuffer_help_form = Qnil;
  
-   DEFVAR_LISP ("minibuffer-history-variable", &Vminibuffer_history_variable,
+   DEFVAR_LISP ("minibuffer-history-variable", Vminibuffer_history_variable,
               doc: /* History list symbol to add minibuffer values to.
  Each string of minibuffer input, as it appears on exit from the minibuffer,
  is added with
    (cons STRING (symbol-value minibuffer-history-variable)))  */);
    XSETFASTINT (Vminibuffer_history_variable, 0);
  
-   DEFVAR_LISP ("minibuffer-history-position", &Vminibuffer_history_position,
+   DEFVAR_LISP ("minibuffer-history-position", Vminibuffer_history_position,
               doc: /* Current position of redoing in the history list.  */);
    Vminibuffer_history_position = Qnil;
  
-   DEFVAR_BOOL ("minibuffer-auto-raise", &minibuffer_auto_raise,
+   DEFVAR_BOOL ("minibuffer-auto-raise", minibuffer_auto_raise,
               doc: /* *Non-nil means entering the minibuffer raises the minibuffer's frame.
  Some uses of the echo area also raise that frame (since they use it too).  */);
    minibuffer_auto_raise = 0;
  
-   DEFVAR_LISP ("completion-regexp-list", &Vcompletion_regexp_list,
+   DEFVAR_LISP ("completion-regexp-list", Vcompletion_regexp_list,
               doc: /* List of regexps that should restrict possible completions.
  The basic completion functions only consider a completion acceptable
  if it matches all regular expressions in this list, with
@@@ -2195,14 -2140,14 +2141,14 @@@ functions.  */)
    Vcompletion_regexp_list = Qnil;
  
    DEFVAR_BOOL ("minibuffer-allow-text-properties",
-              &minibuffer_allow_text_properties,
+              minibuffer_allow_text_properties,
               doc: /* Non-nil means `read-from-minibuffer' should not discard text properties.
  This also affects `read-string', but it does not affect `read-minibuffer',
  `read-no-blanks-input', or any of the functions that do minibuffer input
  with completion; they always discard text properties.  */);
    minibuffer_allow_text_properties = 0;
  
-   DEFVAR_LISP ("minibuffer-prompt-properties", &Vminibuffer_prompt_properties,
+   DEFVAR_LISP ("minibuffer-prompt-properties", Vminibuffer_prompt_properties,
               doc: /* Text properties that are added to minibuffer prompts.
  These are in addition to the basic `field' property, and stickiness
  properties.  */);
    Vminibuffer_prompt_properties
      = Fcons (intern_c_string ("read-only"), Fcons (Qt, Qnil));
  
-   DEFVAR_LISP ("read-expression-map", &Vread_expression_map,
+   DEFVAR_LISP ("read-expression-map", Vread_expression_map,
               doc: /* Minibuffer keymap used for reading Lisp expressions.  */);
    Vread_expression_map = Qnil;
  
    defsubr (&Sassoc_string);
    defsubr (&Scompleting_read);
  }
diff --combined src/print.c
index 41aa7fc43876b4f5d82c3e5bc26c0584c12ce337,8bef7a76f4d901d418e0681c1c1e78777d995452..170ccc7fa8497a9473effb8fa2b175ed4a73bdf7
@@@ -1,7 -1,7 +1,7 @@@
  /* Lisp object printing and output streams.
-    Copyright (C) 1985, 1986, 1988, 1993, 1994, 1995, 1997,
-                  1998, 1999, 2000, 2001, 2002, 2003, 2004,
-                  2005, 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
+ Copyright (C) 1985-1986, 1988, 1993-1995, 1997-2011
+   Free Software Foundation, Inc.
  
  This file is part of GNU Emacs.
  
@@@ -37,49 -37,25 +37,25 @@@ along with GNU Emacs.  If not, see <htt
  #include "termhooks.h"                /* For struct terminal.  */
  #include "font.h"
  
- Lisp_Object Vstandard_output, Qstandard_output;
+ Lisp_Object Qstandard_output;
  
  Lisp_Object Qtemp_buffer_setup_hook;
  
  /* These are used to print like we read.  */
  
- Lisp_Object Vfloat_output_format, Qfloat_output_format;
+ Lisp_Object Qfloat_output_format;
  
  #include <math.h>
  
  #if STDC_HEADERS
  #include <float.h>
  #endif
+ #include <ftoastr.h>
  
  /* Default to values appropriate for IEEE floating point.  */
- #ifndef FLT_RADIX
- #define FLT_RADIX 2
- #endif
- #ifndef DBL_MANT_DIG
- #define DBL_MANT_DIG 53
- #endif
  #ifndef DBL_DIG
  #define DBL_DIG 15
  #endif
- #ifndef DBL_MIN
- #define DBL_MIN 2.2250738585072014e-308
- #endif
- #ifdef DBL_MIN_REPLACEMENT
- #undef DBL_MIN
- #define DBL_MIN DBL_MIN_REPLACEMENT
- #endif
- /* Define DOUBLE_DIGITS_BOUND, an upper bound on the number of decimal digits
-    needed to express a float without losing information.
-    The general-case formula is valid for the usual case, IEEE floating point,
-    but many compilers can't optimize the formula to an integer constant,
-    so make a special case for it.  */
- #if FLT_RADIX == 2 && DBL_MANT_DIG == 53
- #define DOUBLE_DIGITS_BOUND 17 /* IEEE floating point */
- #else
- #define DOUBLE_DIGITS_BOUND ((int) ceil (log10 (pow (FLT_RADIX, DBL_MANT_DIG))))
- #endif
  
  /* Avoid actual stack overflow in print.  */
  int print_depth;
@@@ -102,64 -78,18 +78,18 @@@ EMACS_INT print_buffer_pos
  /* Bytes stored in print_buffer.  */
  EMACS_INT print_buffer_pos_byte;
  
- /* Maximum length of list to print in full; noninteger means
-    effectively infinity */
- Lisp_Object Vprint_length;
- /* Maximum depth of list to print in full; noninteger means
-    effectively infinity.  */
- Lisp_Object Vprint_level;
- /* Nonzero means print newlines in strings as \n.  */
- int print_escape_newlines;
- /* Nonzero means to print single-byte non-ascii characters in strings as
-    octal escapes.  */
- int print_escape_nonascii;
- /* Nonzero means to print multibyte characters in strings as hex escapes.  */
- int print_escape_multibyte;
  Lisp_Object Qprint_escape_newlines;
  Lisp_Object Qprint_escape_multibyte, Qprint_escape_nonascii;
  
- /* Nonzero means print (quote foo) forms as 'foo, etc.  */
- int print_quoted;
- /* Non-nil means print #: before uninterned symbols.  */
- Lisp_Object Vprint_gensym;
- /* Non-nil means print recursive structures using #n= and #n# syntax.  */
- Lisp_Object Vprint_circle;
- /* Non-nil means keep continuous number for #n= and #n# syntax
-    between several print functions.  */
- Lisp_Object Vprint_continuous_numbering;
- /* Vprint_number_table is a vector like [OBJ1 STAT1 OBJ2 STAT2 ...],
-    where OBJn are objects going to be printed, and STATn are their status,
-    which may be different meanings during process.  See the comments of
-    the functions print and print_preprocess for details.
-    print_number_index keeps the last position the next object should be added,
-    twice of which is the actual vector position in Vprint_number_table.  */
+ /* Vprint_number_table is a table, that keeps objects that are going to
+    be printed, to allow use of #n= and #n# to express sharing.
+    For any given object, the table can give the following values:
+      t    the object will be printed only once.
+      -N   the object will be printed several times and will take number N.
+      N    the object has been printed so we can refer to it as #N#.
+    print_number_index holds the largest N already used.
+    N has to be striclty larger than 0 since we need to distinguish -N.  */
  int print_number_index;
- Lisp_Object Vprint_number_table;
- /* PRINT_NUMBER_OBJECT returns the I'th object in Vprint_number_table TABLE.
-    PRINT_NUMBER_STATUS returns the status of the I'th object in TABLE.
-    See the comment of the variable Vprint_number_table.  */
- #define PRINT_NUMBER_OBJECT(table,i) XVECTOR ((table))->contents[(i) * 2]
- #define PRINT_NUMBER_STATUS(table,i) XVECTOR ((table))->contents[(i) * 2 + 1]
  void print_interval (INTERVAL interval, Lisp_Object printcharfun);
  
  /* GDB resets this to zero on W32 to disable OutputDebugString calls.  */
@@@ -481,7 -411,7 +411,7 @@@ print_string (Lisp_Object string, Lisp_
        }
        else
        /* No need to copy, since output to print_buffer can't GC.  */
-       strout (SDATA (string),
+       strout (SSDATA (string),
                chars, SBYTES (string),
                printcharfun, STRING_MULTIBYTE (string));
      }
@@@ -544,11 -474,11 +474,11 @@@ write_string (const char *data, int siz
    PRINTFINISH;
  }
  
- /* Used from outside of print.c to print a block of SIZE
-    single-byte chars at DATA on a specified stream PRINTCHARFUN.
+ /* Used to print a block of SIZE single-byte chars at DATA on a
+    specified stream PRINTCHARFUN.
     Do not use this on the contents of a Lisp string.  */
  
- void
static void
  write_string_1 (const char *data, int size, Lisp_Object printcharfun)
  {
    PRINTDECLARE;
@@@ -652,9 -582,9 +582,9 @@@ usage: (with-output-to-temp-buffer BUFN
    Lisp_Object buf, val;
  
    GCPRO1(args);
 -  name = Feval (Fcar (args));
 +  name = eval_sub (Fcar (args));
    CHECK_STRING (name);
-   temp_output_buffer_setup (SDATA (name));
+   temp_output_buffer_setup (SSDATA (name));
    buf = Vstandard_output;
    UNGCPRO;
  
@@@ -1082,6 -1012,7 +1012,7 @@@ print_error_message (Lisp_Object data, 
   * case of -1e307 in 20d float_output_format. What is one to do (short of
   * re-writing _doprnt to be more sane)?
   *                    -wsr
+  * Given the above, the buffer must be least FLOAT_TO_STRING_BUFSIZE bytes.
   */
  
  void
@@@ -1128,20 -1059,8 +1059,8 @@@ float_to_string (unsigned char *buf, do
    lose:
      {
        /* Generate the fewest number of digits that represent the
-        floating point value without losing information.
-        The following method is simple but a bit slow.
-        For ideas about speeding things up, please see:
-        Guy L Steele Jr & Jon L White, How to print floating-point numbers
-        accurately.  SIGPLAN notices 25, 6 (June 1990), 112-126.
-        Robert G Burger & R Kent Dybvig, Printing floating point numbers
-        quickly and accurately, SIGPLAN notices 31, 5 (May 1996), 108-116.  */
-       width = fabs (data) < DBL_MIN ? 1 : DBL_DIG;
-       do
-       sprintf (buf, "%.*g", width, data);
-       while (width++ < DOUBLE_DIGITS_BOUND && atof (buf) != data);
+        floating point value without losing information.  */
+       dtoastr (buf, FLOAT_TO_STRING_BUFSIZE, 0, 0, data);
      }
    else                        /* oink oink */
      {
        if (cp[1] != 0)
        goto lose;
  
-       sprintf (buf, SDATA (Vfloat_output_format), data);
+       sprintf (buf, SSDATA (Vfloat_output_format), data);
      }
  
    /* Make sure there is a decimal point with digit after, or an
@@@ -1226,33 -1145,24 +1145,24 @@@ print (Lisp_Object obj, register Lisp_O
    /* Construct Vprint_number_table for print-gensym and print-circle.  */
    if (!NILP (Vprint_gensym) || !NILP (Vprint_circle))
      {
-       int i, start, index;
-       start = index = print_number_index;
        /* Construct Vprint_number_table.
         This increments print_number_index for the objects added.  */
        print_depth = 0;
        print_preprocess (obj);
  
-       /* Remove unnecessary objects, which appear only once in OBJ;
-        that is, whose status is Qnil.  Compactify the necessary objects.  */
-       for (i = start; i < print_number_index; i++)
-       if (!NILP (PRINT_NUMBER_STATUS (Vprint_number_table, i)))
-         {
-           PRINT_NUMBER_OBJECT (Vprint_number_table, index)
-             = PRINT_NUMBER_OBJECT (Vprint_number_table, i);
-           index++;
-         }
-       /* Clear out objects outside the active part of the table.  */
-       for (i = index; i < print_number_index; i++)
-       PRINT_NUMBER_OBJECT (Vprint_number_table, i) = Qnil;
-       /* Reset the status field for the next print step.  Now this
-        field means whether the object has already been printed.  */
-       for (i = start; i < print_number_index; i++)
-       PRINT_NUMBER_STATUS (Vprint_number_table, i) = Qnil;
+       if (HASH_TABLE_P (Vprint_number_table))
+       { /* Remove unnecessary objects, which appear only once in OBJ;
+            that is, whose status is Qt.
+            Maybe a better way to do that is to copy elements to
+            a new hash table.  */
+         struct Lisp_Hash_Table *h = XHASH_TABLE (Vprint_number_table);
+         int i;
  
-       print_number_index = index;
+         for (i = 0; i < HASH_TABLE_SIZE (h); ++i)
+           if (!NILP (HASH_HASH (h, i))
+               && EQ (HASH_VALUE (h, i), Qt))
+             Fremhash (HASH_KEY (h, i), Vprint_number_table);
+       }
      }
  
    print_depth = 0;
@@@ -1294,54 -1204,46 +1204,46 @@@ print_preprocess (Lisp_Object obj
  
   loop:
    if (STRINGP (obj) || CONSP (obj) || VECTORP (obj)
 -      || COMPILEDP (obj) || CHAR_TABLE_P (obj) || SUB_CHAR_TABLE_P (obj)
 +      || FUNVECP (obj) || CHAR_TABLE_P (obj) || SUB_CHAR_TABLE_P (obj)
        || HASH_TABLE_P (obj)
        || (! NILP (Vprint_gensym)
          && SYMBOLP (obj)
          && !SYMBOL_INTERNED_P (obj)))
      {
+       if (!HASH_TABLE_P (Vprint_number_table))
+       {
+         Lisp_Object args[2];
+         args[0] = QCtest;
+         args[1] = Qeq;
+         Vprint_number_table = Fmake_hash_table (2, args);
+       }
        /* In case print-circle is nil and print-gensym is t,
         add OBJ to Vprint_number_table only when OBJ is a symbol.  */
        if (! NILP (Vprint_circle) || SYMBOLP (obj))
        {
-         for (i = 0; i < print_number_index; i++)
-           if (EQ (PRINT_NUMBER_OBJECT (Vprint_number_table, i), obj))
-             {
-               /* OBJ appears more than once.  Let's remember that.  */
-               PRINT_NUMBER_STATUS (Vprint_number_table, i) = Qt;
-                 print_depth--;
-               return;
-             }
-         /* OBJ is not yet recorded.  Let's add to the table.  */
-         if (print_number_index == 0)
-           {
-             /* Initialize the table.  */
-             Vprint_number_table = Fmake_vector (make_number (40), Qnil);
-           }
-         else if (XVECTOR (Vprint_number_table)->size == print_number_index * 2)
-           {
-             /* Reallocate the table.  */
-             int i = print_number_index * 4;
-             Lisp_Object old_table = Vprint_number_table;
-             Vprint_number_table = Fmake_vector (make_number (i), Qnil);
-             for (i = 0; i < print_number_index; i++)
+         Lisp_Object num = Fgethash (obj, Vprint_number_table, Qnil);
+         if (!NILP (num)
+             /* If Vprint_continuous_numbering is non-nil and OBJ is a gensym,
+                always print the gensym with a number.  This is a special for
+                the lisp function byte-compile-output-docform.  */
+             || (!NILP (Vprint_continuous_numbering)
+                 && SYMBOLP (obj)
+                 && !SYMBOL_INTERNED_P (obj)))
+           { /* OBJ appears more than once.    Let's remember that.  */
+             if (!INTEGERP (num))
                {
-                 PRINT_NUMBER_OBJECT (Vprint_number_table, i)
-                   = PRINT_NUMBER_OBJECT (old_table, i);
-                 PRINT_NUMBER_STATUS (Vprint_number_table, i)
-                   = PRINT_NUMBER_STATUS (old_table, i);
+                 print_number_index++;
+                 /* Negative number indicates it hasn't been printed yet.  */
+                 Fputhash (obj, make_number (- print_number_index),
+                           Vprint_number_table);
                }
+             print_depth--;
+             return;
            }
-         PRINT_NUMBER_OBJECT (Vprint_number_table, print_number_index) = obj;
-         /* If Vprint_continuous_numbering is non-nil and OBJ is a gensym,
-            always print the gensym with a number.  This is a special for
-            the lisp function byte-compile-output-docform.  */
-         if (!NILP (Vprint_continuous_numbering)
-             && SYMBOLP (obj)
-             && !SYMBOL_INTERNED_P (obj))
-           PRINT_NUMBER_STATUS (Vprint_number_table, print_number_index) = Qt;
-         print_number_index++;
+         else
+           /* OBJ is not yet recorded.  Let's add to the table.  */
+           Fputhash (obj, Qt, Vprint_number_table);
        }
  
        switch (XTYPE (obj))
            print_preprocess (XVECTOR (obj)->contents[i]);
          if (HASH_TABLE_P (obj))
            { /* For hash tables, the key_and_value slot is past
-               `size' because it needs to be marked specially in case
-               the table is weak.  */
+                `size' because it needs to be marked specially in case
+                the table is weak.  */
              struct Lisp_Hash_Table *h = XHASH_TABLE (obj);
              print_preprocess (h->key_and_value);
            }
@@@ -1392,10 -1294,6 +1294,6 @@@ print_preprocess_string (INTERVAL inter
    print_preprocess (interval->plist);
  }
  
- /* A flag to control printing of `charset' text property.
-    The default value is Qdefault. */
- Lisp_Object Vprint_charset_text_property;
  static void print_check_string_charset_prop (INTERVAL interval, Lisp_Object string);
  
  #define PRINT_STRING_NON_CHARSET_FOUND 1
@@@ -1488,7 -1386,7 +1386,7 @@@ print_object (Lisp_Object obj, registe
  
    /* Detect circularities and truncate them.  */
    if (STRINGP (obj) || CONSP (obj) || VECTORP (obj)
 -      || COMPILEDP (obj) || CHAR_TABLE_P (obj) || SUB_CHAR_TABLE_P (obj)
 +      || FUNVECP (obj) || CHAR_TABLE_P (obj) || SUB_CHAR_TABLE_P (obj)
        || HASH_TABLE_P (obj)
        || (! NILP (Vprint_gensym)
          && SYMBOLP (obj)
        else
        {
          /* With the print-circle feature.  */
-         int i;
-         for (i = 0; i < print_number_index; i++)
-           if (EQ (PRINT_NUMBER_OBJECT (Vprint_number_table, i), obj))
-             {
-               if (NILP (PRINT_NUMBER_STATUS (Vprint_number_table, i)))
-                 {
-                   /* Add a prefix #n= if OBJ has not yet been printed;
-                      that is, its status field is nil.  */
-                   sprintf (buf, "#%d=", i + 1);
-                   strout (buf, -1, -1, printcharfun, 0);
-                   /* OBJ is going to be printed.  Set the status to t.  */
-                   PRINT_NUMBER_STATUS (Vprint_number_table, i) = Qt;
-                   break;
-                 }
-               else
-                 {
-                   /* Just print #n# if OBJ has already been printed.  */
-                   sprintf (buf, "#%d#", i + 1);
-                   strout (buf, -1, -1, printcharfun, 0);
-                   return;
-                 }
-             }
+         Lisp_Object num = Fgethash (obj, Vprint_number_table, Qnil);
+         if (INTEGERP (num))
+           {
+             int n = XINT (num);
+             if (n < 0)
+               { /* Add a prefix #n= if OBJ has not yet been printed;
+                    that is, its status field is nil.  */
+                 sprintf (buf, "#%d=", -n);
+                 strout (buf, -1, -1, printcharfun, 0);
+                 /* OBJ is going to be printed.  Remember that fact.  */
+                 Fputhash (obj, make_number (- n), Vprint_number_table);
+               }
+             else
+               {
+                 /* Just print #n# if OBJ has already been printed.  */
+                 sprintf (buf, "#%d#", n);
+                 strout (buf, -1, -1, printcharfun, 0);
+                 return;
+               }
+           }
        }
      }
  
  
      case Lisp_Float:
        {
-       char pigbuf[350];       /* see comments in float_to_string */
+       char pigbuf[FLOAT_TO_STRING_BUFSIZE];
  
        float_to_string (pigbuf, XFLOAT_DATA (obj));
        strout (pigbuf, -1, -1, printcharfun, 0);
                  PRINTCHAR ('f');
                }
              else if (multibyte
-                      && (CHAR_BYTE8_P (c) 
+                      && (CHAR_BYTE8_P (c)
                           || (! ASCII_CHAR_P (c) && print_escape_multibyte)))
                {
                  /* When multibyte is disabled,
                    /* With the print-circle feature.  */
                    if (i != 0)
                      {
-                       int i;
-                       for (i = 0; i < print_number_index; i++)
-                         if (EQ (PRINT_NUMBER_OBJECT (Vprint_number_table, i),
-                                 obj))
-                           {
-                             if (NILP (PRINT_NUMBER_STATUS (Vprint_number_table, i)))
-                               {
-                                 strout (" . ", 3, 3, printcharfun, 0);
-                                 print_object (obj, printcharfun, escapeflag);
-                               }
-                             else
-                               {
-                                 sprintf (buf, " . #%d#", i + 1);
-                                 strout (buf, -1, -1, printcharfun, 0);
-                               }
-                             goto end_of_list;
-                           }
+                       Lisp_Object num = Fgethash (obj, Vprint_number_table, Qnil);
+                       if (INTEGERP (num))
+                         {
+                           strout (" . ", 3, 3, printcharfun, 0);
+                           print_object (obj, printcharfun, escapeflag);
+                           goto end_of_list;
+                         }
                      }
                  }
  
          if (NATNUMP (Vprint_length)
              && XFASTINT (Vprint_length) < size)
            size = XFASTINT (Vprint_length);
-         
          PRINTCHAR ('(');
          for (i = 0; i < size; i++)
            if (!NILP (HASH_HASH (h, i)))
        else
        {
          EMACS_INT size = XVECTOR (obj)->size;
 -        if (COMPILEDP (obj))
 +        if (FUNVECP (obj))
            {
              PRINTCHAR ('#');
              size &= PSEUDOVECTOR_SIZE_MASK;
@@@ -2275,7 -2161,7 +2161,7 @@@ syms_of_print (void
    Qtemp_buffer_setup_hook = intern_c_string ("temp-buffer-setup-hook");
    staticpro (&Qtemp_buffer_setup_hook);
  
-   DEFVAR_LISP ("standard-output", &Vstandard_output,
+   DEFVAR_LISP ("standard-output", Vstandard_output,
               doc: /* Output stream `print' uses by default for outputting a character.
  This may be any function of one argument.
  It may also be a buffer (output is inserted before point)
@@@ -2285,7 -2171,7 +2171,7 @@@ or the symbol t (output appears in the 
    Qstandard_output = intern_c_string ("standard-output");
    staticpro (&Qstandard_output);
  
-   DEFVAR_LISP ("float-output-format", &Vfloat_output_format,
+   DEFVAR_LISP ("float-output-format", Vfloat_output_format,
               doc: /* The format descriptor string used to print floats.
  This is a %-spec like those accepted by `printf' in C,
  but with some restrictions.  It must start with the two characters `%.'.
@@@ -2305,22 -2191,22 +2191,22 @@@ that represents the number without losi
    Qfloat_output_format = intern_c_string ("float-output-format");
    staticpro (&Qfloat_output_format);
  
-   DEFVAR_LISP ("print-length", &Vprint_length,
+   DEFVAR_LISP ("print-length", Vprint_length,
               doc: /* Maximum length of list to print before abbreviating.
  A value of nil means no limit.  See also `eval-expression-print-length'.  */);
    Vprint_length = Qnil;
  
-   DEFVAR_LISP ("print-level", &Vprint_level,
+   DEFVAR_LISP ("print-level", Vprint_level,
               doc: /* Maximum depth of list nesting to print before abbreviating.
  A value of nil means no limit.  See also `eval-expression-print-level'.  */);
    Vprint_level = Qnil;
  
-   DEFVAR_BOOL ("print-escape-newlines", &print_escape_newlines,
+   DEFVAR_BOOL ("print-escape-newlines", print_escape_newlines,
               doc: /* Non-nil means print newlines in strings as `\\n'.
  Also print formfeeds as `\\f'.  */);
    print_escape_newlines = 0;
  
-   DEFVAR_BOOL ("print-escape-nonascii", &print_escape_nonascii,
+   DEFVAR_BOOL ("print-escape-nonascii", print_escape_nonascii,
               doc: /* Non-nil means print unibyte non-ASCII chars in strings as \\OOO.
  \(OOO is the octal representation of the character code.)
  Only single-byte characters are affected, and only in `prin1'.
@@@ -2328,18 -2214,18 +2214,18 @@@ When the output goes in a multibyte buf
  enabled regardless of the value of the variable.  */);
    print_escape_nonascii = 0;
  
-   DEFVAR_BOOL ("print-escape-multibyte", &print_escape_multibyte,
+   DEFVAR_BOOL ("print-escape-multibyte", print_escape_multibyte,
               doc: /* Non-nil means print multibyte characters in strings as \\xXXXX.
  \(XXXX is the hex representation of the character code.)
  This affects only `prin1'.  */);
    print_escape_multibyte = 0;
  
-   DEFVAR_BOOL ("print-quoted", &print_quoted,
+   DEFVAR_BOOL ("print-quoted", print_quoted,
               doc: /* Non-nil means print quoted forms with reader syntax.
  I.e., (quote foo) prints as 'foo, (function foo) as #'foo.  */);
    print_quoted = 0;
  
-   DEFVAR_LISP ("print-gensym", &Vprint_gensym,
+   DEFVAR_LISP ("print-gensym", Vprint_gensym,
               doc: /* Non-nil means print uninterned symbols so they will read as uninterned.
  I.e., the value of (make-symbol \"foobar\") prints as #:foobar.
  When the uninterned symbol appears within a recursive data structure,
@@@ -2348,7 -2234,7 +2234,7 @@@ constructs as needed, so that multiple 
  shared once again when the text is read back.  */);
    Vprint_gensym = Qnil;
  
-   DEFVAR_LISP ("print-circle", &Vprint_circle,
+   DEFVAR_LISP ("print-circle", Vprint_circle,
               doc: /* *Non-nil means print recursive structures using #N= and #N# syntax.
  If nil, printing proceeds recursively and may lead to
  `max-lisp-eval-depth' being exceeded or an error may occur:
@@@ -2360,14 -2246,14 +2246,14 @@@ representation) and `#N#' in place of e
  where N is a positive decimal integer.  */);
    Vprint_circle = Qnil;
  
-   DEFVAR_LISP ("print-continuous-numbering", &Vprint_continuous_numbering,
+   DEFVAR_LISP ("print-continuous-numbering", Vprint_continuous_numbering,
               doc: /* *Non-nil means number continuously across print calls.
  This affects the numbers printed for #N= labels and #M# references.
  See also `print-circle', `print-gensym', and `print-number-table'.
  This variable should not be set with `setq'; bind it with a `let' instead.  */);
    Vprint_continuous_numbering = Qnil;
  
-   DEFVAR_LISP ("print-number-table", &Vprint_number_table,
+   DEFVAR_LISP ("print-number-table", Vprint_number_table,
               doc: /* A vector used internally to produce `#N=' labels and `#N#' references.
  The Lisp printer uses this vector to detect Lisp objects referenced more
  than once.
@@@ -2380,7 -2266,7 +2266,7 @@@ the printing done so far has not found 
  that need to be recorded in the table.  */);
    Vprint_number_table = Qnil;
  
-   DEFVAR_LISP ("print-charset-text-property", &Vprint_charset_text_property,
+   DEFVAR_LISP ("print-charset-text-property", Vprint_charset_text_property,
               doc: /* A flag to control printing of `charset' text property on printing a string.
  The value must be nil, t, or `default'.
  
@@@ -2425,6 -2311,3 +2311,3 @@@ priorities.  */)
  
    defsubr (&Swith_output_to_temp_buffer);
  }
- /* arch-tag: bc797170-94ae-41de-86e3-75e20f8f7a39
-    (do not change this comment) */