emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] trunk r118232: Merge from emacs-24; up to 117634


From: Glenn Morris
Subject: [Emacs-diffs] trunk r118232: Merge from emacs-24; up to 117634
Date: Thu, 30 Oct 2014 05:16:31 +0000
User-agent: Bazaar (2.6b2)

------------------------------------------------------------
revno: 118232 [merge]
revision-id: address@hidden
parent: address@hidden
parent: address@hidden
committer: Glenn Morris <address@hidden>
branch nick: trunk
timestamp: Wed 2014-10-29 22:15:28 -0700
message:
  Merge from emacs-24; up to 117634
modified:
  doc/emacs/ChangeLog            changelog-20091113204419-o5vbwnq5f7feedwu-6227
  doc/emacs/display.texi         
display.texi-20091113204419-o5vbwnq5f7feedwu-6243
  doc/emacs/frames.texi          
frames.texi-20091113204419-o5vbwnq5f7feedwu-6252
  doc/emacs/killing.texi         
killing.texi-20091113204419-o5vbwnq5f7feedwu-6258
  doc/emacs/search.texi          
search.texi-20091113204419-o5vbwnq5f7feedwu-6276
  doc/emacs/windows.texi         
windows.texi-20091113204419-o5vbwnq5f7feedwu-6283
  doc/misc/ChangeLog             changelog-20091113204419-o5vbwnq5f7feedwu-6331
  doc/misc/efaq.texi             faq.texi-20091113204419-o5vbwnq5f7feedwu-6301
  doc/misc/eieio.texi            
eieio.texi-20091113204419-o5vbwnq5f7feedwu-11397
  etc/DEBUG                      debug-20091113204419-o5vbwnq5f7feedwu-1486
  etc/NEWS.24                    news-20100311060928-aoit31wvzf25yr1z-1
  lisp/ChangeLog                 changelog-20091113204419-o5vbwnq5f7feedwu-1432
  lisp/emacs-lisp/bytecomp.el    bytecomp.el-20091113204419-o5vbwnq5f7feedwu-492
  lisp/emacs-lisp/cl-extra.el    clextra.el-20091113204419-o5vbwnq5f7feedwu-611
  lisp/emulation/viper-util.el   
viperutil.el-20091113204419-o5vbwnq5f7feedwu-840
  lisp/emulation/viper.el        viper.el-20091113204419-o5vbwnq5f7feedwu-841
  lisp/erc/erc-track.el          
erctrack.el-20091113204419-o5vbwnq5f7feedwu-4342
  lisp/progmodes/cc-defs.el      ccdefs.el-20091113204419-o5vbwnq5f7feedwu-1226
  lisp/progmodes/cc-langs.el     cclangs.el-20091113204419-o5vbwnq5f7feedwu-1228
  lisp/progmodes/compile.el      compile.el-20091113204419-o5vbwnq5f7feedwu-126
  lisp/startup.el                startup.el-20091113204419-o5vbwnq5f7feedwu-260
  src/ChangeLog                  changelog-20091113204419-o5vbwnq5f7feedwu-1438
  src/dispnew.c                  dispnew.c-20091113204419-o5vbwnq5f7feedwu-258
  src/fileio.c                   fileio.c-20091113204419-o5vbwnq5f7feedwu-210
=== modified file 'doc/emacs/ChangeLog'
--- a/doc/emacs/ChangeLog       2014-10-22 13:30:16 +0000
+++ b/doc/emacs/ChangeLog       2014-10-30 05:15:28 +0000
@@ -1,3 +1,20 @@
+2014-10-30  Eli Zaretskii  <address@hidden>
+
+       * frames.texi (Scroll Bars): Improve indexing of faces.
+
+       * killing.texi (Secondary Selection): Improve indexing of faces.
+
+       * search.texi (Basic Isearch, Query Replace): Improve indexing of faces.
+
+       * display.texi (Standard Faces, Text Display)
+       (Useless Whitespace): Improve indexing of faces.
+
+       * frames.texi (Frame Commands): Document and index
+       'frame-resize-pixelwise'.
+
+       * windows.texi (Split Window): Document and index
+       'window-resize-pixelwise'.
+
 2014-10-22  Tassilo Horn  <address@hidden>
 
        * misc.texi (Document View): Adapt to latest doc-view changes wrt

