Man page sez it should be size_t iconv (iconv_t cd, const char* * inbuf, size_t * inbytesleft, char* * outbuf, size_t * outbytesleft); while the iconv.h declaration is: extern size_t iconv (iconv_t __cd, char **__restrict __inbuf, size_t *__restrict __inbytesleft, char **__restrict __outbuf, size_t *__restrict __outbytesleft); That is, missing const propery on inbuf. Judging from the semantics of the function, I'd say it should be const like the man page suggests. Jesper
The man page is broken, the correct prototype is in glibc (and in its texinfo documentation). The prototype has been mistakenly defined with const char ** in the standards but that has been corrected since then.
Fixed in 1.31-2. Thanks