]> Savannah Git Hosting - gnulib.git/commitdiff
btowc: Fix declaration on mingw/ucrt.
authorBruno Haible <bruno@clisp.org>
Sun, 22 Dec 2024 11:40:17 +0000 (12:40 +0100)
committerBruno Haible <bruno@clisp.org>
Wed, 25 Dec 2024 14:32:13 +0000 (15:32 +0100)
* m4/btowc.m4 (gl_FUNC_BTOWC): Require gt_TYPE_WINT_T. If gnulib
overrides wint_t, set REPLACE_BTOWC to 1.

ChangeLog
m4/btowc.m4

index 8595bb5ccc87a85f911e1b4ab7015676f1348bab..e9735532e3508f924f28027a8b5cb176640b680d 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2024-12-22  Bruno Haible  <bruno@clisp.org>
+
+       btowc: Fix declaration on mingw/ucrt.
+       * m4/btowc.m4 (gl_FUNC_BTOWC): Require gt_TYPE_WINT_T. If gnulib
+       overrides wint_t, set REPLACE_BTOWC to 1.
+
 2024-12-22  Bruno Haible  <bruno@clisp.org>
 
        posix_spawn_file_actions_addchdir tests: Avoid test failure on MSYS2.
index 8bb55dc8f6f46a30148d1e77150353d2cea67d6d..e485c88a3a47a9767b50915294f5eb591a2f6d1c 100644 (file)
@@ -1,4 +1,4 @@
-# btowc.m4 serial 14
+# btowc.m4 serial 15
 dnl Copyright (C) 2008-2024 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
@@ -7,6 +7,7 @@ dnl with or without modifications, as long as this notice is preserved.
 AC_DEFUN([gl_FUNC_BTOWC],
 [
   AC_REQUIRE([gl_WCHAR_H_DEFAULTS])
+  AC_REQUIRE([gt_TYPE_WINT_T])
 
   dnl Check whether <wchar.h> is usable at all, first. Otherwise the test
   dnl program below may lead to an endless loop. See
@@ -132,6 +133,13 @@ int main ()
           ])
       ])
 
+    if test $GNULIBHEADERS_OVERRIDE_WINT_T = 1; then
+      dnl On mingw/ucrt, we override the return type of btowc().
+      dnl While the original wint_t (= unsigned short) and the overridden wint_t
+      dnl (= unsigned int) are equivalent in function parameters, this is not
+      dnl the case for function return types.
+      REPLACE_BTOWC=1
+    fi
     case "$gl_cv_func_btowc_nul" in
       *yes) ;;
       *) REPLACE_BTOWC=1 ;;