This is the mail archive of the newlib@sourceware.org mailing list for the newlib project.
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
Other format: | [Raw text] |
On Dec 11 21:13, jon@beniston.com wrote: > > diff --git a/newlib/libc/stdio/nano-vfprintf_float.c > b/newlib/libc/stdio/nano-vfprintf_float.c > > index 98893e97b..071a09edc 100644 > > --- a/newlib/libc/stdio/nano-vfprintf_float.c > > +++ b/newlib/libc/stdio/nano-vfprintf_float.c > > @@ -213,6 +213,8 @@ _printf_float (struct _reent *data, > > } > > if (isnan (_fpvalue)) > > { > > + if (_fpvalue < 0) > > + pdata->l_buf[0] = '-'; > > if (code <= 'G') /* 'A', 'E', 'F', or 'G'. */ > > cp = "NAN"; > > This patch doesn't work, as a comparison of a NaN with anything should > always return false. As per the main printf code, this can be done by > checking the sign bit instead: > > - if (_fpvalue < 0) > + if (signbit (_fpvalue)) > pdata->l_buf[0] = '-'; > > Patch attached. Pushed. Thanks, Corinna -- Corinna Vinschen Cygwin Maintainer Red Hat
Attachment:
signature.asc
Description: PGP signature
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |