emacs-diffs
[Top][All Lists]
Advanced

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

[Emacs-diffs] trunk r114401: Merge from gnulib.


From: Paul Eggert
Subject: [Emacs-diffs] trunk r114401: Merge from gnulib.
Date: Thu, 19 Sep 2013 21:40:13 +0000
User-agent: Bazaar (2.6b2)

------------------------------------------------------------
revno: 114401
revision-id: address@hidden
parent: address@hidden
committer: Paul Eggert <address@hidden>
branch nick: trunk
timestamp: Thu 2013-09-19 14:40:08 -0700
message:
  Merge from gnulib.
  
  This incorporates the following changes:
  2013-09-19 stdio: OS X port of putc_unlocked + extern inline
  2013-09-19 signal: OS X port of sigaddset etc. + extern inline
  2013-09-19 extern-inline: do not always suppress extern inline on OS X
  2013-09-17 getgroups: statement without effect
  2013-08-28 headers: check that _GL_INLINE_HEADER_BEGIN is defined
modified:
  ChangeLog                      changelog-20091113204419-o5vbwnq5f7feedwu-1538
  doc/misc/texinfo.tex           
texinfo.tex-20091113204419-o5vbwnq5f7feedwu-6323
  lib/acl-internal.h             aclinternal.h-20130507213215-pml0dup47hoa2jez-2
  lib/binary-io.h                binaryio.h-20130709170446-amc57a0k99prig27-2
  lib/dtotimespec.c              dtotimespec.c-20120622212453-poe1wduuhk4mz8vy-1
  lib/execinfo.in.h              execinfo.in.h-20120825042647-m2tcqah3yasc3v41-2
  lib/getgroups.c                getgroups.c-20121114044639-6884lvvwce8v0sgb-5
  lib/openat.h                   openat.h-20130201062823-w76pgdl107cutopz-7
  lib/signal.in.h                signal.in.h-20110706175601-0s7lvj1px2jwqvv1-1
  lib/stat-time.h                stattime.h-20120622212453-poe1wduuhk4mz8vy-5
  lib/stdio.in.h                 stdio.in.h-20110321045633-f7wcwshh1jfomcch-1
  lib/timespec-add.c             timespecadd.c-20120622212453-poe1wduuhk4mz8vy-8
  lib/timespec-sub.c             timespecsub.c-20120622212453-poe1wduuhk4mz8vy-9
  lib/timespec.h                 timespec.h-20120622212453-poe1wduuhk4mz8vy-10
  lib/u64.h                      u64.h-20110620031501-jjxxix0cu3267g0e-1
  lib/unistd.in.h                unistd.in.h-20110109071402-7rc382anf65r2ire-6
  lib/utimens.c                  utimens.c-20120622212453-poe1wduuhk4mz8vy-11
  lib/utimens.h                  utimens.h-20120622212453-poe1wduuhk4mz8vy-12
  m4/extern-inline.m4            
externinline.m4-20120802044541-is9k4clv7vxbxmzw-4
=== modified file 'ChangeLog'
--- a/ChangeLog 2013-09-19 08:43:01 +0000
+++ b/ChangeLog 2013-09-19 21:40:08 +0000
@@ -1,3 +1,12 @@
+2013-09-19  Paul Eggert  <address@hidden>
+
+       Merge from gnulib, incorporating:
+       2013-09-19 stdio: OS X port of putc_unlocked + extern inline
+       2013-09-19 signal: OS X port of sigaddset etc. + extern inline
+       2013-09-19 extern-inline: do not always suppress extern inline on OS X
+       2013-09-17 getgroups: statement without effect
+       2013-08-28 headers: check that _GL_INLINE_HEADER_BEGIN is defined
+
 2013-09-19  Eli Zaretskii  <address@hidden>
 
        * configure.ac <srcdir> [MINGW32]: Make sure the value of 'srcdir'

=== modified file 'doc/misc/texinfo.tex'
--- a/doc/misc/texinfo.tex      2013-08-26 22:17:31 +0000
+++ b/doc/misc/texinfo.tex      2013-09-19 21:40:08 +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{2013-08-20.10}
+\def\texinfoversion{2013-09-11.11}
 %
 % Copyright 1985, 1986, 1988, 1990, 1991, 1992, 1993, 1994, 1995,
 % 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006,
@@ -322,10 +322,13 @@
   %
   % Do this outside of the \shipout so @code etc. will be expanded in
   % the headline as they should be, not taken literally (outputting ''code).