=== modified file 'doc/emacs/display.texi'
--- a/doc/emacs/display.texi    2014-10-04 06:35:55 +0000
+++ b/doc/emacs/display.texi    2014-10-24 09:13:01 +0000
@@ -578,6 +578,7 @@
 
 @node Standard Faces
 @section Standard Faces
address@hidden standard faces
 
   Here are the standard faces for specifying text appearance.  You can
 apply them to specific text when you want the effects they produce.
@@ -598,8 +599,10 @@
 This face forces use of a fixed-width font.  It's reasonable to
 customize this face to use a different fixed-width font, if you like,
 but you should not make it a variable-width font.
address@hidden variable-pitch face
 @item variable-pitch
 This face forces use of a variable-width font.
address@hidden shadow face
 @item shadow
 This face is used for making the text less noticeable than the surrounding
 ordinary text.  Usually this can be achieved by using shades of gray in
@@ -647,25 +650,34 @@
 
 @table @code
 @item mode-line
address@hidden mode-line face
address@hidden faces for mode lines
 This face is used for the mode line of the currently selected window,
 and for menu bars when toolkit menus are not used.  By default, it's
 drawn with shadows for a ``raised'' effect on graphical displays, and
 drawn as the inverse of the default face on non-windowed terminals.
 @item mode-line-inactive
address@hidden mode-line-inactive face
 Like @code{mode-line}, but used for mode lines of the windows other
 than the selected one (if @code{mode-line-in-non-selected-windows} is
 address@hidden).  This face inherits from @code{mode-line}, so changes
 in that face affect mode lines in all windows.
 @item mode-line-highlight
-Like @code{highlight}, but used for portions of text on mode lines.
address@hidden mode-line-highlight face
+Like @code{highlight}, but used for mouse-sensitive portions of text
+on mode lines.  Such portions of text typically pop up tooltips
+(@pxref{Tooltips}) when the mouse pointer hovers above them.
 @item mode-line-buffer-id
address@hidden mode-line-buffer-id face
 This face is used for buffer identification parts in the mode line.
 @item header-line
address@hidden header-line face
 Similar to @code{mode-line} for a window's header line, which appears
 at the top of a window just as the mode line appears at the bottom.
 Most windows do not have a header line---only some special modes, such
 Info mode, create one.
 @item vertical-border
address@hidden vertical-border face
 This face is used for the vertical divider between windows on text
 terminals.
 @item minibuffer-prompt
@@ -1110,6 +1122,7 @@
 cases, this @dfn{trailing whitespace} has no effect, but sometimes it
 can be a nuisance.
 
address@hidden trailing-whitespace face
   You can make trailing whitespace at the end of a line visible by
 setting the buffer-local variable @code{show-trailing-whitespace} to
 @code{t}.  Then Emacs displays trailing whitespace, using the face
@@ -1418,6 +1431,8 @@
 @cindex non-breaking space
 @cindex non-breaking hyphen
 @cindex soft hyphen
address@hidden escape-glyph face
address@hidden nobreak-space face
   Some address@hidden characters have the same appearance as an
 @acronym{ASCII} space or hyphen (minus) character.  Such characters
 can cause problems if they are entered into a buffer without your

=== modified file 'doc/emacs/frames.texi'
--- a/doc/emacs/frames.texi     2014-10-04 08:20:24 +0000
+++ b/doc/emacs/frames.texi     2014-10-30 05:15:28 +0000
@@ -376,6 +376,9 @@
 between two side-by-side mode lines, you can move the vertical
 boundary to the left or right.
 
+  Note that resizing windows is affected by the value of
address@hidden, see @ref{Split Window}.
+
 @node Creating Frames
 @section Creating Frames
 @cindex creating frames
@@ -469,9 +472,13 @@
 Emacs itself.)
 @end table
 
address@hidden frame-resize-pixelwise
   Note that with some window managers you may have to customize the
 variable @code{frame-resize-pixelwise} to a address@hidden value in
-order to make a frame truly ``maximized'' or ``fullscreen''.
+order to make a frame truly ``maximized'' or ``fullscreen''.  This
+variable, when set to a address@hidden value, in general allows
+resizing frames at pixel resolution, rather than in integral multiples
+of lines and columns.
 
   The @kbd{C-x 5 0} (@code{delete-frame}) command deletes the selected
 frame.  However, it will refuse to delete the last frame in an Emacs
