emacs-diffs
[Top][All Lists]
Advanced

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

[Emacs-diffs] emacs-24 r116862: Merge from gnulib.


From: Paul Eggert
Subject: [Emacs-diffs] emacs-24 r116862: Merge from gnulib.
Date: Wed, 26 Mar 2014 04:16:16 +0000
User-agent: Bazaar (2.6b2)

------------------------------------------------------------
revno: 116862
revision-id: address@hidden
parent: address@hidden
committer: Paul Eggert <address@hidden>
branch nick: emacs-24
timestamp: Tue 2014-03-25 21:16:13 -0700
message:
  Merge from gnulib.
  
  This incorporates:
  2014-03-26 strftime: wrap macros in "do {...} while(0)"
  * lib/strftime.c, doc/misc/texinfo.tex: Update from gnulib.
modified:
  ChangeLog                      changelog-20091113204419-o5vbwnq5f7feedwu-1538
  doc/misc/ChangeLog             changelog-20091113204419-o5vbwnq5f7feedwu-6331
  doc/misc/texinfo.tex           
texinfo.tex-20091113204419-o5vbwnq5f7feedwu-6323
  lib/strftime.c                 strftime.c-20091113204419-o5vbwnq5f7feedwu-1170
=== modified file 'ChangeLog'
--- a/ChangeLog 2014-03-07 18:57:11 +0000
+++ b/ChangeLog 2014-03-26 04:16:13 +0000
@@ -1,3 +1,9 @@
+2014-03-26  Paul Eggert  <address@hidden>
+
+       Merge from gnulib, incorporating:
+       2014-03-26 strftime: wrap macros in "do {...} while(0)"
+       * lib/strftime.c: Update from gnulib.
+
 2014-03-07  Paul Eggert  <address@hidden>
 
        Merge from gnulib, incorporating:

=== modified file 'doc/misc/ChangeLog'
--- a/doc/misc/ChangeLog        2014-03-24 08:09:42 +0000
+++ b/doc/misc/ChangeLog        2014-03-26 04:16:13 +0000
@@ -1,3 +1,7 @@
+2014-03-26  Paul Eggert  <address@hidden>
+
+       * texinfo.tex: Update from gnulib.
+
 2014-03-24  Michael Albinus  <address@hidden>
 
        * tramp.texi (Frequently Asked Questions): Add fish shell settings.

=== modified file 'doc/misc/texinfo.tex'
--- a/doc/misc/texinfo.tex      2014-02-24 07:12:42 +0000
+++ b/doc/misc/texinfo.tex      2014-03-26 04:16:13 +0000
@@ -3,7 +3,7 @@
 % Load plain if necessary, i.e., if running under initex.
 \expandafter\ifx\csname fmtname\endcsname\relax\input plain\fi
 %
-\def\texinfoversion{2014-02-16.16}
+\def\texinfoversion{2014-03-17.07}
 %
 % Copyright 1985, 1986, 1988, 1990, 1991, 1992, 1993, 1994, 1995,
 % 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006,
@@ -3935,19 +3935,23 @@
 }
 
 % multitable-only commands.
-%
-% @headitem starts a heading row, which we typeset in bold.
-% Assignments have to be global since we are inside the implicit group
-% of an alignment entry.  \everycr resets \everytab so we don't have to
+% 
+% @headitem starts a heading row, which we typeset in bold.  Assignments
+% have to be global since we are inside the implicit group of an
+% alignment entry.  \everycr below resets \everytab so we don't have to
 % undo it ourselves.
 \def\headitemfont{\b}% for people to use in the template row; not changeable
 \def\headitem{%
   \checkenv\multitable
   \crcr
+  \gdef\headitemcrhook{\nobreak}% attempt to avoid page break after headings
   \global\everytab={\bf}% can't use \headitemfont since the parsing differs
   \the\everytab % for the first item
 }%
 %
+% default for tables with no headings.
+\let\headitemcrhook=\relax
+%
 % A \tab used to include \hskip1sp.  But then the space in a template
 % line is not enough.  That is bad.  So let's go back to just `&' until
 % we again encounter the problem the 1sp was intended to solve.
@@ -3978,15 +3982,15 @@
   %
   \everycr = {%
     \noalign{%
-      \global\everytab={}%
+      \global\everytab={}% Reset from possible headitem.
       \global\colcount=0 % Reset the column counter.
-      % Check for saved footnotes, etc.
+      %
+      % Check for saved footnotes, etc.:
       \checkinserts
-      % Keeps underfull box messages off when table breaks over pages.
-      %\filbreak
-       % Maybe so, but it also creates really weird page breaks when the
-       % table breaks over pages. Wouldn't \vfil be better?  Wait until the
-       % problem manifests itself, so it can be fixed for real --karl.
+      %
+      % Perhaps a \nobreak, then reset:
+      \headitemcrhook
+      \global\let\headitemcrhook=\relax
     }%
   }%
   %

=== modified file 'lib/strftime.c'
--- a/lib/strftime.c    2014-01-01 07:43:34 +0000
+++ b/lib/strftime.c    2014-03-26 04:16:13 +0000
@@ -681,24 +681,44 @@
       switch (format_char)
         {
 #define DO_NUMBER(d, v) \
-          digits = d;                                                         \
-          number_value = v; goto do_number
+          do                                                                  \
+            {                                                                 \
+              digits = d;                                                     \
+              number_value = v;                                               \
+              goto do_number;                                                 \
+            }                                                                 \
+          while (0)
 #define DO_SIGNED_NUMBER(d, negative, v) \
-          digits = d;                                                         \
-          negative_number = negative;                                         \
-          u_number_value = v; goto do_signed_number
+          do                                                                  \
+            {                                                                 \
+              digits = d;                                                     \
+              negative_number = negative;                                     \
+              u_number_value = v;                                             \
+              goto do_signed_number;                                          \
+            }                                                                 \
+          while (0)
 
           /* The mask is not what you might think.
              When the ordinal i'th bit is set, insert a colon
              before the i'th digit of the time zone representation.  */
 #define DO_TZ_OFFSET(d, negative, mask, v) \
-          digits = d;                                                         \
-          negative_number = negative;                                         \
-          tz_colon_mask = mask;                                               \
-          u_number_value = v; goto do_tz_offset
+          do                                                                  \
+            {                                                                 \
+              digits = d;                                                     \
+              negative_number = negative;                                     \
+              tz_colon_mask = mask;                                           \
+              u_number_value = v;                                             \
+              goto do_tz_offset;                                              \
+            }                                                                 \
+          while (0)
 #define DO_NUMBER_SPACEPAD(d, v) \
-          digits = d;                                                         \
-          number_value = v; goto do_number_spacepad
+          do                                                                  \
+            {                                                                 \
+              digits = d;                                                     \
+              number_value = v;                                               \
+              goto do_number_spacepad;                                        \
+            }                                                                 \
+          while (0)
 
         case L_('%'):
           if (modifier != 0)
@@ -1265,9 +1285,9 @@
             }
           if (modifier == L_('O'))
             goto bad_format;
-          else
-            DO_SIGNED_NUMBER (4, tp->tm_year < -TM_YEAR_BASE,
-                              tp->tm_year + (unsigned int) TM_YEAR_BASE);
+
+          DO_SIGNED_NUMBER (4, tp->tm_year < -TM_YEAR_BASE,
+                            tp->tm_year + (unsigned int) TM_YEAR_BASE);
 
         case L_('y'):
           if (modifier == L_('E'))


reply via email to

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