+  \def\commmonheadfootline{\let\hsize=\pagewidth \texinfochars}
+  %
   \ifodd\pageno \getoddheadingmarks \else \getevenheadingmarks \fi
-  \setbox\headlinebox = \vbox{\let\hsize=\pagewidth \makeheadline}%
+  \global\setbox\headlinebox = \vbox{\commmonheadfootline \makeheadline}%
+  %
   \ifodd\pageno \getoddfootingmarks \else \getevenfootingmarks \fi
-  \setbox\footlinebox = \vbox{\let\hsize=\pagewidth \makefootline}%
+  \global\setbox\footlinebox = \vbox{\commmonheadfootline \makefootline}%
   %
   {%
     % Have to do this stuff outside the \shipout because we want it to
@@ -2891,6 +2894,15 @@
   \def\inlinefmtname{#1}%
   \ifx\inlinefmtname\outfmtnametex \ignorespaces #2\fi
 }
+% 
+% @inlinefmtifelse{FMTNAME,THEN-TEXT,ELSE-TEXT} expands THEN-TEXT if
+% FMTNAME is tex, else ELSE-TEXT.
+\long\def\inlinefmtifelse#1{\doinlinefmtifelse #1,,,\finish}
+\long\def\doinlinefmtifelse#1,#2,#3,#4,\finish{%
+  \def\inlinefmtname{#1}%
+  \ifx\inlinefmtname\outfmtnametex \ignorespaces #2\else \ignorespaces #3\fi
+}
+%
 % For raw, must switch into @tex before parsing the argument, to avoid
 % setting catcodes prematurely.  Doing it this way means that, for
 % example, @inlineraw{html, foo{bar} gets a parse error instead of being
@@ -2907,6 +2919,23 @@
   \endgroup % close group opened by \tex.
 }
 
+% @inlineifset{VAR, TEXT} expands TEXT if VAR is @set.
+%
+\long\def\inlineifset#1{\doinlineifset #1,\finish}
+\long\def\doinlineifset#1,#2,\finish{%
+  \def\inlinevarname{#1}%
+  \expandafter\ifx\csname SET\inlinevarname\endcsname\relax
+  \else\ignorespaces#2\fi
+}
+
+% @inlineifclear{VAR, TEXT} expands TEXT if VAR is not @set.
+%
+\long\def\inlineifclear#1{\doinlineifclear #1,\finish}
+\long\def\doinlineifclear#1,#2,\finish{%
+  \def\inlinevarname{#1}%
+  \expandafter\ifx\csname SET\inlinevarname\endcsname\relax \ignorespaces#2\fi
+}
+
 
 \message{glyphs,}
 % and logos.
@@ -4202,7 +4231,7 @@
 \def\value{\begingroup\makevalueexpandable\valuexxx}
 \def\valuexxx#1{\expandablevalue{#1}\endgroup}
 {
-  \catcode`\- = \active \catcode`\_ = \active
+  \catcode`\-=\active \catcode`\_=\active
   %
   \gdef\makevalueexpandable{%
     \let\value = \expandablevalue
@@ -4222,7 +4251,12 @@
 % variable's value contains other Texinfo commands, it's almost certain
 % it will fail (although perhaps we could fix that with sufficient work
 % to do a one-level expansion on the result, instead of complete).
-%
+% 
+% Unfortunately, this has the consequence that when _ is in the *value*
+% of an @set, it does not print properly in the roman fonts (get the cmr
+% dot accent at position 126 instead).  No fix comes to mind, and it's
+% been this way since 2003 or earlier, so just ignore it.
+% 
 \def\expandablevalue#1{%
   \expandafter\ifx\csname SET#1\endcsname\relax
     {[No value for ``#1'']}%
@@ -6276,8 +6310,8 @@
   \catcode `\|=\other
   \catcode `\<=\other
   \catcode `\>=\other
-  \catcode`\`=\other
-  \catcode`\'=\other
+  \catcode `\`=\other
+  \catcode `\'=\other
   \escapechar=`\\
   %
   % ' is active in math mode (mathcode"8000).  So reset it, and all our
@@ -6301,7 +6335,7 @@
   \let\/=\ptexslash
   \let\*=\ptexstar
   \let\t=\ptext
-  \expandafter \let\csname top\endcsname=\ptextop  % outer
+  \expandafter \let\csname top\endcsname=\ptextop  % we've made it outer
   \let\frenchspacing=\plainfrenchspacing
   %
   \def\endldots{\mathinner{\ldots\ldots\ldots\ldots}}%
@@ -9944,11 +9978,9 @@
 \catcode`\"=\active
 \def\activedoublequote{{\tt\char34}}
 \let"=\activedoublequote
-\catcode`\~=\active
-\def~{{\tt\char126}}
+\catcode`\~=\active \def\activetilde{{\tt\char126}} \let~ = \activetilde
 \chardef\hat=`\^
-\catcode`\^=\active
-\def^{{\tt \hat}}
+\catcode`\^=\active \def\activehat{{\tt \hat}} \let^ = \activehat
 
 \catcode`\_=\active
 \def_{\ifusingtt\normalunderscore\_}
@@ -9958,16 +9990,26 @@
 
 \catcode`\|=\active
 \def|{{\tt\char124}}
+
 \chardef \less=`\<
-\catcode`\<=\active
-\def<{{\tt \less}}
+\catcode`\<=\active \def\activeless{{\tt \less}}\let< = \activeless
 \chardef \gtr=`\>
-\catcode`\>=\active
-\def>{{\tt \gtr}}
-\catcode`\+=\active
-\def+{{\tt \char 43}}
-\catcode`\$=\active
-\def${\ifusingit{{\sl\$}}\normaldollar}%$ font-lock fix
+\catcode`\>=\active \def\activegtr{{\tt \gtr}}\let> = \activegtr
+\catcode`\+=\active \def+{{\tt \char 43}}
+\catcode`\$=\active \def${\ifusingit{{\sl\$}}\normaldollar}%$ font-lock fix
+
+% used for headline/footline in the output routine, in case the page
+% breaks in the middle of an @tex block.
+\def\texinfochars{%
+  \let< = \activeless
+  \let> = \activegtr
+  \let~ = \activetilde 
+  \let^ = \activehat
+  \markupsetuplqdefault \markupsetuprqdefault 
+  \let\b = \strong
+  \let\i = \smartitalic
+  % in principle, all other definitions in \tex have to be undone too.
+}
 
 % If a .fmt file is being used, characters that might appear in a file
 % name cannot be active until we have parsed the command line.

=== modified file 'lib/acl-internal.h'
--- a/lib/acl-internal.h        2013-05-07 21:34:03 +0000
+++ b/lib/acl-internal.h        2013-09-19 21:40:08 +0000
@@ -60,6 +60,9 @@
 # define fchmod(fd, mode) (-1)
 #endif
 
+#ifndef _GL_INLINE_HEADER_BEGIN
+ #error "Please include config.h first."
+#endif
 _GL_INLINE_HEADER_BEGIN
 #ifndef ACL_INTERNAL_INLINE
 # define ACL_INTERNAL_INLINE _GL_INLINE

=== modified file 'lib/binary-io.h'
--- a/lib/binary-io.h   2013-07-09 17:16:21 +0000
+++ b/lib/binary-io.h   2013-09-19 21:40:08 +0000
@@ -25,6 +25,9 @@
    so we include it here first.  */
 #include <stdio.h>
 
+#ifndef _GL_INLINE_HEADER_BEGIN
+ #error "Please include config.h first."
+#endif
 _GL_INLINE_HEADER_BEGIN
 #ifndef BINARY_IO_INLINE
 # define BINARY_IO_INLINE _GL_INLINE

=== modified file 'lib/dtotimespec.c'
--- a/lib/dtotimespec.c 2013-01-01 09:11:05 +0000
+++ b/lib/dtotimespec.c 2013-09-19 21:40:08 +0000
@@ -29,41 +29,31 @@
 struct timespec
 dtotimespec (double sec)
 {
-  enum { BILLION = 1000 * 1000 * 1000 };
   double min_representable = TYPE_MINIMUM (time_t);
   double max_representable =
-    ((TYPE_MAXIMUM (time_t) * (double) BILLION + (BILLION - 1))
-     / BILLION);
-  struct timespec r;
+    ((TYPE_MAXIMUM (time_t) * (double) TIMESPEC_RESOLUTION
+      + (TIMESPEC_RESOLUTION - 1))
+     / TIMESPEC_RESOLUTION);
 
   if (! (min_representable < sec))
-    {
-      r.tv_sec = TYPE_MINIMUM (time_t);
-      r.tv_nsec = 0;
-    }
+    return make_timespec (TYPE_MINIMUM (time_t), 0);
   else if (! (sec < max_representable))
-    {
-      r.tv_sec = TYPE_MAXIMUM (time_t);
-      r.tv_nsec = BILLION - 1;
-    }
+    return make_timespec (TYPE_MAXIMUM (time_t), TIMESPEC_RESOLUTION - 1);
   else
     {
       time_t s = sec;
-      double frac = BILLION * (sec - s);
+      double frac = TIMESPEC_RESOLUTION * (sec - s);
       long ns = frac;
       ns += ns < frac;
-      s += ns / BILLION;
-      ns %= BILLION;
+      s += ns / TIMESPEC_RESOLUTION;
+      ns %= TIMESPEC_RESOLUTION;
 
       if (ns < 0)
         {
           s--;
-          ns += BILLION;
+          ns += TIMESPEC_RESOLUTION;
         }
 
-      r.tv_sec = s;
-      r.tv_nsec = ns;
+      return make_timespec (s, ns);
     }
-
-  return r;
 }

=== modified file 'lib/execinfo.in.h'
--- a/lib/execinfo.in.h 2013-01-01 09:11:05 +0000
+++ b/lib/execinfo.in.h 2013-09-19 21:40:08 +0000
@@ -20,6 +20,9 @@
 #ifndef _GL_EXECINFO_H
 #define _GL_EXECINFO_H
 
+#ifndef _GL_INLINE_HEADER_BEGIN
+ #error "Please include config.h first."
+#endif
 _GL_INLINE_HEADER_BEGIN
 #ifndef _GL_EXECINFO_INLINE
 # define _GL_EXECINFO_INLINE _GL_INLINE

=== modified file 'lib/getgroups.c'
--- a/lib/getgroups.c   2013-01-02 16:37:04 +0000
+++ b/lib/getgroups.c   2013-09-19 21:40:08 +0000
@@ -86,7 +86,7 @@
         }
       saved_errno = errno;
       free (gbuf);
-      errno == saved_errno;
+      errno = saved_errno;
       return result;
     }
 

=== modified file 'lib/openat.h'
--- a/lib/openat.h      2013-02-01 06:30:51 +0000
+++ b/lib/openat.h      2013-09-19 21:40:08 +0000
@@ -26,6 +26,9 @@
 #include <unistd.h>
 #include <stdbool.h>
 
+#ifndef _GL_INLINE_HEADER_BEGIN
+ #error "Please include config.h first."
+#endif
 _GL_INLINE_HEADER_BEGIN
 
 #if !HAVE_OPENAT

=== modified file 'lib/signal.in.h'
--- a/lib/signal.in.h   2013-01-01 09:11:05 +0000
+++ b/lib/signal.in.h   2013-09-19 21:40:08 +0000
@@ -195,6 +195,20 @@
 
 # endif
 
+/* When also using extern inline, suppress the use of static inline in
+   standard headers of problematic Apple configurations, as Libc at
+   least through Libc-825.26 (2013-04-09) mishandles it; see, e.g.,
+   <http://lists.gnu.org/archive/html/bug-gnulib/2012-12/msg00023.html>.
+   Perhaps Apple will fix this some day.  */
+#if (defined _GL_EXTERN_INLINE_IN_USE && defined __APPLE__ \
+     && (defined __i386__ || defined __x86_64__))
+# undef sigaddset
+# undef sigdelset
+# undef sigemptyset
+# undef sigfillset
+# undef sigismember
+#endif
+
 /* Test whether a given signal is contained in a signal set.  */
 # if @HAVE_POSIX_SIGNALBLOCKING@
 /* This function is defined as a macro on Mac OS X.  */

=== modified file 'lib/stat-time.h'
--- a/lib/stat-time.h   2013-01-01 09:11:05 +0000
+++ b/lib/stat-time.h   2013-09-19 21:40:08 +0000
@@ -23,6 +23,9 @@
 #include <sys/stat.h>
 #include <time.h>
 
+#ifndef _GL_INLINE_HEADER_BEGIN
+ #error "Please include config.h first."
+#endif
 _GL_INLINE_HEADER_BEGIN
 #ifndef _GL_STAT_TIME_INLINE
 # define _GL_STAT_TIME_INLINE _GL_INLINE

=== modified file 'lib/stdio.in.h'
--- a/lib/stdio.in.h    2013-05-16 07:10:39 +0000
+++ b/lib/stdio.in.h    2013-09-19 21:40:08 +0000
@@ -124,6 +124,15 @@
 #define _GL_STDIO_STRINGIZE(token) #token
 #define _GL_STDIO_MACROEXPAND_AND_STRINGIZE(token) _GL_STDIO_STRINGIZE(token)
 
+/* When also using extern inline, suppress the use of static inline in
+   standard headers of problematic Apple configurations, as Libc at
+   least through Libc-825.26 (2013-04-09) mishandles it; see, e.g.,
+   <http://lists.gnu.org/archive/html/bug-gnulib/2012-12/msg00023.html>.
+   Perhaps Apple will fix this some day.  */
+#if (defined _GL_EXTERN_INLINE_IN_USE && defined __APPLE__ \
+     && defined __GNUC__ && defined __STDC__)
+# undef putc_unlocked
+#endif
 
 #if @GNULIB_DPRINTF@
 # if @REPLACE_DPRINTF@

=== modified file 'lib/timespec-add.c'
--- a/lib/timespec-add.c        2013-01-01 09:11:05 +0000
+++ b/lib/timespec-add.c        2013-09-19 21:40:08 +0000
@@ -28,11 +28,10 @@
 struct timespec
 timespec_add (struct timespec a, struct timespec b)
 {
-  struct timespec r;
   time_t rs = a.tv_sec;
   time_t bs = b.tv_sec;
   int ns = a.tv_nsec + b.tv_nsec;
-  int nsd = ns - 1000000000;
+  int nsd = ns - TIMESPEC_RESOLUTION;
   int rns = ns;
 
   if (0 <= nsd)
@@ -65,7 +64,5 @@
   else
     rs += bs;
 
-  r.tv_sec = rs;
-  r.tv_nsec = rns;
-  return r;
+  return make_timespec (rs, rns);
 }

=== modified file 'lib/timespec-sub.c'
--- a/lib/timespec-sub.c        2013-01-01 09:11:05 +0000
+++ b/lib/timespec-sub.c        2013-09-19 21:40:08 +0000
@@ -29,7 +29,6 @@
 struct timespec
 timespec_sub (struct timespec a, struct timespec b)
 {
-  struct timespec r;
   time_t rs = a.tv_sec;
   time_t bs = b.tv_sec;
   int ns = a.tv_nsec - b.tv_nsec;
@@ -37,7 +36,7 @@
 
   if (ns < 0)
     {
-      rns = ns + 1000000000;
+      rns = ns + TIMESPEC_RESOLUTION;
       if (rs == TYPE_MINIMUM (time_t))
         {
           if (bs <= 0)
@@ -65,7 +64,5 @@
   else
     rs -= bs;
 
-  r.tv_sec = rs;
-  r.tv_nsec = rns;
-  return r;
+  return make_timespec (rs, rns);
 }

=== modified file 'lib/timespec.h'
--- a/lib/timespec.h    2013-08-27 18:47:55 +0000
+++ b/lib/timespec.h    2013-09-19 21:40:08 +0000
@@ -21,6 +21,9 @@
 
 # include <time.h>
 
+#ifndef _GL_INLINE_HEADER_BEGIN
+ #error "Please include config.h first."
+#endif
 _GL_INLINE_HEADER_BEGIN
 #ifndef _GL_TIMESPEC_INLINE
 # define _GL_TIMESPEC_INLINE _GL_INLINE

=== modified file 'lib/u64.h'
--- a/lib/u64.h 2013-01-01 09:11:05 +0000
+++ b/lib/u64.h 2013-09-19 21:40:08 +0000
@@ -19,6 +19,9 @@
 
 #include <stdint.h>
 
+#ifndef _GL_INLINE_HEADER_BEGIN
+ #error "Please include config.h first."
+#endif
 _GL_INLINE_HEADER_BEGIN
 #ifndef _GL_U64_INLINE
 # define _GL_U64_INLINE _GL_INLINE

=== modified file 'lib/unistd.in.h'
--- a/lib/unistd.in.h   2013-03-13 00:38:42 +0000
+++ b/lib/unistd.in.h   2013-09-19 21:40:08 +0000
@@ -116,6 +116,9 @@
 # include <getopt.h>
 #endif
 
+#ifndef _GL_INLINE_HEADER_BEGIN
+ #error "Please include config.h first."
+#endif
 _GL_INLINE_HEADER_BEGIN
 #ifndef _GL_UNISTD_INLINE
 # define _GL_UNISTD_INLINE _GL_INLINE

=== modified file 'lib/utimens.c'
--- a/lib/utimens.c     2013-05-06 13:37:42 +0000
+++ b/lib/utimens.c     2013-09-19 21:40:08 +0000
@@ -90,10 +90,12 @@
   assert (timespec);
   if ((timespec[0].tv_nsec != UTIME_NOW
        && timespec[0].tv_nsec != UTIME_OMIT
-       && (timespec[0].tv_nsec < 0 || 1000000000 <= timespec[0].tv_nsec))
+       && ! (0 <= timespec[0].tv_nsec
+             && timespec[0].tv_nsec < TIMESPEC_RESOLUTION))
       || (timespec[1].tv_nsec != UTIME_NOW
           && timespec[1].tv_nsec != UTIME_OMIT
-          && (timespec[1].tv_nsec < 0 || 1000000000 <= timespec[1].tv_nsec)))
+          && ! (0 <= timespec[1].tv_nsec
+                && timespec[1].tv_nsec < TIMESPEC_RESOLUTION)))
     {
       errno = EINVAL;
       return -1;

=== modified file 'lib/utimens.h'
--- a/lib/utimens.h     2013-01-01 09:11:05 +0000
+++ b/lib/utimens.h     2013-09-19 21:40:08 +0000
@@ -26,6 +26,9 @@
 # include <fcntl.h>
 # include <sys/stat.h>
 
+#ifndef _GL_INLINE_HEADER_BEGIN
+ #error "Please include config.h first."
+#endif
 _GL_INLINE_HEADER_BEGIN
 #ifndef _GL_UTIMENS_INLINE
 # define _GL_UTIMENS_INLINE _GL_INLINE

=== modified file 'm4/extern-inline.m4'
--- a/m4/extern-inline.m4       2013-07-01 23:43:19 +0000
+++ b/m4/extern-inline.m4       2013-09-19 21:40:08 +0000
@@ -19,20 +19,28 @@
    'reference to static identifier "f" in extern inline function'.
    This bug was observed with Sun C 5.12 SunOS_i386 2011/11/16.
 
-   Suppress the use of extern inline on Apple's platforms, as Libc at least
-   through Libc-825.26 (2013-04-09) is incompatible with it; see, e.g.,
+   Suppress the use of extern inline on problematic Apple configurations, as
+   Libc at least through Libc-825.26 (2013-04-09) mishandles it; see, e.g.,
    <http://lists.gnu.org/archive/html/bug-gnulib/2012-12/msg00023.html>.
    Perhaps Apple will fix this some day.  */
+#if (defined __APPLE__ \
+     && ((! defined _DONT_USE_CTYPE_INLINE_ \
+          && (defined __GNUC__ || defined __cplusplus)) \
+         || (defined _FORTIFY_SOURCE && 0 < _FORTIFY_SOURCE \
+             && defined __GNUC__ && ! defined __cplusplus)))
+# define _GL_EXTERN_INLINE_APPLE_BUG
+#endif
 #if ((__GNUC__ \
       ? defined __GNUC_STDC_INLINE__ && __GNUC_STDC_INLINE__ \
       : (199901L <= __STDC_VERSION__ \
          && !defined __HP_cc \
          && !(defined __SUNPRO_C && __STDC__))) \
-     && !defined __APPLE__)
+     && !defined _GL_EXTERN_INLINE_APPLE_BUG)
 # define _GL_INLINE inline
 # define _GL_EXTERN_INLINE extern inline
+# define _GL_EXTERN_INLINE_IN_USE
 #elif (2 < __GNUC__ + (7 <= __GNUC_MINOR__) && !defined __STRICT_ANSI__ \
-       && !defined __APPLE__)
+       && !defined _GL_EXTERN_INLINE_APPLE_BUG)
 # if __GNUC_GNU_INLINE__
    /* __gnu_inline__ suppresses a GCC 4.2 diagnostic.  */
 #  define _GL_INLINE extern inline __attribute__ ((__gnu_inline__))
@@ -40,6 +48,7 @@
 #  define _GL_INLINE extern inline
 # endif
 # define _GL_EXTERN_INLINE extern
+# define _GL_EXTERN_INLINE_IN_USE
 #else
 # define _GL_INLINE static _GL_UNUSED
 # define _GL_EXTERN_INLINE static _GL_UNUSED


reply via email to

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