@@ -955,6 +962,10 @@
 bottom when the end of the buffer is shown.  You can not over-scroll
 when the entire buffer is visible.
 
address@hidden scroll-bar face
+  The visual appearance of the scroll bars is controlled by the
address@hidden face.
+
 @cindex Horizontal Scroll Bar
 @cindex Horizontal Scroll Bar mode
   On graphical displays with toolkit support, Emacs may also supply a
@@ -987,7 +998,6 @@
 scroll bar height, change the @code{scroll-bar-height} frame parameter
 (@pxref{Frame Parameters,,, elisp, The Emacs Lisp Reference Manual}).
 
-
 @node Drag and Drop
 @section Drag and Drop
 @cindex drag and drop

=== modified file 'doc/emacs/killing.texi'
--- a/doc/emacs/killing.texi    2014-10-04 02:36:49 +0000
+++ b/doc/emacs/killing.texi    2014-10-24 09:13:01 +0000
@@ -588,6 +588,7 @@
 @table @kbd
 @findex mouse-set-secondary
 @kindex M-Drag-Mouse-1
address@hidden secondary-selection face
 @item M-Drag-Mouse-1
 Set the secondary selection, with one end at the place where you press
 down the button, and the other end at the place where you release it

=== modified file 'doc/emacs/search.texi'
--- a/doc/emacs/search.texi     2014-10-04 16:46:21 +0000
+++ b/doc/emacs/search.texi     2014-10-24 09:13:01 +0000
@@ -86,6 +86,7 @@
 the cursor moves to just after the first @samp{FOO}.
 
 @cindex faces for highlighting search matches
address@hidden isearch face
   At each step, Emacs highlights the @dfn{current match}---the buffer
 text that matches the search string---using the @code{isearch} face
 (@pxref{Faces}).  The current search string is also displayed in the
@@ -1280,6 +1281,8 @@
 like @code{query-replace}.
 
 @cindex faces for highlighting query replace
