[newlib] print formats for FAST and LEAST types
Fri Jul 24 15:50:00 GMT 2015
On Jul 24 11:21, Andre Vieira wrote:
> On 23/07/15 20:43, Corinna Vinschen wrote:
> >Hi Andre,
> >On Jul 23 11:28, Andre Vieira wrote:
> >>The PRI and SCN macro's were producing formats that did not match their
> >>target types set by GCC. This patch uses the types defined for
> >>__INTxx_TYPE__, __INT_FASTxx_TYPE__ and __INT_LEASTxx_TYPE__ to define their
> >>corresponding macros.
> >>2015-07-23 Andre Vieira <...>
> >> * libc/include/sys/_intsup.h: Defined new __INTxx, __FASTxx and
> >> _LEASTxx macro's to hold information regarding the respective types
> >> print and scan formats.
> >> * libc/include/inttypes.h: Defined LEAST and FAST specific PRI and SCN
> >> macro's as these are not always the same as the INT variants. Used
> >> the new
> >> __INTxx, __FASTxx and __LEASTxx macro's in their corresponding PRI
> >> and SCN macros.
> >I gave your patch a quick glance and it looks basically ok to me.
> >I'll review it more thorougly tomorrow (I hope), but I have a question:
> >How did you test your patch?
> Hi Corinna,
> That is a very good question. To be honest with you I ran gcc and newlib
> regression tests and did a manual test on one machine. As I was about to
> send you the manual patch I noticed I forgot to change the SCN16(x) define.
> So I'll respin this patch for you and I'll also give testing a bit more
> There is no straightforward way of testing this I think. Though I will try
> to create a sensible sscanf/sprintf test and get back to you. Suggestions
> are welcome.
Some simple testcase which allows easy manual inspection of the results
would do, I guess. You know, output in rows, kind of like
typename basetype printf macro scanf macro
int32_t int "d" "d"
int16fast_t long "ld" "ld"
If you have a chance to test on, say, 2 platforms, I'd add inspection on
32 and 64 bit Cygwin. That should allow to be reasonable sure that the
patch doesn't break any platform.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Size: 819 bytes
Desc: not available
More information about the Newlib