Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 20 Dec 2016 18:12:04 -0800
From:      Juli Mallett <juli@clockworksquid.com>
To:        Conrad Meyer <cem@freebsd.org>
Cc:        Adrian Chadd <adrian.chadd@gmail.com>, src-committers <src-committers@freebsd.org>,  "svn-src-all@freebsd.org" <svn-src-all@freebsd.org>,  "svn-src-head@freebsd.org" <svn-src-head@freebsd.org>
Subject:   Re: svn commit: r310138 - head/lib/libc/stdio
Message-ID:  <CACVs6=8L53%2BDOL1RoZJFjwTE9f94pmwHuaLCKDd9A7HJT9XLmg@mail.gmail.com>
In-Reply-To: <CAG6CVpUoUa=LkqWvSovLXkfGhOQ0FLxrbHKwVh%2B0BCgHjYz0qg@mail.gmail.com>
References:  <201612160144.uBG1ipjW016736@repo.freebsd.org> <CANCZdfrNu0=qPuMX8SA2H-MUXGb5rei06_dQg9XGp-Miu3Xsfg@mail.gmail.com> <e2056221-26ad-5108-3385-865abff12d78@FreeBSD.org> <49460793.UcUNovQMDa@ralph.baldwin.cx> <CAJ-Vmone4dyiDdmtppzZEGW=rKGW9CkRWGvFbQb5D3bkyiSs9A@mail.gmail.com> <CAG6CVpUBejZQbMEnhq3wp5b-hHy9jhoXY256n1uzHCO4dUD=Cw@mail.gmail.com> <1482281779.48539.41.camel@freebsd.org> <CAJ-Vmomfa11mACJS=4pV3H-usd8LvOSC9PY=Q%2BiioFhdAUXuUg@mail.gmail.com> <CAG6CVpUoUa=LkqWvSovLXkfGhOQ0FLxrbHKwVh%2B0BCgHjYz0qg@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Tue, Dec 20, 2016 at 6:04 PM, Conrad Meyer <cem@freebsd.org> wrote:
> Hi Adrian,
>
> On Tue, Dec 20, 2016 at 5:56 PM, Adrian Chadd <adrian.chadd@gmail.com> wrote:
>> Here's my reason for removal.
>>
>> Plenty of us are looking to be able to build bits of the BSD source
>> tree as part of other non FreeBSD systems, especially if they're
>> involved in bootstrapping.
>
> Understood, however:
>
>> That means that it needs to be compilable
>> by a non-FreeBSD-modified compiler. Ideally this means we'd stick to
>> mostly POSIX options source code that we can compile with unmodified
>> compilers, and we push non-standard stuff into otherly-named
>> functions.
>
> Yeah, this isn't actually a problem.  printf("%b", foo) compiles fine
> with non-modified compilers.

I want FreeBSD tools to avoid non-standard extensions to standard APIs
where possible.  Non-standard APIs are fine, because they're easy to
provide one's own implementations along with portable software, but
building in quirky behaviour to core POSIX/C/whatever interfaces
invites pain.  In this case, the cost-benefit ratio is all out of
whack.  Now, %b is unusual enough that I don't have to worry that,
say, a bootstrap tool will use it, but it's also unusual enough that
the benefit here is elusive.

I would love to see this reverted and snprintb instead.



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CACVs6=8L53%2BDOL1RoZJFjwTE9f94pmwHuaLCKDd9A7HJT9XLmg>