Paul Eggert wrote:
> Thanks for mentioning that. I installed the attached to try to fix this.

The gzip CI now shows a compilation error on musl libc and on macOS:

gcc -DHAVE_CONFIG_H -I. -I../../lib   -Wall   -Wno-cast-qual -Wno-conversion 
-Wno-float-equal -Wno-sign-compare -Wno-undef -Wno-unused-function 
-Wno-unused-parameter -Wno-float-conversion -Wimplicit-fallthrough 
-Wno-pedantic -Wno-sign-conversion -Wno-type-limits -Wno-unused-const-variable 
-Wno-unsuffixed-float-constants -Wno-error -g -O2 -MT libgzip_a-quotearg.o -MD 
-MP -MF .deps/libgzip_a-quotearg.Tpo -c -o libgzip_a-quotearg.o `test -f 
'quotearg.c' || echo '../../lib/'`quotearg.c
../../lib/quotearg.c: In function 'chisprint':
../../lib/quotearg.c:105:10: error: implicit declaration of function 
'c_isprint'; did you mean 'chisprint'? [-Wimplicit-function-declaration]
  105 |   return c_isprint (c);
      |          ^~~~~~~~~
      |          chisprint
make[3]: *** [Makefile:3158: libgzip_a-quotearg.o] Error 1

This patch fixes it. (Tested on musl libc.)


2026-05-26  Bruno Haible  <[email protected]>

        quotearg: Fix compilation error in USE_C_LOCALE code.
        * lib/quotearg.c: If USE_C_LOCALE && C_LOCALE_MIGHT_BE_MULTIBYTE,
        include c-ctype.h instead of <ctype.h>.
        * modules/quotearg (Depends-on): Add c-ctype.

diff --git a/lib/quotearg.c b/lib/quotearg.c
index 1c31a1ec04..64850af1e1 100644
--- a/lib/quotearg.c
+++ b/lib/quotearg.c
@@ -72,13 +72,14 @@ typedef struct incomplete_mbstate *mbstate;
 #  define GNULIB_MBRTOC32_REGULAR 1
 # endif
 #else
-# include <ctype.h>
 # include <wchar.h>
 typedef mbstate_t mbstate;
 # if USE_C_LOCALE
-# include <wctype.h>
+#  include <c-ctype.h>
+#  include <wctype.h>
 typedef wchar_t wch;
 # else
+#  include <ctype.h>
 #  include <uchar.h>
 typedef char32_t wch;
 # endif
diff --git a/modules/quotearg b/modules/quotearg
index 7e61400ef1..02e54d989d 100644
--- a/modules/quotearg
+++ b/modules/quotearg
@@ -10,6 +10,7 @@ m4/musl.m4
 
 Depends-on:
 attribute
+c-ctype
 c32isprint
 extensions
 gettext-h




Reply via email to