implement asnprintf

Eric Blake
Wed Apr 25 15:53:00 GMT 2007

According to Jeff Johnston on 4/24/2007 1:03 PM:
> Eric,
>  A number of issues regarding ELIX_LEVEL.  These new functions should be
> level 4.  That means you need a new set of ELIX_4_SOURCES and you simply
> verify that the level is not 1, 2, or 3.  Add ELIX_4_SOURCES to the list
> of sources below.  Very straightforward.

Do you have a URL to the latest revision of current EL/IX levels?  The
best I found in a quick search,, v1.2, is several years old.

>  This patch has revealed an error I hadn't spotted before.  The dprintf
> family cannot refer to a higher level ELIX function so they must be put
> into the LEVEL 2 sources with asprintf, etc..

Ah, but dprintf is not (yet) required by POSIX.  The Austin group is
adding dprintf to the next revision of POSIX, as a C99 extension, (but
accidentally missed vdprintf; although I raised that as a separate bug
with the Austin group).  But for now it remains an unstandardized function.

>  Finally, the dprintf changes you have made need to either be left out
> or you need to fork the code based on the ELIX level and call the new
> LEVEL 4 functions when the _ELIX_LEVEL flag is undefined or >3.

So I think the solution here is to keep my changes to base dprintf on
asnprintf, by demoting it to _ELIX_LEVEL_4 alongside asnprintf.

I'll work on regenerating the patch, this time with documentation, so it
may be a while before I post the next revision.

Don't work too hard, make some time for fun as well!

Eric Blake   

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 311 bytes
Desc: OpenPGP digital signature
URL: <>

More information about the Newlib mailing list