Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 15 Apr 2015 11:52:23 -0700
From:      Peter Wemm <peter@wemm.org>
To:        svn-src-all@freebsd.org
Cc:        Adrian Chadd <adrian@freebsd.org>, Tijl Coosemans <tijl@freebsd.org>, "svn-src-head@freebsd.org" <svn-src-head@freebsd.org>, "src-committers@freebsd.org" <src-committers@freebsd.org>
Subject:   Re: svn commit: r281550 - in head: . bin/csh contrib/smbfs/include/netsmb contrib/smbfs/lib/smb include lib/libarchive lib/libc/iconv lib/libc/locale lib/libiconv_modules/BIG5 lib/libiconv_modules/DECH...
Message-ID:  <2920267.p4mEmZ8sTB@overcee.wemm.org>
In-Reply-To: <CAJ-Vmo=RLVjTXXnzP5GT_3db58jc%2B1%2B4Ceq6K=vrT4HKT9wiqA@mail.gmail.com>
References:  <201504150909.t3F99LFB048690@svn.freebsd.org> <CAJ-Vmo=RLVjTXXnzP5GT_3db58jc%2B1%2B4Ceq6K=vrT4HKT9wiqA@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help

[-- Attachment #1 --]
On Wednesday, April 15, 2015 11:29:19 AM Adrian Chadd wrote:
> cc1: warnings being treated as errors
> /usr/home/adrian/work/freebsd/embedded/head/src/bin/csh/../../contrib/tcsh/s
> h.func.c: In function 'iconv_catgets':
> /usr/home/adrian/work/freebsd/embedded/head/src/bin/csh/../../contrib/tcsh/s
> h.func.c:2599: warning: passing argument 2 of 'dl_iconv' from incompatible
> pointer type
> 
> -adrian
> 
> On 15 April 2015 at 02:09, Tijl Coosemans <tijl@freebsd.org> wrote:
> > Author: tijl
> > Date: Wed Apr 15 09:09:20 2015
> > New Revision: 281550
> > URL: https://svnweb.freebsd.org/changeset/base/281550
> > 
> > Log:
> >   Remove the const qualifier from iconv(3) to comply with POSIX:
> >   http://pubs.opengroup.org/onlinepubs/9699919799/functions/iconv.html
> >   
> >   Adjust all code that calls iconv.

[Massive commit diff quote trimmed]

This is one of those unfortunate things.  A mistake was made during the 
standards process that wasn't caught untill too late.  It was corrected, but 
not until the damage was done.  The short version is that in the posix spec, 
the man page had the wrong type (and made no sense), but the actual code 
definition in the include file spec was correct.

So, a bunch of OS's used the text description as the source of truth.  
Ports/libiconv is one.

Others requested a formal clarification and the posix committee specifically 
said the include file spec (which makes sense) is the correct one and updated 
the man page to match the include file.  Linux glibc uses the correct form.

When I originally pulled the trigger I used the incorrect ports/libiconv form 
because I didn't know any better and regretted it since.

I'm glad the mistake has been fixed.  However, this is a gift that keeps on 
giving.  There will be loose ends like the warning above turning up in odd 
places for some time.  We'll just have to deal with it, a bit of whackamole 
will be required.  :(

-- 
Peter Wemm - peter@wemm.org; peter@FreeBSD.org; peter@yahoo-inc.com; KI6FJV
UTF-8: for when a ' or ... just won\342\200\231t do\342\200\246
[-- Attachment #2 --]
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2

iQEcBAABCAAGBQJVLrNnAAoJEDXWlwnsgJ4EllcH/icJbOA04IpeLKJr+KAjFcdc
4Y/uNRw1TcKcEGdkjq4yCiTmL5KYgYgz3M9HJp2QONMguyRNeK6U69ObHSe9tDpo
zKAuxhnscw5seR5qr174qlEyjL8bbnJ2zYKO2nATu1XnYicbE3XLVEBPmKn0P5YI
JkyQjRFt/i4R3myldq9JcX++P8PS61TguLcLjs9xdjig02rZlffDRHO3/w80otpH
gffbXb6Ktc46Jq19M+aRdT5uahYqlnZv87tGEvwcfvH5JAy4qJ1z4oCzt+rATmX4
F6NW6vd4FZ4aTk5Sy2RkYBXI4R7SyW9KTZIathryjvqIDH9sJ/m/J+yLkUuxj3c=
=wNgE
-----END PGP SIGNATURE-----

Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?2920267.p4mEmZ8sTB>