Hash :
c36a0f21
Author :
Date :
2024-10-27T17:01:29
doc: Add a module index. * doc/Makefile (undocumented-modules.texi): New rule. (%.info, %.html, %.dvi, %.pdf): Depend on undocumented-modules.texi. (mostlyclean): Remove also *.m and *.tmp. (force): New rule. * doc/*.texi: Add module index entries. * doc/*/*.texi: Likewise.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49
@node iconv
@subsection @code{iconv}
@findex iconv
POSIX specification:@* @url{https://pubs.opengroup.org/onlinepubs/9799919799/functions/iconv.html}
Gnulib module: iconv
@mindex iconv
Portability problems fixed by Gnulib:
@itemize
@item
GNU libiconv is not found if installed in @file{$PREFIX/lib}.
@end itemize
Portability problems handled by Gnulib
(in the sense that @code{HAVE_ICONV} does not get defined if the system's
@code{iconv} function has this problem):
@itemize
@item
Failures are not distinguishable from successful returns on some platforms:
macOS 14.4, AIX 5.1..7.2, Solaris 10.
@item
A buffer overrun can occur on some platforms:
AIX 6.1..7.1.
@end itemize
Portability problems not fixed by Gnulib:
@itemize
@item
This function is missing on some platforms:
FreeBSD 6.0, OpenBSD 7.5, Minix 3.1.8, Cygwin 2.9, mingw, MSVC 14, Android 8.1,
when GNU libiconv is not installed.
@item
This function was not correctly implemented in glibc versions before 2.2.
@item
When @code{iconv} encounters an input character that is valid but that
cannot be converted to the output character set, glibc's and GNU libiconv's
@code{iconv} stop the conversion. Some other implementations put an
implementation-defined character into the output buffer.
@mindex striconv
@mindex striconveh
Gnulib provides higher-level facilities @code{striconv} and @code{striconveh}
(wrappers around @code{iconv}) that deal with conversion errors in a platform
independent way.
@item
This function returns a positive return value, instead of zero, when
converting from ISO-8859-1 to UTF-8 on HP-UX 11.
@end itemize