From: Bruno Haible Date: Sun, 21 Mar 2010 00:45:51 +0000 (+0100) Subject: signal: Undefine macro definitions in C++ mode. X-Git-Tag: v0.1~4465 X-Git-Url: http://erislabs.org.uk/gitweb/?a=commitdiff_plain;h=40218e27c3251dd94dfc2a7bfecd14d4148d782b;p=gnulib.git signal: Undefine macro definitions in C++ mode. --- diff --git a/ChangeLog b/ChangeLog index 23c4f63d0..d66242510 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,13 @@ 2010-03-20 Bruno Haible + signal: Undefine macro definitions in C++ mode. + * lib/signal.in.h (sigismember, sigemptyset, sigaddset, sigdelset, + sigfillset): Undefine macro definitions from the system header in C++ + mode. + Reported by John W. Eaton . + +2010-03-20 Bruno Haible + Ensure no #include statements inside extern "C" { ... }. * lib/obstack.h: Shrink extern "C" { ... } region so that it does not contain #include statements. diff --git a/lib/signal.in.h b/lib/signal.in.h index 4ee74062e..620148d3a 100644 --- a/lib/signal.in.h +++ b/lib/signal.in.h @@ -85,7 +85,12 @@ typedef int verify_NSIG_constraint[2 * (NSIG <= 32) - 1]; # endif /* Test whether a given signal is contained in a signal set. */ -# if !@HAVE_POSIX_SIGNALBLOCKING@ +# if @HAVE_POSIX_SIGNALBLOCKING@ +/* This function is defined as a macro on MacOS X. */ +# if defined __cplusplus && defined GNULIB_NAMESPACE +# undef sigismember +# endif +# else _GL_FUNCDECL_SYS (sigismember, int, (const sigset_t *set, int sig) _GL_ARG_NONNULL ((1))); # endif @@ -93,14 +98,24 @@ _GL_CXXALIAS_SYS (sigismember, int, (const sigset_t *set, int sig)); _GL_CXXALIASWARN (sigismember); /* Initialize a signal set to the empty set. */ -# if !@HAVE_POSIX_SIGNALBLOCKING@ +# if @HAVE_POSIX_SIGNALBLOCKING@ +/* This function is defined as a macro on MacOS X. */ +# if defined __cplusplus && defined GNULIB_NAMESPACE +# undef sigemptyset +# endif +# else _GL_FUNCDECL_SYS (sigemptyset, int, (sigset_t *set) _GL_ARG_NONNULL ((1))); # endif _GL_CXXALIAS_SYS (sigemptyset, int, (sigset_t *set)); _GL_CXXALIASWARN (sigemptyset); /* Add a signal to a signal set. */ -# if !@HAVE_POSIX_SIGNALBLOCKING@ +# if @HAVE_POSIX_SIGNALBLOCKING@ +/* This function is defined as a macro on MacOS X. */ +# if defined __cplusplus && defined GNULIB_NAMESPACE +# undef sigaddset +# endif +# else _GL_FUNCDECL_SYS (sigaddset, int, (sigset_t *set, int sig) _GL_ARG_NONNULL ((1))); # endif @@ -108,7 +123,12 @@ _GL_CXXALIAS_SYS (sigaddset, int, (sigset_t *set, int sig)); _GL_CXXALIASWARN (sigaddset); /* Remove a signal from a signal set. */ -# if !@HAVE_POSIX_SIGNALBLOCKING@ +# if @HAVE_POSIX_SIGNALBLOCKING@ +/* This function is defined as a macro on MacOS X. */ +# if defined __cplusplus && defined GNULIB_NAMESPACE +# undef sigdelset +# endif +# else _GL_FUNCDECL_SYS (sigdelset, int, (sigset_t *set, int sig) _GL_ARG_NONNULL ((1))); # endif @@ -116,7 +136,12 @@ _GL_CXXALIAS_SYS (sigdelset, int, (sigset_t *set, int sig)); _GL_CXXALIASWARN (sigdelset); /* Fill a signal set with all possible signals. */ -# if !@HAVE_POSIX_SIGNALBLOCKING@ +# if @HAVE_POSIX_SIGNALBLOCKING@ +/* This function is defined as a macro on MacOS X. */ +# if defined __cplusplus && defined GNULIB_NAMESPACE +# undef sigfillset +# endif +# else _GL_FUNCDECL_SYS (sigfillset, int, (sigset_t *set) _GL_ARG_NONNULL ((1))); # endif _GL_CXXALIAS_SYS (sigfillset, int, (sigset_t *set));