[PATCH] Support %m in printf functions

Eric Blake eblake@redhat.com
Tue Jan 3 16:32:00 GMT 2012

On 01/03/2012 03:37 AM, Richard Earnshaw wrote:
> On 01/01/12 17:59, Yaakov (Cygwin/X) wrote:
>> This patch adds support for the "%m" conversion specifier in the printf
>> and wprintf functions, a GNU extension:
>> http://www.kernel.org/doc/man-pages/online/pages/man3/printf.3.html
>> Patch and STC attached.
> Printf is already very bloated.  On bare metal this adds yet more
> overhead for something that's very unlikely to be used.
> I think there should be a way of building printf with all GNU extensions
> disabled.

I very much agree that this needs to be gated if we add it; I also think
that none of the existing gates are appropriate (I see at least these
_MB_CAPABLE and _WANT_IO_C99_FORMATS), se we'd need a new one, as well
as the configure machinery to enable the gate.

Also, I note that right now we have %'d under _WANT_IO_C99_FORMATS,
which isn't really accurate, as support for the thousands separator is a
POSIX but not a C99 requirement.  _WANT_IO_C99_FORMATS for things like
%hhd is appropriate, though, as that really was something added in C99
but not in C89.  So as long as we are talking about adding gates, maybe
we should add two levels of gates: one for things required by POSIX but
not C99, and one for extensions like %m that are not required by POSIX.

Eric Blake   eblake@redhat.com    +1-919-301-3266
Libvirt virtualization library http://libvirt.org

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 620 bytes
Desc: OpenPGP digital signature
URL: <http://sourceware.org/pipermail/newlib/attachments/20120103/672b4163/attachment.sig>

More information about the Newlib mailing list