]> code.delx.au - gnu-emacs/commitdiff
Merge from emacs-24; up to 2014-05-29T17:16:00Z!dmantipov@yandex.ru
authorGlenn Morris <rgm@gnu.org>
Mon, 2 Jun 2014 00:18:22 +0000 (17:18 -0700)
committerGlenn Morris <rgm@gnu.org>
Mon, 2 Jun 2014 00:18:22 +0000 (17:18 -0700)
25 files changed:
1  2 
ChangeLog
admin/ChangeLog
configure.ac
doc/emacs/ChangeLog
doc/lispref/ChangeLog
doc/lispref/functions.texi
etc/NEWS
lisp/ChangeLog
lisp/cus-start.el
lisp/emacs-lisp/byte-opt.el
lisp/emacs-lisp/package.el
lisp/gnus/ChangeLog
lisp/minibuffer.el
lisp/mouse.el
lisp/simple.el
lisp/subr.el
src/ChangeLog
src/Makefile.in
src/alloc.c
src/cmds.c
src/conf_post.h
src/fileio.c
src/frame.c
src/lisp.h
src/xterm.c

diff --cc ChangeLog
index 88ebe08e0fce7a8ef1c23be7956570b1a3bab368,30561d6ac13f443544d5b4f4fdda48b3ef676040..e437bd7b35d0a9fb9daab018eed0064eb255ee21
+++ b/ChangeLog
@@@ -1,56 -1,14 +1,66 @@@
 -2014-05-30  Paul Eggert  <eggert@cs.ucla.edu>
