Merge from trunk; up to r111011.
* mh-e.el (mh-version): Add +bzr to version.
Merge from trunk; up to r111013.
* mh-comp.el: Insure that mail-header-separator is set before
invoking any mml functions.  (closes SF #270).
Merge from trunk; up to r111161.
* mh-folder.el (mh-inc-folder): Revert SF #2321115, SF bugs/250
which processed pending deletes and refiles.  Call to
mh-process-or-undo-commands to insure that pending changes are
properly tagged after including new mail.  (Closes SF bugs/271).
* xml.el (xml-parse-string): Fix typo in handling of bad character references.
Cleanup related to bug #13546 with subprocesses on MS-Windows.

 src/w32.c (sys_pipe): When failing due to file descriptors above
 MAXDESC, set errno to EMFILE.
 (_sys_read_ahead): Update cp->status when failing to read serial
 communications input, so that the status doesn't stay at
 STATUS_READ_IN_PROGRESS.
More robust creation of a subprocess, attempt to solve bug #13546.

 src/w32proc.c (new_child): If no vacant slots are found in
 child_procs[], make another pass looking for slots whose process
 has exited or died.
* progmodes/python.el (python-info-current-defun): Fix current
defun detection.
Push ChangeLog entry for previous commit.
* progmodes/python.el: Explain how to restore "cc-mode"-like
forward-sexp movement in header documentation.
(python-nav--forward-sexp): Behave like emacs-lisp-mode in
comments and strings (GH bug 114).
* lispref/modes.texi (Basic Major Modes): 'z' no longer bound in special-mode.
* lisp/net/goto-addr.el (goto-address-fontify): Add start and end args.
(goto-address-fontify-region): Use them instead of narrowing, so
syntax-ppss has access to the whole buffer.
* emacs-lisp/easy-mmode.el (define-minor-mode): Doc fix re setf.
* gtkutil.c (tb_size_cb): New function.
(xg_create_tool_bar): Connect size-allocate to tb_size_cb.
Fix AIX port.

* configure.ac (DATA_START, DATA_SEG_BITS): Set to 0x20000000 on AIX.
(GC_MARK_STACK): Do not set to GC_USE_GCPROS_AS_BEFORE, as that
runs afoul of some other bug in Emacs, and the default value
GC_MAKE_GCPROS_NOOPS has been tested and works.
* src/lisp.h (XPNTR) [!USE_LSB_TAG && DATA_SEG_BITS]:
Fix bug introduced in 2012-07-27 change.  DATA_SEG_BITS, if set,
was #undeffed earlier, so it cannot be used as a macro here.
Use the constant and not the macro.  Tested on AIX.
* src/unexaix.c: Revert 2013-02-11 and 2013-02-12 changes to this
file.  They're almost surely OK but we're just before a release so
we should avoid changes unless they're clearly needed.  Instead,
make the following minor change:
(ADDR_CORRECT): New macro.
Backport GCPRO fix from trunk.

The bug was reported for AIX before today's changes.
I reproduced the problem on Fedora 17 x86-64 when setting
GC_MARK_STACK by hand, and I presume it occurs with default
configurations on HP-UX and Unixware.
Trunk fix on 2013-01-14 by Dmitry Antipov <dmantipov@yandex.ru>:
Fix compilation with GC_MARK_STACK == GC_USE_GCPROS_AS_BEFORE.
* eval.c (eval_sub): Protect `form' from being GCed before its
car and cdr becomes protected with the backtrace entry.
* lisp/play/fortune.el (fortune-compile): Simplify and fix previous change.

Since file-newer-than-p returns non-nil if FILE2 does not exist,
the actual fix for bug#5338 is just a one-liner. But there is no test
case or explanation of what the issue actually is in bug#5338, so one
has to wonder if the initial (file-exists-p fortune-dat) test was
there for a reason...
Merge from emacs-24; up to r111266