summaryrefslogtreecommitdiff
path: root/modules
diff options
context:
space:
mode:
authorBruno Haible <bruno@clisp.org>2023-04-19 02:14:09 +0200
committerBruno Haible <bruno@clisp.org>2023-04-19 02:39:36 +0200
commit4b440d3568b01dd9acd5242bea8b63fc43428f5a (patch)
tree58e1ba3d97e79f2e21b73badab54a3b5b6d277d5 /modules
parent7634eee7a8da4a2f5eb9522ec01d24b8ad105df7 (diff)
downloadgnulib-4b440d3568b01dd9acd5242bea8b63fc43428f5a.tar.gz
wcscmp: Work around two ISO C compliance bugs on several platforms.
* lib/wchar.in.h (wcscmp): Consider REPLACE_WCSCMP. * lib/wcscmp-impl.h (wcscmp): Don't assume that the two wide characters are in the range 0..INT_MAX. * m4/wcscmp.m4 (gl_FUNC_WCSCMP): Test whether wcscmp works for all wide characters. Set REPLACE_WCSCMP. * m4/wchar_h.m4 (gl_WCHAR_H_DEFAULTS): Initialize REPLACE_WCSCMP. * modules/wchar (Makefile.am): Substitute REPLACE_WCSCMP. * modules/wcscmp (Status, Notice): Un-obsolete this module. (configure.ac): Consider REPLACE_WCSCMP. * doc/posix-functions/wcscmp.texi: Mention the two bugs.
Diffstat (limited to 'modules')
-rw-r--r--modules/wchar1
-rw-r--r--modules/wcscmp9
2 files changed, 3 insertions, 7 deletions
diff --git a/modules/wchar b/modules/wchar
index 180c94309c..88b442b525 100644
--- a/modules/wchar
+++ b/modules/wchar
@@ -142,6 +142,7 @@ wchar.h: wchar.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H)
-e 's|@''REPLACE_WCWIDTH''@|$(REPLACE_WCWIDTH)|g' \
-e 's|@''REPLACE_WCSWIDTH''@|$(REPLACE_WCSWIDTH)|g' \
-e 's|@''REPLACE_WCSFTIME''@|$(REPLACE_WCSFTIME)|g' \
+ -e 's|@''REPLACE_WCSCMP''@|$(REPLACE_WCSCMP)|g' \
-e 's|@''REPLACE_WCSSTR''@|$(REPLACE_WCSSTR)|g' \
-e 's|@''REPLACE_WCSTOK''@|$(REPLACE_WCSTOK)|g' \
-e 's|@''REPLACE_WMEMCMP''@|$(REPLACE_WMEMCMP)|g' \
diff --git a/modules/wcscmp b/modules/wcscmp
index 1b4fde704a..6df70f0543 100644
--- a/modules/wcscmp
+++ b/modules/wcscmp
@@ -1,12 +1,6 @@
Description:
wcscmp() function: compare two wide strings.
-Status:
-obsolete
-
-Notice:
-This module is obsolete.
-
Files:
lib/wcscmp.c
lib/wcscmp-impl.h
@@ -17,7 +11,8 @@ wchar
configure.ac:
gl_FUNC_WCSCMP
-gl_CONDITIONAL([GL_COND_OBJ_WCSCMP], [test $HAVE_WCSCMP = 0])
+gl_CONDITIONAL([GL_COND_OBJ_WCSCMP],
+ [test $HAVE_WCSCMP = 0 || test $REPLACE_WCSCMP = 1])
gl_WCHAR_MODULE_INDICATOR([wcscmp])
Makefile.am: