Bug (?) in sprintf family?
Brian Dessent
brian@dessent.net
Mon Apr 7 23:39:00 GMT 2008
"Jonathan S. Shapiro" wrote:
> Heck, vsnprintf doesn't have a FILE* to work with, so there isn't any
> fd, so I'm not entirely sure what these routines could possibly be
> getting called *on* in this case. The program makes no other use of
> stdio.
The snprintf family of functions are all implemented in terms of
_vfprintf_r, by constructing a pseudo FILE * to represent the string
buffer whose _flags indicate that it's really a string buffer (__SSTR)
and not a file stream. This allows for there to be one implementation
of the actual formatted output code instead of having to duplicate it,
so the coupling is deliberate.
I would think that things like calls to isatty() would be guarded by
!(_flags & __SSTR) but in any case if you just stub out everything
needed to link and the string output ones ought to still work.
Brian
More information about the Newlib
mailing list