Gnulib module: mbsrtowcs
Portability problems fixed by Gnulib:
- This function is missing on some platforms:
Minix 3.1.8, HP-UX 11.00, IRIX 6.5, Solaris 2.6, mingw, Interix 3.5.
- This function does not work on some platforms:
HP-UX 11, Solaris 11 2010-11.
- This function does not work when the first argument is NULL on some platforms:
Portability problems not fixed by Gnulib:
- On AIX and Windows platforms,
wchar_t is a 16-bit type and therefore cannot
accommodate all Unicode characters.
- The specification is not clear about whether this function should update the
conversion state when the first argument (the destination pointer) is NULL.
The glibc implementation does not update the state in this case; the MacOS X
and FreeBSD implementations do.
For portability, when passing a NULL destination argument, it is best to pass
a pointer to a temporary copy of the conversion state.