From: <dan...@ya...> - 2002-06-13 08:24:33
|
--- José Fonseca <j_r...@ya...> wrote: > On 2002.06.13 05:11 Danny Smith wrote: > > > 3 The isinf macro returns a nonzero value if and only if its argument > > > has an infinite > > > value. > > > > > <snip> > > > > However, if the standard only > > > says that isinf() needs to return nonzero, both are correct but Trio > > > will > > > need to be fixed (but in this case would it hurt to have Mingw work > > like > > > glibc?). > > > > > No, it wouldn't hurt. Simple to fix. > > Do we want isnan and the others to have same behaviour? > > Danny > > When a standard says non-zero value, means that the applications shouldn't > expect any particular value, i.e., they shouldn't rely on receiving -1 or > 1 at all. By giving these results we're sponsoring non standard code. > > Of course that the problem isn't really in the C library, but IMHO we > shouldn't adapt the library to broken apps, but fix the broken apps > instead, since these apps will have to be eventually fixed anyway. > > And in this case the fix should be rather simple as after calling isinf() > a comparison with 0 is sufficient to determine whether is +inf or -inf. > > José Fonseca > > Jose, you've just convinced me that the very cheap way (as inlines) that is implemented now is the best. Adding a test for the signbit to __isinf, __isinff, and __isinfl functions is unnecessary for standard conforming apps and probably doubles the cost, so it actually penalizes standard conformance in user code. The signbit test can be done separately by comparison with zero, as Jose indicates, or by using the signbit inline function Danny > August 25-28 in Las Vegas - > http://devcon.sprintpcs.com/adp/index.cfm?source=osdntextlink > > _______________________________________________ > MinGW-users mailing list > Min...@li... > > You may change your MinGW Account Options or unsubscribe at: > https://lists.sourceforge.net/lists/listinfo/mingw-users http://www.sold.com.au - SOLD.com.au - Find yourself a bargain! |