+2008-12-21 Bruno Haible <bruno@clisp.org>
+
+ Update doc for AIX.
+ * doc/pastposix-functions/wcswcs.texi: Mention that AIX has only a
+ 16-bit wchar_t type.
+ * doc/posix-functions/btowc.texi: Likewise.
+ * doc/posix-functions/fgetwc.texi: Likewise.
+ * doc/posix-functions/fgetws.texi: Likewise.
+ * doc/posix-functions/fputwc.texi: Likewise.
+ * doc/posix-functions/fputws.texi: Likewise.
+ * doc/posix-functions/fwide.texi: Likewise.
+ * doc/posix-functions/fwprintf.texi: Likewise.
+ * doc/posix-functions/fwscanf.texi: Likewise.
+ * doc/posix-functions/getwchar.texi: Likewise.
+ * doc/posix-functions/getwc.texi: Likewise.
+ * doc/posix-functions/iswalnum.texi: Likewise.
+ * doc/posix-functions/iswalpha.texi: Likewise.
+ * doc/posix-functions/iswblank.texi: Likewise.
+ * doc/posix-functions/iswcntrl.texi: Likewise.
+ * doc/posix-functions/iswctype.texi: Likewise.
+ * doc/posix-functions/iswdigit.texi: Likewise.
+ * doc/posix-functions/iswgraph.texi: Likewise.
+ * doc/posix-functions/iswlower.texi: Likewise.
+ * doc/posix-functions/iswprint.texi: Likewise.
+ * doc/posix-functions/iswpunct.texi: Likewise.
+ * doc/posix-functions/iswspace.texi: Likewise.
+ * doc/posix-functions/iswupper.texi: Likewise.
+ * doc/posix-functions/iswxdigit.texi: Likewise.
+ * doc/posix-functions/mbrtowc.texi: Likewise.
+ * doc/posix-functions/mbsrtowcs.texi: Likewise.
+ * doc/posix-functions/mbstowcs.texi: Likewise.
+ * doc/posix-functions/mbtowc.texi: Likewise.
+ * doc/posix-functions/putwchar.texi: Likewise.
+ * doc/posix-functions/putwc.texi: Likewise.
+ * doc/posix-functions/swprintf.texi: Likewise.
+ * doc/posix-functions/tolower.texi: Likewise.
+ * doc/posix-functions/toupper.texi: Likewise.
+ * doc/posix-functions/towctrans.texi: Likewise.
+ * doc/posix-functions/ungetwc.texi: Likewise.
+ * doc/posix-functions/vswprintf.texi: Likewise.
+ * doc/posix-functions/wcrtomb.texi: Likewise.
+ * doc/posix-functions/wcscat.texi: Likewise.
+ * doc/posix-functions/wcschr.texi: Likewise.
+ * doc/posix-functions/wcscmp.texi: Likewise.
+ * doc/posix-functions/wcscoll.texi: Likewise.
+ * doc/posix-functions/wcscpy.texi: Likewise.
+ * doc/posix-functions/wcscspn.texi: Likewise.
+ * doc/posix-functions/wcsftime.texi: Likewise.
+ * doc/posix-functions/wcslen.texi: Likewise.
+ * doc/posix-functions/wcsncat.texi: Likewise.
+ * doc/posix-functions/wcsncmp.texi: Likewise.
+ * doc/posix-functions/wcsncpy.texi: Likewise.
+ * doc/posix-functions/wcspbrk.texi: Likewise.
+ * doc/posix-functions/wcsrchr.texi: Likewise.
+ * doc/posix-functions/wcsrtombs.texi: Likewise.
+ * doc/posix-functions/wcsspn.texi: Likewise.
+ * doc/posix-functions/wcsstr.texi: Likewise.
+ * doc/posix-functions/wcstod.texi: Likewise.
+ * doc/posix-functions/wcstof.texi: Likewise.
+ * doc/posix-functions/wcstoimax.texi: Likewise.
+ * doc/posix-functions/wcstok.texi: Likewise.
+ * doc/posix-functions/wcstold.texi: Likewise.
+ * doc/posix-functions/wcstoll.texi: Likewise.
+ * doc/posix-functions/wcstol.texi: Likewise.
+ * doc/posix-functions/wcstombs.texi: Likewise.
+ * doc/posix-functions/wcstoull.texi: Likewise.
+ * doc/posix-functions/wcstoul.texi: Likewise.
+ * doc/posix-functions/wcstoumax.texi: Likewise.
+ * doc/posix-functions/wcswidth.texi: Likewise.
+ * doc/posix-functions/wcsxfrm.texi: Likewise.
+ * doc/posix-functions/wctob.texi: Likewise.
+ * doc/posix-functions/wctomb.texi: Likewise.
+ * doc/posix-functions/wctrans.texi: Likewise.
+ * doc/posix-functions/wctype.texi: Likewise.
+ * doc/posix-functions/wcwidth.texi: Likewise.
+ * doc/posix-functions/wmemchr.texi: Likewise.
+ * doc/posix-functions/wmemcmp.texi: Likewise.
+ * doc/posix-functions/wmemcpy.texi: Likewise.
+ * doc/posix-functions/wmemmove.texi: Likewise.
+ * doc/posix-functions/wmemset.texi: Likewise.
+ * doc/posix-functions/wprintf.texi: Likewise.
+ * doc/posix-functions/wscanf.texi: Likewise.
+
+2008-12-21 Bruno Haible <bruno@clisp.org>
+
+ Update doc for HP-UX 11.11.
+ * doc/posix-functions/btowc.texi: Clarify that the function is missing
+ in HP-UX version 11.00, not in all versions of HP-UX 11.
+ * doc/posix-functions/fwide.texi: Likewise.
+ * doc/posix-functions/fwprintf.texi: Likewise.
+ * doc/posix-functions/fwscanf.texi: Likewise.
+ * doc/posix-functions/inet_ntop.texi: Likewise.
+ * doc/posix-functions/inet_pton.texi: Likewise.
+ * doc/posix-functions/mbrlen.texi: Likewise.
+ * doc/posix-functions/mbrtowc.texi: Likewise.
+ * doc/posix-functions/mbsinit.texi: Likewise.
+ * doc/posix-functions/mbsrtowcs.texi: Likewise.
+ * doc/posix-functions/swprintf.texi: Likewise.
+ * doc/posix-functions/swscanf.texi: Likewise.
+ * doc/posix-functions/towctrans.texi: Likewise.
+ * doc/posix-functions/vfwprintf.texi: Likewise.
+ * doc/posix-functions/vswprintf.texi: Likewise.
+ * doc/posix-functions/vwprintf.texi: Likewise.
+ * doc/posix-functions/wcrtomb.texi: Likewise.
+ * doc/posix-functions/wcsrtombs.texi: Likewise.
+ * doc/posix-functions/wcsstr.texi: Likewise.
+ * doc/posix-functions/wctob.texi: Likewise.
+ * doc/posix-functions/wctrans.texi: Likewise.
+ * doc/posix-functions/wmemchr.texi: Likewise.
+ * doc/posix-functions/wmemcmp.texi: Likewise.
+ * doc/posix-functions/wmemcpy.texi: Likewise.
+ * doc/posix-functions/wmemmove.texi: Likewise.
+ * doc/posix-functions/wmemset.texi: Likewise.
+ * doc/posix-functions/wprintf.texi: Likewise.
+ * doc/posix-functions/wscanf.texi: Likewise.
+
+2008-12-21 Bruno Haible <bruno@clisp.org>
+
+ Work around a portability problem.
+ * tests/test-mbsrtowcs.c (main): Use a temporary conversion state.
+ * doc/posix-functions/mbsrtowcs.texi: Document the portability problem.
+
+2008-12-20 Bruno Haible <bruno@clisp.org>
+
+ * lib/wchar.in.h (mbsrtowcs): Redefine if REPLACE_MBSRTOWCS is set.
+ * m4/mbsrtowcs.m4 (gl_FUNC_MBSRTOWCS): Invoke gl_MBSTATE_T_BROKEN. Set
+ REPLACE_MBSRTOWCS if mbsrtowcs needs to be overridden.
+ * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize REPLACE_MBSRTOWCS.
+ * modules/wchar (Makefile.am): Substitute REPLACE_MBSRTOWCS.
+
+ Work around mbrtowc bugs on AIX, HP-UX, OSF/1, Solaris.
+ * lib/wchar.in.h (mbstate_t): Redefine also if REPLACE_MBSTATE_T is
+ set.
+ (GNULIB_defined_mbstate_t): New macro.
+ (mbsinit): Redefine if REPLACE_MBSINIT is set.
+ (mbrtowc): Redefine if REPLACE_MBRTOWC is set.
+ * lib/mbrtowc.c (rpl_mbrtowc): Add an alternative implementation that
+ reuses the system's mbrtowc function but works around the bugs.
+ * m4/mbrtowc.m4 (gl_MBSTATE_T_BROKEN, gl_MBRTOWC_INCOMPLETE_STATE,
+ gl_MBRTOWC_NULL_ARG, gl_MBRTOWC_RETVAL, gl_MBRTOWC_NUL_RETVAL): New
+ macros.
+ (gl_FUNC_MBRTOWC): Invoke them. Set REPLACE_MBRTOWC if mbrtowc needs to
+ be overridden. Optionally define MBRTOWC_NULL_ARG_BUG,
+ MBRTOWC_RETVAL_BUG, MBRTOWC_NUL_RETVAL_BUG.
+ * m4/mbsinit.m4 (gl_FUNC_MBSINIT): Invoke gl_MBSTATE_T_BROKEN. Set
+ REPLACE_MBSINIT if mbsinit needs to be overridden.
+ * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize REPLACE_MBSTATE_T,
+ REPLACE_MBSINIT, REPLACE_MBRTOWC.
+ * modules/wchar (Makefile.am): Substitute REPLACE_MBSTATE_T,
+ REPLACE_MBSINIT, REPLACE_MBRTOWC.
+ * modules/mbrtowc (Files): Add m4/locale-fr.m4, m4/locale-ja.m4,
+ m4/locale-zh.m4.
+ (Depends): Add mbsinit.
+ * modules/mbsinit (Depends): Add mbrtowc.
+ * doc/posix-functions/mbrtowc.texi: Mention the various bugs.
+
+2008-12-20 Bruno Haible <bruno@clisp.org>
+
+ * tests/test-mbrtowc.c (main): Change sample string in EUC-JP encoding
+ so that there are no conversion errors on AIX.
+ * tests/test-mbsrtowcs.c (main): LIkewise.
+
+2008-12-20 Bruno Haible <bruno@clisp.org>
+
+ Work around wctob bug on Solaris <= 9.
+ * lib/wchar.in.h (wctob): Redefine if REPLACE_WCTOB is set.
+ * m4/wctob.m4 (gl_FUNC_WCTOB): Test whether wctob works.
+ * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize REPLACE_WCTOB.
+ * modules/wchar (Makefile.am): Substitute REPLACE_WCTOB.
+ * modules/wctob (Files): Add m4/locale-fr.m4.
+ * doc/posix-functions/wctob.texi: Mention the Solaris bug.
+
+2008-12-20 Bruno Haible <bruno@clisp.org>
+
+ * doc/posix-functions/select.texi: Mention Solaris 2.6 bug with
+ /dev/null.
+ * tests/test-select-in.sh: Likewise.
+ Reported by Tom G. Christensen <tgc@jupiterrise.com>.
+
+2008-12-20 Bruno Haible <bruno@clisp.org>
+
+ Don't pretend that Cygwin has a ja_JP.EUC-JP locale.
+ * m4/locale-ja.m4 (gt_LOCALE_JA): Add test for MB_CUR_MAX. Needed on
+ Cygwin 1.5.x.
+
+2008-12-20 Bruno Haible <bruno@clisp.org>
+
+ Ensure mbstate_t is defined on HP-UX 11.11.
+ * m4/extensions.m4 (AC_USE_SYSTEM_EXTENSIONS): Require
+ AC_CANONICAL_HOST. On HP-UX, define _XOPEN_SOURCE to 500.
+ * m4/mbstate_t.m4 (AC_TYPE_MBSTATE_T): Require
+ AC_USE_SYSTEM_EXTENSIONS.
+ * modules/fnmatch (Depends-on): Add extensions.
+ * modules/mbrlen (Depends-on): Likewise.
+ * modules/mbrtowc (Depends-on): Likewise.
+ * modules/mbsinit (Depends-on): Likewise.
+ * modules/mbsrtowcs (Depends-on): Likewise.
+ * modules/mbswidth (Depends-on): Likewise.
+ * modules/quotearg (Depends-on): Likewise.
+ * modules/strftime (Depends-on): Likewise.
+
+2008-12-20 Bruno Haible <bruno@clisp.org>
+
+ Ensure wctob is declared on IRIX 6.5.
+ * lib/wchar.in.h (wctob): Declare also when HAVE_DECL_WCTOB is 0.
+ * m4/wctob.m4 (gl_FUNC_WCTOB): Set HAVE_DECL_WCTOB instead of
+ HAVE_WCTOB. Also test whether <wchar.h> declares wctob.
+ * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize HAVE_DECL_WCTOB instead
+ of HAVE_WCTOB.
+ * modules/wchar (Makefile.am): Substitute HAVE_DECL_WCTOB instead of
+ HAVE_WCTOB.
+ * doc/posix-functions/wctob.texi: Mention missing declaration on IRIX.
+
2008-12-19 Bruno Haible <bruno@clisp.org>
+ * modules/mbsrtowcs-tests: New file.
+ * tests/test-mbsrtowcs1.sh: New file.
+ * tests/test-mbsrtowcs2.sh: New file.
+ * tests/test-mbsrtowcs3.sh: New file.
+ * tests/test-mbsrtowcs4.sh: New file.
+ * tests/test-mbsrtowcs.c: New file.
+
New module 'mbsrtowcs'.
* lib/wchar.in.h (mbsrtowcs): New declaration.
* lib/mbsrtowcs.c: New file.