emacs-devel
[Top][All Lists]
Advanced

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

[DIFFS] Re: Connection to emacs CVS broken ?


From: Kim F. Storm
Subject: [DIFFS] Re: Connection to emacs CVS broken ?
Date: Fri, 16 Mar 2007 00:47:25 +0100
User-agent: Gnus/5.11 (Gnus v5.11) Emacs/22.0.95 (gnu/linux)

Miles Bader <address@hidden> writes:

> So it looks like not every directory is restored from the same time?

That's what happens when you backup a live system - changes may happen
while the backup is running.

> Maybe the best thing is to restore from NIIMI Satoshi's rsync of the
> repository?  [He said it's from 2007-03-13 02:48 GMT]

Indeed!  This would restore the CVS files, not just the changes.

> I think the changes from the restored repository to the rsync would be
> small enough that they could probably be verified by eye.

I believe I have a a very recent checkout of the trunk before the crash.

Time-stamp seems to be Mar 13 14.01 UTC.

It includes RMS' last dired.c change, so I think it is complete.

Here's the complete diff between the current emacs-cvs and the files of Mar 13:

*** ../emacs-cvs/admin/notes/copyright  2007-03-15 23:55:01.000000000 +0100
--- ./admin/notes/copyright     2007-03-12 09:56:25.000000000 +0100
***************
*** 381,387 ****
  etc/TERMS
  rms: "surely written either by me or by ESR. (If you can figure out
  which year, I can probably tell you which.) Either way, we have papers
! for it." Present in Emacs-16.56 (15-jul-85).

  etc/ulimit.hack
    Very obsolete file removed March 2007. Doesn't say who the author
--- 381,388 ----
  etc/TERMS
  rms: "surely written either by me or by ESR. (If you can figure out
  which year, I can probably tell you which.) Either way, we have papers
! for it." It was present in Emacs-16.56 (15-jul-85). rms: "Then I
! conclude it was written by me."

  etc/ulimit.hack
    Very obsolete file removed March 2007. Doesn't say who the author
***************
*** 443,449 ****
    No info on author. File removed March 2007. rms: "It says it is
  RLK's way of remapping his keyboard, so it is not constrained. I think
  it was written by RLK. Let's delete it; if we contact RLK again, we
! can put it back."


  src/m/mips4.h, news-risc.h, pmax.h
--- 444,451 ----
    No info on author. File removed March 2007. rms: "It says it is
  RLK's way of remapping his keyboard, so it is not constrained. I think
  it was written by RLK. Let's delete it; if we contact RLK again, we
! can put it back." Actually, RLK == Robert Krawitz has an Emacs
! assignment. So this could be restored if it is still useful.


  src/m/mips4.h, news-risc.h, pmax.h
*** ../emacs-cvs/admin/FOR-RELEASE      2007-03-15 23:55:00.000000000 +0100
--- ./admin/FOR-RELEASE 2007-03-13 14:37:49.000000000 +0100
***************
*** 51,65 ****
  ** address@hidden 09 Aug 2006: ispell.el problem on Cygwin.
    (Did we decide that is unreproducible?)

- ** address@hidden, Feb 22: C-h k does not catch text properies keymaps
-

  * BUGS

  ** Fix up copyright confusions.
    See end of admin/notes/copyright.

! ** address@hidden, Mar 7: shell.el patch to install

  * DOCUMENTATION

--- 51,71 ----
  ** address@hidden 09 Aug 2006: ispell.el problem on Cygwin.
    (Did we decide that is unreproducible?)


  * BUGS

+ ** address@hidden, Feb 20: move-end-of-line in comint buffers
+
  ** Fix up copyright confusions.
    See end of admin/notes/copyright.

! ** flyspell and check-comments
!
! ** address@hidden, Mar 7: Display bug [Re: My Emacs unicode 2 crash again ...]
!
! ** address@hidden, Feb 22: C-h k does not catch text properies keymaps
!    Update: Problem is only seen when viper-mode is enabled.
!

  * DOCUMENTATION

*** ../emacs-cvs/etc/PROBLEMS   2007-03-15 23:55:01.000000000 +0100
--- ./etc/PROBLEMS      2007-03-13 14:37:50.000000000 +0100
***************
*** 2393,2402 ****
  reported to either fail or cause Emacs to segfault at run time.  In
  addition, the Cygwin GCC 3.4.4-2 has problems with generating debug
  info.  Cygwin users are advised not to use these versions of GCC for
! compiling Emacs.  GCC versions 4.0.3 and 4.1.1 reportedly build a
! working Cygwin binary of Emacs, so we recommend these GCC versions.
! Note that these two versions of GCC, 4.0.3 and 4.1.1, are the _only_
! versions known to succeed in building Emacs (as of v22.1).

  *** Building the native MS-Windows port with Cygwin GCC can fail.

--- 2393,2403 ----
  reported to either fail or cause Emacs to segfault at run time.  In
  addition, the Cygwin GCC 3.4.4-2 has problems with generating debug
  info.  Cygwin users are advised not to use these versions of GCC for
! compiling Emacs.  GCC versions 4.0.3, 4.1.1, and 4.1.2 reportedly
! build a working Cygwin binary of Emacs, so we recommend these GCC
! versions.  Note that these three versions of GCC, 4.0.3, 4.1.1, and
! 4.1.2, are currently the _only_ versions known to succeed in building
! Emacs (as of v22.1).

  *** Building the native MS-Windows port with Cygwin GCC can fail.

*** ../emacs-cvs/etc/TODO       2007-03-15 23:55:01.000000000 +0100
--- ./etc/TODO  2007-03-13 10:36:47.000000000 +0100
***************
*** 509,514 ****
--- 509,517 ----

  * Internal changes

+ ** Cleanup all the GC_ mark bit stuff -- there is no longer any distiction
+    since the mark bit is no longer stored in the Lisp_Object itself.
+
  ** Merge ibuffer.el and buff-menu.el.
     More specifically do what's needed to make ibuffer.el the default,
     or just an extension of buff-menu.el.
***************
*** 548,553 ****
--- 551,557 ----
     button classes inherit from it.  Set the default face of the "link" button
     class to the standard "link" face.

+
  * Other known bugs:

  ** a two-char comment-starter whose two chars are symbol constituents will
*** ../emacs-cvs/etc/emacs.csh  2007-03-15 23:55:01.000000000 +0100
--- ./etc/emacs.csh     2007-03-12 09:56:25.000000000 +0100
***************
*** 1,5 ****
--- 1,7 ----
  ### emacs.csh

+ ## Add legal notice if non-trivial amounts of code are added.
+
  ## Author: Michael DeCorte

  ### Commentary:
*** ../emacs-cvs/etc/NEWS.19    2007-03-15 23:55:01.000000000 +0100
--- ./etc/NEWS.19       2007-03-12 09:56:25.000000000 +0100
***************
*** 4557,4563 ****
  ** Changes to calendar/diary.

  Time zone data is now determined automatically, including the
! start/stop days and times of daylight savings time.  The code now
  works correctly almost anywhere in the world.

  The format of the holiday specifications has changed and IS NO LONGER
--- 4557,4563 ----
  ** Changes to calendar/diary.

  Time zone data is now determined automatically, including the
! start/stop days and times of daylight saving time.  The code now
  works correctly almost anywhere in the world.

  The format of the holiday specifications has changed and IS NO LONGER