address@hidden query-replace face
address@hidden lazy-highlight face
   These commands highlight the current match using the face
 @code{query-replace}.  They highlight other matches using
 @code{lazy-highlight} just like incremental search (@pxref{Incremental

=== modified file 'doc/emacs/windows.texi'
--- a/doc/emacs/windows.texi    2014-01-01 07:43:34 +0000
+++ b/doc/emacs/windows.texi    2014-10-23 16:54:25 +0000
@@ -134,6 +134,18 @@
 divider where you click (this feature does not work when Emacs uses
 GTK+ scroll bars).
 
address@hidden window-resize-pixelwise
+  By default, when you split a window, Emacs gives each of the
+resulting windows dimensions that are an integral multiple of the
+default font size of the frame.  That might subdivide the screen
+estate unevenly between the resulting windows.  If you set the
+variable @code{window-resize-pixelwise} to a address@hidden value,
+Emacs will give each window the same number of pixels (give or take
+one pixel if the initial dimension was an odd number of pixels).  Note
+that when a frame's pixel size is not a multiple of the frame's
+character size, at least one window may get resized pixelwise even if
+this option is @code{nil}.
+
 @node Other Window
 @section Using Other Windows
 

=== modified file 'doc/misc/ChangeLog'
--- a/doc/misc/ChangeLog        2014-10-29 01:42:51 +0000
+++ b/doc/misc/ChangeLog        2014-10-30 05:15:28 +0000
@@ -1,3 +1,12 @@
+2014-10-30  Glenn Morris  <address@hidden>
+
+       * efaq.texi (Gnus does not work with NNTP): Remove; ancient.
+
+2014-10-30  Stefan Monnier  <address@hidden>
+
+       * eieio.texi (Accessing Slots, CLOS compatibility): Adjust wording
+       since `setf' is in core rather than in CL nowadays.
+
 2014-10-29  Paul Eggert  <address@hidden>
 
        Simplify use of current-time and friends.

=== modified file 'doc/misc/efaq.texi'
--- a/doc/misc/efaq.texi        2014-10-26 15:43:38 +0000
+++ b/doc/misc/efaq.texi        2014-10-30 05:15:28 +0000
@@ -4190,7 +4190,6 @@
 * Replying to the sender of a message::
 * Automatically starting a mail or news reader::
 * Reading news with Emacs::
-* Gnus does not work with NNTP::
 * Making Gnus faster::
 * Catching up in all newsgroups::
 @end menu
@@ -4384,27 +4383,6 @@
 Questions,, the Gnus FAQ, gnus, The Gnus Manual}.
 
 
address@hidden Gnus does not work with NNTP
address@hidden Why doesn't Gnus work via NNTP?
address@hidden Gnus and NNTP
address@hidden NNTP, Gnus fails to work with
-
-There is a bug in NNTP version 1.5.10, such that when multiple requests
-are sent to the NNTP server, the server only handles the first one
-before blocking waiting for more input which never comes.  NNTP version
-1.5.11 claims to fix this.
-
-You can work around the bug inside Emacs like this:
-
address@hidden
-(setq nntp-maximum-request 1)
address@hidden lisp
-
-You can find out what version of NNTP your news server is running by
-telnetting to the NNTP port (usually 119) on the news server machine
-(i.e., @kbd{telnet server-machine 119}).  The server should give its
-version number in the welcome message.  Type @kbd{quit} to get out.
-
 @node Making Gnus faster
 @section How do I make Gnus faster?
 @cindex Faster, starting Gnus

=== modified file 'doc/misc/eieio.texi'
--- a/doc/misc/eieio.texi       2014-06-10 02:20:31 +0000
+++ b/doc/misc/eieio.texi       2014-10-30 05:15:28 +0000
@@ -755,8 +755,8 @@
 
 @defun set-slot-value object slot value
 @anchor{set-slot-value}
-This is not a CLOS function, but is meant to mirror @code{slot-value} if
-you don't want to use the cl package's @code{setf} function.  This
+This is not a CLOS function, but is the setter for @code{slot-value}
+used by the @code{setf} macro.  This
 function sets the value of @var{slot} from @var{object}.  Unlike
 @code{oset}, the symbol for @var{slot} must be quoted.
 @end defun
@@ -790,7 +790,7 @@
 the instance named by the given slot-names as though they were
 variables.  Within such a context the value of the slot can be
 specified by using its slot name, as if it were a lexically bound
-variable.  Both setf and setq can be used to set the value of the
+variable.  Both @code{setf} and @code{setq} can be used to set the value of the
 slot.
 
 @var{spec-list} is of a form similar to @dfn{let}.  For example:
@@ -1850,10 +1850,6 @@
 in @eieio{} this function accepts replacement arguments.  This permits
 subclasses to modify arguments as they are passed up the tree.  If no
 arguments are given, the expected CLOS behavior is used.
address@hidden setf
-If the common-lisp subsystem is loaded, the setf parameters are also
-loaded so the form @code{(setf (slot-value object slot) t)} should
-work.
 @end table
 
 CLOS supports the @code{describe} command, but @eieio{} provides

=== modified file 'etc/DEBUG'
--- a/etc/DEBUG 2014-07-26 13:40:53 +0000
+++ b/etc/DEBUG 2014-10-22 15:19:44 +0000
@@ -398,9 +398,13 @@
 Don't assume Emacs is `hung'--it may instead be in an infinite loop.
 To find out which, make the problem happen under GDB and stop Emacs
 once it is not responding.  (If Emacs is using X Windows directly, you
-can stop Emacs by typing C-z at the GDB job.)  Then try stepping with
-`step'.  If Emacs is hung, the `step' command won't return.  If it is
-looping, `step' will return.
+can stop Emacs by typing C-z at the GDB job.  On MS-Windows, run Emacs
+as usual, and then attach GDB to it -- that will usually interrupt
+whatever Emacs is doing and let you perform the steps described
+below.)
+
+Then try stepping with `step'.  If Emacs is hung, the `step' command
+won't return.  If it is looping, `step' will return.
 
 If this shows Emacs is hung in a system call, stop it again and
 examine the arguments of the call.  If you report the bug, it is very
@@ -420,10 +424,11 @@
 the data being used in the loop and try to determine why the loop does
 not exit when it should.
 
-You can also trying sending Emacs SIGUSR2, which, if `debug-on-event'
-has its default value, will cause Emacs to attempt to break it out of
-its current loop and into the Lisp debugger.  This feature is useful
-when a C-level debugger is not conveniently available.
+On GNU and Unix systems, you can also trying sending Emacs SIGUSR2,
+which, if `debug-on-event' has its default value, will cause Emacs to
+attempt to break it out of its current loop and into the Lisp
+debugger.  This feature is useful when a C-level debugger is not
+conveniently available.
 
 ** If certain operations in Emacs are slower than they used to be, here
 is some advice for how to find out why.

=== modified file 'etc/NEWS.24'
--- a/etc/NEWS.24       2014-10-14 18:10:37 +0000
+++ b/etc/NEWS.24       2014-10-30 05:15:28 +0000
@@ -14,6 +14,37 @@
 You can narrow news to a specific version by calling `view-emacs-news'
 with a prefix argument or by typing C-u C-h C-n.
 
+Temporary note:
++++ indicates that all necessary documentation updates are complete.
+    (This means all relevant manuals in doc/ AND lisp doc-strings.)
+--- means no change in the manuals is needed.
+When you add a new item, use the appropriate mark if you are sure it applies,
+otherwise leave it unmarked.
+
+
+* Changes in Emacs 24.5
+
+---
+** The default value of `history-length' has increased to 100.
+
+
+* Changes in Specialized Modes and Packages in Emacs 24.5
+
+** `call-process-shell-command' and `process-file-shell-command'
+don't take "&rest args" any more.
+
+** Obsolete packages
+
+*** cc-compat.el
+
+---
+*** crisp.el, tpu-edt.el, ws-mode.el
+These emulations of old editors are believed to be no longer relevant
+ - contact address@hidden if you disagree.
+
+---
+*** vi.el, vip.el (try M-x viper instead)
+
 
 * Installation Changes in Emacs 24.4
 

=== modified file 'lisp/ChangeLog'
--- a/lisp/ChangeLog    2014-10-29 17:40:26 +0000
+++ b/lisp/ChangeLog    2014-10-30 05:15:28 +0000
@@ -1,3 +1,27 @@
+2014-10-30  Stefan Monnier  <address@hidden>
+
+       * progmodes/cc-defs.el (c--macroexpand-all): New function (bug#18845).
+       (c-lang-defconst):
+       * progmodes/cc-langs.el (c-make-init-lang-vars-fun): Use it.
+
+2014-10-30  Eli Zaretskii  <address@hidden>
+
+       * progmodes/compile.el (compilation-start):
+       If compilation-scroll-output is non-nil, don't force window-start of
+       the compilation buffer to be at beginning of buffer.  (Bug#18874)
+
+       * startup.el (fancy-about-text): Read the entire tutorial, not
+       just its first 256 bytes.  (Bug#18760)
+
+2014-10-30  Stefan Monnier  <address@hidden>
+
+       * emacs-lisp/bytecomp.el: Require cl-extra (bug#18804).
+       * emacs-lisp/cl-extra.el: Add missing provide.
+
+       * emacs-lisp/bytecomp.el (byte-compile-and-folded): Optimize case where
+       all args are copyable (bug#18767).
+       (=, <, >, <=, >=): Re-enable the optimization.
+
 2014-10-29  Glenn Morris  <address@hidden>
 
        * net/rcirc.el (rcirc-fill-column): Unbump :version.  Mark :risky.

=== modified file 'lisp/emacs-lisp/bytecomp.el'
--- a/lisp/emacs-lisp/bytecomp.el       2014-10-23 13:33:25 +0000
+++ b/lisp/emacs-lisp/bytecomp.el       2014-10-30 05:15:28 +0000
@@ -120,7 +120,11 @@
 (require 'backquote)
 (require 'macroexp)
 (require 'cconv)
-(eval-when-compile (require 'cl-lib))
+
+;; During bootstrap, cl-loaddefs.el is not created yet, so loading cl-lib
+;; doesn't setup autoloads for things like cl-every, which is why we have to
+;; require cl-extra instead (bug#18804).
+(require 'cl-extra)
 
 (or (fboundp 'defsubst)
     ;; This really ought to be loaded already!
@@ -3283,11 +3287,11 @@
 (byte-defop-compiler cons              2)
 (byte-defop-compiler aref              2)
 (byte-defop-compiler set               2)
-(byte-defop-compiler (= byte-eqlsign)  2) ;; -and  bug#18767
-(byte-defop-compiler (< byte-lss)      2) ;; -and  bug#18767
-(byte-defop-compiler (> byte-gtr)      2) ;; -and  bug#18767
-(byte-defop-compiler (<= byte-leq)     2) ;; -and  bug#18767
-(byte-defop-compiler (>= byte-geq)     2) ;; -and  bug#18767
+(byte-defop-compiler (= byte-eqlsign)  2-and)
+(byte-defop-compiler (< byte-lss)      2-and)
+(byte-defop-compiler (> byte-gtr)      2-and)
+(byte-defop-compiler (<= byte-leq)     2-and)
+(byte-defop-compiler (>= byte-geq)     2-and)
 (byte-defop-compiler get               2)
 (byte-defop-compiler nth               2)
 (byte-defop-compiler substring         2-3)
@@ -3354,13 +3358,14 @@
 (defun byte-compile-and-folded (form)
   "Compile calls to functions like `<='.
 These implicitly `and' together a bunch of two-arg bytecodes."
-  ;; FIXME: bug#18767 means we can't do it this way!
   (let ((l (length form)))
     (cond
      ((< l 3) (byte-compile-form `(progn ,(nth 1 form) t)))
      ((= l 3) (byte-compile-two-args form))
-     (t (byte-compile-form `(and (,(car form) ,(nth 1 form) ,(nth 2 form))
-                                (,(car form) ,@(nthcdr 2 form))))))))
+     ((cl-every #'macroexp-copyable-p (nthcdr 2 form))
+      (byte-compile-form `(and (,(car form) ,(nth 1 form) ,(nth 2 form))
+                              (,(car form) ,@(nthcdr 2 form)))))
+     (t (byte-compile-normal-call form)))))
 
 (defun byte-compile-three-args (form)
   (if (not (= (length form) 4))

=== modified file 'lisp/emacs-lisp/cl-extra.el'
--- a/lisp/emacs-lisp/cl-extra.el       2014-10-08 22:05:48 +0000
+++ b/lisp/emacs-lisp/cl-extra.el       2014-10-30 05:15:28 +0000
@@ -720,4 +720,5 @@
 ;; generated-autoload-file: "cl-loaddefs.el"
 ;; End:
 
+(provide 'cl-extra)
 ;;; cl-extra.el ends here

=== modified file 'lisp/emulation/viper-util.el'
--- a/lisp/emulation/viper-util.el      2014-01-01 07:43:34 +0000
+++ b/lisp/emulation/viper-util.el      2014-10-20 22:35:43 +0000
@@ -984,7 +984,7 @@
 ;; macros, since it enables certain macros to be shared between X and TTY modes
 ;; by correctly mapping key sequences for Left/Right/... (on an ascii
 ;; terminal) into logical keys left, right, etc.
-(defun viper-read-key ()
+(defun viper-read-key () ;; FIXME: Use `read-key'?
   (let ((overriding-local-map viper-overriding-map)
        (inhibit-quit t)
        help-char key)

=== modified file 'lisp/emulation/viper.el'
--- a/lisp/emulation/viper.el   2014-06-29 02:33:50 +0000
+++ b/lisp/emulation/viper.el   2014-10-20 22:35:43 +0000
@@ -531,6 +531,7 @@
        (if viper-mode
            ()
          (setq viper-mode t)
+          ;; FIXME: Don't reload!
          (load-library "viper"))
 
        (if viper-first-time ; Important check.  Prevents mix-up of startup
@@ -887,6 +888,7 @@
   ;; When viper-mode is executed in such a case, it will set the major mode
   ;; back to fundamental-mode.
   (if (eq (default-value 'major-mode) 'fundamental-mode)
+      ;; FIXME: We should use after-change-major-mode-hook instead!
       (setq-default major-mode 'viper-mode))
 
   (viper-setup-ESC-to-escape t)
@@ -936,6 +938,7 @@
 
   (defadvice self-insert-command (around viper-self-insert-ad activate)
     "Ignore all self-inserting keys in the vi-state."
+    ;; FIXME: Use remapping?
     (if (and (eq viper-current-state 'vi-state)
             ;; Do not use called-interactively-p here. XEmacs does not have it
             ;; and interactive-p is just fine.

=== modified file 'lisp/erc/erc-track.el'
--- a/lisp/erc/erc-track.el     2014-10-15 01:15:40 +0000
+++ b/lisp/erc/erc-track.el     2014-10-30 05:15:28 +0000
@@ -265,9 +265,7 @@
           (erc-track-add-to-mode-line val))))
 
 (defun erc-modified-channels-object (strings)
-  "Generate a new `erc-modified-channels-object' based on STRINGS.
-If STRINGS is nil, we initialize `erc-modified-channels-object' to
-an appropriate initial value for this flavor of Emacs."
+  "Generate a new `erc-modified-channels-object' based on STRINGS."
   (if strings
       (if (featurep 'xemacs)
          (let ((e-m-c-s '("[")))
@@ -743,7 +741,7 @@
 (defvar erc-modified-channels-update-inside nil
   "Variable to prevent running `erc-modified-channels-update' multiple
 times.  Without it, you cannot debug `erc-modified-channels-display',
-because the debugger also cases changes to the window-configuration.")
+because the debugger also causes changes to the window-configuration.")
 
 (defun erc-modified-channels-update (&rest _args)
   "This function updates the information in `erc-modified-channels-alist'

=== modified file 'lisp/progmodes/cc-defs.el'
--- a/lisp/progmodes/cc-defs.el 2014-10-04 04:03:49 +0000
+++ b/lisp/progmodes/cc-defs.el 2014-10-30 05:15:28 +0000
@@ -174,6 +174,10 @@
 
   (put 'cc-eval-when-compile 'lisp-indent-hook 0))
 
+(eval-and-compile
+  (defalias 'c--macroexpand-all
+    (if (fboundp 'macroexpand-all)
+        'macroexpand-all 'cl-macroexpand-all)))
 
 ;;; Macros.
 
@@ -1841,7 +1845,7 @@
 immediately, i.e. at the same time as the `c-lang-defconst' form
 itself is evaluated."
   ;; Evaluate at macro expansion time, i.e. in the
-  ;; `macroexpand-all' inside `c-lang-defconst'.
+  ;; `c--macroexpand-all' inside `c-lang-defconst'.
   (eval form))
 
 (defmacro c-lang-defconst (name &rest args)
@@ -1885,7 +1889,7 @@
 
   (let* ((sym (intern (symbol-name name) c-lang-constants))
         ;; Make `c-lang-const' expand to a straightforward call to
-        ;; `c-get-lang-constant' in `macroexpand-all' below.
+        ;; `c-get-lang-constant' in `c--macroexpand-all' below.
         ;;
         ;; (The default behavior, i.e. to expand to a call inside
         ;; `eval-when-compile' should be equivalent, since that macro
@@ -1948,7 +1952,7 @@
        ;; reason, but we also use this expansion handle
        ;; `c-lang-defconst-eval-immediately' and to register
        ;; dependencies on the `c-lang-const's in VAL.)
-       (setq val (macroexpand-all val))
+       (setq val (c--macroexpand-all val))
 
        (setq bindings `(cons (cons ',assigned-mode (lambda () ,val)) ,bindings)
              args (cdr args))))

=== modified file 'lisp/progmodes/cc-langs.el'
--- a/lisp/progmodes/cc-langs.el        2014-10-12 20:09:15 +0000
+++ b/lisp/progmodes/cc-langs.el        2014-10-30 05:15:28 +0000
@@ -3238,7 +3238,7 @@
       `(lambda ()
 
         ;; This let sets up the context for `c-mode-var' and similar
-        ;; that could be in the result from `macroexpand-all'.
+        ;; that could be in the result from `c--macroexpand-all'.
         (let ((c-buffer-is-cc-mode ',mode)
               current-var source-eval)
           (c-make-emacs-variables-local)
@@ -3248,12 +3248,12 @@
                   (setq ,@(let ((c-buffer-is-cc-mode mode)
                                 (c-lang-const-expansion 'immediate))
                             ;; `c-lang-const' will expand to the evaluated
-                            ;; constant immediately in `macroexpand-all'
+                            ;; constant immediately in `c--macroexpand-all'
                             ;; below.
                              (mapcan
                               (lambda (init)
                                 `(current-var ',(car init)
-                                  ,(car init) ,(macroexpand-all
+                                  ,(car init) ,(c--macroexpand-all
                                                 (elt init 1))))
                               ;; Note: The following `append' copies the
                               ;; first argument.  That list is small, so

=== modified file 'lisp/progmodes/compile.el'
--- a/lisp/progmodes/compile.el 2014-10-15 15:25:47 +0000
+++ b/lisp/progmodes/compile.el 2014-10-30 05:15:28 +0000
@@ -1676,7 +1676,16 @@
             (list command mode name-function highlight-regexp))
        (set (make-local-variable 'revert-buffer-function)
             'compilation-revert-buffer)
-       (and outwin (set-window-start outwin (point-min)))
+       (and outwin
+            ;; Forcing the window-start overrides the usual redisplay
+            ;; feature of bringing point into view, so setting the
+            ;; window-start to top of the buffer risks losing the
+            ;; effect of moving point to EOB below, per
+            ;; compilation-scroll-output, if the command is long
+            ;; enough to push point outside of the window.  This
+            ;; could happen, e.g., in `rgrep'.
+            (not compilation-scroll-output)
+            (set-window-start outwin (point-min)))
 
        ;; Position point as the user will see it.
        (let ((desired-visible-point

=== modified file 'lisp/startup.el'
--- a/lisp/startup.el   2014-10-21 15:27:18 +0000
+++ b/lisp/startup.el   2014-10-30 05:15:28 +0000
@@ -1496,7 +1496,10 @@
              (title (with-temp-buffer
                       (insert-file-contents
                        (expand-file-name tut tutorial-directory)
-                       nil 0 256)
+                       ;; Reat the entire file, to make sure any
+                       ;; coding cookies and other local variables
+                       ;; get acted upon.
+                       nil)
                       (search-forward ".")
                       (buffer-substring (point-min) (1- (point))))))
         ;; If there is a specific tutorial for the current language

=== modified file 'src/ChangeLog'
--- a/src/ChangeLog     2014-10-28 20:33:12 +0000
+++ b/src/ChangeLog     2014-10-30 05:15:28 +0000
@@ -1,3 +1,12 @@
+2014-10-30  Eli Zaretskii  <address@hidden>
+
+       * fileio.c (Fexpand_file_name): Use make_unibyte_string, not
+       build_string, when importing a home directory.  (Bug#18873)
+
+       * dispnew.c (buffer_posn_from_coords): Use
+       WINDOW_WANTS_HEADER_LINE_P, not WINDOW_WANTS_MODELINE_P, to
+       account for the header-line height.  (Bug#18839)
+
 2014-10-28  Ulf Jasper  <address@hidden>
 
        * xml.c (parse_region): Do not forget the first document child.

=== modified file 'src/dispnew.c'
--- a/src/dispnew.c     2014-10-14 12:45:41 +0000
+++ b/src/dispnew.c     2014-10-30 05:15:28 +0000
@@ -5205,7 +5205,7 @@
      start position, i.e. it excludes the header-line row, but
      MATRIX_ROW includes the header-line row.  Adjust for a possible
      header-line row.  */
-  it_vpos = it.vpos + WINDOW_WANTS_MODELINE_P (w);
+  it_vpos = it.vpos + WINDOW_WANTS_HEADER_LINE_P (w);
   if (it_vpos < w->current_matrix->nrows
       && (row = MATRIX_ROW (w->current_matrix, it_vpos),
          row->enabled_p))

=== modified file 'src/fileio.c'
--- a/src/fileio.c      2014-10-03 05:31:17 +0000
+++ b/src/fileio.c      2014-10-30 05:15:28 +0000
@@ -1163,7 +1163,7 @@
              char newdir_utf8[MAX_UTF8_PATH];
 
              filename_from_ansi (newdir, newdir_utf8);
-             tem = build_string (newdir_utf8);
+             tem = make_unibyte_string (newdir_utf8, strlen (newdir_utf8));
            }
          else
 #endif
@@ -1199,7 +1199,7 @@
              /* `getpwnam' may return a unibyte string, which will
                 bite us since we expect the directory to be
                 multibyte.  */
-             tem = build_string (newdir);
+             tem = make_unibyte_string (newdir, strlen (newdir));
              newdirlim = newdir + SBYTES (tem);
              if (multibyte && !STRING_MULTIBYTE (tem))
                {


reply via email to

[Prev in Thread] Current Thread [Next in Thread]