Versions: all known, from 2.2.4 to 2.4. This is why leaving version unspecified. `iconv' arg 2 is documented and declared in `iconv.h' to be `char **__restrict'. <http://www.opengroup.org/onlinepubs/007908799/xsh/iconv.html> specifies it to be `const char **'. So do <http://www.opengroup.org/products/publications/catalog/u055.htm>. Those specifications may be wrong in some way, and there may be strong reasons to leave the interface as it is. But <(libc) Generic Conversion Interface> neither states that specifications are considered wrong in this way nor explains why the interface being described should remain as it is. <(libc) Generic Charset Conversion>, and many other <(libc)> sections, do include even <comparisons with other implementations>, not considering this improper. Design considerations wrt standard conformance are at least just as proper there.
Subject: The reasons / considerations lacking in manual are not trivial: <http://sourceware.org/bugzilla/show_bug.cgi?id=2962#c2>.
Subject: The link in <#1> should be <http://sourceware.org/bugzilla/show_bug.cgi?id=2962#c3>.
Subject: `libc/manual/charset.texi' was not changed since Tue Jul 22 20:05:55 2003 UTC, and still refers to XPG2, suggesting that everything is the same since. In fact, there were new open group standard issues after XPG2, that changed `iconv' prototype, and `iconv' implementation and documentation conforms to the newest standard versions as in <http://www.opengroup.org/onlinepubs/009695399/functions/iconv.html>, not to old ones.
There's no bug here, we follow the latest standard.