*** ../emacs-cvs/lisp/calc/calc-forms.el        2007-03-15 23:55:04.000000000 
+0100
--- ./lisp/calc/calc-forms.el   2007-03-12 09:56:28.000000000 +0100
***************
*** 1312,1331 ****
      (calcFunc-unixtime (calcFunc-unixtime date z1) z2)))

  (defun math-std-daylight-savings (date dt zone bump)
!   "Standard North American daylight savings algorithm.
! This implements the rules for the U.S. and Canada as of 1987.
! Daylight savings begins on the first Sunday of April at 2 a.m.,
! and ends on the last Sunday of October at 2 a.m."
!   (cond ((< (nth 1 dt) 4) 0)
!       ((= (nth 1 dt) 4)
!        (let ((sunday (math-prev-weekday-in-month date dt 7 0)))
           (cond ((< (nth 2 dt) sunday) 0)
                 ((= (nth 2 dt) sunday)
                  (if (>= (nth 3 dt) (+ 3 bump)) -1 0))
                 (t -1))))
!       ((< (nth 1 dt) 10) -1)
!       ((= (nth 1 dt) 10)
!        (let ((sunday (math-prev-weekday-in-month date dt 31 0)))
           (cond ((< (nth 2 dt) sunday) -1)
                 ((= (nth 2 dt) sunday)
                  (if (>= (nth 3 dt) (+ 2 bump)) 0 -1))
--- 1312,1331 ----
      (calcFunc-unixtime (calcFunc-unixtime date z1) z2)))

  (defun math-std-daylight-savings (date dt zone bump)
!   "Standard North American daylight saving algorithm.
! This implements the rules for the U.S. and Canada as of 2007.
! Daylight saving begins on the second Sunday of March at 2 a.m.,
! and ends on the first Sunday of November at 2 a.m."
!   (cond ((< (nth 1 dt) 3) 0)
!       ((= (nth 1 dt) 3)
!        (let ((sunday (math-prev-weekday-in-month date dt 14 0)))
           (cond ((< (nth 2 dt) sunday) 0)
                 ((= (nth 2 dt) sunday)
                  (if (>= (nth 3 dt) (+ 3 bump)) -1 0))
                 (t -1))))
!       ((< (nth 1 dt) 11) -1)
!       ((= (nth 1 dt) 11)
!        (let ((sunday (math-prev-weekday-in-month date dt 7 0)))
           (cond ((< (nth 2 dt) sunday) -1)
                 ((= (nth 2 dt) sunday)
                  (if (>= (nth 3 dt) (+ 2 bump)) 0 -1))
*** ../emacs-cvs/lisp/ChangeLog 2007-03-15 23:55:02.000000000 +0100
--- ./lisp/ChangeLog    2007-03-13 14:37:51.000000000 +0100
***************
*** 1,26 ****
! 2007-03-11  Juri Linkov <address@hidden>

        * replace.el (match): Use yellow background on light-bg terminals.

  2007-03-11  Richard Stallman  <address@hidden>

!       * emacs-lisp/bytecomp.el (byte-compile-warning-prefix):
        Correctly compute line number.
!
  2007-03-11  Guanpeng Xu  <address@hidden>

!       * type-break.el (type-break-get-previous-count):
        Repeat previous change here.

  2007-03-11  Dan Nicolaescu  <address@hidden>

!       * progmodes/grep.el (grep-find-ignored-directories): Add .git and
!       .bzr to list.

  2007-03-11  Andreas Schwab  <address@hidden>

!       * diff-mode.el (diff-apply-hunk): Use proper format string for
!       error.

  2007-03-11  Stefan Monnier  <address@hidden>

--- 1,67 ----
! 2007-03-13  Chong Yidong  <address@hidden>
!
!       * comint.el (comint-arguments): Mark backslash-escaped chars.
!       (comint-delim-arg): Don't treat them as delimiters.
!
! 2007-03-12  Kim F. Storm  <address@hidden>
!
!       * ido.el (ido-init-completion-maps): Remap delete-backward-char.
!
! 2007-03-12  Lawrence Mitchell  <address@hidden>  (tiny change)
!
!       * tempo.el (tempo-insert): Deal with 'r> if it appears
!       specified with a prompt argument.
!
! 2007-03-12  Carsten Dominik  <address@hidden>
!
!       * textmodes/org.el (org-set-font-lock-defaults): Handle narrow
!       table columns correctly.
!
! 2007-03-12  Mark A. Hershberger  <address@hidden>
!
!       * xml.el (xml-parse-tag, xml-parse-string, xml-parse-attlist)
!       (xml-parse-dtd, xml-parse-elem-type, xml-substitute-special):
!       Return to use of the -no-properties variants.  There was
!       consensus on emacs-devel that the speed of these variants was
!       prefered since we are usually parsing files (from the internet
!       or on disk) instead of XML created in Emacs.
!
!       * eshell/esh-mode.el (eshell-handle-ansi-color): New function.
!       Add customize option.
!
! 2007-03-12  Glenn Morris  <address@hidden>
!
!       * calc/calc-forms.el (math-std-daylight-savings): Switch to new
!       North American rule.
!
!       * woman.el (woman-change-fonts): Tweak previous change by using
!       woman-request-regexp rather than "^\\.".
!
!       * startup.el (command-line-1): Make insertion of
!       initial-scratch-message not depend on scratch being selected.
!
! 2007-03-11  Juri Linkov  <address@hidden>

        * replace.el (match): Use yellow background on light-bg terminals.

  2007-03-11  Richard Stallman  <address@hidden>

!       * emacs-lisp/bytecomp.el (byte-compile-warning-prefix):
        Correctly compute line number.
!
  2007-03-11  Guanpeng Xu  <address@hidden>

!       * type-break.el (type-break-get-previous-count):
        Repeat previous change here.

  2007-03-11  Dan Nicolaescu  <address@hidden>

!       * progmodes/grep.el (grep-find-ignored-directories):
!       Add .git and .bzr to list.

  2007-03-11  Andreas Schwab  <address@hidden>

!       * diff-mode.el (diff-apply-hunk): Use proper format string for error.

  2007-03-11  Stefan Monnier  <address@hidden>

*** ../emacs-cvs/lisp/ChangeLog.3       2007-03-15 23:55:03.000000000 +0100
--- ./lisp/ChangeLog.3  2007-03-12 09:56:27.000000000 +0100
***************
*** 5091,5097 ****
        * holidays.el (calendar-holiday-function-sexp):
        New function.
        *calendar.el (calendar-holidays): Describe it and use it for daylight
!       savings.

        * calendar.el, cal-mayan.el, cal-french.el: Change names of all
        calendar-goto-next- or calendar-goto-previous- commands to
--- 5091,5097 ----
        * holidays.el (calendar-holiday-function-sexp):
        New function.
        *calendar.el (calendar-holidays): Describe it and use it for daylight
!       saving.

        * calendar.el, cal-mayan.el, cal-french.el: Change names of all
        calendar-goto-next- or calendar-goto-previous- commands to
*** ../emacs-cvs/lisp/ChangeLog.4       2007-03-15 23:55:04.000000000 +0100
--- ./lisp/ChangeLog.4  2007-03-12 09:56:27.000000000 +0100
***************
*** 6131,6137 ****

        * cal-dst.el (calendar-time-zone-daylight-rules): Remove
        special case for Israel.  Israel has changed its daylight
!       savings time rules.  We don't know what the current rules are,
        but the special case was definitely incorrect.

  1993-09-06  Roland McGrath  (address@hidden)
--- 6131,6137 ----

        * cal-dst.el (calendar-time-zone-daylight-rules): Remove
        special case for Israel.  Israel has changed its daylight
!       saving time rules.  We don't know what the current rules are,
        but the special case was definitely incorrect.

  1993-09-06  Roland McGrath  (address@hidden)
***************
*** 8087,8093 ****
          (general-holidays, calendar-holidays, hebrew-holidays,
          christian-holidays, islamic-holidays,
          solar-holidays): Rewritten to include require of cal-dst.el and to
!         show the time of the change to/from daylight savings time.
          (calendar-current-time-zone, calendar-time-zone,
          calendar-daylight-time-offset, calendar-standard-time-zone-name,
          calendar-daylight-time-zone-name, calendar-daylight-savings-starts,
--- 8087,8093 ----
          (general-holidays, calendar-holidays, hebrew-holidays,
          christian-holidays, islamic-holidays,
          solar-holidays): Rewritten to include require of cal-dst.el and to
!         show the time of the change to/from daylight saving time.
          (calendar-current-time-zone, calendar-time-zone,
          calendar-daylight-time-offset, calendar-standard-time-zone-name,
          calendar-daylight-time-zone-name, calendar-daylight-savings-starts,
***************
*** 8772,8778 ****
          (solar-time-string): Use calendar-daylight-time-offset instead of
          1 hr, and use calendar-daylight-savings-switchover-time instead of
          midnight.  Add an optional parameter to allow forcing the use of
!         standard or daylight savings time.  Fix code so it works in
          southern hemisphere (start of dst precedes end of dst in a
          calendar year) and when dst either starts or ends in a calendar
          year, but not both.
--- 8772,8778 ----
          (solar-time-string): Use calendar-daylight-time-offset instead of
          1 hr, and use calendar-daylight-savings-switchover-time instead of
          midnight.  Add an optional parameter to allow forcing the use of
!         standard or daylight saving time.  Fix code so it works in
          southern hemisphere (start of dst precedes end of dst in a
          calendar year) and when dst either starts or ends in a calendar
          year, but not both.
*** ../emacs-cvs/lisp/comint.el 2007-03-15 23:55:04.000000000 +0100
--- ./lisp/comint.el    2007-03-13 14:37:51.000000000 +0100
***************
*** 1347,1353 ****
  (defun comint-delim-arg (arg)
    "Return a list of arguments from ARG.
  Break it up at the delimiters in `comint-delimiter-argument-list'.
! Returned list is backwards."
    (if (null comint-delimiter-argument-list)
        (list arg)
      (let ((args nil)
--- 1347,1357 ----
  (defun comint-delim-arg (arg)
    "Return a list of arguments from ARG.
  Break it up at the delimiters in `comint-delimiter-argument-list'.
! Returned list is backwards.
!
! Characters with non-nil values of the text property `literal' are
! assumed to have literal values (e.g., backslash-escaped
! characters), and are not considered to be delimiters."
    (if (null comint-delimiter-argument-list)
        (list arg)
      (let ((args nil)
***************
*** 1356,1367 ****
        (while (< pos len)
        (let ((char (aref arg pos))
              (start pos))
!         (if (memq char comint-delimiter-argument-list)
              (while (and (< pos len) (eq (aref arg pos) char))
                (setq pos (1+ pos)))
            (while (and (< pos len)
!                       (not (memq (aref arg pos)
!                                  comint-delimiter-argument-list)))
              (setq pos (1+ pos))))
          (setq args (cons (substring arg start pos) args))))
        args)))
--- 1360,1375 ----
        (while (< pos len)
        (let ((char (aref arg pos))
              (start pos))
!         (if (and (memq char comint-delimiter-argument-list)
!                  ;; Ignore backslash-escaped characters.
!                  (not (get-text-property pos 'literal arg)))
              (while (and (< pos len) (eq (aref arg pos) char))
                (setq pos (1+ pos)))
            (while (and (< pos len)
!                       (not (and (memq (aref arg pos)
!                                       comint-delimiter-argument-list)
!                                 (not (get-text-property
!                                       pos 'literal arg)))))
              (setq pos (1+ pos))))
          (setq args (cons (substring arg start pos) args))))
        args)))
***************
*** 1381,1404 ****
    ;; The third matches '-quoted strings.
    ;; The fourth matches `-quoted strings.
    ;; This seems to fit the syntax of BASH 2.0.
!   (let* ((first (if (if (fboundp 'w32-shell-dos-semantics)
!                       (w32-shell-dos-semantics))
!                   "[^ \n\t\"'`]+\\|"
!                 "[^ \n\t\"'`\\]+\\|\\\\[\"'`\\ \t]+\\|"))
         (argpart (concat first
                          "\\(\"\\([^\"\\]\\|\\\\.\\)*\"\\|\
  '[^']*'\\|\
  `[^`]*`\\)"))
         (args ()) (pos 0)
         (count 0)
         beg str quotes)
      ;; Build a list of all the args until we have as many as we want.
      (while (and (or (null mth) (<= count mth))
                (string-match argpart string pos))
        (if (and beg (= pos (match-beginning 0)))
          ;; It's contiguous, part of the same arg.
          (setq pos (match-end 0)
!               quotes (or quotes (match-beginning 1)))
        ;; It's a new separate arg.
        (if beg
            ;; Put the previous arg, if there was one, onto ARGS.
--- 1389,1420 ----
    ;; The third matches '-quoted strings.
    ;; The fourth matches `-quoted strings.
    ;; This seems to fit the syntax of BASH 2.0.
!   (let* ((backslash-escape (not (and (fboundp 'w32-shell-dos-semantics)
!                                    (w32-shell-dos-semantics))))
!        (first (if backslash-escape
!                   "[^ \n\t\"'`\\]\\|\\(\\\\.\\)\\|"
!                 "[^ \n\t\"'`]+\\|"))
         (argpart (concat first
                          "\\(\"\\([^\"\\]\\|\\\\.\\)*\"\\|\
  '[^']*'\\|\
  `[^`]*`\\)"))
+        (quote-subexpr (if backslash-escape 2 1))
         (args ()) (pos 0)
         (count 0)
         beg str quotes)
      ;; Build a list of all the args until we have as many as we want.
      (while (and (or (null mth) (<= count mth))
                (string-match argpart string pos))
+       ;; Apply the `literal' text property to backslash-escaped
+       ;; characters, so that `comint-delim-arg' won't break them up.
+       (and backslash-escape
+          (match-beginning 1)
+          (put-text-property (match-beginning 1) (match-end 1)
+                             'literal t string))
        (if (and beg (= pos (match-beginning 0)))
          ;; It's contiguous, part of the same arg.
          (setq pos (match-end 0)
!               quotes (or quotes (match-beginning quote-subexpr)))
        ;; It's a new separate arg.
        (if beg
            ;; Put the previous arg, if there was one, onto ARGS.
***************
*** 1406,1412 ****
                  args (if quotes (cons str args)
                         (nconc (comint-delim-arg str) args))))
        (setq count (length args))
!       (setq quotes (match-beginning 1))
        (setq beg (match-beginning 0))
        (setq pos (match-end 0))))
      (if beg
--- 1422,1428 ----
                  args (if quotes (cons str args)
                         (nconc (comint-delim-arg str) args))))
        (setq count (length args))
!       (setq quotes (match-beginning quote-subexpr))
        (setq beg (match-beginning 0))
        (setq pos (match-end 0))))
      (if beg
*** ../emacs-cvs/lisp/ido.el    2007-03-15 23:55:04.000000000 +0100
--- ./lisp/ido.el       2007-03-12 23:41:42.000000000 +0100
***************
*** 1575,1580 ****
--- 1575,1581 ----
      (define-key map [(meta down)] 'ido-next-work-directory)
      (define-key map [backspace] 'ido-delete-backward-updir)
      (define-key map "\d"        'ido-delete-backward-updir)
+     (define-key map [remap delete-backward-char] 'ido-delete-backward-updir) 
; BS
      (define-key map [remap backward-kill-word] 
'ido-delete-backward-word-updir)  ; M-DEL

      (define-key map [(control backspace)] 'ido-up-directory)
*** ../emacs-cvs/lisp/startup.el        2007-03-15 23:55:04.000000000 +0100
--- ./lisp/startup.el   2007-03-12 09:56:27.000000000 +0100
***************
*** 1995,2007 ****
      (with-no-warnings
       (setq menubar-bindings-done t))

!     ;; If *scratch* is selected and it is empty, insert an
!     ;; initial message saying not to create a file there.
!     (when (and initial-scratch-message
!              (equal (buffer-name) "*scratch*")
!              (= 0 (buffer-size)))
!       (insert initial-scratch-message)
!       (set-buffer-modified-p nil))

      ;; If user typed input during all that work,
      ;; abort the startup screen.  Otherwise, display it now.
--- 1995,2007 ----
      (with-no-warnings
       (setq menubar-bindings-done t))

!     ;; If *scratch* exists and is empty, insert initial-scratch-message.
!     (and initial-scratch-message
!          (get-buffer "*scratch*")
!          (with-current-buffer "*scratch*"
!            (when (zerop (buffer-size))
!              (insert initial-scratch-message)
!              (set-buffer-modified-p nil))))

      ;; If user typed input during all that work,
      ;; abort the startup screen.  Otherwise, display it now.
*** ../emacs-cvs/lisp/tempo.el  2007-03-15 23:55:04.000000000 +0100
--- ./lisp/tempo.el     2007-03-12 23:03:51.000000000 +0100
***************
*** 266,271 ****
--- 266,273 ----
     that you often should place this item after the text you want on
     the line.
   - `r>': Like `r', but it also indents the region.
+  - (r> PROMPT <NAME> <NOINSERT>): Like (r ...), but is also indents
+    the region.
   - `n>': Inserts a newline and indents line.
   - `o': Like `%' but leaves the point before the newline.
   - nil: It is ignored.
***************
*** 352,357 ****
--- 354,366 ----
                                         (goto-char tempo-region-stop)
                                       (tempo-insert-prompt-compat
                                        (cdr element))))
+         ((and (consp element)
+               (eq (car element) 'r>)) (if on-region
+                                           (progn
+                                             (goto-char tempo-region-stop)
+                                             (indent-region (mark) (point) 
nil))
+                                         (tempo-insert-prompt-compat
+                                          (cdr element))))
        ((and (consp element)
              (eq (car element) 's)) (tempo-insert-named (car (cdr element))))
        ((and (consp element)
*** ../emacs-cvs/lisp/woman.el  2007-03-15 23:55:04.000000000 +0100
--- ./lisp/woman.el     2007-03-12 09:56:27.000000000 +0100
***************
*** 3327,3333 ****
            ;; otherwise match woman-request-regexp. The "\\&" which is
            ;; inserted to prevent this is removed by woman2-process-escapes.
            (and fescape
!                (looking-at "^\\.")
                 (insert "\\&"))
          (woman-set-face previous-pos (point) current-font)
          (if beg
--- 3327,3333 ----
            ;; otherwise match woman-request-regexp. The "\\&" which is
            ;; inserted to prevent this is removed by woman2-process-escapes.
            (and fescape
!                (looking-at woman-request-regexp)
                 (insert "\\&"))
          (woman-set-face previous-pos (point) current-font)
          (if beg
*** ../emacs-cvs/lisp/xml.el    2007-03-15 23:55:04.000000000 +0100
--- ./lisp/xml.el       2007-03-12 22:19:35.000000000 +0100
***************
*** 76,83 ****

  ;;; Code:

! ;; Note that {buffer-substring,match-string}-no-properties were
! ;; formerly used in several places, but that removes composition info.

  ;;*******************************************************************
  ;;**
--- 76,87 ----

  ;;; Code:

! ;; Note that buffer-substring and match-string were formerly used in
! ;; several places, because the -no-properties variants remove
! ;; composition info.  However, after some discussion on emacs-devel,
! ;; the consensus was that the speed of the -no-properties variants was
! ;; a worthwhile tradeoff especially since we're usually parsing files
! ;; instead of hand-crafted XML.

  ;;*******************************************************************
  ;;**
***************
*** 406,412 ****
        (unless (search-forward "]]>" nil t)
          (error "XML: (Not Well Formed) CDATA section does not end anywhere in 
the document"))
        (concat
!        (buffer-substring pos (match-beginning 0))
         (xml-parse-string))))
       ;;  DTD for the document
       ((looking-at "<!DOCTYPE")
--- 410,416 ----
        (unless (search-forward "]]>" nil t)
          (error "XML: (Not Well Formed) CDATA section does not end anywhere in 
the document"))
        (concat
!        (buffer-substring-no-properties pos (match-beginning 0))
         (xml-parse-string))))
       ;;  DTD for the document
       ((looking-at "<!DOCTYPE")
***************
*** 427,433 ****
        (goto-char (match-end 1))

        ;; Parse this node
!       (let* ((node-name (match-string 1))
             ;; Parse the attribute list.
             (attrs (xml-parse-attlist xml-ns))
             children pos)
--- 431,437 ----
        (goto-char (match-end 1))

        ;; Parse this node
!       (let* ((node-name (match-string-no-properties 1))
             ;; Parse the attribute list.
             (attrs (xml-parse-attlist xml-ns))
             children pos)
***************
*** 480,486 ****
                  (nreverse children)))
            ;;  This was an invalid start tag (Expected ">", but didn't see it.)
            (error "XML: (Well-Formed) Couldn't parse tag: %s"
!                  (buffer-substring (- (point) 10) (+ (point) 1)))))))
       (t       ;; (Not one of PI, CDATA, Comment, End tag, or Start tag)
        (unless xml-sub-parser          ; Usually, we error out.
        (error "XML: (Well-Formed) Invalid character"))
--- 484,490 ----
                  (nreverse children)))
            ;;  This was an invalid start tag (Expected ">", but didn't see it.)
            (error "XML: (Well-Formed) Couldn't parse tag: %s"
!                  (buffer-substring-no-properties (- (point) 10) (+ (point) 
1)))))))
       (t       ;; (Not one of PI, CDATA, Comment, End tag, or Start tag)
        (unless xml-sub-parser          ; Usually, we error out.
        (error "XML: (Well-Formed) Invalid character"))
***************
*** 495,501 ****
         (string (progn (if (search-forward "<" nil t)
                            (forward-char -1)
                          (goto-char (point-max)))
!                       (buffer-substring pos (point)))))
      ;; Clean up the string.  As per XML specifications, the XML
      ;; processor should always pass the whole string to the
      ;; application.  But \r's should be replaced:
--- 499,505 ----
         (string (progn (if (search-forward "<" nil t)
                            (forward-char -1)
                          (goto-char (point-max)))
!                       (buffer-substring-no-properties pos (point)))))
      ;; Clean up the string.  As per XML specifications, the XML
      ;; processor should always pass the whole string to the
      ;; application.  But \r's should be replaced:
***************
*** 516,522 ****
      (while (looking-at (eval-when-compile
                         (concat "\\(" xml-name-regexp "\\)\\s-*=\\s-*")))
        (setq end-pos (match-end 0))
!       (setq name (xml-maybe-do-ns (match-string 1) nil xml-ns))
        (goto-char end-pos)

        ;; See also: http://www.w3.org/TR/2000/REC-xml-20001006#AVNormalize
--- 520,526 ----
      (while (looking-at (eval-when-compile
                         (concat "\\(" xml-name-regexp "\\)\\s-*=\\s-*")))
        (setq end-pos (match-end 0))
!       (setq name (xml-maybe-do-ns (match-string-no-properties 1) nil xml-ns))
        (goto-char end-pos)

        ;; See also: http://www.w3.org/TR/2000/REC-xml-20001006#AVNormalize
***************
*** 535,541 ****

        ;; Multiple whitespace characters should be replaced with a single one
        ;; in the attributes
!       (let ((string (match-string 1))
            (pos 0))
        (replace-regexp-in-string "\\s-\\{2,\\}" " " string)
        (let ((expansion (xml-substitute-special string)))
--- 539,545 ----

        ;; Multiple whitespace characters should be replaced with a single one
        ;; in the attributes
!       (let ((string (match-string-no-properties 1))
            (pos 0))
        (replace-regexp-in-string "\\s-\\{2,\\}" " " string)
        (let ((expansion (xml-substitute-special string)))
***************
*** 575,581 ****

    ;;  Get the name of the document
    (looking-at xml-name-regexp)
!   (let ((dtd (list (match-string 0) 'dtd))
        type element end-pos)
      (goto-char (match-end 0))

--- 579,585 ----

    ;;  Get the name of the document
    (looking-at xml-name-regexp)
!   (let ((dtd (list (match-string-no-properties 0) 'dtd))
        type element end-pos)
      (goto-char (match-end 0))

***************
*** 590,607 ****
                        "\\='\\([[:space:][:alnum:]-()+,./:=?;address@hidden)'"
                        nil t))
             (error "XML: Missing Public ID"))
!          (let ((pubid (match-string 1)))
             (skip-syntax-forward " ")
             (unless (or (re-search-forward "\\='\\([^']*\\)'" nil t)
                         (re-search-forward "\\=\"\\([^\"]*\\)\"" nil t))
               (error "XML: Missing System ID"))
!            (push (list pubid (match-string 1) 'public) dtd)))
          ((looking-at "SYSTEM\\s-+")
           (goto-char (match-end 0))
           (unless (or (re-search-forward "\\='\\([^']*\\)'" nil t)
                       (re-search-forward "\\=\"\\([^\"]*\\)\"" nil t))
             (error "XML: Missing System ID"))
!          (push (list (match-string 1) 'system) dtd)))
      (skip-syntax-forward " ")
      (if (eq ?> (char-after))
        (forward-char)
--- 594,611 ----
                        "\\='\\([[:space:][:alnum:]-()+,./:=?;address@hidden)'"
                        nil t))
             (error "XML: Missing Public ID"))
!          (let ((pubid (match-string-no-properties 1)))
             (skip-syntax-forward " ")
             (unless (or (re-search-forward "\\='\\([^']*\\)'" nil t)
                         (re-search-forward "\\=\"\\([^\"]*\\)\"" nil t))
               (error "XML: Missing System ID"))
!            (push (list pubid (match-string-no-properties 1) 'public) dtd)))
          ((looking-at "SYSTEM\\s-+")
           (goto-char (match-end 0))
           (unless (or (re-search-forward "\\='\\([^']*\\)'" nil t)
                       (re-search-forward "\\=\"\\([^\"]*\\)\"" nil t))
             (error "XML: Missing System ID"))
!          (push (list (match-string-no-properties 1) 'system) dtd)))
      (skip-syntax-forward " ")
      (if (eq ?> (char-after))
        (forward-char)
***************
*** 618,624 ****
           ((looking-at
             "<!ELEMENT\\s-+\\([[:alnum:].%;]+\\)\\s-+\\([^>]+\\)>")

!           (setq element (match-string 1)
                  type    (match-string-no-properties 2))
            (setq end-pos (match-end 0))

--- 622,628 ----
           ((looking-at
             "<!ELEMENT\\s-+\\([[:alnum:].%;]+\\)\\s-+\\([^>]+\\)>")

!           (setq element (match-string-no-properties 1)
                  type    (match-string-no-properties 2))
            (setq end-pos (match-end 0))

***************
*** 629,635 ****
             ((string-match "^ANY[ \t\n\r]*$" type) ;; any type of contents
              (setq type 'any))
             ((string-match "^(\\(.*\\))[ \t\n\r]*$" type) ;; children ([47])
!             (setq type (xml-parse-elem-type (match-string 1 type))))
             ((string-match "^%[^;]+;[ \t\n\r]*$" type) ;; substitution
              nil)
             (t
--- 633,639 ----
             ((string-match "^ANY[ \t\n\r]*$" type) ;; any type of contents
              (setq type 'any))
             ((string-match "^(\\(.*\\))[ \t\n\r]*$" type) ;; children ([47])
!             (setq type (xml-parse-elem-type (match-string-no-properties 1 
type))))
             ((string-match "^%[^;]+;[ \t\n\r]*$" type) ;; substitution
              nil)
             (t
***************
*** 659,667 ****
           ((looking-at (concat "<!ENTITY[ \t\n\r]*\\(" xml-name-re
                                "\\)[ \t\n\r]*\\(" xml-entity-value-re
                                "\\)[ \t\n\r]*>"))
!           (let ((name  (match-string 1))
!                 (value (substring (match-string 2) 1
!                                   (- (length (match-string 2)) 1))))
              (goto-char (match-end 0))
              (setq xml-entity-alist
                    (append xml-entity-alist
--- 663,671 ----
           ((looking-at (concat "<!ENTITY[ \t\n\r]*\\(" xml-name-re
                                "\\)[ \t\n\r]*\\(" xml-entity-value-re
                                "\\)[ \t\n\r]*>"))
!           (let ((name  (match-string-no-properties 1))
!                 (value (substring (match-string-no-properties 2) 1
!                                   (- (length (match-string-no-properties 2)) 
1))))
              (goto-char (match-end 0))
              (setq xml-entity-alist
                    (append xml-entity-alist
***************
*** 681,689 ****
                                    "\\|'[- 
\r\na-zA-Z0-9()+,./:=?;address@hidden'"
                                    "[ \t\n\r]+\\(\"[^\"]*\"\\|'[^']*'\\)"
                                    "[ \t\n\r]*>")))
!           (let ((name  (match-string 1))
!                 (file  (substring (match-string 2) 1
!                                   (- (length (match-string 2)) 1))))
              (goto-char (match-end 0))
              (setq xml-entity-alist
                    (append xml-entity-alist
--- 685,693 ----
                                    "\\|'[- 
\r\na-zA-Z0-9()+,./:=?;address@hidden'"
                                    "[ \t\n\r]+\\(\"[^\"]*\"\\|'[^']*'\\)"
                                    "[ \t\n\r]*>")))
!           (let ((name  (match-string-no-properties 1))
!                 (file  (substring (match-string-no-properties 2) 1
!                                   (- (length (match-string-no-properties 2)) 
1))))
              (goto-char (match-end 0))
              (setq xml-entity-alist
                    (append xml-entity-alist
***************
*** 722,729 ****
    (let (elem modifier)
      (if (string-match "(\\([^)]+\\))\\([+*?]?\\)" string)
        (progn
!         (setq elem     (match-string 1 string)
!               modifier (match-string 2 string))
          (if (string-match "|" elem)
              (setq elem (cons 'choice
                               (mapcar 'xml-parse-elem-type
--- 726,733 ----
    (let (elem modifier)
      (if (string-match "(\\([^)]+\\))\\([+*?]?\\)" string)
        (progn
!         (setq elem     (match-string-no-properties 1 string)
!               modifier (match-string-no-properties 2 string))
          (if (string-match "|" elem)
              (setq elem (cons 'choice
                               (mapcar 'xml-parse-elem-type
***************
*** 733,740 ****
                                 (mapcar 'xml-parse-elem-type
                                         (split-string elem ",")))))))
        (if (string-match "[ \t\n\r]*\\([^+*?]+\\)\\([+*?]?\\)" string)
!         (setq elem     (match-string 1 string)
!               modifier (match-string 2 string))))

      (if (and (stringp elem) (string= elem "#PCDATA"))
        (setq elem 'pcdata))
--- 737,744 ----
                                 (mapcar 'xml-parse-elem-type
                                         (split-string elem ",")))))))
        (if (string-match "[ \t\n\r]*\\([^+*?]+\\)\\([+*?]?\\)" string)
!         (setq elem     (match-string-no-properties 1 string)
!               modifier (match-string-no-properties 2 string))))

      (if (and (stringp elem) (string= elem "#PCDATA"))
        (setq elem 'pcdata))
***************
*** 765,783 ****
        children end-point)
      (while (string-match "&\\([^;]*\\);" string point)
        (setq end-point (match-end 0))
!       (let* ((this-part (match-string 1 string))
             (prev-part (substring string point (match-beginning 0)))
             (entity (assoc this-part xml-entity-alist))
             (expansion
              (cond ((string-match "#\\([0-9]+\\)" this-part)
                     (let ((c (decode-char
                               'ucs
!                              (string-to-number (match-string 1 this-part)))))
                       (if c (string c))))
                    ((string-match "#x\\([[:xdigit:]]+\\)" this-part)
                     (let ((c (decode-char
                               'ucs
!                              (string-to-number (match-string 1 this-part) 
16))))
                       (if c (string c))))
                    (entity
                     (cdr entity))
--- 769,787 ----
        children end-point)
      (while (string-match "&\\([^;]*\\);" string point)
        (setq end-point (match-end 0))
!       (let* ((this-part (match-string-no-properties 1 string))
             (prev-part (substring string point (match-beginning 0)))
             (entity (assoc this-part xml-entity-alist))
             (expansion
              (cond ((string-match "#\\([0-9]+\\)" this-part)
                     (let ((c (decode-char
                               'ucs
!                              (string-to-number (match-string-no-properties 1 
this-part)))))
                       (if c (string c))))
                    ((string-match "#x\\([[:xdigit:]]+\\)" this-part)
                     (let ((c (decode-char
                               'ucs
!                              (string-to-number (match-string-no-properties 1 
this-part) 16))))
                       (if c (string c))))
                    (entity
                     (cdr entity))
*** ../emacs-cvs/lisp/calendar/cal-china.el     2007-03-15 23:55:04.000000000 
+0100
--- ./lisp/calendar/cal-china.el        2007-03-12 09:56:28.000000000 +0100
***************
*** 83,90 ****
  ; The correct value is as follows, but the Chinese calendrical
  ; authorities do NOT use DST in determining astronomical events:
  ;  60
!   "*Number of minutes difference between daylight savings and standard time
! for Chinese calendar.  Default is for no daylight savings time."
    :type 'integer
    :group 'chinese-calendar)

--- 83,90 ----
  ; The correct value is as follows, but the Chinese calendrical
  ; authorities do NOT use DST in determining astronomical events:
  ;  60
!   "*Number of minutes difference between daylight saving and standard time
! for Chinese calendar.  Default is for no daylight saving time."
    :type 'integer
    :group 'chinese-calendar)

***************
*** 99,105 ****
    :group 'chinese-calendar)

  (defcustom chinese-calendar-daylight-time-zone-name "CDT"
!   "*Abbreviated name of daylight-savings time zone used for Chinese calendar."
    :type 'string
    :group 'chinese-calendar)

--- 99,105 ----
    :group 'chinese-calendar)

  (defcustom chinese-calendar-daylight-time-zone-name "CDT"
!   "*Abbreviated name of daylight saving time zone used for Chinese calendar."
    :type 'string
    :group 'chinese-calendar)

***************
*** 109,116 ****
  ;  '(cond ((< 1986 year) (calendar-nth-named-day 1 0 4 year 10))
  ;         ((= 1986 year) '(5 4 1986))
  ;         (t nil))
!   "*Sexp giving the date on which daylight savings time starts for Chinese
! calendar.  Default is for no daylight savings time.  See documentation of
  `calendar-daylight-savings-starts'."
    :type 'sexp
    :group 'chinese-calendar)
--- 109,116 ----
  ;  '(cond ((< 1986 year) (calendar-nth-named-day 1 0 4 year 10))
  ;         ((= 1986 year) '(5 4 1986))
  ;         (t nil))
!   "*Sexp giving the date on which daylight saving time starts for Chinese
! calendar.  Default is for no daylight saving time.  See documentation of
  `calendar-daylight-savings-starts'."
    :type 'sexp
    :group 'chinese-calendar)
***************
*** 119,139 ****
  ; The correct value is as follows, but the Chinese calendrical
  ; authorities do NOT use DST in determining astronomical events:
  ;  '(if (<= 1986 year) (calendar-nth-named-day 1 0 9 year 11))
!   "*Sexp giving the date on which daylight savings time ends for Chinese
! calendar.  Default is for no daylight savings time.  See documentation of
  `calendar-daylight-savings-ends'."
    :type 'sexp
    :group 'chinese-calendar)

  (defcustom chinese-calendar-daylight-savings-starts-time 0
!   "*Number of minutes after midnight that daylight savings time starts for
! Chinese calendar.  Default is for no daylight savings time."
    :type 'integer
    :group 'chinese-calendar)

  (defcustom chinese-calendar-daylight-savings-ends-time 0
!   "*Number of minutes after midnight that daylight savings time ends for
! Chinese calendar.  Default is for no daylight savings time."
    :type 'integer
    :group 'chinese-calendar)

--- 119,139 ----
  ; The correct value is as follows, but the Chinese calendrical
  ; authorities do NOT use DST in determining astronomical events:
  ;  '(if (<= 1986 year) (calendar-nth-named-day 1 0 9 year 11))
!   "*Sexp giving the date on which daylight saving time ends for Chinese
! calendar.  Default is for no daylight saving time.  See documentation of
  `calendar-daylight-savings-ends'."
    :type 'sexp
    :group 'chinese-calendar)

  (defcustom chinese-calendar-daylight-savings-starts-time 0
!   "*Number of minutes after midnight that daylight saving time starts for
! Chinese calendar.  Default is for no daylight saving time."
    :type 'integer
    :group 'chinese-calendar)

  (defcustom chinese-calendar-daylight-savings-ends-time 0
!   "*Number of minutes after midnight that daylight saving time ends for
! Chinese calendar.  Default is for no daylight saving time."
    :type 'integer
    :group 'chinese-calendar)

*** ../emacs-cvs/lisp/calendar/cal-dst.el       2007-03-15 23:55:04.000000000 
+0100
--- ./lisp/calendar/cal-dst.el  2007-03-12 09:56:28.000000000 +0100
***************
*** 1,4 ****
! ;;; cal-dst.el --- calendar functions for daylight savings rules

  ;; Copyright (C) 1993, 1994, 1995, 1996, 2001, 2002, 2003, 2004, 2005,
  ;;   2006, 2007  Free Software Foundation, Inc.
--- 1,4 ----
! ;;; cal-dst.el --- calendar functions for daylight saving rules

  ;; Copyright (C) 1993, 1994, 1995, 1996, 2001, 2002, 2003, 2004, 2005,
  ;;   2006, 2007  Free Software Foundation, Inc.
***************
*** 7,13 ****
  ;;    Edward M. Reingold <address@hidden>
  ;; Maintainer: Glenn Morris <address@hidden>
  ;; Keywords: calendar
! ;; Human-Keywords: daylight savings time, calendar, diary, holidays

  ;; This file is part of GNU Emacs.

--- 7,13 ----
  ;;    Edward M. Reingold <address@hidden>
  ;; Maintainer: Glenn Morris <address@hidden>
  ;; Keywords: calendar
! ;; Human-Keywords: daylight saving time, calendar, diary, holidays

  ;; This file is part of GNU Emacs.

***************
*** 29,35 ****
  ;;; Commentary:

  ;; This collection of functions implements the features of calendar.el and
! ;; holiday.el that deal with daylight savings time.

  ;; Comments, corrections, and improvements should be sent to
  ;;  Edward M. Reingold               Department of Computer Science
--- 29,35 ----
  ;;; Commentary:

  ;; This collection of functions implements the features of calendar.el and
! ;; holiday.el that deal with daylight saving time.

  ;; Comments, corrections, and improvements should be sent to
  ;;  Edward M. Reingold               Department of Computer Science
***************
*** 46,52 ****
    "Non-nil means to check each year for DST transitions as needed.
  Otherwise assume the next two transitions found after the
  current date apply to all years.  This is faster, but not always
! correct, since the dates of Daylight Saving transitions sometimes
  change."
    :type 'boolean
    :version "22.1"
--- 46,52 ----
    "Non-nil means to check each year for DST transitions as needed.
  Otherwise assume the next two transitions found after the
  current date apply to all years.  This is faster, but not always
! correct, since the dates of daylight saving transitions sometimes
  change."
    :type 'boolean
    :version "22.1"
***************
*** 142,149 ****

  (defun calendar-time-zone-daylight-rules (abs-date utc-diff)
    "Return daylight transition rule for ABS-DATE, UTC-DIFF sec offset from UTC.
! ABS-DATE must specify a day that contains a daylight savings transition.
! The result has the proper form for calendar-daylight-savings-starts'."
    (let* ((date (calendar-gregorian-from-absolute abs-date))
         (weekday (% abs-date 7))
         (m (extract-calendar-month date))
--- 142,149 ----

  (defun calendar-time-zone-daylight-rules (abs-date utc-diff)
    "Return daylight transition rule for ABS-DATE, UTC-DIFF sec offset from UTC.
! ABS-DATE must specify a day that contains a daylight saving transition.
! The result has the proper form for `calendar-daylight-savings-starts'."
    (let* ((date (calendar-gregorian-from-absolute abs-date))
         (weekday (% abs-date 7))
         (m (extract-calendar-month date))
***************
*** 215,221 ****
  ;; See thread
  ;; http://lists.gnu.org/archive/html/emacs-pretest-bug/2006-11/msg00060.html
  (defun calendar-dst-find-data (&optional time)
!   "Find data on the first Daylight Saving Time transitions after TIME.
  TIME defaults to `current-time'.  Return value is as described
  for `calendar-current-time-zone'."
    (let* ((t0 (or time (current-time)))
--- 215,221 ----
  ;; See thread
  ;; http://lists.gnu.org/archive/html/emacs-pretest-bug/2006-11/msg00060.html
  (defun calendar-dst-find-data (&optional time)
!   "Find data on the first daylight saving time transitions after TIME.
  TIME defaults to `current-time'.  Return value is as described
  for `calendar-current-time-zone'."
    (let* ((t0 (or time (current-time)))
***************
*** 228,236 ****
        (let* ((t1 (calendar-next-time-zone-transition t0))
               (t2 (and t1 (calendar-next-time-zone-transition t1))))
          (if (not t2)
!             ;; This locale does not have daylight savings time.
              (list (/ t0-utc-diff 60) 0 t0-name t0-name nil nil 0 0)
!           ;; Use heuristics to find daylight savings parameters.
            (let* ((t1-zone (current-time-zone t1))
                   (t1-utc-diff (car t1-zone))
                   (t1-name (car (cdr t1-zone)))
--- 228,236 ----
        (let* ((t1 (calendar-next-time-zone-transition t0))
               (t2 (and t1 (calendar-next-time-zone-transition t1))))
          (if (not t2)
!             ;; This locale does not have daylight saving time.
              (list (/ t0-utc-diff 60) 0 t0-name t0-name nil nil 0 0)
!           ;; Use heuristics to find daylight saving parameters.
            (let* ((t1-zone (current-time-zone t1))
                   (t1-utc-diff (car t1-zone))
                   (t1-name (car (cdr t1-zone)))
***************
*** 254,267 ****
                  )))))))))

  (defvar calendar-dst-transition-cache nil
!   "Internal cal-dst variable storing date of Daylight Saving Time transitions.
  Value is a list with elements of the form (YEAR START END), where
  START and END are expressions that when evaluated return the
  start and end dates (respectively) for DST in YEAR. Used by the
  function `calendar-dst-find-startend'.")

  (defun calendar-dst-find-startend (year)
!   "Find the dates in YEAR on which Daylight Saving Time starts and ends.
  Returns a list (YEAR START END), where START and END are
  expressions that when evaluated return the start and end dates,
  respectively. This function first attempts to use pre-calculated
--- 254,267 ----
                  )))))))))

  (defvar calendar-dst-transition-cache nil
!   "Internal cal-dst variable storing date of daylight saving time transitions.
  Value is a list with elements of the form (YEAR START END), where
  START and END are expressions that when evaluated return the
  start and end dates (respectively) for DST in YEAR. Used by the
  function `calendar-dst-find-startend'.")

  (defun calendar-dst-find-startend (year)
!   "Find the dates in YEAR on which daylight saving time starts and ends.
  Returns a list (YEAR START END), where START and END are
  expressions that when evaluated return the start and end dates,
  respectively. This function first attempts to use pre-calculated
***************
*** 288,303 ****
  UTC-DIFF is an integer specifying the number of minutes difference between
      standard time in the current time zone and Coordinated Universal Time
      (Greenwich Mean Time).  A negative value means west of Greenwich.
! DST-OFFSET is an integer giving the daylight savings time offset in minutes.
  STD-ZONE is a string giving the name of the time zone when no seasonal time
      adjustment is in effect.
  DST-ZONE is a string giving the name of the time zone when there is a seasonal
      time adjustment in effect.
  DST-STARTS and DST-ENDS are sexps in the variable `year' giving the daylight
!     savings time start and end rules, in the form expected by
      `calendar-daylight-savings-starts'.
  DST-STARTS-TIME and DST-ENDS-TIME are integers giving the number of minutes
!     after midnight that daylight savings time starts and ends.

  If the local area does not use a seasonal time adjustment, STD-ZONE and
  DST-ZONE are equal, and all the DST-* integer variables are 0.
--- 288,303 ----
  UTC-DIFF is an integer specifying the number of minutes difference between
      standard time in the current time zone and Coordinated Universal Time
      (Greenwich Mean Time).  A negative value means west of Greenwich.
! DST-OFFSET is an integer giving the daylight saving time offset in minutes.
  STD-ZONE is a string giving the name of the time zone when no seasonal time
      adjustment is in effect.
  DST-ZONE is a string giving the name of the time zone when there is a seasonal
      time adjustment in effect.
  DST-STARTS and DST-ENDS are sexps in the variable `year' giving the daylight
!     saving time start and end rules, in the form expected by
      `calendar-daylight-savings-starts'.
  DST-STARTS-TIME and DST-ENDS-TIME are integers giving the number of minutes
!     after midnight that daylight saving time starts and ends.

  If the local area does not use a seasonal time adjustment, STD-ZONE and
  DST-ZONE are equal, and all the DST-* integer variables are 0.
***************
*** 308,314 ****
    (unless calendar-current-time-zone-cache
      (setq calendar-current-time-zone-cache (calendar-dst-find-data))))

! ;;; The following eight defvars relating to daylight savings time should NOT 
be
  ;;; marked to go into loaddefs.el where they would be evaluated when Emacs is
  ;;; dumped.  These variables' appropriate values depend on the conditions 
under
  ;;; which the code is INVOKED; so it's inappropriate to initialize them when
--- 308,314 ----
    (unless calendar-current-time-zone-cache
      (setq calendar-current-time-zone-cache (calendar-dst-find-data))))

! ;;; The following eight defvars relating to daylight saving time should NOT be
  ;;; marked to go into loaddefs.el where they would be evaluated when Emacs is
  ;;; dumped.  These variables' appropriate values depend on the conditions 
under
  ;;; which the code is INVOKED; so it's inappropriate to initialize them when
***************
*** 324,332 ****

  (defvar calendar-daylight-time-offset
    (or (car (cdr calendar-current-time-zone-cache)) 60)
!   "*Number of minutes difference between daylight savings and standard time.

! If the locale never uses daylight savings time, set this to 0.")

  (defvar calendar-standard-time-zone-name
    (or (car (nthcdr 2 calendar-current-time-zone-cache)) "EST")
--- 324,332 ----

  (defvar calendar-daylight-time-offset
    (or (car (cdr calendar-current-time-zone-cache)) 60)
!   "*Number of minutes difference between daylight saving and standard time.

! If the locale never uses daylight saving time, set this to 0.")

  (defvar calendar-standard-time-zone-name
    (or (car (nthcdr 2 calendar-current-time-zone-cache)) "EST")
***************
*** 335,346 ****

  (defvar calendar-daylight-time-zone-name
    (or (car (nthcdr 3 calendar-current-time-zone-cache)) "EDT")
!   "*Abbreviated name of daylight-savings time zone at 
`calendar-location-name'.
  For example, \"EDT\" in New York City, \"PDT\" for Los Angeles.")


  (defun calendar-dst-starts (year)
!   "Return the date of YEAR on which Daylight Saving Time starts.
  This function respects the value of `calendar-dst-check-each-year-flag'."
    (or (let ((expr (if calendar-dst-check-each-year-flag
                        (cadr (calendar-dst-find-startend year))
--- 335,346 ----

  (defvar calendar-daylight-time-zone-name
    (or (car (nthcdr 3 calendar-current-time-zone-cache)) "EDT")
!   "*Abbreviated name of daylight saving time zone at `calendar-location-name'.
  For example, \"EDT\" in New York City, \"PDT\" for Los Angeles.")


  (defun calendar-dst-starts (year)
!   "Return the date of YEAR on which daylight saving time starts.
  This function respects the value of `calendar-dst-check-each-year-flag'."
    (or (let ((expr (if calendar-dst-check-each-year-flag
                        (cadr (calendar-dst-find-startend year))
***************
*** 351,357 ****
             (calendar-nth-named-day 2 0 3 year))))

  (defun calendar-dst-ends (year)
!   "Return the date of YEAR on which Daylight Saving Time ends.
  This function respects the value of `calendar-dst-check-each-year-flag'."
    (or (let ((expr (if calendar-dst-check-each-year-flag
                        (nth 2 (calendar-dst-find-startend year))
--- 351,357 ----
             (calendar-nth-named-day 2 0 3 year))))

  (defun calendar-dst-ends (year)
!   "Return the date of YEAR on which daylight saving time ends.
  This function respects the value of `calendar-dst-check-each-year-flag'."
    (or (let ((expr (if calendar-dst-check-each-year-flag
                        (nth 2 (calendar-dst-find-startend year))
***************
*** 366,378 ****
  (put 'calendar-daylight-savings-starts 'risky-local-variable t)
  (defvar calendar-daylight-savings-starts
    '(calendar-dst-starts year)
!   "*Sexp giving the date on which daylight savings time starts.
  This is an expression in the variable `year' whose value gives the Gregorian
! date in the form (month day year) on which daylight savings time starts.  It 
is
! used to determine the starting date of daylight savings time for the holiday
  list and for correcting times of day in the solar and lunar calculations.

! For example, if daylight savings time is mandated to start on October 1,
  you would set `calendar-daylight-savings-starts' to

        '(10 1 year)
--- 366,378 ----
  (put 'calendar-daylight-savings-starts 'risky-local-variable t)
  (defvar calendar-daylight-savings-starts
    '(calendar-dst-starts year)
!   "*Sexp giving the date on which daylight saving time starts.
  This is an expression in the variable `year' whose value gives the Gregorian
! date in the form (month day year) on which daylight saving time starts.  It is
! used to determine the starting date of daylight saving time for the holiday
  list and for correcting times of day in the solar and lunar calculations.

! For example, if daylight saving time is mandated to start on October 1,
  you would set `calendar-daylight-savings-starts' to

        '(10 1 year)
***************
*** 381,415 ****

        '(calendar-nth-named-day 1 0 4 year)

! If the locale never uses daylight savings time, set this to nil.")

  ;;;###autoload
  (put 'calendar-daylight-savings-ends 'risky-local-variable t)
  (defvar calendar-daylight-savings-ends
    '(calendar-dst-ends year)
!   "*Sexp giving the date on which daylight savings time ends.
  This is an expression in the variable `year' whose value gives the Gregorian
! date in the form (month day year) on which daylight savings time ends.  It is
! used to determine the starting date of daylight savings time for the holiday
  list and for correcting times of day in the solar and lunar calculations.

! For example, if daylight savings time ends on the last Sunday in October:

        '(calendar-nth-named-day -1 0 10 year)

! If the locale never uses daylight savings time, set this to nil.")

  (defvar calendar-daylight-savings-starts-time
    (or (car (nthcdr 6 calendar-current-time-zone-cache)) 120)
!   "*Number of minutes after midnight that daylight savings time starts.")

  (defvar calendar-daylight-savings-ends-time
    (or (car (nthcdr 7 calendar-current-time-zone-cache))
        calendar-daylight-savings-starts-time)
!   "*Number of minutes after midnight that daylight savings time ends.")

  (defun dst-in-effect (date)
!   "True if on absolute DATE daylight savings time is in effect.
  Fractional part of DATE is local standard time of day."
    (let* ((year (extract-calendar-year
                  (calendar-gregorian-from-absolute (floor date))))
--- 381,415 ----

        '(calendar-nth-named-day 1 0 4 year)

! If the locale never uses daylight saving time, set this to nil.")

  ;;;###autoload
  (put 'calendar-daylight-savings-ends 'risky-local-variable t)
  (defvar calendar-daylight-savings-ends
    '(calendar-dst-ends year)
!   "*Sexp giving the date on which daylight saving time ends.
  This is an expression in the variable `year' whose value gives the Gregorian
! date in the form (month day year) on which daylight saving time ends.  It is
! used to determine the starting date of daylight saving time for the holiday
  list and for correcting times of day in the solar and lunar calculations.

! For example, if daylight saving time ends on the last Sunday in October:

        '(calendar-nth-named-day -1 0 10 year)

! If the locale never uses daylight saving time, set this to nil.")

  (defvar calendar-daylight-savings-starts-time
    (or (car (nthcdr 6 calendar-current-time-zone-cache)) 120)
!   "*Number of minutes after midnight that daylight saving time starts.")

  (defvar calendar-daylight-savings-ends-time
    (or (car (nthcdr 7 calendar-current-time-zone-cache))
        calendar-daylight-savings-starts-time)
!   "*Number of minutes after midnight that daylight saving time ends.")

  (defun dst-in-effect (date)
!   "True if on absolute DATE daylight saving time is in effect.
  Fractional part of DATE is local standard time of day."
    (let* ((year (extract-calendar-year
                  (calendar-gregorian-from-absolute (floor date))))
***************
*** 438,447 ****
  decimal fraction time, and `zone' is a string.

  Optional parameter STYLE forces the result time to be standard time when its
! value is 'standard and daylight savings time (if available) when its value is
  'daylight.

! Conversion to daylight savings time is done according to
  `calendar-daylight-savings-starts', `calendar-daylight-savings-ends',
  `calendar-daylight-savings-starts-time',
  `calendar-daylight-savings-ends-time', and
--- 438,447 ----
  decimal fraction time, and `zone' is a string.

  Optional parameter STYLE forces the result time to be standard time when its
! value is 'standard and daylight saving time (if available) when its value is
  'daylight.

! Conversion to daylight saving time is done according to
  `calendar-daylight-savings-starts', `calendar-daylight-savings-ends',
  `calendar-daylight-savings-starts-time',
  `calendar-daylight-savings-ends-time', and
*** ../emacs-cvs/lisp/calendar/calendar.el      2007-03-15 23:55:04.000000000 
+0100
--- ./lisp/calendar/calendar.el 2007-03-12 09:56:28.000000000 +0100
***************
*** 57,63 ****
  ;;       appt.el                       Appointment notification
  ;;       cal-china.el                  Chinese calendar
  ;;       cal-coptic.el                 Coptic/Ethiopic calendars
! ;;       cal-dst.el                    Daylight savings time rules
  ;;       cal-hebrew.el                 Hebrew calendar
  ;;       cal-islam.el                  Islamic calendar
  ;;       cal-bahai.el                  Baha'i calendar
--- 57,63 ----
  ;;       appt.el                       Appointment notification
  ;;       cal-china.el                  Chinese calendar
  ;;       cal-coptic.el                 Coptic/Ethiopic calendars
! ;;       cal-dst.el                    Daylight saving time rules
  ;;       cal-hebrew.el                 Hebrew calendar
  ;;       cal-islam.el                  Islamic calendar
  ;;       cal-bahai.el                  Baha'i calendar
***************
*** 1160,1166 ****
        (funcall
         'holiday-sexp
          calendar-daylight-savings-starts
!         '(format "Daylight Savings Time Begins %s"
                    (if (fboundp 'atan)
                        (solar-time-string
                         (/ calendar-daylight-savings-starts-time (float 60))
--- 1160,1166 ----
        (funcall
         'holiday-sexp
          calendar-daylight-savings-starts
!         '(format "Daylight Saving Time Begins %s"
                    (if (fboundp 'atan)
                        (solar-time-string
                         (/ calendar-daylight-savings-starts-time (float 60))
***************
*** 1169,1175 ****
      (funcall
       'holiday-sexp
       calendar-daylight-savings-ends
!      '(format "Daylight Savings Time Ends %s"
                (if (fboundp 'atan)
                    (solar-time-string
                     (/ calendar-daylight-savings-ends-time (float 60))
--- 1169,1175 ----
      (funcall
       'holiday-sexp
       calendar-daylight-savings-ends
!      '(format "Daylight Saving Time Ends %s"
                (if (fboundp 'atan)
                    (solar-time-string
                     (/ calendar-daylight-savings-ends-time (float 60))
*** ../emacs-cvs/lisp/calendar/diary-lib.el     2007-03-15 23:55:04.000000000 
+0100
--- ./lisp/calendar/diary-lib.el        2007-03-12 09:56:28.000000000 +0100
***************
*** 300,309 ****
  day's and the next day's entries will be displayed.

  The value can also be a vector such as [0 2 2 2 2 4 1]; this value
! says to display no diary entries on Sunday, the display the entries
! for the current date and the day after on Monday through Thursday,
! display Friday through Monday's entries on Friday, and display only
! Saturday's entries on Saturday.

  This variable does not affect the diary display with the `d' command
  from the calendar; in that case, the prefix argument controls the
--- 300,309 ----
  day's and the next day's entries will be displayed.

  The value can also be a vector such as [0 2 2 2 2 4 1]; this value
! says to display no diary entries on Sunday, the entries for
! the current date and the day after on Monday through Thursday,
! Friday through Monday's entries on Friday, and only Saturday's
! entries on Saturday.

  This variable does not affect the diary display with the `d' command
  from the calendar; in that case, the prefix argument controls the
*** ../emacs-cvs/lisp/calendar/lunar.el 2007-03-15 23:55:04.000000000 +0100
--- ./lisp/calendar/lunar.el    2007-03-12 09:56:28.000000000 +0100
***************
*** 377,383 ****
    "Astronomical (Julian) day number of first new moon on or after astronomical
  \(Julian) day number d.  The fractional part is the time of day.

! The date and time are local time, including any daylight savings rules,
  as governed by the values of calendar-daylight-savings-starts,
  calendar-daylight-savings-starts-time, calendar-daylight-savings-ends,
  calendar-daylight-savings-ends-time, calendar-daylight-time-offset, and
--- 377,383 ----
    "Astronomical (Julian) day number of first new moon on or after astronomical
  \(Julian) day number d.  The fractional part is the time of day.

! The date and time are local time, including any daylight saving rules,
  as governed by the values of calendar-daylight-savings-starts,
  calendar-daylight-savings-starts-time, calendar-daylight-savings-ends,
  calendar-daylight-savings-ends-time, calendar-daylight-time-offset, and
*** ../emacs-cvs/lisp/calendar/solar.el 2007-03-15 23:55:05.000000000 +0100
--- ./lisp/calendar/solar.el    2007-03-12 09:56:28.000000000 +0100
***************
*** 507,513 ****
  (defun solar-date-next-longitude (d l)
    "First moment on or after Julian day number D when sun's longitude is a
  multiple of L degrees at calendar-location-name with that location's
! local time (including any daylight savings rules).

  L must be an integer divisor of 360.

--- 507,513 ----
  (defun solar-date-next-longitude (d l)
    "First moment on or after Julian day number D when sun's longitude is a
  multiple of L degrees at calendar-location-name with that location's
! local time (including any daylight saving rules).

  L must be an integer divisor of 360.

*** ../emacs-cvs/lisp/emacs-lisp/lisp-mode.el   2007-03-15 23:55:05.000000000 
+0100
--- ./lisp/emacs-lisp/lisp-mode.el      2007-03-13 14:37:51.000000000 +0100
***************
*** 96,102 ****
                             (regexp-opt
                              '("defun" "defun*" "defsubst" "defmacro"
                                "defadvice" "define-skeleton"
!                               "define-minor-mode" "define-global-minor-mode"
                                "define-globalized-minor-mode"
                                "define-derived-mode" "define-generic-mode"
                                "define-compiler-macro" "define-modify-macro"
--- 96,102 ----
                             (regexp-opt
                              '("defun" "defun*" "defsubst" "defmacro"
                                "defadvice" "define-skeleton"
!                               "define-minor-mode" 
"define-globalized-minor-mode"
                                "define-globalized-minor-mode"
                                "define-derived-mode" "define-generic-mode"
                                "define-compiler-macro" "define-modify-macro"
*** ../emacs-cvs/lisp/eshell/esh-mode.el        2007-03-15 23:55:05.000000000 
+0100
--- ./lisp/eshell/esh-mode.el   2007-03-12 22:19:35.000000000 +0100
***************
*** 1078,1083 ****
--- 1078,1091 ----
  (custom-add-option 'eshell-output-filter-functions
                   'eshell-handle-control-codes)

+ (defun eshell-handle-ansi-color ()
+   "Handle ANSI color codes."
+   (ansi-color-apply-on-region eshell-last-output-start
+                               eshell-last-output-end))
+
+ (custom-add-option 'eshell-output-filter-functions
+                  'eshell-handle-ansi-color)
+
  ;;; Code:

  ;;; arch-tag: ec65bc2b-da14-4547-81d3-a32af3a4dc57
*** ../emacs-cvs/lisp/textmodes/org.el  2007-03-15 23:55:05.000000000 +0100
--- ./lisp/textmodes/org.el     2007-03-12 22:19:35.000000000 +0100
***************
*** 3912,3917 ****
--- 3912,3918 ----
           (if (memq 'radio lk) '(org-activate-target-links (0 'org-link t)))
           (if (memq 'date lk) '(org-activate-dates (0 'org-date t)))
           (if (memq 'tag lk) '(org-activate-tags (1 'org-tag prepend)))
+          '(org-hide-wide-columns (0 nil append))
           ;; TODO lines
           (list (concat "^\\*+[ \t]*" org-not-done-regexp)
                 '(1 'org-todo t))
*** ../emacs-cvs/lispref/os.texi        2007-03-15 23:55:05.000000000 +0100
--- ./lispref/os.texi   2007-03-12 09:56:29.000000000 +0100
***************
*** 1042,1048 ****
  @var{offset} is an integer giving the number of seconds ahead of UTC
  (east of Greenwich).  A negative value means west of Greenwich.  The
  second element, @var{name}, is a string giving the name of the time
! zone.  Both elements change when daylight savings time begins or ends;
  if the user has specified a time zone that does not use a seasonal time
  adjustment, then the value is constant through time.

--- 1042,1048 ----
  @var{offset} is an integer giving the number of seconds ahead of UTC
  (east of Greenwich).  A negative value means west of Greenwich.  The
  second element, @var{name}, is a string giving the name of the time
! zone.  Both elements change when daylight saving time begins or ends;
  if the user has specified a time zone that does not use a seasonal time
  adjustment, then the value is constant through time.

***************
*** 1125,1131 ****
  The day of week, as an integer between 0 and 6, where 0 stands for
  Sunday.
  @item dst
! @code{t} if daylight savings time is effect, otherwise @code{nil}.
  @item zone
  An integer indicating the time zone, as the number of seconds east of
  Greenwich.
--- 1125,1131 ----
  The day of week, as an integer between 0 and 6, where 0 stands for
  Sunday.
  @item dst
! @code{t} if daylight saving time is effect, otherwise @code{nil}.
  @item zone
  An integer indicating the time zone, as the number of seconds east of
  Greenwich.
***************
*** 1145,1155 ****
  yourself before you call @code{encode-time}.

  The optional argument @var{zone} defaults to the current time zone and
! its daylight savings time rules.  If specified, it can be either a list
  (as you would get from @code{current-time-zone}), a string as in the
  @code{TZ} environment variable, @code{t} for Universal Time, or an
  integer (as you would get from @code{decode-time}).  The specified
! zone is used without any further alteration for daylight savings time.

  If you pass more than seven arguments to @code{encode-time}, the first
  six are used as @var{seconds} through @var{year}, the last argument is
--- 1145,1155 ----
  yourself before you call @code{encode-time}.

  The optional argument @var{zone} defaults to the current time zone and
! its daylight saving time rules.  If specified, it can be either a list
  (as you would get from @code{current-time-zone}), a string as in the
  @code{TZ} environment variable, @code{t} for Universal Time, or an
  integer (as you would get from @code{decode-time}).  The specified
! zone is used without any further alteration for daylight saving time.

  If you pass more than seven arguments to @code{encode-time}, the first
  six are used as @var{seconds} through @var{year}, the last argument is
*** ../emacs-cvs/man/ChangeLog  2007-03-15 23:55:06.000000000 +0100
--- ./man/ChangeLog     2007-03-12 09:56:30.000000000 +0100
***************
*** 1,3 ****
--- 1,15 ----
+ 2007-03-12  Glenn Morris  <address@hidden>
+
+       * calc.texi (Time Zones): Switch to new North America DST rule.
+
+       * calendar.texi (Daylight Saving): Rename node from "Daylight Savings".
+
+ 2007-03-11  Andreas Seltenreich  <address@hidden>
+
+       * gnus.texi (Mail and Post): Update documentation for gnus-user-agent.
+       The variable now uses a list of symbols instead of just a symbol.
+       Reported by Christoph Conrad <address@hidden>.
+
  2007-03-06  Romain Francoise  <address@hidden>

        * faq.texi (New in Emacs 22): Don't say "now" too much.  Add MH-E to
***************
*** 315,323 ****

  2006-12-24  Kevin Ryde  <address@hidden>

!       * calendar.texi (Holidays): US daylight savings begins second Sunday
        in March for 2007 onwards.
!       (Daylight Savings): Show new US default daylight savings rules, 2nd
        Sun in Mar to 1st Sun in Nov, now in cal-dst.el.

  2006-12-23  Chong Yidong  <address@hidden>
--- 327,335 ----

  2006-12-24  Kevin Ryde  <address@hidden>

!       * calendar.texi (Holidays): US daylight saving begins second Sunday
        in March for 2007 onwards.
!       (Daylight Savings): Show new US default daylight saving rules, 2nd
        Sun in Mar to 1st Sun in Nov, now in cal-dst.el.

  2006-12-23  Chong Yidong  <address@hidden>
*** ../emacs-cvs/man/calc.texi  2007-03-15 23:55:07.000000000 +0100
--- ./man/calc.texi     2007-03-12 09:56:31.000000000 +0100
***************
*** 17364,17394 ****

  @noindent
  @cindex Time zones
! @cindex Daylight savings time
! Time zones and daylight savings time are a complicated business.
  The conversions to and from Julian and Unix-style dates automatically
! compute the correct time zone and daylight savings adjustment to use,
  provided they can figure out this information.  This section describes
  Calc's time zone adjustment algorithm in detail, in case you want to
  do conversions in different time zones or in case Calc's algorithms
  can't determine the right correction to use.

! Adjustments for time zones and daylight savings time are done by
  @kbd{t U}, @kbd{t J}, @kbd{t N}, and @kbd{t C}, but not by any other
  commands.  In particular, @samp{<may 1 1991> - <apr 1 1991>} evaluates
! to exactly 30 days even though there is a daylight-savings
  transition in between.  This is also true for Julian pure dates:
  @samp{julian(<may 1 1991>) - julian(<apr 1 1991>)}.  But Julian
! and Unix date/times will adjust for daylight savings time:
  @samp{julian(<12am may 1 1991>) - julian(<12am apr 1 1991>)}
  evaluates to @samp{29.95834} (that's 29 days and 23 hours)
! because one hour was lost when daylight savings commenced on
  April 7, 1991.

  In brief, the idiom @samp{julian(@var{date1}) - julian(@var{date2})}
  computes the actual number of 24-hour periods between two dates, whereas
  @address@hidden - @var{date2}} computes the number of calendar
! days between two dates without taking daylight savings into account.

  @pindex calc-time-zone
  @ignore
--- 17364,17394 ----

  @noindent
  @cindex Time zones
! @cindex Daylight saving time
! Time zones and daylight saving time are a complicated business.
  The conversions to and from Julian and Unix-style dates automatically
! compute the correct time zone and daylight saving adjustment to use,
  provided they can figure out this information.  This section describes
  Calc's time zone adjustment algorithm in detail, in case you want to
  do conversions in different time zones or in case Calc's algorithms
  can't determine the right correction to use.

! Adjustments for time zones and daylight saving time are done by
  @kbd{t U}, @kbd{t J}, @kbd{t N}, and @kbd{t C}, but not by any other
  commands.  In particular, @samp{<may 1 1991> - <apr 1 1991>} evaluates
! to exactly 30 days even though there is a daylight-saving
  transition in between.  This is also true for Julian pure dates:
  @samp{julian(<may 1 1991>) - julian(<apr 1 1991>)}.  But Julian
! and Unix date/times will adjust for daylight saving time:
  @samp{julian(<12am may 1 1991>) - julian(<12am apr 1 1991>)}
  evaluates to @samp{29.95834} (that's 29 days and 23 hours)
! because one hour was lost when daylight saving commenced on
  April 7, 1991.

  In brief, the idiom @samp{julian(@var{date1}) - julian(@var{date2})}
  computes the actual number of 24-hour periods between two dates, whereas
  @address@hidden - @var{date2}} computes the number of calendar
! days between two dates without taking daylight saving into account.

  @pindex calc-time-zone
  @ignore
***************
*** 17400,17406 ****
  seconds difference from Greenwich mean time (GMT).  If the argument
  is a number, the result is simply that value multiplied by 3600.
  Typical arguments for North America are 5 (Eastern) or 8 (Pacific).  If
! Daylight Savings time is in effect, one hour should be subtracted from
  the normal difference.

  If you give a prefix of plain @kbd{C-u}, @code{calc-time-zone} (like other
--- 17400,17406 ----
  seconds difference from Greenwich mean time (GMT).  If the argument
  is a number, the result is simply that value multiplied by 3600.
  Typical arguments for North America are 5 (Eastern) or 8 (Pacific).  If
! Daylight Saving time is in effect, one hour should be subtracted from
  the normal difference.

  If you give a prefix of plain @kbd{C-u}, @code{calc-time-zone} (like other
***************
*** 17411,17422 ****
  adjustment.  The time-zone argument can also be an HMS form, or
  it can be a variable which is a time zone name in upper- or lower-case.
  For example @samp{tzone(PST) = tzone(8)} and @samp{tzone(pdt) = tzone(7)}
! (for Pacific standard and daylight savings times, respectively).

  North American and European time zone names are defined as follows;
  note that for each time zone there is one name for standard time,
! another for daylight savings time, and a third for ``generalized'' time
! in which the daylight savings adjustment is computed from context.

  @smallexample
  @group
--- 17411,17422 ----
  adjustment.  The time-zone argument can also be an HMS form, or
  it can be a variable which is a time zone name in upper- or lower-case.
  For example @samp{tzone(PST) = tzone(8)} and @samp{tzone(pdt) = tzone(7)}
! (for Pacific standard and daylight saving times, respectively).

  North American and European time zone names are defined as follows;
  note that for each time zone there is one name for standard time,
! another for daylight saving time, and a third for ``generalized'' time
! in which the daylight saving adjustment is computed from context.

  @smallexample
  @group
***************
*** 17441,17447 ****
  @smallexample
  @group
  ( ( "PST" 8 0 )    ; Name as an upper-case string, then standard
!   ( "PDT" 8 -1 )   ; adjustment, then daylight savings adjustment.
    ( "PGT" 8 "PST" "PDT" ) )   ; Generalized time zone.
  @end group
  @end smallexample
--- 17441,17447 ----
  @smallexample
  @group
  ( ( "PST" 8 0 )    ; Name as an upper-case string, then standard
!   ( "PDT" 8 -1 )   ; adjustment, then daylight saving adjustment.
    ( "PGT" 8 "PST" "PDT" ) )   ; Generalized time zone.
  @end group
  @end smallexample
***************
*** 17464,17473 ****
  command.

  If the time zone name found is one of the standard or daylight
! savings zone names from the above table, and Calc's internal
! daylight savings algorithm says that time and zone are consistent
  (e.g., @code{PDT} accompanies a date that Calc's algorithm would also
! consider to be daylight savings, or @code{PST} accompanies a date
  that Calc would consider to be standard time), then Calc substitutes
  the corresponding generalized time zone (like @code{PGT}).

--- 17464,17473 ----
  command.

  If the time zone name found is one of the standard or daylight
! saving zone names from the above table, and Calc's internal
! daylight saving algorithm says that time and zone are consistent
  (e.g., @code{PDT} accompanies a date that Calc's algorithm would also
! consider to be daylight saving, or @code{PST} accompanies a date
  that Calc would consider to be standard time), then Calc substitutes
  the corresponding generalized time zone (like @code{PGT}).

***************
*** 17484,17521 ****
  arguments do the same thing as @samp{tzone()}.  If the current
  time zone is a generalized time zone, e.g., @code{EGT}, Calc
  examines the date being converted to tell whether to use standard
! or daylight savings time.  But if the current time zone is explicit,
  e.g., @code{EST} or @code{EDT}, then that adjustment is used exactly
! and Calc's daylight savings algorithm is not consulted.

! Some places don't follow the usual rules for daylight savings time.
! The state of Arizona, for example, does not observe daylight savings
  time.  If you run Calc during the winter season in Arizona, the
  Unix @code{date} command will report @code{MST} time zone, which
  Calc will change to @code{MGT}.  If you then convert a time that
  lies in the summer months, Calc will apply an incorrect daylight
! savings time adjustment.  To avoid this, set your @code{TimeZone}
  variable explicitly to @code{MST} to force the use of standard,
! non-daylight-savings time.

  @vindex math-daylight-savings-hook
  @findex math-std-daylight-savings
! By default Calc always considers daylight savings time to begin at
! 2 a.m.@: on the first Sunday of April, and to end at 2 a.m.@: on the
! last Sunday of October.  This is the rule that has been in effect
! in North America since 1987.  If you are in a country that uses
! different rules for computing daylight savings time, you have two
! choices:  Write your own daylight savings hook, or control time
  zones explicitly by setting the @code{TimeZone} variable and/or
  always giving a time-zone argument for the conversion functions.

  The Lisp variable @code{math-daylight-savings-hook} holds the
! name of a function that is used to compute the daylight savings
  adjustment for a given date.  The default is
  @code{math-std-daylight-savings}, which computes an adjustment
  (either 0 or @mathit{-1}) using the North American rules given above.

! The daylight savings hook function is called with four arguments:
  The date, as a floating-point number in standard Calc format;
  a six-element list of the date decomposed into year, month, day,
  hour, minute, and second, respectively; a string which contains
--- 17484,17521 ----
  arguments do the same thing as @samp{tzone()}.  If the current
  time zone is a generalized time zone, e.g., @code{EGT}, Calc
  examines the date being converted to tell whether to use standard
! or daylight saving time.  But if the current time zone is explicit,
  e.g., @code{EST} or @code{EDT}, then that adjustment is used exactly
! and Calc's daylight saving algorithm is not consulted.

! Some places don't follow the usual rules for daylight saving time.
! The state of Arizona, for example, does not observe daylight saving
  time.  If you run Calc during the winter season in Arizona, the
  Unix @code{date} command will report @code{MST} time zone, which
  Calc will change to @code{MGT}.  If you then convert a time that
  lies in the summer months, Calc will apply an incorrect daylight
! saving time adjustment.  To avoid this, set your @code{TimeZone}
  variable explicitly to @code{MST} to force the use of standard,
! non-daylight-saving time.

  @vindex math-daylight-savings-hook
  @findex math-std-daylight-savings
! By default Calc always considers daylight saving time to begin at
! 2 a.m.@: on the second Sunday of March, and to end at 2 a.m.@: on the
! first Sunday of November.  This is the rule that has been in effect
! in North America since 2007.  If you are in a country that uses
! different rules for computing daylight saving time, you have two
! choices:  Write your own daylight saving hook, or control time
  zones explicitly by setting the @code{TimeZone} variable and/or
  always giving a time-zone argument for the conversion functions.

  The Lisp variable @code{math-daylight-savings-hook} holds the
! name of a function that is used to compute the daylight saving
  adjustment for a given date.  The default is
  @code{math-std-daylight-savings}, which computes an adjustment
  (either 0 or @mathit{-1}) using the North American rules given above.

! The daylight saving hook function is called with four arguments:
  The date, as a floating-point number in standard Calc format;
  a six-element list of the date decomposed into year, month, day,
  hour, minute, and second, respectively; a string which contains
***************
*** 17525,17542 ****

  @findex math-prev-weekday-in-month
  The Lisp function @code{math-prev-weekday-in-month} is useful for
! daylight savings computations.  This is an internal version of
  the user-level @code{pwday} function described in the previous
  section. It takes four arguments:  The floating-point date value,
  the corresponding six-element date list, the day-of-month number,
  and the weekday number (0-6).

! The default daylight savings hook ignores the time zone name, but a
  more sophisticated hook could use different algorithms for different
  time zones.  It would also be possible to use different algorithms
  depending on the year number, but the default hook always uses the
  algorithm for 1987 and later.  Here is a listing of the default
! daylight savings hook:

  @smallexample
  (defun math-std-daylight-savings (date dt zone bump)
--- 17525,17542 ----

  @findex math-prev-weekday-in-month
  The Lisp function @code{math-prev-weekday-in-month} is useful for
! daylight saving computations.  This is an internal version of
  the user-level @code{pwday} function described in the previous
  section. It takes four arguments:  The floating-point date value,
  the corresponding six-element date list, the day-of-month number,
  and the weekday number (0-6).

! The default daylight saving hook ignores the time zone name, but a
  more sophisticated hook could use different algorithms for different
  time zones.  It would also be possible to use different algorithms
  depending on the year number, but the default hook always uses the
  algorithm for 1987 and later.  Here is a listing of the default
! daylight saving hook:

  @smallexample
  (defun math-std-daylight-savings (date dt zone bump)
***************
*** 17566,17590 ****
  and reasonably around the 2 a.m.@: transition in each direction.

  There is a ``missing'' hour between 2 a.m.@: and 3 a.m.@: at the
! beginning of daylight savings time; converting a date/time form that
  falls in this hour results in a time value for the following hour,
! from 3 a.m.@: to 4 a.m.  At the end of daylight savings time, the
  hour from 1 a.m.@: to 2 a.m.@: repeats itself; converting a date/time
  form that falls in this hour results in a time value for the first
  manifestation of that time (@emph{not} the one that occurs one hour later).

  If @code{math-daylight-savings-hook} is @code{nil}, then the
! daylight savings adjustment is always taken to be zero.

  In algebraic formulas, @samp{tzone(@var{zone}, @var{date})}
  computes the time zone adjustment for a given zone name at a
  given date.  The @var{date} is ignored unless @var{zone} is a
  generalized time zone.  If @var{date} is a date form, the
! daylight savings computation is applied to it as it appears.
  If @var{date} is a numeric date value, it is adjusted for the
! daylight-savings version of @var{zone} before being given to
! the daylight savings hook.  This odd-sounding rule ensures
! that the daylight-savings computation is always done in
  local time, not in the GMT time that a numeric @var{date}
  is typically represented in.

--- 17566,17590 ----
  and reasonably around the 2 a.m.@: transition in each direction.

  There is a ``missing'' hour between 2 a.m.@: and 3 a.m.@: at the
! beginning of daylight saving time; converting a date/time form that
  falls in this hour results in a time value for the following hour,
! from 3 a.m.@: to 4 a.m.  At the end of daylight saving time, the
  hour from 1 a.m.@: to 2 a.m.@: repeats itself; converting a date/time
  form that falls in this hour results in a time value for the first
  manifestation of that time (@emph{not} the one that occurs one hour later).

  If @code{math-daylight-savings-hook} is @code{nil}, then the
! daylight saving adjustment is always taken to be zero.

  In algebraic formulas, @samp{tzone(@var{zone}, @var{date})}
  computes the time zone adjustment for a given zone name at a
  given date.  The @var{date} is ignored unless @var{zone} is a
  generalized time zone.  If @var{date} is a date form, the
! daylight saving computation is applied to it as it appears.
  If @var{date} is a numeric date value, it is adjusted for the
! daylight-saving version of @var{zone} before being given to
! the daylight saving hook.  This odd-sounding rule ensures
! that the daylight-saving computation is always done in
  local time, not in the GMT time that a numeric @var{date}
  is typically represented in.

***************
*** 17593,17601 ****
  @end ignore
  @tindex dsadj
  The @samp{dsadj(@var{date}, @var{zone})} function computes the
! daylight savings adjustment that is appropriate for @var{date} in
  time zone @var{zone}.  If @var{zone} is explicitly in or not in
! daylight savings time (e.g., @code{PDT} or @code{PST}) the
  @var{date} is ignored.  If @var{zone} is a generalized time zone,
  the algorithms described above are used.  If @var{zone} is omitted,
  the computation is done for the current time zone.
--- 17593,17601 ----
  @end ignore
  @tindex dsadj
  The @samp{dsadj(@var{date}, @var{zone})} function computes the
! daylight saving adjustment that is appropriate for @var{date} in
  time zone @var{zone}.  If @var{zone} is explicitly in or not in
! daylight saving time (e.g., @code{PDT} or @code{PST}) the
  @var{date} is ignored.  If @var{zone} is a generalized time zone,
  the algorithms described above are used.  If @var{zone} is omitted,
  the computation is done for the current time zone.
*** ../emacs-cvs/man/calendar.texi      2007-03-15 23:55:07.000000000 +0100
--- ./man/calendar.texi 2007-03-12 09:56:31.000000000 +0100
***************
*** 43,49 ****
  * Diary::               Displaying events from your diary.
  * Appointments::      Reminders when it's time to do something.
  * Importing Diary::     Converting diary events to/from other formats.
! * Daylight Savings::    How to specify when daylight savings time is active.
  * Time Intervals::      Keeping track of time intervals.
  @ifnottex
  * Advanced Calendar/Diary Usage:: Advanced Calendar/Diary customization.
--- 43,49 ----
  * Diary::               Displaying events from your diary.
  * Appointments::      Reminders when it's time to do something.
  * Importing Diary::     Converting diary events to/from other formats.
! * Daylight Saving::     How to specify when daylight saving time is active.
  * Time Intervals::      Keeping track of time intervals.
  @ifnottex
  * Advanced Calendar/Diary Usage:: Advanced Calendar/Diary customization.
***************
*** 604,611 ****
  @code{calendar-standard-time-zone-name} and
  @code{calendar-daylight-time-zone-name} are the abbreviations used in
  your time zone.  Emacs displays the times of sunrise and sunset
! @emph{corrected for daylight savings time}.  @xref{Daylight Savings},
! for how daylight savings time is determined.

    As a user, you might find it convenient to set the calendar location
  variables for your usual physical location in your @file{.emacs} file.
--- 604,611 ----
  @code{calendar-standard-time-zone-name} and
  @code{calendar-daylight-time-zone-name} are the abbreviations used in
  your time zone.  Emacs displays the times of sunrise and sunset
! @emph{corrected for daylight saving time}.  @xref{Daylight Saving},
! for how daylight saving time is determined.

    As a user, you might find it convenient to set the calendar location
  variables for your usual physical location in your @file{.emacs} file.
***************
*** 646,654 ****
  year.

    The dates and times given for the phases of the moon are given in
! local time (corrected for daylight savings, when appropriate); but if
  the variable @code{calendar-time-zone} is void, Coordinated Universal
! Time (the Greenwich time zone) is used.  @xref{Daylight Savings}.

  @node Other Calendars
  @section Conversion To and From Other Calendars
--- 646,654 ----
  year.

    The dates and times given for the phases of the moon are given in
! local time (corrected for daylight saving, when appropriate); but if
  the variable @code{calendar-time-zone} is void, Coordinated Universal
! Time (the Greenwich time zone) is used.  @xref{Daylight Saving}.

  @node Other Calendars
  @section Conversion To and From Other Calendars
***************
*** 1553,1566 ****
  file, mark the relevant area, and call @code{icalendar-export-region}.
  In both cases the result is appended to the target file.

! @node Daylight Savings
! @section Daylight Savings Time
! @cindex daylight savings time

    Emacs understands the difference between standard time and daylight
! savings time---the times given for sunrise, sunset, solstices,
  equinoxes, and the phases of the moon take that into account.  The rules
! for daylight savings time vary from place to place and have also varied
  historically from year to year.  To do the job properly, Emacs needs to
  know which rules to use.

--- 1553,1566 ----
  file, mark the relevant area, and call @code{icalendar-export-region}.
  In both cases the result is appended to the target file.

! @node Daylight Saving
! @section Daylight Saving Time
! @cindex daylight saving time

    Emacs understands the difference between standard time and daylight
! saving time---the times given for sunrise, sunset, solstices,
  equinoxes, and the phases of the moon take that into account.  The rules
! for daylight saving time vary from place to place and have also varied
  historically from year to year.  To do the job properly, Emacs needs to
  know which rules to use.

***************
*** 1577,1588 ****

    These values should be Lisp expressions that refer to the variable
  @code{year}, and evaluate to the Gregorian date on which daylight
! savings time starts or (respectively) ends, in the form of a list
  @code{(@var{month} @var{day} @var{year})}.  The values should be
! @code{nil} if your area does not use daylight savings time.

    Emacs uses these expressions to determine the starting date of
! daylight savings time for the holiday list and for correcting times of
  day in the solar and lunar calculations.

    The values for Cambridge, Massachusetts are as follows:
--- 1577,1588 ----

    These values should be Lisp expressions that refer to the variable
  @code{year}, and evaluate to the Gregorian date on which daylight
! saving time starts or (respectively) ends, in the form of a list
  @code{(@var{month} @var{day} @var{year})}.  The values should be
! @code{nil} if your area does not use daylight saving time.

    Emacs uses these expressions to determine the starting date of
! daylight saving time for the holiday list and for correcting times of
  day in the solar and lunar calculations.

    The values for Cambridge, Massachusetts are as follows:
***************
*** 1595,1601 ****
  @noindent
  That is, the second 0th day (Sunday) of the third month (March) in
  the year specified by @code{year}, and the first Sunday of the eleventh month
! (November) of that year.  If daylight savings time were
  changed to start on October 1, you would set
  @code{calendar-daylight-savings-starts} to this:

--- 1595,1601 ----
  @noindent
  That is, the second 0th day (Sunday) of the third month (March) in
  the year specified by @code{year}, and the first Sunday of the eleventh month
! (November) of that year.  If daylight saving time were
  changed to start on October 1, you would set
  @code{calendar-daylight-savings-starts} to this:

***************
*** 1603,1615 ****
  (list 10 1 year)
  @end example

!   If there is no daylight savings time at your location, or if you want
  all times in standard time, set @code{calendar-daylight-savings-starts}
  and @code{calendar-daylight-savings-ends} to @code{nil}.

  @vindex calendar-daylight-time-offset
    The variable @code{calendar-daylight-time-offset} specifies the
! difference between daylight savings time and standard time, measured in
  minutes.  The value for Cambridge, Massachusetts is 60.

  @c @vindex calendar-daylight-savings-starts-time  too long!
--- 1603,1615 ----
  (list 10 1 year)
  @end example

!   If there is no daylight saving time at your location, or if you want
  all times in standard time, set @code{calendar-daylight-savings-starts}
  and @code{calendar-daylight-savings-ends} to @code{nil}.

  @vindex calendar-daylight-time-offset
    The variable @code{calendar-daylight-time-offset} specifies the
! difference between daylight saving time and standard time, measured in
  minutes.  The value for Cambridge, Massachusetts is 60.

  @c @vindex calendar-daylight-savings-starts-time  too long!
***************
*** 1617,1623 ****
    The two variables @code{calendar-daylight-savings-starts-time} and
  @code{calendar-daylight-savings-ends-time} specify the number of minutes
  after midnight local time when the transition to and from daylight
! savings time should occur.  For Cambridge, Massachusetts both variables'
  values are 120.

  @node Time Intervals
--- 1617,1623 ----
    The two variables @code{calendar-daylight-savings-starts-time} and
  @code{calendar-daylight-savings-ends-time} specify the number of minutes
  after midnight local time when the transition to and from daylight
! saving time should occur.  For Cambridge, Massachusetts both variables'
  values are 120.

  @node Time Intervals
*** ../emacs-cvs/man/emacs.texi 2007-03-15 23:55:07.000000000 +0100
--- ./man/emacs.texi    2007-03-12 09:56:32.000000000 +0100
***************
*** 812,818 ****
  * Diary::               Displaying events from your diary.
  * Appointments::      Reminders when it's time to do something.
  * Importing Diary::     Converting diary events to/from other formats.
! * Daylight Savings::    How to specify when daylight savings time is active.
  * Time Intervals::      Keeping track of time intervals.
  * Advanced Calendar/Diary Usage:: Advanced Calendar/Diary customization.

--- 812,818 ----
  * Diary::               Displaying events from your diary.
  * Appointments::      Reminders when it's time to do something.
  * Importing Diary::     Converting diary events to/from other formats.
! * Daylight Saving::     How to specify when daylight saving time is active.
  * Time Intervals::      Keeping track of time intervals.
  * Advanced Calendar/Diary Usage:: Advanced Calendar/Diary customization.

*** ../emacs-cvs/man/gnus.texi  2007-03-15 23:55:09.000000000 +0100
--- ./man/gnus.texi     2007-03-12 09:56:33.000000000 +0100
***************
*** 11799,11810 ****
  @cindex User-Agent

  This variable controls which information should be exposed in the
! User-Agent header.  It can be one of the symbols @code{gnus} (show only
! Gnus version), @code{emacs-gnus} (show only Emacs and Gnus versions),
! @code{emacs-gnus-config} (same as @code{emacs-gnus} plus system
! configuration), @code{emacs-gnus-type} (same as @code{emacs-gnus} plus
! system type) or a custom string.  If you set it to a string, be sure to
! use a valid format, see RFC 2616.

  @end table

--- 11799,11810 ----
  @cindex User-Agent

  This variable controls which information should be exposed in the
! User-Agent header.  It can be a list of symbols or a string.  Valid
! symbols are @code{gnus} (show Gnus version) and @code{emacs} (show Emacs
! version).  In addition to the Emacs version, you can add @code{codename}
! (show (S)XEmacs codename) or either @code{config} (show system
! configuration) or @code{type} (show system type).  If you set it to a
! string, be sure to use a valid format, see RFC 2616.

  @end table

*** ../emacs-cvs/src/ChangeLog  2007-03-15 23:55:10.000000000 +0100
--- ./src/ChangeLog     2007-03-12 22:19:37.000000000 +0100
***************
*** 1,3 ****
--- 1,21 ----
+ 2007-03-12  Andreas Schwab  <address@hidden>
+
+       * lisp.h: Declare check_obarray.
+
+       * process.c (Fdelete_process): Properly handle deletion of first
+       element of deleted_pid_list.
+       (create_process): Declare pid as pid_t.
+
+ 2007-03-12  Kim F. Storm  <address@hidden>
+
+       * process.c (sigchld_handler): Change type of pid to pid_t.
+       Scan deleted_pid_list explicitly to avoid using Fmember which don't
+       know about mark bits and make_fixnum_or_float which may malloc.
+       Reported by Andreas Schwab.
+
+       * keyboard.c (read_key_sequence): Store original event into keybuf
+       when replaying sequence with local keymap(s) from string.
+
  2007-03-11  Sam Steingold  <address@hidden>

        * process.c (sigchld_handler): Sleep before wait3 to avoid a busyloop.
*** ../emacs-cvs/src/ChangeLog.3        2007-03-15 23:55:11.000000000 +0100
--- ./src/ChangeLog.3   2007-03-12 09:56:34.000000000 +0100
***************
*** 5706,5712 ****
        HAVE_TIMEVAL is defined and NEED_TIME_H isn't.

        * systime.h: Note that the tz_dsttime field of the struct timezone
!       returned by gettimeofday doesn't say whether daylight savings is
        _currently- active; rather it specifies whether it is *ever*
        active.
        (EMACS_GET_TZ_OFFSET_AND_SAVINGS): Removed `savings_flag'
--- 5706,5712 ----
        HAVE_TIMEVAL is defined and NEED_TIME_H isn't.

        * systime.h: Note that the tz_dsttime field of the struct timezone
!       returned by gettimeofday doesn't say whether daylight saving is
        _currently- active; rather it specifies whether it is *ever*
        active.
        (EMACS_GET_TZ_OFFSET_AND_SAVINGS): Removed `savings_flag'
*** ../emacs-cvs/src/dired.c    2007-03-15 23:55:11.000000000 +0100
--- ./src/dired.c       2007-03-13 14:37:51.000000000 +0100
***************
*** 670,677 ****
          if (!NILP (predicate))
            {
              Lisp_Object decoded;
              decoded = Fexpand_file_name (DECODE_FILE (name), dirname);
!             if (NILP (call1 (predicate, decoded)))
                continue;
            }

--- 670,684 ----
          if (!NILP (predicate))
            {
              Lisp_Object decoded;
+             Lisp_Object val;
+             struct gcpro gcpro1;
+
+             GCPRO1 (name);
              decoded = Fexpand_file_name (DECODE_FILE (name), dirname);
!             val = call1 (predicate, decoded);
!             UNGCPRO;
!
!             if (NILP (val))
                continue;
            }

***************
*** 694,700 ****
              compare = min (bestmatchsize, len);
              p1 = SDATA (bestmatch);
              p2 = (unsigned char *) dp->d_name;
!             matchsize = scmp(p1, p2, compare);
              if (matchsize < 0)
                matchsize = compare;
              if (completion_ignore_case)
--- 701,707 ----
              compare = min (bestmatchsize, len);
              p1 = SDATA (bestmatch);
              p2 = (unsigned char *) dp->d_name;
!             matchsize = scmp (p1, p2, compare);
              if (matchsize < 0)
                matchsize = compare;
              if (completion_ignore_case)

-- 
Kim F. Storm <address@hidden> http://www.cua.dk





reply via email to

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