]> code.delx.au - gnu-emacs/commitdiff
Merge from emacs-24; up to 2014-07-09T02:04:12Z!rgm@gnu.org
authorGlenn Morris <rgm@gnu.org>
Mon, 15 Sep 2014 00:20:21 +0000 (17:20 -0700)
committerGlenn Morris <rgm@gnu.org>
Mon, 15 Sep 2014 00:20:21 +0000 (17:20 -0700)
13 files changed:
1  2 
ChangeLog
configure.ac
etc/NEWS
lisp/ChangeLog
lisp/calendar/diary-lib.el
lisp/mouse.el
lisp/window.el
src/ChangeLog
src/nsterm.m
src/sound.c
src/w32.c
src/window.c
src/xdisp.c

diff --cc ChangeLog
index aa7c6405bcf11d0f3486f18b6d3bc63683c2f7e2,b1951aa6c71c763de32c5943538f72f4d4a13fd9..597c2eb0f902d74de5768d1390616c30b60e2376
+++ b/ChangeLog
 -2014-09-13  Eli Zaretskii  <eliz@gnu.org>
++2014-09-15  Eli Zaretskii  <eliz@gnu.org>
+       * configure.ac (HAVE_SOUND): Check for mmsystem.h header that
+       defines the sound stuff on MS-Windows.  (Bug#18463)
 -2014-08-22  Ken Brown  <kbrown@cornell.edu>
 +2014-09-10  Paul Eggert  <eggert@cs.ucla.edu>
 +
 +      Improve the experimental local and scoped allocation.
 +      * configure.ac (HAVE_STRUCT_ATTRIBUTE_ALIGNED)
 +      (HAVE_STATEMENT_EXPRESSIONS): New configure-time checks.
 +
 +2014-09-07  Paul Eggert  <eggert@cs.ucla.edu>
 +
 +      Expand @AM_DEFAULT_VERBOSITY@ even if Automake is old (Bug#18415).
 +      * configure.ac: Assume verbose output for older Automake.
 +
 +2014-09-04  Paul Eggert  <eggert@cs.ucla.edu>
 +
 +      * configure.ac (MAKEINFO): Clean up some configuration bitrot.
 +      MAKEINFO is already set before we get here, so no need to call AC_PATH_PROG.
 +      Bypass $am_missing_run.  Simplify version-number checking.
 +
 +2014-09-02  Paul Eggert  <eggert@cs.ucla.edu>
 +
 +      Merge from gnulib, incorporating:
 +      2014-09-02 gnulib-common.m4: port to GCC 4.2.1 and Sun Studio 12 C++
 +      2014-09-01 manywarnings: add GCC 4.9 warnings
 +      * m4/gnulib-common.m4, m4/manywarnings.m4: Update from gnulib.
 +
 +2014-09-01  Paul Eggert  <eggert@cs.ucla.edu>
 +
 +      --enable-silent-rules now suppresses more chatter.
 +      * INSTALL: Document this.
 +
 +      Clean up extern decls a bit.
 +      * configure.ac (WERROR_CFLAGS): Don't disable -Wnested-externs.
 +      While we're at it, don't disable -Wlogical-op either.
 +
 +2014-08-31  Paul Eggert  <eggert@cs.ucla.edu>
 +
 +      * configure.ac (MAKE): Export it, for config.status.
 +      Needed on AIX when 'configure' infers MAKE=gmake.
 +      (__restrict_arr): Remove; no longer used.
 +
 +2014-08-30  Paul Eggert  <eggert@cs.ucla.edu>
 +
 +      Vector-sorting fixes (Bug#18361).
 +      * configure.ac (qsort_r): Remove, as we no longer use qsort-like
 +      functions.
 +      * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
 +      * lib/vla.h, m4/vararrays.m4: New files, copied from gnulib.
 +      * lib/stdlib.in.h, m4/stdlib_h.m4: Sync from gnulib, incorporating:
 +      2014-08-29 qsort_r: new module, for GNU-style qsort_r
 +      The previous two files' changes are boilerplate generated by
 +      admin/merge-gnulib, and should not affect Emacs.
 +
 +2014-08-29  Dmitry Antipov  <dmantipov@yandex.ru>
 +
 +      * configure.ac (AC_CHECK_FUNCS): Check for qsort_r.
 +
 +2014-08-28  Ken Brown  <kbrown@cornell.edu>
 +
 +      * configure.ac (HYBRID_MALLOC): New macro; define to use gmalloc
 +      before dumping and the system malloc after dumping.  Define on
 +      Cygwin.  (Bug#18222)
 +
 +2014-08-28  Glenn Morris  <rgm@gnu.org>
 +
 +      * Makefile.in (appdatadir): New variable.
 +      (install-etc, uninstall, clean): Handle etc/emacs.appdata.xml.
 +
 +2014-08-27  Paul Eggert  <eggert@cs.ucla.edu>
 +
 +      Improve robustness of new string-collation code (Bug#18051).
 +      * configure.ac (newlocale): Check for this, not for uselocale.
 +
 +2014-08-26  Dmitry Antipov  <dmantipov@yandex.ru>
 +
 +      Detect features needed to handle C stack overflows.
 +      * configure.ac: Check for sigaltstack and related sigaction
 +      support.  Unconditionally check for sigsetjmp and siglongjmp.
 +      (HAVE_STACK_OVERFLOW_HANDLING): Define if we can support it.
 +
 +      (HAVE_LINUX_SYSINFO): Avoid false positive on Solaris.
 +
 +2014-08-25  Ken Brown  <kbrown@cornell.edu>
 +
 +      * configure.ac (G_SLICE_ALWAYS_MALLOC): Remove obsolete macro.
 +
 +2014-08-25  Christoph Scholtes  <cschol2112@gmail.com>
 +
 +      * INSTALL.REPO: Remove reference to obsolete configure scripts
 +      on non-Posix platforms (Bug#18323).
 +
 +2014-08-24  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * configure.ac: Check also for the uselocale function.  (Bug#18051)
 +
 +2014-08-23  Karol Ostrovsky  <karol.ostrovsky@gmail.com>  (tiny change)
 +
 +      * configure.ac: Accept "*-mingw*", not just "*-mingw32", as
 +      canonical name of a MinGW build, because using MSYS2 'uname'
 +      produces "MINGW64".
 +
 +2014-08-21  Ken Brown  <kbrown@cornell.edu>
  
        * configure.ac (HAVE_XPM): Explain the use of CPPFLAGS in the
        Cygwin-w32 build.  (Bug#18302)
diff --cc configure.ac
Simple merge
diff --cc etc/NEWS
Simple merge
diff --cc lisp/ChangeLog
index b9990cbe594df32fbc637754e5d3d238df85ec23,b696eb61ab9a878c969bf54015b8d02eac24b0f2..9b844bf38cbead1d4bd7b2a7be15a53555e7c1dd
 -2014-09-14  Glenn Morris  <rgm@gnu.org>
++2014-09-15  Glenn Morris  <rgm@gnu.org>
+       * image.el (image-multi-frame-p): Fix thinko - do not force
+       a delay if none was specified.  (Bug#18334)
 -2014-09-12  Kan-Ru Chen  <kanru@kanru.info>
++2014-09-15  Kan-Ru Chen  <kanru@kanru.info>
+       * window.el (fit-window-to-buffer): Doc fix.
 -2014-09-10  Ivan Shmakov  <ivan@siamics.net>  (tiny change)
++2014-09-15  Ivan Shmakov  <ivan@siamics.net>  (tiny change)
+       * desktop.el (desktop-create-buffer): Check that buffers are still live
+       before burying them (bug#18373).
 -2014-09-09  Glenn Morris  <rgm@gnu.org>
++2014-09-15  Glenn Morris  <rgm@gnu.org>
+       * calendar/diary-lib.el (diary-list-entries):
+       Restore 24.3 display behavior.  (Bug#18381)
 -2014-09-09  Eli Zaretskii  <eliz@gnu.org>
++2014-09-15  Eli Zaretskii  <eliz@gnu.org>
+       * mouse.el (mouse-drag-line): On text-mode frames, count the mode
+       line and header line as 1 pixel.  This fixes the 1-"pixel" (row)
+       discrepancy between window-pixel-edges and mouse events, and
+       avoids moving mode line up when the mouse click is on the modeline
+       and no drag is attempted.
 +2014-09-14  Daniel Colascione  <dancol@dancol.org>
 +
 +      * register.el (insert-register): Change default interactive
 +      insertion mode.
 +
 +2014-09-14  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/tramp-cache.el (tramp-flush-file-function): Simplify check.
 +      Suppress debug messages.
 +
 +      * net/tramp.el (tramp-file-name-handler):
 +      * net/tramp-gvfs.el (tramp-gvfs-url-file-name): Apply `cons' where
 +      appropriate.
 +
 +2014-09-13  Christopher Schmidt  <ch@ristopher.com>
 +
 +      * calendar/calendar.el (calendar-update-mode-line):
 +      Do not overwrite mode-line-format if calendar-mode-line-format is
 +      nil.  (Bug#18467)
 +
 +2014-09-13  Leo Liu  <sdl.web@gmail.com>
 +
 +      * emacs-lisp/pcase.el (pcase--dontwarn-upats): New var.
 +      (pcase--expand): Use it.
 +      (pcase-exhaustive): New macro.  (Bug#16567)
 +
 +      * emacs-lisp/lisp-mode.el (lisp-el-font-lock-keywords-2): Add
 +      pcase-exhaustive.
 +
 +2014-09-13  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * mail/rmailmm.el (rmail-mime-insert-html): Decode the HTML part
 +      using the specified transfer-encoding, if any, or 'undecided'.
 +      (rmail-mime-render-html-shr): Bind shr-width to nil, so lines are
 +      broken at the window margin.
 +
 +2013-12-27  Ken Olum  <kdo@cosmos.phy.tufts.edu>
 +
 +      Support rendering of HTML parts in Rmail (bug#4258).
 +      * mail/rmailmm.el (rmail-mime-process): Handle text/html
 +      separately from other text/ types.  Suppress tagline for
 +      multipart body.
 +      (rmail-mime-parse): Don't change visibility of tagline here.
 +      (rmail-mime-set-bulk-data, rmail-mime-insert-bulk):
 +      Handle text/html specially.
 +      (rmail-mime-render-html-function,rmail-mime-prefer-html): New variables.
 +      (rmail-mime-insert-html, rmail-mime-render-html-shr)
 +      (rmail-mime-render-html-lynx): New functions.
 +      (rmail-mime-fix-inserted-faces): New function.
 +      (rmail-mime-process-multipart): Find the best part to show
 +      following rmail-mime-prefer-html if set.
 +      (rmail-mime-searching): New variable.
 +      (rmail-search-mime-message): Bind rmail-mime-searching to
 +      suppress rendering while searching.
 +
 +2014-09-12  Sam Steingold  <sds@gnu.org>
 +
 +      * progmodes/sql.el (sql-product-alist): Add vertica.
 +      (sql-vertica-program, sql-vertica-options)
 +      (sql-vertica-login-params, sql-comint-vertica, sql-vertica):
 +      New functions and variables to support Vertica.
 +      Inspired by code by Roman Scherer <roman@burningswell.com>.
 +
 +2014-09-11  Paul Eggert  <eggert@cs.ucla.edu>
 +
 +      * ses.el (ses-file-format-extend-parameter-list): Rename from
 +      ses-file-format-extend-paramter-list, to correct a misspelling.
 +      All uses changed.
 +
 +2014-09-10  Alan Mackenzie  <acm@muc.de>
 +
 +      CC Mode: revert recent changes and fix bug 17463 (cc-langs.elc
 +      gets loaded at run-time).
 +      * progmodes/cc-langs.el (c-no-parens-syntax-table): Rename the
 +      c-lang-const to c-make-no-parens-syntax-table and correct the
 +      logic.
 +      (c-no-parens-syntax-table): Correct the logic of the
 +      c-lang-defvar.
 +
 +2014-09-10  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      CC-mode: Set open-paren-in-column-0-is-defun-start to nil;
 +      plus misc cleanup.
 +      * progmodes/cc-mode.el (c-basic-common-init):
 +      Set open-paren-in-column-0-is-defun-start.
 +      (adaptive-fill-first-line-regexp, font-lock-syntactic-keywords):
 +      Remove declarations, unused.
 +      (run-mode-hooks): Remove declaration.
 +      (font-lock-defaults): Use plain `defvar' to declare.
 +      (c-run-mode-hooks): Test existence of run-mode-hooks with fboundp.
 +      * progmodes/cc-langs.el (c-filter-ops): Avoid `setq'.
 +      (c-make-mode-syntax-table): Don't micro-optimize.
 +      (c-keywords, c-keyword-member-alist): Simplify.
 +      (c-kwds-lang-consts): Don't eval at compile-time.
 +      (c-primary-expr-regexp): Comment out unused vars.
 +      * progmodes/cc-fonts.el (c-font-lock-context): Declare at top-level.
 +      (c-font-byte-compile): New var.
 +      (c--compile): New function.  Use it instead of `byte-compile'.
 +      (c-cpp-matchers): Quote the value returned by
 +      `c-make-syntactic-matcher' in case it's not self-evaluating.
 +      (c-basic-matchers-before): Avoid a plain MATCHER as keyword, wrap it in
 +      parentheses instead (in case MATCHER happens to be a list).
 +      (c-font-lock-enum-tail): Remove unused var `start'.
 +      (c-font-lock-objc-methods): Silence byte-compiler warnings.
 +      * progmodes/cc-engine.el (c-syntactic-re-search-forward): Sink an `if'
 +      test into an argument.
 +      * progmodes/cc-defs.el (c-point, c-major-mode-is, c-put-char-property)
 +      (c-get-char-property): Don't use `eval' just to unquote a constant.
 +      (c-use-extents): Remove.  Use (featurep 'xemacs), compiled
 +      more efficiently.
 +      (c-put-char-property-fun): Don't call `byte-compile' by hand.
 +      (c-clear-char-property, c-clear-char-properties): Check that `property'
 +      is a quoted constant.
 +      (c-emacs-features): Remove `infodock', `syntax-properties', and
 +      `pps-extended-state' (never used), `8-bit' and `1-bit' (use (featurep
 +      'xemacs) instead).  Use `with-temp-buffer' and let-bind vars after
 +      changing buffer, so we don't have to setq them again afterwards.
 +      (c-lang-const): Remove redundant symbolp assertions.
 +      (c-find-assignment-for-mode): Use `or'.
 +      * Makefile.in (compile-one-process): Remove cc-mode dependency.
 +
 +2014-09-09  Sam Steingold  <sds@gnu.org>
 +
 +      * progmodes/sql.el (sql-default-directory): Fix type annotation.
 +
 +2014-09-09  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * progmodes/cc-awk.el: Remove unneeded cc-bytecomp use.
 +      Change doc comments into docstrings.
 +      * Makefile.in: Remove cc-awk dependency.
 +
 +2014-09-08  Sam Steingold  <sds@gnu.org>
 +
 +      * progmodes/sql.el (sql-send-line-and-next): New command,
 +      bound to C-c C-n.
 +      (sql-show-sqli-buffer): Display the buffer instead of its name and
 +      bind the command to C-c C-z.
 +      (sql-default-directory): New user option.
 +      (sql-product-interactive): Bind `default-directory' to it to
 +      enable remote connections using Tramp.
 +      (sql-set-sqli-buffer): Call `sql-product-interactive' when no
 +      suitable buffer is available.
 +
  2014-09-08  Glenn Morris  <rgm@gnu.org>
  
 +      * calendar/calendar.el (calendar-basic-setup):
 +      Fix calendar-view-holidays-initially-flag and fancy display.
 +      * calendar/diary-lib.el (diary-live-p): Doc fix.
 +
        * calendar/calendar.el (calendar-basic-setup):
        Avoid clobbering calendar with diary.  (Bug#18381)
  
Simple merge
diff --cc lisp/mouse.el
Simple merge
diff --cc lisp/window.el
Simple merge
diff --cc src/ChangeLog
index 015ed3618cf4f0bc6edeea7c089e84d4ea5a3f14,c32b4c4498810b0d6dd02aa1c5d54c62b7537a08..5f1dfbfe785da14ee30ca18348de7a2bd64a1e7d
 -2014-09-14  Eli Zaretskii  <eliz@gnu.org>
++2014-09-15  Eli Zaretskii  <eliz@gnu.org>
 -      * w32.c (fcntl): Support O_NONBLOCK fcntl on the write side of
 -      pipes.
++      * w32.c (fcntl): Support O_NONBLOCK fcntl on the write side of pipes.
+       (sys_write): When a write to a non-blocking pipe returns ENOSPC,
+       set errno to EAGAIN instead, to allow the caller to retry the
+       write after some waiting.  Fixes deadlocks when Emacs exchanges a
+       lot of data through the pipe.  (Bug#18420)
 -2014-09-13  Eli Zaretskii  <eliz@gnu.org>
 -
+       * sound.c (Fplay_sound_internal): Encode the sound file name in
+       the ANSI codepage.  Expand it against data-directory, as per docs,
+       not against the current directory.  No need to make a local copy
+       of the file name; pass the encoded file name directly to
+       do_play_sound.  (Bug#18463)
+       * w32.c (ansi_encode_filename): If w32_get_short_filename returns
+       NULL, and the file name is not encodable in ANSI codepage, return
+       the string with "?" replacement characters, which will fail the
+       caller.  This avoids returning a random value in that case.
 -2014-09-11  Martin Rudalics  <rudalics@gmx.at>
++2014-09-15  Martin Rudalics  <rudalics@gmx.at>
+       * window.c (Fresize_mini_window_internal): Set w->total_lines
+       from w->pixel_height (Bug#18422).
 -2014-09-09  Jan Djärv  <jan.h.d@swipnet.se>
++2014-09-15  Jan Djärv  <jan.h.d@swipnet.se>
+       * nsterm.m (updateFrameSize:, initFrameFromEmacs:)
+       (toggleFullScreen:): Take frame_resize_pixelwise into account when
+       setting resize increments (Bug#18435).
 -2014-09-09  Eli Zaretskii  <eliz@gnu.org>
++2014-09-15  Eli Zaretskii  <eliz@gnu.org>
+       * xdisp.c (pos_visible_p): Properly save and restore the iterator
+       state around the call to line_bottom, since it can move the
+       iterator to another screen line.  This fixes off-by-one errors in
+       the reported row in some rare cases.
 -2014-09-07  Eli Zaretskii  <eliz@gnu.org>
 +2014-09-14  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * callproc.c (init_callproc): Fix bug introduced at
 +      2014-09-07 (Bug#18474).
 +
 +2014-09-13  Dmitry Antipov  <dmantipov@yandex.ru>
 +
 +      Prefer ptrdiff_t to int and avoid integer overflows.
 +      * fileio.c (make_temp_name):
 +      * font.c (font_parse_family_registry): Avoid integer
 +      overflow on string size calculation.
 +      * data.c (Faset): Likewise for byte index.
 +
 +2014-09-12  Detlev Zundel  <dzu@member.fsf.org>
 +
 +      * buffer.c (syms_of_buffer): DEFSYM Qchoice (Bug#18337).
 +
 +2014-09-11  Dmitry Antipov  <dmantipov@yandex.ru>
 +
 +      * lisp.h (make_local_string): Nitpick indent.
 +      * print.c (Fprin1_to_string): Remove unused GCPROs.
 +
 +      More debugging aids around GCPROs.
 +      * lisp.h (struct gcpro) [DEBUG_GCPRO]: Add extra members.
 +      (GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5, GCPRO6, GCPRO7):
 +      Minor restyle.  If DEBUG_GCPRO, initialize extra fields.
 +
 +      * lread.c (readevalloop_eager_expand_eval): Add GCPRO and fix
 +      bootstrap broken if GC_MARK_STACK == GC_USE_GCPROS_AS_BEFORE.
 +
 +      Remove redundant GCPROs around Ffuncall and Fapply calls.  This
 +      is safe because Ffuncall protects all of its arguments by itself.
 +      * charset.c (map_charset_for_dump): Remove redundant GCPRO.
 +      * eval.c (Fapply, apply1, call0, call1, call2, call3, call4, call5)
 +      (call6, call7): Likewise.  Use compound literals where applicable.
 +      (run_hook_with_args_2): Use compound literal.
 +
 +2014-09-11  Paul Eggert  <eggert@cs.ucla.edu>
 +
 +      Pacify --enable-gcc-warnings when no window system is used.
 +      These warnings found that subscript error, so they seem worthwhile.
 +      * composite.c (char_composable_p): Simplify a bit.
 +      * frame.c (x_set_frame_parameters): Add an IF_LINT.
 +      * frame.c (x_set_horizontal_scroll_bars, x_set_scroll_bar_height):
 +      * frame.h (FRAME_HAS_HORIZONTAL_SCROLL_BARS):
 +      * window.c (set_window_scroll_bars):
 +      Use USE_HORIZONTAL_SCROLL_BARS for simplicity.
 +      * frame.h [! USE_HORIZONTAL_SCROLL_BARS]:
 +      Ignore -Wsuggest-attribute=const.
 +      * window.h (USE_HORIZONTAL_SCROLL_BARS): New macro.
 +      (WINDOW_HAS_HORIZONTAL_SCROLL_BAR): Use it.
 +
 +2014-09-10  Paul Eggert  <eggert@penguin.cs.ucla.edu>
 +
 +      * charset.c (Fget_unused_iso_final_char): Fix subscript error.
 +      Use check_iso_charset_parameter instead of doing the checks by hand.
 +      (check_iso_charset_parameter): Move up.  Check parameters a bit
 +      more carefully, and return true for 96-char sets.  All callers changed.
 +
 +2014-09-10  Paul Eggert  <eggert@cs.ucla.edu>
 +
 +      Simplify lisp.h by removing the __COUNTER__ business.
 +      Problem reported by Dmitry Antipov in:
 +      http://lists.gnu.org/archive/html/emacs-devel/2014-09/msg00220.html
 +      * lisp.h (make_local_vector, make_local_string)
 +      (build_local_string): Simplify by not bothering with __COUNTER__.
 +      The __COUNTER__ business wasn't working properly, and was needed
 +      only for hypothetical future expansion anyway.
 +
 +2014-09-10  Alp Aker  <alp.tekin.aker@gmail.com>
 +
 +      * nsterm.m (ns_draw_fringe_bitmap): Use the same logic as other
 +      terms to determine bitmap color.  (Bug#18437)
 +
 +2014-09-10  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * w32.c (sys_write): Use SAFE_NALLOCA for the NL -> CRLF
 +      translation buffer.
 +
 +2014-09-10  Paul Eggert  <eggert@cs.ucla.edu>
 +
 +      * xterm.c (handle_one_xevent): Add braces to pacify gcc -Wall.
 +
 +2014-09-10  Jan Djärv  <jan.h.d@swipnet.se>
 +
 +      * xterm.c (handle_one_xevent): Detect iconified by looking at
 +      _NET_WM_STATE_HIDDEN.
 +
 +2014-09-10  Paul Eggert  <eggert@cs.ucla.edu>
 +
 +      * lisp.h (DEFINE_GDB_SYMBOL_ENUM): Remove.
 +      These can generate a constant with the correct value but the wrong
 +      width, which doesn't work as a printf argument.  All uses removed.
 +      Problem reported by Dmitry Antipov in:
 +      http://lists.gnu.org/archive/html/emacs-devel/2014-09/msg00213.html
 +      (ENUMABLE): Remove; no longer needed.
 +      (ARRAY_MARK_FLAG_val, PSEUDOVECTOR_FLAG_val, VALMASK_val):
 +      Remove; no longer needed because of the above change.
 +      Each definiens moved to the only use.
 +
 +      Improve the experimental local and scoped allocation.
 +      * alloc.c (local_string_init, local_vector_init):
 +      New functions, defined if USE_LOCAL_ALLOCATORS.
 +      Mostly, these are moved here from lisp.h, as it's not
 +      clear it's worth making them inline.
 +      * lisp.h (USE_STACK_LISP_OBJECTS): Default to false.
 +      (GCALIGNED): Depend on HAVE_STRUCT_ATTRIBUTE_ALIGNED and
 +      USE_STACK_LISP_OBJECTS, not on a laundry list.
 +      (local_string_init, local_vector_init): New decls.
 +      (union Aligned_Cons): New type.
 +      (scoped_cons): Use it.  Give up on the char trick, as it's a too
 +      much of a maintenance hassle; if someone wants this speedup
 +      they'll just need to convince their compiler to align properly.
 +      Conversely, use the speedup if struct Lisp_Cons happens to
 +      be aligned even without a directive.  Better yet, help it along
 +      by using union Aligned_Cons rather than struct Lisp_Cons.
 +      (pointer_valid_for_lisp_object): Remove.  This check is not
 +      necessary, since make_lisp_ptr is already doing it.  All uses removed.
 +      (local_vector_init, local_string_init): Move to alloc.c.
 +      (build_local_vector): Remove this awkward macro, replacing with ...
 +      (make_local_vector): New macro, which acts more like a function.
 +      Use statement expressions and use __COUNTER__ to avoid macro
 +      capture.  Fall back on functions if these features are not supported.
 +      (build_local_string, make_local_string): Likewise.
 +
 +2014-09-09  Dmitry Antipov  <dmantipov@yandex.ru>
 +
 +      * xterm.c (x_term_init): Consolidate duplicated code.
 +      [USE_LUCID]: Revert 2014-04-02 change (Bug#18403).  Add comment.
 +      (x_delete_terminal): Do not close X connection fd (Bug#18403).
 +      Add eassert and mark dpyinfo as dead only if it was alive.
 +
 +      Add macros to allocate temporary Lisp objects with alloca.
 +      Respect MAX_ALLOCA and fall back to regular GC for large objects.
 +      * character.h (parse_str_as_multibyte): Move prototype to ...
 +      * lisp.h (parse_str_as_multibyte): ... here.
 +      (struct Lisp_Cons): Add GCALIGNED attribute if supported.
 +      (scoped_cons, scoped_list2, build_local_vector, build_local_string):
 +      New macros.
 +      (scoped_cons_init, pointer_valid_for_lisp_object, local_vector_init)
 +      (local_string_init): New functions.
 +      * alloc.c (verify_alloca) [ENABLE_CHECKING]: New function.
 +      (init_alloc_once): Call it.
 +
 +      Cleanup last change and make all new stuff conditional.
 +      * lisp.h (build_local_string): Rename to ...
 +      (make_local_string): ... this macro.
 +      (build_local_string, scoped_list1, scoped_list3): New macros.
 +      (toplevel) [USE_STACK_LISP_OBJECTS]: Define all new macros
 +      and functions as such, use regular fallbacks otherwise.
 +      * alloc.c (verify_alloca) [USE_STACK_LISP_OBJECTS]: Define
 +      conditionally.
 +
 +2014-09-08  Eli Zaretskii  <eliz@gnu.org>
  
        * dispnew.c (prepare_desired_row): When MODE_LINE_P is zero,
        always make sure the marginal areas of the row are in sync with
diff --cc src/nsterm.m
Simple merge
diff --cc src/sound.c
Simple merge
diff --cc src/w32.c
Simple merge
diff --cc src/window.c
Simple merge
diff --cc src/xdisp.c
Simple merge