Cygwin now ships gcc 14.4 as mingw compiler, instead of gcc 13.4. This leads
to a compilation error in gettext/libtextstyle:

In file included from ../../../libtextstyle/lib/fatal-signal.c:19:
../../../libtextstyle/lib/fatal-signal.c: In function 
'libtextstyle_block_fatal_signals':
./config.h:728:25: error: implicit declaration of function 
'libtextstyle_pthread_sigmask'; did you mean 'libtextstyle_at_fatal_signal'? 
[-Wimplicit-function-declaration]
  728 | #define pthread_sigmask libtextstyle_pthread_sigmask
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
../../../libtextstyle/lib/fatal-signal.c:321:9: note: in expansion of macro 
'pthread_sigmask'
  321 |         pthread_sigmask (SIG_BLOCK, &fatal_signal_set, NULL);
      |         ^~~~~~~~~~~~~~~
./config.h:728:25: warning: nested extern declaration of 
'libtextstyle_pthread_sigmask' [-Wnested-externs]
  728 | #define pthread_sigmask libtextstyle_pthread_sigmask
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
../../../libtextstyle/lib/fatal-signal.c:321:9: note: in expansion of macro 
'pthread_sigmask'
  321 |         pthread_sigmask (SIG_BLOCK, &fatal_signal_set, NULL);
      |         ^~~~~~~~~~~~~~~
make[5]: *** [Makefile:4953: libtextstyle_la-fatal-signal.lo] Error 1

With gcc < 14, this was merely a warning.

The cause is a missing declaration of pthread_sigmask after a namespacing
instruction
  #define pthread_sigmask libtextstyle_pthread_sigmask

This patch fixes it.


2026-07-08  Bruno Haible  <[email protected]>

        pthread_sigmask: Avoid compilation error on mingw with gcc >= 14.
        * lib/signal.in.h (pthread_sigmask): Revert 2018-01-04 change, now
        unnecessary due to 2026-04-10 change.

diff --git a/lib/signal.in.h b/lib/signal.in.h
index 9e140ca5e8..236ec7a83c 100644
--- a/lib/signal.in.h
+++ b/lib/signal.in.h
@@ -200,7 +200,7 @@ _GL_CXXALIAS_RPL (pthread_sigmask, int,
                    const sigset_t *restrict new_mask,
                    sigset_t *restrict old_mask));
 # else
-#  if !(@HAVE_PTHREAD_SIGMASK@ || defined pthread_sigmask)
+#  if !@HAVE_PTHREAD_SIGMASK@
 _GL_FUNCDECL_SYS (pthread_sigmask, int,
                   (int how,
                    const sigset_t *restrict new_mask,




Reply via email to