2013-09-19 Paul Eggert <eggert@cs.ucla.edu>
+ signal: OS X port of sigaddset etc. + extern inline
+ * lib/signal.in.h (sigaddset, sigdelset, sigemptyset, sigfillset)
+ (sigismember): #undef on problematic Apple platforms.
+ * doc/posix-functions/sigaddset.texi:
+ * doc/posix-functions/sigdelset.texi:
+ * doc/posix-functions/sigemptyset.texi:
+ * doc/posix-functions/sigfillset.texi:
+ * doc/posix-functions/sigismember.texi:
+ Document this portability problem.
+
extern-inline: do not always suppress extern inline on OS X
* m4/extern-inline.m4 (gl_EXTERN_INLINE): Suppress the use of
extern inline on Apple only if the particular compile-time
@item
This function is missing on some platforms:
mingw, MSVC 9.
+@item
+This function cannot be called from plain inline or extern inline functions
+on some platforms:
+OS X 10.8.
@end itemize
Portability problems not fixed by Gnulib:
@item
This function is missing on some platforms:
mingw, MSVC 9.
+@item
+This function cannot be called from plain inline or extern inline functions
+on some platforms:
+OS X 10.8.
@end itemize
Portability problems not fixed by Gnulib:
@item
This function is missing on some platforms:
mingw, MSVC 9.
+@item
+This function cannot be called from plain inline or extern inline functions
+on some platforms:
+OS X 10.8.
@end itemize
Portability problems not fixed by Gnulib:
@item
This function is missing on some platforms:
mingw, MSVC 9.
+@item
+This function cannot be called from plain inline or extern inline functions
+on some platforms:
+OS X 10.8.
@end itemize
Portability problems not fixed by Gnulib:
@item
This function is missing on some platforms:
mingw, MSVC 9.
+@item
+This function cannot be called from plain inline or extern inline functions
+on some platforms:
+OS X 10.8.
@end itemize
Portability problems not fixed by Gnulib:
# 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. */