Kamil Rytarowski <n...@gmx.com> wrote: > On 16.06.2016 05:28, David Holland wrote: >> On Sun, May 29, 2016 at 03:54:29AM +0200, Kamil Rytarowski wrote: >> > >> > How about the Solaris 11 move? Leave "extern" option for those who rally >> > want it and SUS/POSIX for others. >> >> "extern" option? > > NAME > > iconv - code conversion function > > SYNOPSIS > > Default > > #include <iconv.h> > > extern size_t iconv(iconv_t cd, const char **restrict inbuf, > size_t *restrict inbytesleft, char **restrict outbuf, > size_t *restrict outbytesleft); > > > SUSv3 > #include <iconv.h> > > size_t iconv(iconv_t cd, char **restrict inbuf, > size_t *restrict inbytesleft, char **restrict outbuf, > size_t *restrict outbytesleft); > > > https://illumos.org/man/3C/iconv
Uhm, color me stupid, but I don't see how "extern" makes any difference here. | 6.2.2 Linkages of identifiers ... | [#5] If the declaration of an identifier for a function has | no storage-class specifier, its linkage is determined | exactly as if it were declared with the storage-class | specifier extern. I suspect the line with extern was just pasted into synopsis from the C header (dunno about Illumos, but at on Solaris the headers do use "extern" for iconv declaration). Solaris header declares iconv with const for xpg5 and w/out for xpg6. -uwe