++2014-06-02  Paul Eggert  <eggert@cs.ucla.edu>
+       Fix port to 32-bit AIX with xlc (Bug#17598).
+       This doesn't fix Bug#17598, but it does fix a regression since Emacs
+       built with xlc until recently, and perhaps it'll help us fix Bug#17598.
+       * configure.ac (GC_SETJMP_WORKS): Define for AIX, too.
+       Merge from gnulib, incorporating:
+       2014-05-30 ftoastr: work around compiler bug in IBM xlc 12.1
+       * lib/ftoastr.c: Update from gnulib.
 -2014-05-22  Paul Eggert  <eggert@cs.ucla.edu>
 +2014-06-01  Paul Eggert  <eggert@cs.ucla.edu>
 +
 +      Merge from gnulib, incorporating:
 +      2014-06-02 acl: apply pure attribute to two functions
 +      2014-06-01 gnulib-common.m4: add _GL_UNUSED_LABEL
 +      2014-05-31 dup2, fcntl, fcntl-h: port to AIX 7.1
 +      2014-05-30 ftoastr: work around compiler bug in IBM xlc 12.1
 +      * lib/acl-internal.h, lib/fcntl.in.h, lib/ftoastr.h:
 +      * m4/dup2.m4, m4/fcntl.m4, m4/gnulib-common.m4:
 +      Update from gnulib.
 +
 +2014-06-01  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * configure.ac (C_HEAP_SWITCH): Raise HEAPSIZE value for 32-bit
 +      builds on Windows.
 +
 +2014-05-29  Paul Eggert  <eggert@cs.ucla.edu>
 +
 +      * configure.ac (pthread_sigmask): Look in LIB_PTHREAD too (Bug#17561).
 +      Fixes configuration glitch found in <http://bugs.gnu.org/17561#59>.
 +
 +2014-05-29  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * configure.ac (ADDSECTION, TEMACS_POST_LINK): Don't compute,
 +      unused.
 +
 +2014-05-29  Paul Eggert  <eggert@cs.ucla.edu>
 +
 +      Don't substitute sigprocmask for pthread_sigmask (Bug#17561).
 +      sigprocmask isn't portable in a multithreaded process.
 +      * configure.ac (gl_THREADLIB): Remove dummy.
 +      Merge from gnulib, incorporating:
 +      2014-05-28 pthread_sigmask, timer-time: use gl_THREADLIB only if needed
 +      * m4/pthread_sigmask.m4, m4/timer_time.m4: Update from gnulib.
 +
 +2014-05-29  Glenn Morris  <rgm@gnu.org>
 +
 +      * configure.ac: Explicitly drop some ancient Solaris versions.
 +
 +2014-05-27  Fabrice Popineau  <fabrice.popineau@gmail.com>
 +
 +      * configure.ac (C_HEAP_SWITCH): Define for different values of
 +      dumped heap size depending on 32/64bits arch on Windows.
 +      Don't check for pthreads.h on MinGW32/64, it gets in the way.
 +      Use mmap(2) for buffers and system malloc for MinGW32/64.
 +
 +2014-05-27  Paul Eggert  <eggert@cs.ucla.edu>
 +
 +      Merge from gnulib, incorporating:
 +      2014-05-21 fchdir: port 'open' and 'close' redefinitions to AIX 7.1
 +      * lib/openat-proc.c: Update from gnulib.
 +
 +2014-05-26  Paul Eggert  <eggert@cs.ucla.edu>
  
        Fix port to 32-bit AIX (Bug#17540).
        * configure.ac (opsys): On Power Architecture, treat release 7 of
diff --cc admin/ChangeLog
index 79adb4f543dfc21c601516b878056c7ecedcafe6,71f936865c59da93bc93d07667b6393b7f46b66b..4419d90fcd602cd68b04dd5c6cf736df5ce6cc42
@@@ -1,26 -1,26 +1,40 @@@
 -2014-05-26  Paul Eggert  <eggert@cs.ucla.edu>
++2014-06-02  Paul Eggert  <eggert@cs.ucla.edu>
+       Include sources used to create macuvs.h.
+       * unidata/IVD_Sequences.txt: New file.
+       * unidata/Makefile.in (${top_srcdir}/src/macuvs.h): New rule.
+       (all): Build it.
+       (extraclean): Remove it.
+       * unidata/README: Mention BidiMirroring.txt and IVD_Sequences.txt.
+       * unidata/copyright.html: Update to current version from Unicode
+       Consortium.
+       * unidata/uvs.el: Rename from ../mac/uvs.el.
+       (uvs-print-table-ivd): Output a header in the form that
+       unidata-gen.el generates.
 -2014-05-26  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
 +2014-05-25  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
  
 -      * mac/uvs.el: New file.  Generates ../src/macuvs.h.
 +      * mac/uvs.el: New file from Mac port.  Generates src/macuvs.h.
  
 -2014-05-11  Glenn Morris  <rgm@gnu.org>
 +2014-05-17  Paul Eggert  <eggert@cs.ucla.edu>
  
 -      * find-gc.el: Move here from ../lisp/emacs-lisp.
 +      Assume C99 or later (Bug#17487).
 +      * merge-gnulib (GNULIB_MODULES): Remove stdarg, stdbool.
 +      (GNULIB_TOOL_FLAGS): Avoid stdarg, stdbool.
 +
 +2014-05-16  Paul Eggert  <eggert@cs.ucla.edu>
 +
 +      Don't require pkg-config when building from repository.
 +      * merge-pkg-config: New script.
 +      * notes/copyright: Update for m4/*.m4, in particular m4/pkg.m4.
 +
 +2014-05-13  Paul Eggert  <eggert@cs.ucla.edu>
  
 -2014-05-10  Glenn Morris  <rgm@gnu.org>
 +      * merge-gnulib: Defer to autogen.sh for ACLOCAL_PATH computation.
 +
 +2014-05-12  Glenn Morris  <rgm@gnu.org>
 +
 +      * find-gc.el: Move here from ../lisp/emacs-lisp.
  
        * admin.el (set-version-in-file): Don't set identical version.
        (set-version): Provide default version number.
diff --cc configure.ac
Simple merge
index db310ea37bdce7e914a041c04f44ca1e5da40d71,efb70f3b09b41e0713d414fed9408087f4c8c240..2a46642f0dc01bf51a7d5b500b540f60f808eeb7
@@@ -1,4 -1,17 +1,11 @@@
 -2014-05-29  Glenn Morris  <rgm@gnu.org>
++2014-06-02  Glenn Morris  <rgm@gnu.org>
+       * macos.texi (Mac / GNUstep Customization): Mention ns custom group.
+       (Customization options specific to Mac OS / GNUstep): Remove section.
 -2014-05-28  Glenn Morris  <rgm@gnu.org>
 -
 -      * macos.texi (Mac / GNUstep Customization): Mention some new features.
 -
 -2014-05-27  Glenn Morris  <rgm@gnu.org>
 -
+       * abbrevs.texi (Expanding Abbrevs): Update re abbrev-expand-function.
 -2014-05-21  Eli Zaretskii  <eliz@gnu.org>
 +2014-05-26  Eli Zaretskii  <eliz@gnu.org>
  
        * frames.texi (Fonts): Clarify which frames are affected by
        setting font from the menu and in default-frame-alist.
index e810e75a80fe34d1c13ff28f7f3376849d0e9983,e4f5c60c2d14ba5c6d6863d5f39e497d74033584..9099d69ab3f939190c69062b3049fff1de013301
@@@ -1,4 -1,12 +1,12 @@@
 -2014-05-27  Glenn Morris  <rgm@gnu.org>
++2014-06-02  Glenn Morris  <rgm@gnu.org>
+       * text.texi (Buffer Contents):
+       Update for filter-buffer-substring changes.
+       * abbrevs.texi (Abbrev Expansion): Update for expand-abbrev changes.
+       * functions.texi (Advising Functions): Standardize menu case.
 -2014-05-17  Eli Zaretskii  <eliz@gnu.org>
 +2014-05-26  Eli Zaretskii  <eliz@gnu.org>
  
        * display.texi (Invisible Text): Clarify the description of
        line-move-ignore-invisible.  (Bug#17511)
index 52994a558544cecce59fc9cfbbf4f944ab789e16,019c75ba021a5629d58242f17246c3aa129c0ee1..91fdcc63cbe6318ad06cc998881edbf9ba03c730
@@@ -1207,10 -1207,10 +1207,10 @@@ specify how the two functions are compo
  ways to do it.  The added function is also called an @emph{advice}.
  
  @menu
- * Core Advising Primitives::    Primitives to Manipulate Advices
- * Advising Named Functions::    Advising Named Functions
- * Advice combinators::          Ways to compose advices
- * Porting old advices::         Adapting code using the old defadvice
+ * Core Advising Primitives::    Primitives to manipulate advice.
+ * Advising Named Functions::    Advising named functions.
 -* Advice combinators::          Ways to compose advices.
++* Advice combinators::          Ways to compose advice.
+ * Porting old advices::         Adapting code using the old defadvice.
  @end menu
  
  @node Core Advising Primitives
diff --cc etc/NEWS
Simple merge
diff --cc lisp/ChangeLog
index f86520209202455bf5cbba067914b5453f680c90,8e3810f907b857189a04776acf484a146028f897..d85aa1e31aba3bd6a8037ac8573e5a0d70fb6793
 -2014-06-01  Eli Zaretskii  <eliz@gnu.org>
++2014-06-02  Eli Zaretskii  <eliz@gnu.org>
+       * simple.el (keyboard-quit): Force update of mode lines, to remove
+       the "Def" indicator, if we were defining a macro.  (Bug#17615)
 -2014-06-01  Stefan Monnier  <monnier@iro.umontreal.ca>
++2014-06-02  Stefan Monnier  <monnier@iro.umontreal.ca>
+       * minibuffer.el (minibuffer-force-complete-and-exit):
+       Obey minibuffer-default (bug#17545).
+       * progmodes/js.el (js-indent-line): Don't mix columns and chars
+       (bug#17619).
 -2014-05-31  Stefan Monnier  <monnier@iro.umontreal.ca>
 -
+       * subr.el (set-transient-map): Don't wait for some "nested"
+       transient-map to finish if we're only supposed to be active for
+       the next command (bug#17642).
 -2014-05-31  Leo Liu  <sdl.web@gmail.com>
++2014-06-02  Leo Liu  <sdl.web@gmail.com>
+       * emacs-lisp/gv.el (window-buffer, window-display-table)
+       (window-dedicated-p, window-hscroll, window-point, window-start):
+       Fix gv-expander.  (Bug#17630)
 -2014-05-31  Stefan Monnier  <monnier@iro.umontreal.ca>
++2014-06-02  Stefan Monnier  <monnier@iro.umontreal.ca>
+       * mouse.el (mouse-posn-property): Ignore posn-point for mode-line
+       clicks (bug#17633).
+       * leim/quail/latin-pre.el ("latin-2-prefix"): Use ",," rather than ", "
+       for the single comma, since ", " is *very* common in normal French text
+       (bug#17643).
 -2014-05-30  Glenn Morris  <rgm@gnu.org>
++2014-06-02  Glenn Morris  <rgm@gnu.org>
+       * emacs-lisp/package.el (package-check-signature)
+       (package-unsigned-archives): Fix :version.
 -2014-05-29  Stefan Monnier  <monnier@iro.umontreal.ca>
++2014-06-02  Stefan Monnier  <monnier@iro.umontreal.ca>
+       * subr.el (sit-for): Don't run input-methods (bug#15614).
 -2014-05-28  Glenn Morris  <rgm@gnu.org>
++2014-06-02  Glenn Morris  <rgm@gnu.org>
+       * cus-start.el: Fix some :version numbers.
 -2014-05-27  Stefan Monnier  <monnier@iro.umontreal.ca>
++2014-06-02  Stefan Monnier  <monnier@iro.umontreal.ca>
+       * simple.el (deactivate-mark): Set mark-active to nil even if
+       deactivation is done via setting transient-mark-mode to nil,
+       since one is buffer-local and the other is global.
+       * emacs-lisp/byte-opt.el (byte-optimize-binary-predicate): Don't assume
+       there can't be more than 2 arguments (bug#17584).
 -2014-05-27  Glenn Morris  <rgm@gnu.org>
++2014-06-02  Glenn Morris  <rgm@gnu.org>
+       * simple.el (filter-buffer-substring-functions)
+       (filter-buffer-substring-function, buffer-substring-filters)
+       (filter-buffer-substring, buffer-substring--filter): Doc fixes.
+       * minibuffer.el (completion-in-region-functions, completion-in-region)
+       (completion--in-region): Doc fixes.
+       * abbrev.el (abbrev-expand-functions, abbrev-expand-function)
+       (expand-abbrev, abbrev--default-expand): Doc fixes.
 -2014-05-26  Paul Eggert  <eggert@cs.ucla.edu>
++2014-06-02  Paul Eggert  <eggert@cs.ucla.edu>
+       Include sources used to create macuvs.h.
+       * international/README: Refer to the Unicode Terms of Use rather
+       than copying it bodily here, as that simplifies maintenance.
 -2014-05-25  Andreas Schwab  <schwab@linux-m68k.org>
 +2014-06-01  Glenn Morris  <rgm@gnu.org>
 +
 +      * loadup.el (load-prefer-newer): Set non-nil when dumping.  (Bug#17629)
 +
 +2014-05-31  Glenn Morris  <rgm@gnu.org>
 +
 +      * files.el (locate-dominating-file): Expand file argument.  (Bug#17641)
 +
 +2014-05-30  Glenn Morris  <rgm@gnu.org>
 +
 +      * loadup.el: Treat `command-line-args' more flexibly.
 +
 +2014-05-30  Alan Mackenzie  <acm@muc.de>
 +
 +      Guard (looking-at "\\s!") from XEmacs.
 +      * progmodes/cc-engine.el (c-state-pp-to-literal): add guard form.
 +
 +2014-05-30    Ken Olum  <kdo@cosmos.phy.tufts.edu>  (tiny change)
 +
 +      * mail/rmail.el (rmail-delete-forward, rmail-delete-backward): The
 +      argument COUNT is now optional, to be more backward-compatible.
 +      Doc fix.  (Bug#17560)
 +
 +2014-05-29  Reuben Thomas  <rrt@sc3d.org>
 +
 +      * whitespace.el (whitespace-report-region): Simplify
 +      documentation.
 +      (whitespace-report-region): Allow report-if-bogus to take the
 +      value `never', for non-interactive use.
 +      (whitespace-report): Refer to whitespace-report-region's
 +      documentation.
 +
 +2014-05-29  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * whitespace.el: Use font-lock-flush.  Minimize refontifications.
 +      Side benefit: it works without jit-lock.
 +      (whitespace-point--used): New buffer-local var.
 +      (whitespace-color-on): Initialize it and flush it.  Use font-lock-flush.
 +      (whitespace-color-off): Use font-lock-flush.
 +      (whitespace-point--used, whitespace-point--flush-used): New functions.
 +      (whitespace-trailing-regexp, whitespace-empty-at-bob-regexp)
 +      (whitespace-empty-at-eob-regexp): Use them.
 +      (whitespace-post-command-hook): Rewrite.
 +
 +      * font-lock.el (font-lock-flush, font-lock-ensure): New functions.
 +      (font-lock-fontify-buffer): Mark interactive-only.
 +      (font-lock-multiline, font-lock-fontified, font-lock-set-defaults):
 +      Make buffer-local.
 +      (font-lock-specified-p): Remove redundant boundp check.
 +      (font-lock-flush-function, font-lock-ensure-function): New vars.
 +      (font-lock-turn-on-thing-lock): Set them.
 +      (font-lock-default-fontify-buffer): Obey font-lock-dont-widen.
 +      (font-lock-after-change-function): Make `old-len' optional.
 +      (font-lock-set-defaults): Remove redundant `set' of font-lock-defaults.
 +      Call font-lock-flush, just in case.
 +      * progmodes/verilog-mode.el (verilog-preprocess): Disable workaround in
 +      recent Emacsen.
 +      * progmodes/vera-mode.el (vera-fontify-buffer): Declare obsolete.
 +      (vera-mode-map, vera-mode-menu): Remove bindings to it.
 +      * progmodes/idlw-help.el (idlwave-help-fontify): Use font-lock-ensure
 +      and with-syntax-table.
 +      * textmodes/conf-mode.el (conf-quote-normal):
 +      * progmodes/sh-script.el (sh-set-shell):
 +      * progmodes/prog-mode.el (prettify-symbols-mode):
 +      * progmodes/f90.el (f90-font-lock-n):
 +      * progmodes/cwarn.el (cwarn-mode):
 +      * nxml/nxml-mode.el (nxml-toggle-char-ref-extra-display):
 +      * progmodes/compile.el (compilation-setup, compilation--unsetup):
 +      * hi-lock.el (hi-lock-mode, hi-lock-unface-buffer)
 +      (hi-lock-set-pattern, hi-lock-set-file-patterns): Use font-lock-flush.
 +      * mail/rmail.el (rmail-variables): Set font-lock-dont-widen instead of
 +      font-lock-fontify-buffer-function and
 +      font-lock-unfontify-buffer-function.
 +      (rmail-unfontify-buffer-function, rmail-fontify-message):
 +      Use with-silent-modifications.
 +      * htmlfontify.el (hfy-force-fontification): Use jit-lock-fontify-now
 +      and font-lock-ensure.
 +      * bs.el (bs-show-in-buffer): Use font-lock-ensure.
 +
 +2014-05-28  Thien-Thi Nguyen  <ttn@gnu.org>
 +
 +      * emacs-lisp/package.el (package-generate-autoloads):
 +      Inhibit backup files.
 +
 +2014-05-28  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * progmodes/hideshow.el (hs-hide-all): Call syntax-propertize
 +      (bug#17608).
 +
 +2014-05-21  Michal Nazarewicz  <mina86@mina86.com>
 +
 +      * textmodes/tildify.el (tildify-buffer, tildify-region):
 +      Add dont-ask option.
 +
 +2014-05-28  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * subr.el (zerop): Move from C.  Add compiler-macro (bug#17475).
 +      * emacs-lisp/byte-opt.el (byte-optimize-zerop): Remove.
 +
 +      * subr.el (internal--funcall-interactively): New.
 +      (internal--call-interactively): Remove.
 +      (called-interactively-p): Detect funcall-interactively instead of
 +      call-interactively.
 +      * simple.el (repeat-complex-command): Use funcall-interactively.
 +      (repeat-complex-command--called-interactively-skip): Remove.
 +
 +2014-05-27  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * register.el (register-read-with-preview): Don't burp on
 +      frame switches (e.g. due to the frame we just popped).
 +
 +      * mouse.el (mouse-set-region): Handle spurious drag events (bug#17562).
 +      (mouse-drag-track): Annotate `mouse-drag-start' so we know we moved.
 +
 +2014-05-26  Andreas Schwab  <schwab@linux-m68k.org>
  
        * cus-face.el (custom-face-attributes): Add :distant-foreground.
  
Simple merge
Simple merge
Simple merge
index 0f99bb9c4d54eebb62960bddec52ac2adcdfe0f9,c9a23e47e6c7188a70fddd500667c643481bda63..3560260d7ae25f7ba0e4b67962e970a6455570e6
@@@ -1,36 -1,9 +1,41 @@@
 -2014-05-28  Andreas Schwab  <schwab@linux-m68k.org>
++2014-06-02  Andreas Schwab  <schwab@linux-m68k.org>
+       * html2text.el (html2text-get-attr): Fix typo when splitting value from
+       attribute. (Bug#17613)
 -2014-05-06  Glenn Morris  <rgm@gnu.org>
 +2014-05-29  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * mm-view.el (mm-display-inline-fontify): Use font-lock-ensure.
 +      * gnus-cite.el (gnus-message-citation-mode): Use font-lock-flush.
 +
 +2014-05-15  Katsumi Yamaoka  <yamaoka@jpl.org>
 +
 +      * gnus-art.el (gnus-mime-inline-part, gnus-mm-display-part):
 +      Don't delete next part button; keep spacing between buttons.
 +
 +2014-05-14  Katsumi Yamaoka  <yamaoka@jpl.org>
 +
 +      * gnus-art.el (gnus-mime-inline-part, gnus-mm-display-part):
 +      Work for the last MIME part in an article.
 +      (gnus-mime-display-single): Suppress excessive newlines between parts.
 +
 +      * mm-uu.el (mm-uu-dissect): Assume that separators may be accompanied
 +      by leading or trailing newline.
 +
 +2014-05-09  Katsumi Yamaoka  <yamaoka@jpl.org>
 +
 +      * gnus-art.el (gnus-mm-display-part): Don't put article out of sight
 +      while prompting a user for a file name, etc.
 +      (gnus-mime-display-single): Display part with a common appearance no
 +      matter whether MIME button is omitted or not; don't add duplicate entry
 +      to gnus-article-mime-handle-alist.
 +      (gnus-mime-buttonize-attachments-in-header): Use copied buttons.
 +
 +2014-05-08  Adam Sjøgren  <asjo@koldfront.dk>
 +
 +      * mml2015.el (mml2015-display-key-image): New variable.
 +
 +2014-05-08  Glenn Morris  <rgm@gnu.org>
  
        * gnus-fun.el (gnus-grab-cam-face):
        Do not use predictable temp-file name.  (http://bugs.debian.org/747100)
Simple merge
diff --cc lisp/mouse.el
Simple merge
diff --cc lisp/simple.el
index 7bc961b20517aeecccefa4febf509acf30985cf7,4cc6e56aef81515d63a233aa125f0b91569c9f0c..cde169982cbda3f1866ac6202fac314d9d8da177
@@@ -6679,8 -6598,10 +6679,12 @@@ At top-level, as an editor command, thi
      (deactivate-mark))
    (if (fboundp 'kmacro-keyboard-quit)
        (kmacro-keyboard-quit))
 +  (when completion-in-region-mode
 +    (completion-in-region-mode -1))
+   ;; Force the next redisplay cycle to remove the "Def" indicator from
+   ;; all the mode lines.
+   (if defining-kbd-macro
+       (force-mode-line-update t))
    (setq defining-kbd-macro nil)
    (let ((debug-on-quit nil))
      (signal 'quit nil)))
diff --cc lisp/subr.el
index 282b85eb1e4b58206356a8345173a8dcfce2f8b0,c8dcfc8df97e330e299db7ecffc3523725329e05..95d066ee6c2e04285213acb9ee1f8d4505c80eb4
@@@ -2178,19 -2172,20 +2182,24 @@@ floating point support.
      ;; FIXME: we should not read-event here at all, because it's much too
      ;; difficult to reliably "undo" a read-event by pushing it onto
      ;; unread-command-events.
-     (let ((read (read-event nil t seconds)))
+     ;; For bug#14782, we need read-event to do the keyboard-coding-system
+     ;; decoding (hence non-nil as second arg under POSIX ttys).
+     ;; For bug#15614, we need read-event not to inherit-input-method.
+     ;; So we temporarily suspend input-method-function.
+     (let ((read (let ((input-method-function nil))
+                   (read-event nil t seconds))))
        (or (null read)
          (progn
 -          ;; If last command was a prefix arg, e.g. C-u, push this event onto
 -          ;; unread-command-events as (t . EVENT) so it will be added to
 -          ;; this-command-keys by read-key-sequence.
 -          (if (eq overriding-terminal-local-map universal-argument-map)
 -              (setq read (cons t read)))
 -          (push read unread-command-events)
 +            ;; https://lists.gnu.org/archive/html/emacs-devel/2006-10/msg00394.html
 +            ;; We want `read' appear in the next command's this-command-event
 +            ;; but not in the current one.
 +            ;; By pushing (cons t read), we indicate that `read' has not
 +            ;; yet been recorded in this-command-keys, so it will be recorded
 +            ;; next time it's read.
 +            ;; And indeed the `seconds' argument to read-event correctly
 +            ;; prevented recording this event in the current command's
 +            ;; this-command-keys.
 +          (push (cons t read) unread-command-events)
            nil))))))
  
  ;; Behind display-popup-menus-p test.
@@@ -4317,34 -4307,29 +4326,34 @@@ lookup sequence then continues.
      ;; Don't use letrec, because equal (in add/remove-hook) would get trapped
      ;; in a cycle.
      (fset clearfun
-            (lambda ()
-              (with-demoted-errors "set-transient-map PCH: %S"
-                (unless (cond
-                          ((not (eq map (cadr overriding-terminal-local-map)))
-                           ;; There's presumably some other transient-map in
-                           ;; effect.  Wait for that one to terminate before we
-                           ;; remove ourselves.
-                           ;; For example, if isearch and C-u both use transient
-                           ;; maps, then the lifetime of the C-u should be nested
-                           ;; within isearch's, so the pre-command-hook of
-                           ;; isearch should be suspended during the C-u one so
-                           ;; we don't exit isearch just because we hit 1 after
-                           ;; C-u and that 1 exits isearch whereas it doesn't
-                           ;; exit C-u.
-                           t)
-                          ((null keep-pred) nil)
-                          ((eq t keep-pred)
-                           (eq this-command
-                               (lookup-key map (this-command-keys-vector))))
-                          (t (funcall keep-pred)))
-                  (internal-pop-keymap map 'overriding-terminal-local-map)
-                  (remove-hook 'pre-command-hook clearfun)
 +          (suspicious-object
 -                (when on-exit (funcall on-exit))))))
+           (lambda ()
+             (with-demoted-errors "set-transient-map PCH: %S"
+               (unless (cond
+                        ((null keep-pred) nil)
+                        ((not (eq map (cadr overriding-terminal-local-map)))
+                         ;; There's presumably some other transient-map in
+                         ;; effect.  Wait for that one to terminate before we
+                         ;; remove ourselves.
+                         ;; For example, if isearch and C-u both use transient
+                         ;; maps, then the lifetime of the C-u should be nested
+                         ;; within isearch's, so the pre-command-hook of
+                         ;; isearch should be suspended during the C-u one so
+                         ;; we don't exit isearch just because we hit 1 after
+                         ;; C-u and that 1 exits isearch whereas it doesn't
+                         ;; exit C-u.
+                         t)
+                        ((eq t keep-pred)
+                         (eq this-command
+                             (lookup-key map (this-command-keys-vector))))
+                        (t (funcall keep-pred)))
+                 (internal-pop-keymap map 'overriding-terminal-local-map)
+                 (remove-hook 'pre-command-hook clearfun)
 +                 (when on-exit (funcall on-exit))
 +                 ;; Comment out the fset if you want to debug the GC bug.
 +;;;           (fset clearfun nil)
 +;;;             (set clearfun nil)
 +                 )))))
      (add-hook 'pre-command-hook clearfun)
      (internal-push-keymap map 'overriding-terminal-local-map)))
  
diff --cc src/ChangeLog
index f5da7ce4ee3f8c92f4ffb2d6b7aefdcb6418024a,07d2b5bd6438a3302410f97fa8896f1e67a3b794..2881574684c975daf69bcc19a3a5a9b62ee2cb14
 -2014-06-01  Paul Eggert  <eggert@cs.ucla.edu>
++2014-06-02  Paul Eggert  <eggert@cs.ucla.edu>
+       * frame.c (x_set_frame_parameters): Don't read uninitialized storage.
 -2014-06-01  Jan Djärv  <jan.h.d@swipnet.se>
++2014-06-02  Jan Djärv  <jan.h.d@swipnet.se>
+       * xterm.c (xg_scroll_callback): Remove position, for jump set portion
+       to min(value, whole).
 -2014-06-01  Paul Eggert  <eggert@cs.ucla.edu>
++2014-06-02  Paul Eggert  <eggert@cs.ucla.edu>
+       Bring back the changes to GDB-visible symbols, but only on AIX.
+       And only if it's not pre-4.2 GCC.
+       * lisp.h (ENUMABLE, DEFINE_GDB_SYMBOL_ENUM): New macros.
+       (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG, VALMASK): Use them.
+       (ARRAY_MARK_FLAG_val, PSEUDOVECTOR_FLAG_val, VALMASK_val):
+       New macros.
 -2014-05-31  Eli Zaretskii  <eliz@gnu.org>
++2014-06-02  Eli Zaretskii  <eliz@gnu.org>
+       * fileio.c (Finsert_file_contents): Call prepare_to_modify_buffer
+       with PT, not GPT.  (Bug#16433)
+       Revert last changes to GDB-visible symbols.
+       * lisp.h (ENUMABLE, DEFINE_GDB_SYMBOL_ENUM): Delete macros.
+       (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG, VALMASK): Don't use them.
+       (ARRAY_MARK_FLAG_val, PSEUDOVECTOR_FLAG_val, VALMASK_val):
+       Delete macros.
 -2014-05-31  Glenn Morris  <rgm@gnu.org>
++2014-06-02  Glenn Morris  <rgm@gnu.org>
+       * cmds.c (Fself_insert_command): Allow zero repeat count.  (Bug#17649)
 -2014-05-30  Paul Eggert  <eggert@cs.ucla.edu>
++2014-06-02  Paul Eggert  <eggert@cs.ucla.edu>
+       Fix port to 32-bit AIX with xlc (Bug#17598).
+       * alloc.c (gdb_make_enums_visible): Remove FLOAT_TO_STRING_BUFSIZE.
+       * conf_post.h (FLEXIBLE_ARRAY_MEMBER) [__IBMC__]: Don't define to empty.
+       * lisp.h (FLOAT_TO_STRING_BUFSIZE): Make it a macro, instead of an enum,
+       to work around a compiler bug in IBM xlc 12.1.
 -2014-05-29  Eli Zaretskii  <eliz@gnu.org>
++2014-06-02  Eli Zaretskii  <eliz@gnu.org>
+       * xterm.c (x_update_window_end): Don't invalidate the entire
+       mouse-highlight info, just signal frame_up_to_date_hook that mouse
+       highlight needs to be redisplayed.  (Bug#17588)
 -2014-05-29  Paul Eggert  <eggert@cs.ucla.edu>
++2014-06-02  Paul Eggert  <eggert@cs.ucla.edu>
+       Port the GDB-visible symbols to AIX.
+       Without them, GDB doesn't work to debug Emacs, since the AIX linker
+       optimizes away the relevant external symbols.  Use enums instead;
+       this suffices for the AIX port, which is 32-bit-only anyway.
+       * lisp.h (ENUMABLE, DEFINE_GDB_SYMBOL_ENUM): New macros.
+       (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG, VALMASK): Use them.
+       (ARRAY_MARK_FLAG_val, PSEUDOVECTOR_FLAG_val, VALMASK_val):
+       New macros.
 -2014-05-26  Paul Eggert  <eggert@cs.ucla.edu>
 -
+       Include sources used to create macuvs.h.
+       * Makefile.in ($(srcdir)/macuvs.h): New rule.
+       * macuvs.h: Use automatically-generated header.
 -2014-05-25  Eli Zaretskii  <eliz@gnu.org>
 +2014-06-01  Paul Eggert  <eggert@cs.ucla.edu>
 +
 +      Port signal-handling to DragonFly BSD (Bug#17646).
 +      * callproc.c, sysdep.c (block_child_signal, unblock_child_signal):
 +      Move implementations from callproc.c to sysdep.c.
 +      * process.h, syssignal.h (block_child_signal, unblock_child_signal):
 +      Move declarations from process.h to syssignal.h.
 +
 +2014-06-01  Juanma Barranquero  <lekktu@gmail.com>
 +
 +      * callint.c (Ffuncall_interactively): Add usage.
 +
 +2014-06-01  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * nsfns.m (ns_appkit_version_str): Add os version for Cocoa.
 +
 +2014-05-30  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * w32heap.c (malloc_before_dump, malloc_after_dump)
 +      (malloc_before_dump, realloc_after_dump, realloc_before_dump)
 +      (mmap_alloc, mmap_realloc): Check for errors more thoroughly and
 +      set errno where appropriate to emulate CRT functions.
 +
 +2014-05-30  Dmitry Antipov  <dmantipov@yandex.ru>
 +
 +      Debugging facility to check whether 'const char *' points to
 +      relocatable data of non-pure Lisp string.
 +      * alloc.c (maybe_lisp_pointer): New function, refactored out of ...
 +      (mark_maybe_pointer): ... adjusted user.
 +      (relocatable_string_data_p): New function.
 +      * lisp.h (relocatable_string_data_p): Add prototype.
 +      * xdisp.c (message_with_string): If ENABLE_CHECKING, make sure
 +      the pointer to relocatable Lisp data is not used.
 +
 +2014-05-30  Paul Eggert  <eggert@cs.ucla.edu>
 +
 +      Don't let SIGINT handling block SIGCHLD indefinitely (Bug#17561).
 +      * atimer.c (block_atimers):
 +      * callproc.c (block_child_signal): Block SIGINT too;
 +      otherwise, its handler might now unblock signals that it shouldn't.
 +      * keyboard.c (read_char): Clear signal mask, since we may
 +      be in a SIGINT handler, and many signals may be masked.
 +      * keyboard.c (handle_interrupt):
 +      * sysdep.c (handle_arith_signal):
 +      Clear signal mask instead of just unblocking the signal that
 +      was received, since several signals may be blocked at this point.
 +
 +2014-05-29  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * Makefile.in (TEMACS_POST_LINK): Remove target.
 +      (emacs$(EXEEXT)): Remove $(ADDSECTION) from prerequisites.
 +      (temacs$(EXEEXT)): Remove $(TEMACS_POST_LINK) from the recipe.
 +
 +2014-05-29  Dmitry Antipov  <dmantipov@yandex.ru>
 +
 +      * xmenu.c (xdialog_show): Remove prototype, rename to
 +      x_dialog_show, remove 2nd arg because it's always zero
 +      and simplify accordingly.
 +      (xw_popup_dialog): Adjust user.
 +      * w32menu.c (w32_dialog_show): Adjust prototype, remove
 +      2nd arg because it's always zero and simplify accordingly.
 +      (w32_popup_dialog): Adjust user.
 +
 +2014-05-29  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * w32heap.c (report_temacs_memory_usage): New function.
 +
 +      * unexw32.c (unexec) [ENABLE_CHECKING]: Call
 +      report_temacs_memory_usage.
 +
 +      * w32heap.h (report_temacs_memory_usage): Add prototype.
 +
 +2014-05-29  Paul Eggert  <eggert@cs.ucla.edu>
 +
 +      Don't substitute sigprocmask for pthread_sigmask (Bug#17561).
 +      * Makefile.in (LIB_PTHREAD_SIGMASK): Remove; all uses removed.
 +
 +2014-05-29  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * buffer.c (init_buffer): Accept an argument 'initialized'.
 +      [USE_MMAP_FOR_BUFFERS]: If 'initialized' is non-zero, reset
 +      mmap_regions and mmap_fd, to avoid referencing stale data from the
 +      dump phase.  Add an assertion for buffer text of buffers created
 +      in temacs before this function is called.  (Bug#17622)
 +      (mmap_regions_1, mmap_fd_1): Remove unused variables.
 +
 +      * lisp.h (init_buffer): Update prototype.
 +
 +      * emacs.c (main): Pass 'initialized' as the argument to init_buffer.
 +
 +2014-05-29  Dmitry Antipov  <dmantipov@yandex.ru>
 +
 +      * alloc.c (Fgarbage_collect): Fix compilation with
 +      GC_MARK_STACK == GC_USE_GCPROS_AS_BEFORE.
 +
 +2014-05-29  Paul Eggert  <eggert@cs.ucla.edu>
 +
 +      * frame.c, frame.h (frame_char_to_pixel_position)
 +      (frame_set_mouse_position): Now static, and made private in
 +      frame.c rather than public in frame.h.
 +
 +2014-05-28  Dmitry Antipov  <dmantipov@yandex.ru>
 +
 +      Refactor mouse positioning stuff to avoid code duplication.
 +      * frame.h (frame_char_to_pixel_position): New function.
 +      (x_set_mouse_position): Rename to...
 +      (frame_set_mouse_position): ...new function.
 +      (frame_set_mouse_pixel_position): Add prototype.
 +      * nsterm.m, w32term.c, xterm.c (x_set_mouse_pixel_position):
 +      Rename to frame_set_mouse_pixel_position.
 +      * frame.c (Fset_mouse_pixel_position, Fset_mouse_position):
 +      Adjust users.
 +      * xterm.h, w32term.h ( x_set_mouse_position)
 +      (x_set_mouse_pixel_position): Remove prototypes.
 +
 +2014-05-28  Dmitry Antipov  <dmantipov@yandex.ru>
 +
 +      On X, always make pointer visible when deleting frame (Bug#17609).
 +      * frame.c (frame_make_pointer_visible, frame_make_pointer_invisible):
 +      Pass frame as arg.
 +      * frame.h (frame_make_pointer_visible, frame_make_pointer_invisible):
 +      Adjust prototypes.
 +      * cmds.c (Fself_insert_command): Use SELECTED_FRAME.
 +      * keyboard.c (gobble_input): If there is no terminal input error,
 +      make sure the pointer is visible for all frames on this terminal.
 +      * xterm.c (x_free_frame_resources): Enable pointer visibility if
 +      it was previously disabled.
 +
 +2014-05-28  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * data.c (Fzerop): Move to Elisp.
 +      (syms_of_data): Don't defsubr it.
 +      * keyboard.c (echo_keystrokes_p): New function.
 +      (read_char, record_menu_key, read_key_sequence): Use it.
 +
 +      * callint.c (Qfuncall_interactively): New var.
 +      (Qcall_interactively): Remove.
 +      (Ffuncall_interactively): New function.
 +      (Fcall_interactively): Use it.
 +      (syms_of_callint): Defsubr it.
 +
 +2014-05-27  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * bytecode.c (FETCH) [BYTE_CODE_SAFE]: Check the bytecode wasn't
 +      relocated from under us.
 +
 +2014-05-27  Fabrice Popineau  <fabrice.popineau@gmail.com>
 +
 +      Use mmap(2) emulation for allocating buffer text on MS-Windows.
 +      * Makefile.in (C_HEAP_SWITCH): Get the predefined heap size from
 +      configure.
 +      (ADDSECTION, MINGW_TEMACS_POST_LINK): Remove, no longer used.
 +
 +      * lisp.h (NONPOINTER_BITS): Modify the condition to define to zero
 +      for MinGW, since it no longer uses gmalloc.
 +
 +      * buffer.c: Do not define mmap allocations functions for Windows.
 +      Remove mmap_find which is unused. Remove mmap_set_vars which does
 +      nothing useful.
 +      [WINDOWSNT]: Include w32heap.h.
 +      (init_buffer): Always allocate new memory for buffers.
 +
 +      * emacs.c: Remove mmap_set_vars calls.
 +
 +      * image.c (free_image): Undef free for Windows because it is
 +      redirected to our private version.
 +
 +      * unexw32.c (COPY_PROC_CHUNK): Use %p format for 64bits
 +      compatibility.
 +      (copy_executable_and_dump_data): Remove dumping the heap section.
 +      (unexec): Restore using_dynamic_heap after dumping.
 +
 +      * w32heap.c (dumped_data_commit, malloc_after_dump)
 +      (malloc_before_dump, realloc_after_dump, realloc_before_dump)
 +      (free_after_dump, free_before_dump, mmap_alloc, mmap_realloc)
 +      (mmap_free): New functions.
 +
 +      * w32heap.h: Declare dumped_data and mmap_* function prototypes.
 +
 +2014-05-27  Paul Eggert  <eggert@cs.ucla.edu>
 +
 +      * image.c (imagemagick_load_image): Use MagickRealType for local
 +      'color_scale', instead of double, to avoid a GCC warning about
 +      double promotion.
 +
 +      * xfns.c (Fx_window_property): Remove unused local.
 +
 +      Don't kill already-reaped process (Bug#17561).
 +      * process.c (process_send_signal): Fix race condition where a
 +      subprocess was reaped by a signal handler between the check for
 +      liveness and calling 'kill', which meant that Emacs could in
 +      theory kill an innocent bystander process.  Do the fix by blocking
 +      SIGCHLD in a critical section that checks liveness before killing.
 +
 +2014-05-26  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * w32.c (_ANONYMOUS_UNION, _ANONYMOUS_STRUCT): Define only if
 +      undefined.
 +
 +2014-05-26  Ken Brown  <kbrown@cornell.edu>
 +
 +      * w32term.c (x_delete_display): Don't free dpyinfo->w32_id_name,
 +      even if !CYGWIN (see bug#17510).
 +
 +2014-05-26  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * nsfns.m (Fns_do_applescript): Surround NSApp run
 +      with calls to ns_init_events, ns_finish_events (Bug#17424).
 +
 +      * nsterm.h (ns_init_events, ns_finish_events): Declare.
 +
 +      * nsterm.m (ns_init_events, ns_finish_events): New functions.
 +      (ns_read_socket, ns_select): Call ns_init_events, ns_finish_events.
 +
 +      * nsfns.m (ns_do_applescript): Surround executeAndReturnError
 +      with calls to ns_init_events, ns_finish_events (Bug#17424).
 +
 +2014-05-26  Eli Zaretskii  <eliz@gnu.org>
  
        * xdisp.c (move_it_in_display_line_to): Don't record wrap position
        if we are iterating over an object that generates glyphs for
diff --cc src/Makefile.in
Simple merge
diff --cc src/alloc.c
index d728c35610900e146a8a3c107a0dd65b7cb6dae9,12b3d4ba16515f0866118629afc9535fd7488fb6..60b035e6028c8afb01e9109a18b6c0397534285a
@@@ -7200,7 -7002,7 +7200,6 @@@ unio
    enum char_bits char_bits;
    enum CHECK_LISP_OBJECT_TYPE CHECK_LISP_OBJECT_TYPE;
    enum DEFAULT_HASH_SIZE DEFAULT_HASH_SIZE;
-   enum FLOAT_TO_STRING_BUFSIZE FLOAT_TO_STRING_BUFSIZE;
 -  enum enum_USE_LSB_TAG enum_USE_LSB_TAG;
    enum Lisp_Bits Lisp_Bits;
    enum Lisp_Compiled Lisp_Compiled;
    enum maxargs maxargs;
diff --cc src/cmds.c
Simple merge
diff --cc src/conf_post.h
index 6f6af3d3e02d246d87e25f63eb78b8146a90903d,446c827561308603730be5bfd25ec2ad84cd2eb0..9c82d7d2a71c7b4402c13c446e018d95878d0a77
@@@ -309,10 -298,14 +309,15 @@@ extern void _DebPrint (const char *fmt
  /* To use the struct hack with N elements, declare the struct like this:
       struct s { ...; t name[FLEXIBLE_ARRAY_MEMBER]; };
     and allocate (offsetof (struct s, name) + N * sizeof (t)) bytes.
 -   IBM xlc 12.1 claims to do C99 but mishandles flexible array members.  */
 -#if 199901 <= __STDC_VERSION__ && !defined __IBMC__
 -# define FLEXIBLE_ARRAY_MEMBER
 -#elif __GNUC__ && !defined __STRICT_ANSI__
 -# define FLEXIBLE_ARRAY_MEMBER 0
 -#else
 +
 +   This macro used to expand to something different on pre-C99 compilers.
++   IBM xlc 12.1 claims to do C99 but mishandles flexible array members.
 +   FIXME: Remove it, and remove all uses.  */
- #define FLEXIBLE_ARRAY_MEMBER
++#ifdef __IBMC__
+ # define FLEXIBLE_ARRAY_MEMBER 1
++#else
++# define FLEXIBLE_ARRAY_MEMBER
+ #endif
  
  /* Use this to suppress gcc's `...may be used before initialized' warnings. */
  #ifdef lint
diff --cc src/fileio.c
index dcee70aa8b4c6f2df0a3a0b8335d4aa3b327a425,3b7961b930ac733daddeff82f85fc073aaaaa852..8b20c65802d100b39918f6c76acf31c376bc5eab
@@@ -4085,7 -4086,8 +4085,7 @@@ by calling `format-decode', which see
          && !NILP (BVAR (current_buffer, filename))
          && SAVE_MODIFF >= MODIFF)
        we_locked_file = 1;
-       prepare_to_modify_buffer (GPT, GPT, NULL);
 -#endif /* CLASH_DETECTION */
+       prepare_to_modify_buffer (PT, PT, NULL);
      }
  
    move_gap_both (PT, PT_BYTE);
diff --cc src/frame.c
Simple merge
diff --cc src/lisp.h
Simple merge
diff --cc src/xterm.c
Simple merge