changeset 108460:00dd71f829e6

Merge from mainline.
author Katsumi Yamaoka <katsumi@flagship2>
date Thu, 06 May 2010 12:51:40 +0000
parents 1d1025faed5f (current diff) d9345841fefd (diff)
children 781e675fa6f4
files
diffstat 46 files changed, 391 insertions(+), 299 deletions(-) [+]
line wrap: on
line diff
--- a/ChangeLog	Wed May 05 10:17:53 2010 +0000
+++ b/ChangeLog	Thu May 06 12:51:40 2010 +0000
@@ -1,3 +1,10 @@
+2010-05-06  Glenn Morris  <rgm@gnu.org>
+
+	* configure.in (AC_PROG_LN_S): Remove test, nothing uses @LN_S@.
+
+	* Makefile.in (CPP, C_SWITCH_SYSTEM, ALLOCA, LN_S, C_SWITCH_X_SITE)
+	(LD_SWITCH_X_SITE): Remove unused variables.
+
 2010-05-04  Glenn Morris  <rgm@gnu.org>
 
 	* configure.in (LD_SWITCH_X_SITE_AUX): Use AC_SUBST only, not AC_DEFINE
--- a/Makefile.in	Wed May 05 10:17:53 2010 +0000
+++ b/Makefile.in	Thu May 06 12:51:40 2010 +0000
@@ -69,15 +69,9 @@
 # ==================== Things `configure' Might Edit ====================
 
 CC=@CC@
-CPP=@CPP@
-C_SWITCH_SYSTEM=@C_SWITCH_SYSTEM@
-ALLOCA=@ALLOCA@
-LN_S=@LN_S@
 CFLAGS=@CFLAGS@
 LDFLAGS=@LDFLAGS@
 CPPFLAGS=@CPPFLAGS@
-C_SWITCH_X_SITE=@C_SWITCH_X_SITE@
-LD_SWITCH_X_SITE=@LD_SWITCH_X_SITE@
 EXEEXT=@EXEEXT@
 MAKEINFO=@MAKEINFO@
 
--- a/configure	Wed May 05 10:17:53 2010 +0000
+++ b/configure	Thu May 06 12:51:40 2010 +0000
@@ -694,7 +694,6 @@
 CPP
 GREP
 EGREP
-LN_S
 INSTALL_PROGRAM
 INSTALL_SCRIPT
 INSTALL_DATA
@@ -5026,17 +5025,6 @@
 
 #### Some other nice autoconf tests.
 
-{ $as_echo "$as_me:$LINENO: checking whether ln -s works" >&5
-$as_echo_n "checking whether ln -s works... " >&6; }
-LN_S=$as_ln_s
-if test "$LN_S" = "ln -s"; then
-  { $as_echo "$as_me:$LINENO: result: yes" >&5
-$as_echo "yes" >&6; }
-else
-  { $as_echo "$as_me:$LINENO: result: no, using $LN_S" >&5
-$as_echo "no, using $LN_S" >&6; }
-fi
-
 ac_ext=c
 ac_cpp='$CPP $CPPFLAGS'
 ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
@@ -6021,7 +6009,7 @@
 ## Some programs in src produce warnings saying certain subprograms
 ## are too complex and need a MAXMEM value greater than 2000 for
 ## additional optimization.  --nils@exp-math.uni-essen.de
-test "$opsys" = "aix4.2" && test "x$GCC" = "xyes" && \
+test "$opsys" = "aix4.2" && test "x$GCC" != "xyes" && \
   C_SWITCH_SYSTEM="-ma -qmaxmem=4000"
 ## gnu-linux might need -D_BSD_SOURCE on old libc5 systems.
 ## It is redundant in glibc2, since we define _GNU_SOURCE.
--- a/configure.in	Wed May 05 10:17:53 2010 +0000
+++ b/configure.in	Thu May 06 12:51:40 2010 +0000
@@ -755,7 +755,6 @@
 #### Some other nice autoconf tests.
 
 dnl checks for programs
-AC_PROG_LN_S
 AC_PROG_CPP
 AC_PROG_INSTALL
 if test "x$RANLIB" = x; then
--- a/lib-src/ChangeLog	Wed May 05 10:17:53 2010 +0000
+++ b/lib-src/ChangeLog	Thu May 06 12:51:40 2010 +0000
@@ -1,3 +1,12 @@
+2010-05-06  Glenn Morris  <rgm@gnu.org>
+
+	* Makefile.in: Minimize blessmail-related cpp usage.
+	(BLESSMAIL_TARGET): New variable.
+	(MOVEMAIL_NEEDS_BLESSING): Remove, replace by above variable.
+	(blessmail): Always define this rule.
+	(need-blessmail): New rule, split out from maybe-blessmail.
+	(maybe-blessmail): Use BLESSMAIL_TARGET.
+
 2010-05-04  Glenn Morris  <rgm@gnu.org>
 
 	* Makefile.in: Use @C_SWITCH_SYSTEM@, @C_SWITCH_MACHINE@ rather than
@@ -7,12 +16,6 @@
 
 	* Makefile.in (LIBS_MACHINE): Remove all uses, unused.
 
-2010-04-18  Juanma Barranquero  <lekktu@gmail.com>
-
-	Add stubs for Windows, required after CVE-2010-0825 change.
-	* ntlib.c (getgid, getegid, setegid): New stubs.
-	* ntlib.h (getgid, getegid, setegid): Declare them.
-
 2010-04-12  Dan Nicolaescu  <dann@ics.uci.edu>
 
 	* Makefile.in (ALL_CFLAGS, LINK_CFLAGS, CPP_CFLAGS): Move to the
@@ -3003,7 +3006,7 @@
 
 2000-03-02  Gerd Moellmann  <gerd@gnu.org>
 
-	* etags.c (lisp_suffixes)  Add `LSP'.
+	* etags.c (lisp_suffixes): Add `LSP'.
 
 2000-02-10  Francesco Potortì  <pot@gnu.org>
 
--- a/lib-src/Makefile.in	Wed May 05 10:17:53 2010 +0000
+++ b/lib-src/Makefile.in	Thu May 06 12:51:40 2010 +0000
@@ -1,7 +1,6 @@
 # Makefile for lib-src subdirectory in GNU Emacs.
 # Copyright (C) 1985, 1987, 1988, 1993, 1994, 2001, 2002, 2003, 2004,
-#               2005, 2006, 2007, 2008, 2009, 2010
-#               Free Software Foundation, Inc.
+#   2005, 2006, 2007, 2008, 2009, 2010  Free Software Foundation, Inc.
 
 # This file is part of GNU Emacs.
 
@@ -132,6 +131,9 @@
 # If neither flag is set, blessmail is used.
 MOVE_FLAGS=
 
+## May be reset below by cpp.
+BLESSMAIL_TARGET=
+
 ## -lkrb if HAVE_LIBKRB or -lkrb4 if HAVE_LIBKRB4
 KRB4LIB=@KRB4LIB@
 ## -ldes if HAVE_LIBDES or -ldes425 if HAVE_LIBDES425
@@ -170,22 +172,14 @@
 #ifndef LIBS_SYSTEM
 #define LIBS_SYSTEM
 #endif
+LOADLIBES=LIBS_SYSTEM
 
-#undef MOVEMAIL_NEEDS_BLESSING
 #ifndef MAIL_USE_FLOCK
 #ifndef MAIL_USE_LOCKF
-#define MOVEMAIL_NEEDS_BLESSING
+BLESSMAIL_TARGET = need-blessmail
 #endif
 #endif
 
-#ifdef MOVEMAIL_NEEDS_BLESSING
-#define BLESSMAIL blessmail
-#else
-#define BLESSMAIL
-#endif
-
-LOADLIBES=LIBS_SYSTEM
-
 
 .SUFFIXES: .m
 
@@ -218,14 +212,14 @@
 vcdiff: $(srcdir)/vcdiff
 	-cp -p $(srcdir)/vcdiff vcdiff
 
-#ifdef MOVEMAIL_NEEDS_BLESSING
+/* Only used if we need blessmail, but no harm in always defining.
+   This makes the actual blessmail executable.  */
 blessmail:
 	$(EMACS) $(EMACSOPT) -l $(srcdir)/../lisp/mail/blessmail.el
 	chmod +x blessmail
-#endif
 
-maybe-blessmail: BLESSMAIL
-#ifdef MOVEMAIL_NEEDS_BLESSING
+/* This checks if we need to run blessmail.  */
+need-blessmail: blessmail
 /* Don\'t charge ahead and do it!  Let the installer decide.
 	  ./blessmail $(DESTDIR)${archlibdir}/movemail${EXEEXT}  */
 	@if [ `wc -l <blessmail` != 2 ] ; then \
@@ -235,7 +229,9 @@
 	  echo as root, to give  movemail${EXEEXT}  appropriate permissions.; \
 	  echo Do that after running  make install.; \
 	fi
-#endif
+
+/* This is the target invoked by the top-level Makefile.  */
+maybe-blessmail: $(BLESSMAIL_TARGET)
 
 /* Install the internal utilities.  Until they are installed, we can
    just run them directly from lib-src.  */
--- a/lisp/ChangeLog	Wed May 05 10:17:53 2010 +0000
+++ b/lisp/ChangeLog	Thu May 06 12:51:40 2010 +0000
@@ -1,3 +1,81 @@
+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.
--- a/lisp/emacs-lisp/easy-mmode.el	Wed May 05 10:17:53 2010 +0000
+++ b/lisp/emacs-lisp/easy-mmode.el	Thu May 06 12:51:40 2010 +0000
@@ -117,7 +117,10 @@
 :keymap MAP	Same as the KEYMAP argument.
 :require SYM	Same as in `defcustom'.
 :variable PLACE	The location (as can be used with `setf') to use instead
-		of the variable MODE to store the state of the mode.
+		of the variable MODE to store the state of the mode.  PLACE
+		can also be of the form (GET . SET) where GET is an expression
+		that returns the current state and SET is a function that takes
+		a new state and sets it.
 
 For example, you could write
   (define-minor-mode foo-mode \"If enabled, foo on you!\"
@@ -149,8 +152,9 @@
 	 (type nil)
 	 (extra-args nil)
 	 (extra-keywords nil)
-         (variable nil)
-         (modefun mode)
+         (variable nil)          ;The PLACE where the state is stored.
+         (setter nil)            ;The function (if any) to set the mode var.
+         (modefun mode)          ;The minor mode function name we're defining.
 	 (require t)
 	 (hook (intern (concat mode-name "-hook")))
 	 (hook-on (intern (concat mode-name "-on-hook")))
@@ -171,7 +175,12 @@
 	(:type (setq type (list :type (pop body))))
 	(:require (setq require (pop body)))
 	(:keymap (setq keymap (pop body)))
-        (:variable (setq variable (setq mode (pop body))))
+        (:variable (setq variable (pop body))
+         (if (not (functionp (cdr-safe variable)))
+             ;; PLACE is not of the form (GET . SET).
+             (setq mode variable)
+           (setq mode (car variable))
+           (setq setter (cdr variable))))
 	(t (push keyw extra-keywords) (push (pop body) extra-keywords))))
 
     (setq keymap-sym (if (and keymap (symbolp keymap)) keymap
@@ -230,7 +239,8 @@
 	 ;; repeat-command still does the toggling correctly.
 	 (interactive (list (or current-prefix-arg 'toggle)))
 	 (let ((,last-message (current-message)))
-           (,(if (symbolp mode) 'setq 'setf) ,mode
+           (,@(if setter (list setter)
+                (list (if (symbolp mode) 'setq 'setf) mode))
             (if (eq arg 'toggle)
                 (not ,mode)
               ;; A nil argument also means ON now.
@@ -240,7 +250,8 @@
            (run-hooks ',hook (if ,mode ',hook-on ',hook-off))
            (if (called-interactively-p 'any)
                (progn
-                 ,(if globalp `(customize-mark-as-set ',mode))
+                 ,(if (and globalp (symbolp mode))
+                      `(customize-mark-as-set ',mode))
                  ;; Avoid overwriting a message shown by the body,
                  ;; but do overwrite previous messages.
                  (unless (and (current-message)
@@ -265,10 +276,15 @@
 		     (t (error "Invalid keymap %S" ,keymap))))
 	     ,(format "Keymap for `%s'." mode-name)))
 
-       ,(unless variable
-          `(add-minor-mode ',mode ',lighter
+       ,(if (not (symbolp mode))
+            (if (or lighter keymap)
+                (error ":lighter and :keymap unsupported with mode expression %s" mode))
+          `(with-no-warnings
+             (add-minor-mode ',mode ',lighter
                            ,(if keymap keymap-sym
-                              `(if (boundp ',keymap-sym) ,keymap-sym)))))))
+                                `(if (boundp ',keymap-sym) ,keymap-sym))
+                             nil
+                             ,(unless (eq mode modefun) 'modefun)))))))
 
 ;;;
 ;;; make global minor mode
--- a/lisp/files.el	Wed May 05 10:17:53 2010 +0000
+++ b/lisp/files.el	Thu May 06 12:51:40 2010 +0000
@@ -5150,29 +5150,25 @@
         (kill-buffer-ask buffer)))))
 
 
-(defun auto-save-mode (arg)
+(define-minor-mode auto-save-mode
   "Toggle auto-saving of contents of current buffer.
 With prefix argument ARG, turn auto-saving on if positive, else off."
-  (interactive "P")
-  (setq buffer-auto-save-file-name
-        (and (if (null arg)
-		 (or (not buffer-auto-save-file-name)
-		     ;; If auto-save is off because buffer has shrunk,
-		     ;; then toggling should turn it on.
-		     (< buffer-saved-size 0))
-	       (or (eq arg t) (listp arg) (and (integerp arg) (> arg 0))))
-	     (if (and buffer-file-name auto-save-visited-file-name
-		      (not buffer-read-only))
-		 buffer-file-name
-	       (make-auto-save-file-name))))
+  :variable ((and buffer-auto-save-file-name
+                  ;; If auto-save is off because buffer has shrunk,
+                  ;; then toggling should turn it on.
+                  (>= buffer-saved-size 0))
+             . (lambda (val)
+                 (setq buffer-auto-save-file-name
+                       (cond
+                        ((null val) nil)
+                        ((and buffer-file-name auto-save-visited-file-name
+                              (not buffer-read-only))
+                         buffer-file-name)
+                        (t (make-auto-save-file-name))))))
   ;; If -1 was stored here, to temporarily turn off saving,
   ;; turn it back on.
   (and (< buffer-saved-size 0)
-       (setq buffer-saved-size 0))
-  (if (called-interactively-p 'interactive)
-      (message "Auto-save %s (in this buffer)"
-	       (if buffer-auto-save-file-name "on" "off")))
-  buffer-auto-save-file-name)
+       (setq buffer-saved-size 0)))
 
 (defun rename-auto-save-file ()
   "Adjust current buffer's auto save file name for current conditions.
--- a/lisp/gnus/ChangeLog	Wed May 05 10:17:53 2010 +0000
+++ b/lisp/gnus/ChangeLog	Thu May 06 12:51:40 2010 +0000
@@ -1,3 +1,12 @@
+2010-05-06  Tommi Vainikainen  <thv@iki.fi>  (tiny change)
+
+	* mml-sec.el (mml-secure-message-sign): Fix cut and paste error.
+
+2010-05-06  Katsumi Yamaoka  <yamaoka@jpl.org>
+
+	* gnus-dired.el, gnus-draft.el, gnus-ml.el, gnus-salt.el, gnus-sum.el,
+	gnus-undo.el, mml.el: Require easy-mmode for XEmacs when compiling.
+
 2010-05-03  Juanma Barranquero  <lekktu@gmail.com>
 
 	* mm-util.el (mm-decompress-buffer): Use `delete-file';
@@ -21,6 +30,12 @@
 	* gnus-dired.el (gnus-dired-mode-map): Initialize in declaration.
 	(gnus-dired-mode): Use define-minor-mode.
 
+2010-05-01  Andreas Seltenreich  <seltenreich@gmx.de>
+
+	* mml.el (mml-generate-mime-1,mml-compute-boundary-1): Update 'mml
+	handles on recursive mml-to-mime translation and check them for
+	boundary delimiter collisions.  Reported by: Greg Troxel.
+
 2010-04-27  Katsumi Yamaoka  <yamaoka@jpl.org>
 
 	* gnus-util.el: Don't load tm and apel XEmacs packages when compiling.
--- a/lisp/gnus/gnus-dired.el	Wed May 05 10:17:53 2010 +0000
+++ b/lisp/gnus/gnus-dired.el	Thu May 06 12:51:40 2010 +0000
@@ -39,6 +39,9 @@
 
 ;;; Code:
 
+(eval-when-compile
+  (when (featurep 'xemacs)
+    (require 'easy-mmode))) ; for `define-minor-mode'
 (require 'dired)
 (autoload 'mml-attach-file "mml")
 (autoload 'mm-default-file-encoding "mm-decode");; Shift this to `mailcap.el'?
--- a/lisp/gnus/gnus-draft.el	Wed May 05 10:17:53 2010 +0000
+++ b/lisp/gnus/gnus-draft.el	Thu May 06 12:51:40 2010 +0000
@@ -32,6 +32,9 @@
 (require 'nndraft)
 (require 'gnus-agent)
 (eval-when-compile (require 'cl))
+(eval-when-compile
+  (when (featurep 'xemacs)
+    (require 'easy-mmode))) ; for `define-minor-mode'
 
 ;;; Draft minor mode
 
--- a/lisp/gnus/gnus-ml.el	Wed May 05 10:17:53 2010 +0000
+++ b/lisp/gnus/gnus-ml.el	Thu May 06 12:51:40 2010 +0000
@@ -30,6 +30,9 @@
 (require 'gnus)
 (require 'gnus-msg)
 (eval-when-compile (require 'cl))
+(eval-when-compile
+  (when (featurep 'xemacs)
+    (require 'easy-mmode))) ; for `define-minor-mode'
 
 ;;; Mailing list minor mode
 
--- a/lisp/gnus/gnus-salt.el	Wed May 05 10:17:53 2010 +0000
+++ b/lisp/gnus/gnus-salt.el	Thu May 06 12:51:40 2010 +0000
@@ -26,6 +26,9 @@
 ;;; Code:
 
 (eval-when-compile (require 'cl))
+(eval-when-compile
+  (when (featurep 'xemacs)
+    (require 'easy-mmode))) ; for `define-minor-mode'
 
 (require 'gnus)
 (require 'gnus-sum)
--- a/lisp/gnus/gnus-sum.el	Wed May 05 10:17:53 2010 +0000
+++ b/lisp/gnus/gnus-sum.el	Thu May 06 12:51:40 2010 +0000
@@ -30,6 +30,9 @@
   (unless (fboundp 'declare-function) (defmacro declare-function (&rest r))))
 (eval-when-compile
   (require 'cl))
+(eval-when-compile
+  (when (featurep 'xemacs)
+    (require 'easy-mmode))) ; for `define-minor-mode'
 
 (defvar tool-bar-mode)
 (defvar gnus-tmp-header)
--- a/lisp/gnus/gnus-undo.el	Wed May 05 10:17:53 2010 +0000
+++ b/lisp/gnus/gnus-undo.el	Thu May 06 12:51:40 2010 +0000
@@ -45,6 +45,9 @@
 ;;; Code:
 
 (eval-when-compile (require 'cl))
+(eval-when-compile
+  (when (featurep 'xemacs)
+    (require 'easy-mmode))) ; for `define-minor-mode'
 
 (require 'gnus-util)
 (require 'gnus)
--- a/lisp/gnus/mml-sec.el	Wed May 05 10:17:53 2010 +0000
+++ b/lisp/gnus/mml-sec.el	Thu May 06 12:51:40 2010 +0000
@@ -308,11 +308,11 @@
 
 
 (defun mml-secure-message-sign (&optional method)
-  "Add MML tags to sign this MML part.
+  "Add MML tags to sign the entire message.
 Use METHOD if given. Else use `mml-secure-method' or
 `mml-default-sign-method'."
   (interactive)
-  (mml-secure-part
+  (mml-secure-message
    (or method mml-secure-method mml-default-sign-method)
    'sign))
 
--- a/lisp/gnus/mml.el	Wed May 05 10:17:53 2010 +0000
+++ b/lisp/gnus/mml.el	Thu May 06 12:51:40 2010 +0000
@@ -33,6 +33,9 @@
 (require 'mm-decode)
 (require 'mml-sec)
 (eval-when-compile (require 'cl))
+(eval-when-compile
+  (when (featurep 'xemacs)
+    (require 'easy-mmode))) ; for `define-minor-mode'
 
 (autoload 'message-make-message-id "message")
 (declare-function gnus-setup-posting-charset "gnus-msg" (group))
@@ -520,7 +523,10 @@
 			  ;; `m-g-d-t' will be bound to "message/rfc822"
 			  ;; when encoding an article to be forwarded.
 			  (mml-generate-default-type "text/plain"))
-		      (mml-to-mime))
+		      (mml-to-mime)
+		      ;; Update handle so mml-compute-boundary can
+		      ;; detect collisions with the nested parts.
+		      (setcdr (assoc 'contents cont) (buffer-string)))
 		    (let ((mm-7bit-chars (concat mm-7bit-chars "\x1b")))
 		      ;; ignore 0x1b, it is part of iso-2022-jp
 		      (setq encoding (mm-body-7-or-8))))
@@ -699,7 +705,7 @@
 (defun mml-compute-boundary-1 (cont)
   (let (filename)
     (cond
-     ((eq (car cont) 'part)
+     ((member (car cont) '(part mml))
       (with-temp-buffer
 	(cond
 	 ((cdr (assq 'buffer cont))
--- a/lisp/info.el	Wed May 05 10:17:53 2010 +0000
+++ b/lisp/info.el	Thu May 06 12:51:40 2010 +0000
@@ -3104,6 +3104,7 @@
 (add-to-list 'Info-virtual-nodes
 	     '("\\`\\*Index.*\\*\\'"
 	       (find-node . Info-virtual-index-find-node)
+	       (slow . t)
 	       ))
 
 (defvar Info-virtual-index-nodes nil
@@ -3193,6 +3194,7 @@
 	       (toc-nodes . Info-apropos-toc-nodes)
 	       (find-file . Info-apropos-find-file)
 	       (find-node . Info-apropos-find-node)
+	       (slow . t)
 	       ))
 
 (defvar Info-apropos-file "*Apropos*"
@@ -3348,6 +3350,7 @@
 
 (defun Info-finder-find-node (filename nodename &optional no-going-back)
   "Finder-specific implementation of Info-find-node-2."
+  (require 'finder)
   (cond
    ((equal nodename "Top")
     ;; Display Top menu with descriptions of the keywords
@@ -4836,21 +4839,35 @@
 
 (defun Info-desktop-buffer-misc-data (desktop-dirname)
   "Auxiliary information to be saved in desktop file."
-  (unless (Info-virtual-file-p Info-current-file)
-    (list Info-current-file Info-current-node)))
+  (list Info-current-file
+	Info-current-node
+	;; Additional data as an association list.
+	(delq nil (list
+		   (and Info-history
+			(cons 'history Info-history))
+		   (and (Info-virtual-fun
+			 'slow Info-current-file Info-current-node)
+			(cons 'slow t))))))
 
 (defun Info-restore-desktop-buffer (desktop-buffer-file-name
                                     desktop-buffer-name
                                     desktop-buffer-misc)
   "Restore an Info buffer specified in a desktop file."
-  (let ((first (nth 0 desktop-buffer-misc))
-        (second (nth 1 desktop-buffer-misc)))
-  (when (and first second)
-    (when desktop-buffer-name
-      (set-buffer (get-buffer-create desktop-buffer-name))
-      (Info-mode))
-    (Info-find-node first second)
-    (current-buffer))))
+  (let* ((file (nth 0 desktop-buffer-misc))
+	 (node (nth 1 desktop-buffer-misc))
+	 (data (nth 2 desktop-buffer-misc))
+	 (hist (assq 'history data))
+	 (slow (assq 'slow data)))
+    ;; Don't restore nodes slow to regenerate.
+    (unless slow
+      (when (and file node)
+	(when desktop-buffer-name
+	  (set-buffer (get-buffer-create desktop-buffer-name))
+	  (Info-mode))
+	(Info-find-node file node)
+	(when hist
+	  (setq Info-history (cdr hist)))
+	(current-buffer)))))
 
 (add-to-list 'desktop-buffer-mode-handlers
 	     '(Info-mode . Info-restore-desktop-buffer))
--- a/lisp/minibuffer.el	Wed May 05 10:17:53 2010 +0000
+++ b/lisp/minibuffer.el	Thu May 06 12:51:40 2010 +0000
@@ -1983,6 +1983,17 @@
       (nconc (completion-pcm--hilit-commonality pattern all)
              (length prefix)))))
 
+(defun completion--sreverse (str)
+  "Like `reverse' but for a string STR rather than a list."
+  (apply 'string (nreverse (mapcar 'identity str))))
+
+(defun completion--common-suffix (strs)
+  "Return the common suffix of the strings STRS."
+  (completion--sreverse
+   (try-completion
+    ""
+    (mapcar 'completion--sreverse comps))))
+
 (defun completion-pcm--merge-completions (strs pattern)
   "Extract the commonality in STRS, with the help of PATTERN."
   ;; When completing while ignoring case, we want to try and avoid
@@ -2044,7 +2055,17 @@
                 ;; `any' into a `star' because the surrounding context has
                 ;; changed such that string->pattern wouldn't add an `any'
                 ;; here any more.
-                (unless unique (push elem res))
+                (unless unique
+                  (push elem res)
+                  (when (memq elem '(star point))
+                    ;; Extract common suffix additionally to common prefix.
+                    ;; Only do it for `point' and `star' since for
+                    ;; `any' it could lead to a merged completion that
+                    ;; doesn't itself match the candidates.
+                    (let ((suffix (completion--common-suffix comps)))
+                      (assert (stringp suffix))
+                      (unless (equal suffix "")
+                        (push suffix res)))))
                 (setq fixed "")))))
         ;; We return it in reverse order.
         res)))))
--- a/lisp/net/ange-ftp.el	Wed May 05 10:17:53 2010 +0000
+++ b/lisp/net/ange-ftp.el	Thu May 06 12:51:40 2010 +0000
@@ -1734,7 +1734,10 @@
 		      ange-ftp-gateway-tmp-name-template
 		    ange-ftp-tmp-name-template)))
 
-(defalias 'ange-ftp-del-tmp-name 'delete-file)
+(defun ange-ftp-del-tmp-name (filename)
+  "Force to delete temporary file."
+  (delete-file filename 'force))
+
 
 ;;;; ------------------------------------------------------------
 ;;;; Interactive gateway program support.
@@ -3504,7 +3507,7 @@
 	(file-exists-p file)
       (ange-ftp-real-file-executable-p file))))
 
-(defun ange-ftp-delete-file (file)
+(defun ange-ftp-delete-file (file &optional force)
   (interactive "fDelete file: ")
   (setq file (expand-file-name file))
   (let ((parsed (ange-ftp-ftp-name file)))
@@ -3523,7 +3526,7 @@
 		       (format "FTP Error: \"%s\"" (cdr result))
 		       file)))
 	  (ange-ftp-delete-file-entry file))
-      (ange-ftp-real-delete-file file))))
+      (ange-ftp-real-delete-file file force))))
 
 (defun ange-ftp-file-modtime (file)
   "Return the modification time of remote file FILE.
@@ -3894,7 +3897,7 @@
 	  (ange-ftp-add-file-entry newname)
 	  (ange-ftp-delete-file-entry filename))
       (ange-ftp-copy-file-internal filename newname t nil)
-      (delete-file filename))))
+      (delete-file filename 'force))))
 
 (defun ange-ftp-rename-local-to-remote (filename newname)
   "Rename local file FILENAME to remote file NEWNAME."
@@ -3903,7 +3906,7 @@
 	 (msg (format "Renaming %s to %s" fabbr nabbr)))
     (ange-ftp-copy-file-internal filename newname t nil msg)
     (let (ange-ftp-process-verbose)
-      (delete-file filename))))
+      (delete-file filename 'force))))
 
 (defun ange-ftp-rename-remote-to-local (filename newname)
   "Rename remote file FILENAME to local file NEWNAME."
@@ -3912,7 +3915,7 @@
 	 (msg (format "Renaming %s to %s" fabbr nabbr)))
     (ange-ftp-copy-file-internal filename newname t nil msg)
     (let (ange-ftp-process-verbose)
-      (delete-file filename))))
+      (delete-file filename 'force))))
 
 (defun ange-ftp-rename-file (filename newname &optional ok-if-already-exists)
   (interactive "fRename file: \nFRename %s to file: \np")
@@ -4193,7 +4196,7 @@
 	(if copy
 	    (unwind-protect
 		(funcall 'load copy noerror nomessage nosuffix)
-	      (delete-file copy))
+	      (delete-file copy 'force))
 	  (or noerror
 	      (signal 'file-error (list "Cannot open load file" file)))
 	  nil))
@@ -4264,7 +4267,7 @@
 	  (if (zerop (buffer-size))
 	      (progn
 		(let (ange-ftp-process-verbose)
-		  (delete-file file))
+		  (delete-file file 'force))
 		(ange-ftp-copy-file-internal tmp2 nfile t nil msg2))))
       (ange-ftp-del-tmp-name tmp1)
       (ange-ftp-del-tmp-name tmp2))))
@@ -4300,7 +4303,7 @@
 	  (if (zerop (buffer-size))
 	      (progn
 		(let (ange-ftp-process-verbose)
-		  (delete-file file))
+		  (delete-file file 'force))
 		(ange-ftp-copy-file-internal tmp2 nfile t nil msg2))))
       (ange-ftp-del-tmp-name tmp1)
       (ange-ftp-del-tmp-name tmp2))))
--- a/lisp/net/tramp-compat.el	Wed May 05 10:17:53 2010 +0000
+++ b/lisp/net/tramp-compat.el	Thu May 06 12:51:40 2010 +0000
@@ -262,7 +262,7 @@
     (tramp-file-name-handler 'file-attributes filename id-format))
    (t (condition-case nil
 	  (funcall (symbol-function 'file-attributes) filename id-format)
-	(error (file-attributes filename))))))
+	(wrong-number-of-arguments (file-attributes filename))))))
 
 ;; PRESERVE-UID-GID has been introduced with Emacs 23.  It does not
 ;; hurt to ignore it for other (X)Emacs versions.
@@ -317,6 +317,24 @@
 	(if keep-time
 	    (set-file-times newname (nth 5 (file-attributes directory))))))))
 
+;; FORCE has been introduced with Emacs 24.1.
+(defun tramp-compat-delete-file (filename &optional force)
+  "Like `delete-file' for Tramp files (compat function)."
+  (if (null force)
+      (delete-file filename)
+    (condition-case nil
+	(funcall (symbol-function 'delete-file) filename force)
+      ;; This Emacs version does not support the FORCE flag.  Setting
+      ;; `delete-by-moving-to-trash' shall give us the same effect.
+      (wrong-number-of-arguments
+       (let ((delete-by-moving-to-trash
+	      (cond
+	       ((null force) t)
+	       ((boundp 'delete-by-moving-to-trash)
+		(symbol-value 'delete-by-moving-to-trash))
+	       (t nil))))
+	 (delete-file filename))))))
+
 ;; RECURSIVE has been introduced with Emacs 23.2.
 (defun tramp-compat-delete-directory (directory &optional recursive)
   "Like `delete-directory' for Tramp files (compat function)."
@@ -326,7 +344,7 @@
 	(funcall (symbol-function 'delete-directory) directory recursive)
       ;; This Emacs version does not support the RECURSIVE flag.  We
       ;; use the implementation from Emacs 23.2.
-      (error
+      (wrong-number-of-arguments
        (setq directory (directory-file-name (expand-file-name directory)))
        (if (not (file-symlink-p directory))
 	   (mapc (lambda (file)
--- a/lisp/net/tramp-fish.el	Wed May 05 10:17:53 2010 +0000
+++ b/lisp/net/tramp-fish.el	Thu May 06 12:51:40 2010 +0000
@@ -332,7 +332,7 @@
       (tramp-flush-directory-property v localname)
       (tramp-fish-send-command-and-check v (format "#RMD %s" localname)))))
 
-(defun tramp-fish-handle-delete-file (filename)
+(defun tramp-fish-handle-delete-file (filename &optional force)
   "Like `delete-file' for Tramp files."
   (when (file-exists-p filename)
     (with-parsed-tramp-file-name (expand-file-name filename) nil
@@ -658,7 +658,7 @@
 			  localname)))))
 	  (tramp-error
 	   v 'file-already-exists "File %s already exists" localname)
-	(delete-file linkname)))
+	(tramp-compat-delete-file linkname 'force)))
 
     ;; If FILENAME is a Tramp name, use just the localname component.
     (when (tramp-tramp-file-p filename)
@@ -837,8 +837,8 @@
       ;; Provide error file.
       (when tmpstderr (rename-file tmpstderr (cadr destination) t))
       ;; Cleanup.
-      (when tmpinput (delete-file tmpinput))
-      (when tmpoutput (delete-file tmpoutput))
+      (when tmpinput (tramp-compat-delete-file tmpinput 'force))
+      (when tmpoutput (tramp-compat-delete-file tmpoutput 'force))
       ;; Return exit status.
       ret)))
 
--- a/lisp/net/tramp-ftp.el	Wed May 05 10:17:53 2010 +0000
+++ b/lisp/net/tramp-ftp.el	Thu May 06 12:51:40 2010 +0000
@@ -1,7 +1,7 @@
 ;;; tramp-ftp.el --- Tramp convenience functions for Ange-FTP
 
-;; Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007,
-;;   2008, 2009, 2010 Free Software Foundation, Inc.
+;; Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007, 2008,
+;;   2009, 2010 Free Software Foundation, Inc.
 
 ;; Author: Michael Albinus <michael.albinus@gmx.de>
 ;; Keywords: comm, processes
@@ -182,7 +182,7 @@
 	  (unwind-protect
 	      (rename-file tmpfile newname (car args))
 	    ;; Cleanup.
-	    (ignore-errors (delete-file tmpfile)))))
+	    (ignore-errors (tramp-compat-delete-file tmpfile 'force)))))
 
        ;; Normally, the handlers must be discarded.
        ;; `inhibit-file-name-handlers' isn't sufficient, because the
--- a/lisp/net/tramp-gvfs.el	Wed May 05 10:17:53 2010 +0000
+++ b/lisp/net/tramp-gvfs.el	Thu May 06 12:51:40 2010 +0000
@@ -525,7 +525,7 @@
 	    newname)
 	  ok-if-already-exists keep-date preserve-uid-gid)))
     (when preserve-selinux-context
-      (setq args (append args (list preserve-uid-gid))))
+      (setq args (append args (list preserve-selinux-context))))
     (apply 'copy-file args)))
 
 (defun tramp-gvfs-handle-delete-directory (directory &optional recursive)
@@ -533,9 +533,9 @@
   (tramp-compat-delete-directory
    (tramp-gvfs-fuse-file-name directory) recursive))
 
-(defun tramp-gvfs-handle-delete-file (filename)
+(defun tramp-gvfs-handle-delete-file (filename &optional force)
   "Like `delete-file' for Tramp files."
-  (delete-file (tramp-gvfs-fuse-file-name filename)))
+  (tramp-compat-delete-file (tramp-gvfs-fuse-file-name filename) force))
 
 (defun tramp-gvfs-handle-directory-files
   (directory &optional full match nosort)
@@ -629,7 +629,8 @@
 
 (defun tramp-gvfs-handle-file-selinux-context (filename)
   "Like `file-selinux-context' for Tramp files."
-  (funcall 'file-selinux-context (tramp-gvfs-fuse-file-name filename)))
+  (funcall (symbol-function 'file-selinux-context)
+	   (tramp-gvfs-fuse-file-name filename)))
 
 (defun tramp-gvfs-handle-file-writable-p (filename)
   "Like `file-writable-p' for Tramp files."
@@ -741,7 +742,7 @@
 		   "gvfs-save" tmpfile (tramp-get-buffer v) nil
 		   (tramp-gvfs-url-file-name filename)))
 	       (signal (car err) (cdr err)))
-	   (delete-file tmpfile)))))
+	   (tramp-compat-delete-file tmpfile 'force)))))
 
     ;; Set file modification time.
     (when (or (eq visit t) (stringp visit))
--- a/lisp/net/tramp-imap.el	Wed May 05 10:17:53 2010 +0000
+++ b/lisp/net/tramp-imap.el	Thu May 06 12:51:40 2010 +0000
@@ -268,7 +268,7 @@
       (tramp-message v 0 "Transferring %s to %s...done" filename newname))
 
     (when (eq op 'rename)
-      (delete-file filename))))
+      (tramp-compat-delete-file filename 'force))))
 
 ;; TODO: revise this much
 (defun tramp-imap-handle-expand-file-name (name &optional dir)
@@ -553,7 +553,7 @@
   ;; (file-exists-p (file-name-directory filename)))
   (file-directory-p (file-name-directory filename)))
 
-(defun tramp-imap-handle-delete-file (filename)
+(defun tramp-imap-handle-delete-file (filename &optional force)
   "Like `delete-file' for Tramp files."
   (cond
    ((not (file-exists-p filename)) nil)
--- a/lisp/net/tramp-smb.el	Wed May 05 10:17:53 2010 +0000
+++ b/lisp/net/tramp-smb.el	Thu May 06 12:51:40 2010 +0000
@@ -342,7 +342,7 @@
 	(condition-case err
 	    (rename-file tmpfile newname ok-if-already-exists)
 	  ((error quit)
-	   (delete-file tmpfile)
+	   (tramp-compat-delete-file tmpfile 'force)
 	   (signal (car err) (cdr err))))
 
       ;; Remote newname.
@@ -404,7 +404,7 @@
 	  (tramp-error
 	   v 'file-error "%s `%s'" (match-string 0) directory))))))
 
-(defun tramp-smb-handle-delete-file (filename)
+(defun tramp-smb-handle-delete-file (filename &optional force)
   "Like `delete-file' for Tramp files."
   (setq filename (expand-file-name filename))
   (when (file-exists-p filename)
@@ -611,7 +611,7 @@
 	  (tramp-message
 	   v 4 "Fetching %s to tmp file %s...done" filename tmpfile)
 	;; Oops, an error.  We shall cleanup.
-	(delete-file tmpfile)
+	(tramp-compat-delete-file tmpfile 'force)
 	(tramp-error
 	 v 'file-error "Cannot make local copy of file `%s'" filename))
       tmpfile)))
@@ -858,7 +858,7 @@
 	(condition-case err
 	    (rename-file tmpfile newname ok-if-already-exists)
 	  ((error quit)
-	   (delete-file tmpfile)
+	   (tramp-compat-delete-file tmpfile 'force)
 	   (signal (car err) (cdr err))))
 
       ;; Remote newname.
@@ -881,7 +881,7 @@
 	     v 0 "Copying file %s to file %s...done" filename newname)
 	  (tramp-error v 'file-error "Cannot rename `%s'" filename)))))
 
-  (delete-file filename))
+  (tramp-compat-delete-file filename 'force))
 
 (defun tramp-smb-handle-set-file-modes (filename mode)
   "Like `set-file-modes' for Tramp files."
@@ -945,7 +945,7 @@
 	      (tramp-message
 	       v 5 "Writing tmp file %s to file %s...done" tmpfile filename)
 	    (tramp-error v 'file-error "Cannot write `%s'" filename))
-	(delete-file tmpfile))
+	(tramp-compat-delete-file tmpfile 'force))
 
       (unless (equal curbuf (current-buffer))
 	(tramp-error
--- a/lisp/net/tramp.el	Wed May 05 10:17:53 2010 +0000
+++ b/lisp/net/tramp.el	Thu May 06 12:51:40 2010 +0000
@@ -145,7 +145,8 @@
 	 ;; this would load dbus.el.
 	 (when (and (featurep 'dbusbind)
 		    (condition-case nil
-			(funcall 'dbus-get-unique-name :session)
+			(funcall (symbol-function 'dbus-get-unique-name)
+				 :session)
 		      (error nil))
 		    (tramp-compat-process-running-p "gvfs-fuse-daemon"))
 	   'tramp-gvfs)
@@ -2273,7 +2274,7 @@
      ;; introduced in Emacs 24.1.
      (when (<= ,level tramp-verbose)
        (condition-case nil
-	   (setq pr (funcall 'make-progress-reporter ,message)
+	   (setq pr (funcall (symbol-function 'make-progress-reporter) ,message)
 		 tm (run-at-time 3 0.1 'progress-reporter-update pr))
 	 (error nil)))
      (unwind-protect
@@ -2511,7 +2512,7 @@
 			    l-localname)))))
 	    (tramp-error
 	     l 'file-already-exists "File %s already exists" l-localname)
-	  (delete-file linkname)))
+	  (tramp-compat-delete-file linkname 'force)))
 
       ;; If FILENAME is a Tramp name, use just the localname component.
       (when (tramp-tramp-file-p filename)
@@ -2559,7 +2560,7 @@
 	;; MUST-SUFFIX doesn't exist on XEmacs, so let it default to nil.
 	(unwind-protect
 	    (load local-copy noerror t t)
-	  (delete-file local-copy)))
+	  (tramp-compat-delete-file local-copy 'force)))
       (unless nomessage (tramp-message v 0 "Loading %s...done" file))
       t)))
 
@@ -3737,7 +3738,7 @@
   ;; Set the mode.
   (set-file-modes newname (tramp-default-file-modes filename))
   ;; If the operation was `rename', delete the original file.
-  (unless (eq op 'copy) (delete-file filename)))
+  (unless (eq op 'copy) (tramp-compat-delete-file filename 'force)))
 
 (defun tramp-do-copy-or-rename-file-directly
  (op filename newname ok-if-already-exists keep-date preserve-uid-gid)
@@ -3892,7 +3893,7 @@
 
 		;; Save exit.
 		(condition-case nil
-		    (delete-file tmpfile)
+		    (tramp-compat-delete-file tmpfile 'force)
 		  (error)))))))))
 
       ;; Set the time and mode. Mask possible errors.
@@ -3932,7 +3933,7 @@
 		  (if dir-flag
 		      (tramp-compat-delete-directory
 		       (expand-file-name ".." tmpfile) 'recursive)
-		    (delete-file tmpfile))
+		    (tramp-compat-delete-file tmpfile 'force))
 		(error))))
 
 	;; Expand hops.  Might be necessary for gateway methods.
@@ -4050,7 +4051,7 @@
       ;; If the operation was `rename', delete the original file.
       (unless (eq op 'copy)
 	(if (file-regular-p filename)
-	    (delete-file filename)
+	    (tramp-compat-delete-file filename 'force)
 	  (tramp-compat-delete-directory filename 'recursive))))))
 
 (defun tramp-handle-make-directory (dir &optional parents)
@@ -4080,7 +4081,7 @@
 		     (tramp-shell-quote-argument localname))))
       (tramp-error v 'file-error "Couldn't delete %s" directory))))
 
-(defun tramp-handle-delete-file (filename)
+(defun tramp-handle-delete-file (filename &optional force)
   "Like `delete-file' for Tramp files."
   (setq filename (expand-file-name filename))
   (with-parsed-tramp-file-name filename nil
@@ -4599,7 +4600,7 @@
 
       ;; Cleanup.  We remove all file cache values for the connection,
       ;; because the remote process could have changed them.
-      (when tmpinput (delete-file tmpinput))
+      (when tmpinput (tramp-compat-delete-file tmpinput 'force))
 
       ;; `process-file-side-effects' has been introduced with GNU
       ;; Emacs 23.2.  If set to `nil', no remote file will be changed
@@ -4636,7 +4637,7 @@
     (when delete (delete-region start end))
     (unwind-protect
 	(apply 'call-process program tmpfile buffer display args)
-      (delete-file tmpfile))))
+      (tramp-compat-delete-file tmpfile 'force))))
 
 (defun tramp-handle-shell-command
   (command &optional output-buffer error-buffer)
@@ -4701,7 +4702,7 @@
 	(when (listp buffer)
 	  (with-current-buffer error-buffer
 	    (insert-file-contents (cadr buffer)))
-	  (delete-file (cadr buffer)))
+	  (tramp-compat-delete-file (cadr buffer) 'force))
 	(if current-buffer-p
 	    ;; This is like exchange-point-and-mark, but doesn't
 	    ;; activate the mark.  It is cleaner to avoid activation,
@@ -4783,7 +4784,7 @@
 		   filename loc-dec)
 		  (unwind-protect
 		      (tramp-call-local-coding-command loc-dec tmpfile2 tmpfile)
-		    (delete-file tmpfile2))))
+		    (tramp-compat-delete-file tmpfile2 'force))))
 
 	      (tramp-message v 5 "Decoding remote file %s...done" filename)
 	      ;; Set proper permissions.
@@ -4797,7 +4798,7 @@
 
 	;; Error handling.
 	((error quit)
-	 (delete-file tmpfile)
+	 (tramp-compat-delete-file tmpfile 'force)
 	 (signal (car err) (cdr err))))
 
       (run-hooks 'tramp-handle-file-local-copy-hook)
@@ -4943,10 +4944,11 @@
 	    (set-buffer-modified-p nil))
 	  (when (and (stringp local-copy)
 		     (or remote-copy (null tramp-temp-buffer-file-name)))
-	    (delete-file local-copy))
+	    (tramp-compat-delete-file local-copy 'force))
 	  (when (stringp remote-copy)
-	    (delete-file
-	     (tramp-make-tramp-file-name method user host remote-copy))))))
+	    (tramp-compat-delete-file
+	     (tramp-make-tramp-file-name method user host remote-copy)
+	     'force)))))
 
     ;; Result.
     (list (expand-file-name filename)
@@ -5136,7 +5138,7 @@
 		 (list start end tmpfile append 'no-message lockname confirm))
 	      ((error quit)
 	       (setq tramp-temp-buffer-file-name nil)
-	       (delete-file tmpfile)
+	       (tramp-compat-delete-file tmpfile 'force)
 	       (signal (car err) (cdr err))))
 
 	    ;; Now, `last-coding-system-used' has the right value.  Remember it.
@@ -5180,13 +5182,13 @@
 			(copy-file tmpfile filename t)
 		      ((error quit)
 		       (setq tramp-temp-buffer-file-name nil)
-		       (delete-file tmpfile)
+		       (tramp-compat-delete-file tmpfile 'force)
 		       (signal (car err) (cdr err)))))
 		(setq tramp-temp-buffer-file-name nil)
 		;; Don't rename, in order to keep context in SELinux.
 		(unwind-protect
 		    (copy-file tmpfile filename t)
-		  (delete-file tmpfile))))
+		  (tramp-compat-delete-file tmpfile 'force))))
 
 	     ;; Use inline file transfer.
 	     (rem-dec
@@ -5270,7 +5272,7 @@
 		     v 5 "Decoding region into remote file %s...done" filename))
 
 		;; Save exit.
-		(delete-file tmpfile)))
+		(tramp-compat-delete-file tmpfile 'force)))
 
 	     ;; That's not expected.
 	     (t
@@ -6350,7 +6352,7 @@
   "Remove temporary files related to current buffer."
   (when (stringp tramp-temp-buffer-file-name)
     (condition-case nil
-	(delete-file tramp-temp-buffer-file-name)
+	(tramp-compat-delete-file tramp-temp-buffer-file-name 'force)
       (error nil))))
 
 (add-hook 'kill-buffer-hook 'tramp-delete-temp-file-function)
--- a/lwlib/ChangeLog	Wed May 05 10:17:53 2010 +0000
+++ b/lwlib/ChangeLog	Thu May 06 12:51:40 2010 +0000
@@ -1,3 +1,7 @@
+2010-05-06  Glenn Morris  <rgm@gnu.org>
+
+	* Makefile.in (CPP, LN_S, TOP, LN): Remove unused variables.
+
 2010-05-04  Glenn Morris  <rgm@gnu.org>
 
 	* Makefile.in (C_SWITCH_SYSTEM, C_SWITCH_MACHINE):
--- a/lwlib/Makefile.in	Wed May 05 10:17:53 2010 +0000
+++ b/lwlib/Makefile.in	Thu May 06 12:51:40 2010 +0000
@@ -32,27 +32,21 @@
 
 CC=@CC@
 CFLAGS=@CFLAGS@
-CPP=@CPP@
 CPPFLAGS=@CPPFLAGS@
-LN_S=@LN_S@
 RANLIB=@RANLIB@
 # See below--@X_TOOLKIT_TYPE@ is used below.
 USE_X_TOOLKIT=@X_TOOLKIT_TYPE@
 
-              TOP = .
-
-               AR = ar cq
+AR = ar cq
+RM = rm -f
 
-               LN = ln -s
-               RM = rm -f
-
-     LUCID_OBJS = lwlib-Xlw.o xlwmenu.o lwlib-Xaw.o
-     MOTIF_OBJS = lwlib-Xm.o
+LUCID_OBJS = lwlib-Xlw.o xlwmenu.o lwlib-Xaw.o
+MOTIF_OBJS = lwlib-Xm.o
 
 TOOLKIT_DEFINES = 
-   TOOLKIT_OBJS = $(@X_TOOLKIT_TYPE@_OBJS)
+TOOLKIT_OBJS = $(@X_TOOLKIT_TYPE@_OBJS)
 
-           OBJS = lwlib.o $(TOOLKIT_OBJS) lwlib-utils.o
+OBJS = lwlib.o $(TOOLKIT_OBJS) lwlib-utils.o
 
 # ../src is needed to find config.h.
 ALL_CFLAGS= $(C_SWITCH_SYSTEM) $(C_SWITCH_X_SITE) \
--- a/msdos/ChangeLog	Wed May 05 10:17:53 2010 +0000
+++ b/msdos/ChangeLog	Thu May 06 12:51:40 2010 +0000
@@ -1,3 +1,7 @@
+2010-05-06  Glenn Morris  <rgm@gnu.org>
+
+	* sed1v2.inp, sed5x.inp: Remove LN_S, unused.
+
 2010-04-01  Eli Zaretskii  <eliz@gnu.org>
 
 	Remove support for DJGPP v1.x.
--- a/msdos/sed1v2.inp	Wed May 05 10:17:53 2010 +0000
+++ b/msdos/sed1v2.inp	Thu May 06 12:51:40 2010 +0000
@@ -2,8 +2,8 @@
 # Configuration script for src/Makefile under DJGPP v2.x
 # ----------------------------------------------------------------------
 #
-# Copyright (C) 1996, 1997, 1999, 2000, 2001, 2002, 2003, 2004,
-#   2005, 2006, 2007, 2008, 2009, 2010  Free Software Foundation, Inc.
+# Copyright (C) 1996, 1997, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
+#   2006, 2007, 2008, 2009, 2010  Free Software Foundation, Inc.
 #
 # This file is part of GNU Emacs.
 #
@@ -50,7 +50,6 @@
 /^OTHER_FILES *=/s/@OTHER_FILES@//
 /^EXEEXT *=/s/@EXEEXT@/.exe/
 /^version *=/s/@[^@\n]*@//
-/^LN_S *=/s/@[^@\n]*@/ln -s/
 /^M_FILE *=/s!@[^@\n]*@!m/intel386.h!
 /^S_FILE *=/s!@[^@\n]*@!s/msdos.h!
 /^@SET_MAKE@$/s/@SET_MAKE@//
--- a/msdos/sed5x.inp	Wed May 05 10:17:53 2010 +0000
+++ b/msdos/sed5x.inp	Thu May 06 12:51:40 2010 +0000
@@ -2,8 +2,8 @@
 # Configuration script for oldxmenu/makefile for DesqView/X
 # ----------------------------------------------------------------------
 #
-# Copyright (C) 1994, 2001, 2002, 2003, 2004, 2005,
-#   2006, 2007, 2008, 2009, 2010  Free Software Foundation, Inc.
+# Copyright (C) 1994, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008,
+#   2009, 2010  Free Software Foundation, Inc.
 #
 # This file is part of GNU Emacs.
 #
@@ -22,7 +22,6 @@
 /^CC *=/s/@[^@\n]*@/gcc/
 /^CPP *=/s/@[^@\n]*@/gcc -e/
 /^CFLAGS *=/s/@[^@\n]*@/-O2 -g/
-/^LN_S *=/s/@[^@\n]*@/ln -s/
 s/|| true//
 
 # arch-tag: 612a79be-2a02-4cb0-8dec-779aac0a2f4f
--- a/oldXMenu/ChangeLog	Wed May 05 10:17:53 2010 +0000
+++ b/oldXMenu/ChangeLog	Thu May 06 12:51:40 2010 +0000
@@ -1,3 +1,11 @@
+2010-05-06  Glenn Morris  <rgm@gnu.org>
+
+	* Makefile.in (RANLIB): Let configure set it.
+	(libXMenu11.a): configure sets RANLIB = : on systems without it.
+
+	* Makefile.in (CPP, LN_S, AS, LD, MV, LS, LINTOPTS, LINTLIBFLAG, MAKE)
+	(STD_DEFINES, CDEBUGFLAGS, RM_CMD): Remove unused variables.
+
 2010-05-04  Glenn Morris  <rgm@gnu.org>
 
 	* Makefile.in (C_SWITCH_SYSTEM, C_SWITCH_MACHINE): Use
--- a/oldXMenu/Makefile.in	Wed May 05 10:17:53 2010 +0000
+++ b/oldXMenu/Makefile.in	Thu May 06 12:51:40 2010 +0000
@@ -15,8 +15,8 @@
 ## without express or implied warranty.
 
 
-## Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
-##   Free Software Foundation, Inc.
+## Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009,
+##   2010  Free Software Foundation, Inc.
 
 ## This program is free software: you can redistribute it and/or modify
 ## it under the terms of the GNU General Public License as published by
@@ -36,7 +36,7 @@
 
 ## To the best of our knowledge, this code was originally based on the
 ## X11 oldXMenu Makefile, which was automatically generated from the
-## X11 oldXMenu Imakefile. There was no explicit copyright information
+## X11 oldXMenu Imakefile.  There was no explicit copyright information
 ## in the Imakefile, therefore we have added the same MIT license as
 ## used by the rest of the oldXMenu code.
 
@@ -53,24 +53,11 @@
 EXTRA=insque.o
 CC=@CC@
 CFLAGS=@CFLAGS@
-CPP=@CPP@
-LN_S=@LN_S@
-             AS = as
-             LD = ld
-           TAGS = etags
-             RM = rm -f
-             MV = mv
-         RANLIB = ranlib
+TAGS = etags
+RM = rm -f
+RANLIB = @RANLIB@
 # Solaris 2.1 ar doesn't accept the 'l' option.
-             AR = ar cq
-             LS = ls
-       LINTOPTS = -axz
-    LINTLIBFLAG = -C
-           MAKE = make
-    STD_DEFINES =
-    CDEBUGFLAGS = -O
-         RM_CMD = $(RM) *.CKP *.ln *.BAK *.bak *.o core errs ,* *~ *.a \
-			tags TAGS make.log
+AR = ar cq
 
 OBJS =  Activate.o \
 	AddPane.o \
@@ -110,11 +97,7 @@
 libXMenu11.a: $(OBJS) $(EXTRA)
 	$(RM) $@
 	$(AR) $@ $(OBJS) $(EXTRA)
-	@echo Do not be alarmed if the following ranlib command
-	@echo fails due to the absence of a ranlib program on your system.
-	-$(RANLIB) $@ || true
-#If running ranlib fails, probably there is none.
-#That's ok.  So don't stop the build.
+	$(RANLIB) $@
 
 Activate.o: Activate.c XMenuInt.h XMenu.h X10.h
 AddPane.o: AddPane.c XMenuInt.h XMenu.h X10.h
--- a/src/ChangeLog	Wed May 05 10:17:53 2010 +0000
+++ b/src/ChangeLog	Thu May 06 12:51:40 2010 +0000
@@ -1,3 +1,19 @@
+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.
--- a/src/Makefile.in	Wed May 05 10:17:53 2010 +0000
+++ b/src/Makefile.in	Thu May 06 12:51:40 2010 +0000
@@ -37,11 +37,9 @@
 abs_builddir = @abs_builddir@
 VPATH = $(srcdir)
 CC = @CC@
-CPP = @CPP@
 CFLAGS = @CFLAGS@
 CPPFLAGS = @CPPFLAGS@
 LDFLAGS = @LDFLAGS@
-LN_S = @LN_S@
 EXEEXT = @EXEEXT@
 version = @version@
 # Substitute an assignment for the MAKE variable, because
@@ -239,6 +237,7 @@
 
 /* C_SWITCH_X_SITE must come before C_SWITCH_X_SYSTEM
    since it may have -I options that should override those two.  */
+/* MYCPPFLAGS only referenced in etc/DEBUG.  */
 ALL_CFLAGS=-Demacs -DHAVE_CONFIG_H $(MYCPPFLAGS) -I. -I${srcdir} ${C_SWITCH_MACHINE} ${C_SWITCH_SYSTEM} @C_SWITCH_X_SITE@ @C_SWITCH_X_SYSTEM@ ${CFLAGS_SOUND} ${RSVG_CFLAGS} ${DBUS_CFLAGS} ${GCONF_CFLAGS} ${CFLAGS} @FREETYPE_CFLAGS@ @FONTCONFIG_CFLAGS@ @LIBOTF_CFLAGS@ @M17N_FLT_CFLAGS@ ${DEPFLAGS}
 ALL_OBJC_CFLAGS=$(ALL_CFLAGS) @GNU_OBJC_CFLAGS@
 
@@ -730,6 +729,7 @@
 buildobj.h: Makefile
 	echo "#define BUILDOBJ \"${obj} ${otherobj} " "\"" > buildobj.h
 
+/* FIXME LOCALCPP not defined or mentioned anywhere.  */
 temacs${EXEEXT}: $(LOCALCPP) $(STARTFILES) stamp-oldxmenu ${obj} ${otherobj} prefix-args${EXEEXT}
 #ifdef NS_IMPL_GNUSTEP
 	$(CC) -rdynamic YMF_PASS_LDFLAGS ( ${TEMACS_LDFLAGS} \
@@ -802,14 +802,14 @@
 
 #ifndef AUTO_DEPEND
 
-## FIXME some of these dependencies are platform-specific.
-## Eg callproc.c only depends on w32.h for WINDOWSNT builds.
-## One way to fix this would be to replace w32.h (etc) by $(W32_H),
-## a variable set by configure.  Doesn't seem worth the trouble.
+/* FIXME some of these dependencies are platform-specific.
+Eg callproc.c only depends on w32.h for WINDOWSNT builds.
+One way to fix this would be to replace w32.h (etc) by $(W32_H),
+a variable set by configure.  Does not seem worth the trouble.
 
-## nsgui.h: In fact, every .o file depends directly or indirectly on
-## dispextern.h and hence nsgui.h under NS.  But the ones that actually
-## use stuff there are more limited.
+nsgui.h: In fact, every .o file depends directly or indirectly on
+dispextern.h and hence nsgui.h under NS.  But the ones that actually
+use stuff there are more limited.  */
 atimer.o: atimer.c atimer.h syssignal.h systime.h lisp.h blockinput.h \
  $(config_h)
 bidi.o: bidi.c buffer.h character.h dispextern.h lisp.h $(config_h)
--- a/src/m/alpha.h	Wed May 05 10:17:53 2010 +0000
+++ b/src/m/alpha.h	Thu May 06 12:51:40 2010 +0000
@@ -20,25 +20,12 @@
 You should have received a copy of the GNU General Public License
 along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.  */
 
-
-/* The following line tells the configuration script what sort of
-   operating system this machine is likely to run.
-   USUAL-OPSYS="note"
-
-NOTE-START
-Use -opsystem=osf1
-NOTE-END
-
-*/
-
 #ifndef _LP64
-#define _LP64			/* This doesn't appear to be necessary
-				   on OSF 4/5  -- fx.  */
+#define _LP64 /* This doesn't appear to be necessary on OSF 4/5  -- fx.  */
 #endif
 
 /* Define WORDS_BIG_ENDIAN if lowest-numbered byte in a word
    is the most significant byte.  */
-
 #undef WORDS_BIG_ENDIAN
 
 /* Now define a symbol for the cpu type, if your compiler
@@ -52,15 +39,12 @@
    are always unsigned.
 
    This flag only matters if you use USE_LISP_UNION_TYPE.  */
-
 #define EXPLICIT_SIGN_EXTEND
 
 /* Data type of load average, as read out of kmem.  */
-
 #define LOAD_AVE_TYPE long
 
 /* Convert that into an integer that is 100 for a load average of 1.0  */
-
 #define LOAD_AVE_CVT(x) (int) (((double) (x)) * 100.0 / FSCALE)
 
 /* GNU malloc and the relocating allocator do not work together
--- a/src/m/ibmrs6000.h	Wed May 05 10:17:53 2010 +0000
+++ b/src/m/ibmrs6000.h	Thu May 06 12:51:40 2010 +0000
@@ -1,6 +1,6 @@
 /* R2 AIX machine/system dependent defines
-   Copyright (C) 1988, 2001, 2002, 2003, 2004, 2005, 2006, 2007,
-                 2008, 2009, 2010  Free Software Foundation, Inc.
+   Copyright (C) 1988, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008,
+                 2009, 2010  Free Software Foundation, Inc.
 
 This file is part of GNU Emacs.
 
@@ -18,13 +18,6 @@
 along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.  */
 
 
-/* The following line tells the configuration script what sort of
-   operating system this machine is likely to run.
-   USUAL-OPSYS="aix3-1"  */
-
-/* Now define a symbol for the cpu type, if your compiler
-   does not define it automatically.  */
-
 /* The data segment in this machine always starts at address 0x20000000.
    An address of data cannot be stored correctly in a Lisp object;
    we always lose the high bits.  We must tell XPNTR to add them back.  */
--- a/src/m/ibms390.h	Wed May 05 10:17:53 2010 +0000
+++ b/src/m/ibms390.h	Thu May 06 12:51:40 2010 +0000
@@ -18,13 +18,8 @@
 along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.  */
 
 
-/* The following line tells the configuration script what sort of
-   operating system this machine is likely to run.
-   USUAL-OPSYS="<name of system .h file here, without the s- or .h>"  */
-
 /* Define WORDS_BIG_ENDIAN if lowest-numbered byte in a word
    is the most significant byte.  */
-
 #define WORDS_BIG_ENDIAN
 
 /* Define EXPLICIT_SIGN_EXTEND if XINT must explicitly sign-extend
@@ -32,15 +27,12 @@
    are always unsigned.
 
    This flag only matters if you use USE_LISP_UNION_TYPE.  */
-
 #define EXPLICIT_SIGN_EXTEND
 
 /* Data type of load average, as read out of kmem.  */
-
 #define LOAD_AVE_TYPE long
 
 /* Convert that into an integer that is 100 for a load average of 1.0  */
-
 #define LOAD_AVE_CVT(x) (int) (((double) (x)) * 100.0 / FSCALE)
 
 /* Define VIRT_ADDR_VARIES if the virtual addresses of
@@ -49,7 +41,6 @@
 
    Otherwise Emacs assumes that text space precedes data space,
    numerically.  */
-
 #define VIRT_ADDR_VARIES
 
 /* arch-tag: d8a0ffa4-a8f0-4736-90d3-7fd7b21b8314
--- a/src/m/ibms390x.h	Wed May 05 10:17:53 2010 +0000
+++ b/src/m/ibms390x.h	Thu May 06 12:51:40 2010 +0000
@@ -21,23 +21,12 @@
    into ibms390.h.  */
 
 
-/* The following line tells the configuration script what sort of
-   operating system this machine is likely to run.
-   USUAL-OPSYS="<name of system .h file here, without the s- or .h>"
-
-NOTE-START
-IBM s390 64 bits (-machine=ibms390x64)
-
-  The possibilities for -opsystem are: gnu-linux.
-
-NOTE-END */
-
+/* Used for machine IBM s390 64 bits with opsys gnu-linux.  */
 #define BITS_PER_LONG 64
 #define BITS_PER_EMACS_INT 64
 
 /* Define WORDS_BIG_ENDIAN if lowest-numbered byte in a word
    is the most significant byte.  */
-
 #define WORDS_BIG_ENDIAN
 
 /* Define the type to use.  */
@@ -49,15 +38,12 @@
    are always unsigned.
 
    This flag only matters if you use USE_LISP_UNION_TYPE.  */
-
 #undef EXPLICIT_SIGN_EXTEND
 
 /* Data type of load average, as read out of kmem.  */
-
 #define LOAD_AVE_TYPE long
 
 /* Convert that into an integer that is 100 for a load average of 1.0  */
-
 #define LOAD_AVE_CVT(x) (int) (((double) (x)) * 100.0 / FSCALE)
 
 /* Define VIRT_ADDR_VARIES if the virtual addresses of
@@ -66,23 +52,19 @@
 
    Otherwise Emacs assumes that text space precedes data space,
    numerically.  */
-
 #define VIRT_ADDR_VARIES
 
 /* Define HAVE_ALLOCA to say that the system provides a properly
    working alloca function and it should be used.  Undefine it if an
    assembler-language alloca in the file alloca.s should be used. */
-
 #define HAVE_ALLOCA
 
 /* On the 64 bit architecture, we can use 60 bits for addresses */
-
 #define VALBITS         60
 
 #define LINKER $(CC) -nostdlib
 
 /* Define XPNTR to avoid or'ing with DATA_SEG_BITS */
-
 #define XPNTR(a) XUINT (a)
 
 /* arch-tag: 4b87653c-6add-4663-8691-7d9dc17b5519
--- a/src/m/intel386.h	Wed May 05 10:17:53 2010 +0000
+++ b/src/m/intel386.h	Thu May 06 12:51:40 2010 +0000
@@ -1,6 +1,6 @@
 /* Machine description file for intel 386.
-   Copyright (C) 1987, 2001, 2002, 2003, 2004, 2005, 2006, 2007,
-                 2008, 2009, 2010  Free Software Foundation, Inc.
+   Copyright (C) 1987, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008,
+                 2009, 2010  Free Software Foundation, Inc.
 
 This file is part of GNU Emacs.
 
@@ -18,25 +18,8 @@
 along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.  */
 
 
-/* The following line tells the configuration script what sort of
-   operating system this machine is likely to run.
-   USUAL-OPSYS="note"
-
-NOTE-START
-Intel 386 (-machine=intel386)
-
-  The possibilities for -opsystem are: bsd4-2, usg5-2-2, usg5-3,
-  isc2-2, 386-ix, and linux.
-
-  18.58 should support a wide variety of operating systems.
-  Use linux for Linux.
-  It isn't clear what to do on an SCO system.
-
-NOTE-END */
-
 /* Define WORDS_BIG_ENDIAN if lowest-numbered byte in a word
    is the most significant byte.  */
-
 #undef WORDS_BIG_ENDIAN
 
 #ifdef USG
--- a/src/m/sparc.h	Wed May 05 10:17:53 2010 +0000
+++ b/src/m/sparc.h	Thu May 06 12:51:40 2010 +0000
@@ -1,6 +1,6 @@
 /* machine description file for Sun 4 SPARC.
-   Copyright (C) 1987, 2001, 2002, 2003, 2004, 2005, 2006, 2007,
-                 2008, 2009, 2010  Free Software Foundation, Inc.
+   Copyright (C) 1987, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008,
+                 2009, 2010  Free Software Foundation, Inc.
 
 This file is part of GNU Emacs.
 
@@ -17,48 +17,34 @@
 You should have received a copy of the GNU General Public License
 along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.  */
 
-/* The following line tells the configuration script what sort of
-   operating system this machine is likely to run.
-   USUAL-OPSYS="note"
-
-NOTE-START
-Use -opsystem=sunos4 for operating system version 4, and
--opsystem=bsd4-2 for earlier versions.
-NOTE-END  */
-
 /* Define WORDS_BIG_ENDIAN if lowest-numbered byte in a word
    is the most significant byte.  */
-
 #define WORDS_BIG_ENDIAN
 
 /* __sparc__ is defined by the compiler by default.  */
 
 /* XINT must explicitly sign-extend
    This flag only matters if you use USE_LISP_UNION_TYPE.  */
-
 #define EXPLICIT_SIGN_EXTEND
 
 /* Data type of load average, as read out of kmem.  */
-
 #define LOAD_AVE_TYPE long
 
 /* Convert that into an integer that is 100 for a load average of 1.0  */
-
 #define LOAD_AVE_CVT(x) (int) (((double) (x)) * 100.0 / FSCALE)
 
 /* Mask for address bits within a memory segment */
-
 #define SEGMENT_MASK (SEGSIZ - 1)
 
 #ifdef __arch64__		/* GCC, 64-bit ABI.  */
+
 #define BITS_PER_LONG 64
-#endif
 
 #ifndef _LP64
-#define _LP64			/* Done on Alpha -- not sure if it
-				   should be here.  -- fx */
+#define _LP64 /* Done on Alpha -- not sure if it should be here.  -- fx */
 #endif
-#endif
+
+#endif  /* __arch64__ */
 
 /* arch-tag: 0a6f7882-33fd-4811-9832-7466c51e50f7
    (do not change this comment) */
--- a/src/m/vax.h	Wed May 05 10:17:53 2010 +0000
+++ b/src/m/vax.h	Thu May 06 12:51:40 2010 +0000
@@ -18,18 +18,8 @@
 along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.  */
 
 
-/* The following line tells the configuration script what sort of
-   operating system this machine is likely to run.
-   USUAL-OPSYS="note"
-
-NOTE-START
-The vax (-machine=vax) runs zillions of different operating systems.
-
-NOTE-END  */
-
 /* Define WORDS_BIG_ENDIAN if lowest-numbered byte in a word
    is the most significant byte.  */
-
 #undef WORDS_BIG_ENDIAN
 
 /* #define vax    -- appears to be done automatically  */
@@ -38,11 +28,9 @@
    support the load average, so disable it for them.  */
 
 /* Data type of load average, as read out of kmem.  */
-
 #define LOAD_AVE_TYPE double
 
 /* Convert that into an integer that is 100 for a load average of 1.0  */
-
 #define LOAD_AVE_CVT(x) ((int) ((x) * 100.0))
 
 #define HAVE_FTIME
--- a/src/syntax.c	Wed May 05 10:17:53 2010 +0000
+++ b/src/syntax.c	Thu May 06 12:51:40 2010 +0000
@@ -858,7 +858,7 @@
      Lisp_Object character;
 {
   int char_int;
-  CHECK_NUMBER (character);
+  CHECK_CHARACTER (character);
   char_int = XINT (character);
   SETUP_BUFFER_SYNTAX_TABLE ();
   return make_number (syntax_code_spec[(int) SYNTAX (char_int)]);
--- a/src/xterm.c	Wed May 05 10:17:53 2010 +0000
+++ b/src/xterm.c	Thu May 06 12:51:40 2010 +0000
@@ -2291,7 +2291,7 @@
 x_draw_image_relief (s)
      struct glyph_string *s;
 {
-  int x0, y0, x1, y1, thick, raised_p;
+  int x0, y0, x1, y1, thick, raised_p, extra;
   XRectangle r;
   int x = s->x;
   int y = s->ybase - image_ascent (s->img, s->face, &s->slice);
@@ -2322,7 +2322,7 @@
       raised_p = s->img->relief > 0;
     }
 
-  int extra = s->face->id == TOOL_BAR_FACE_ID
+  extra = s->face->id == TOOL_BAR_FACE_ID
     ? XINT (Vtool_bar_button_margin) : 0;
   
   x0 = x - thick - extra;