Hi Roland, I forwarded this question to the Chair of the ISO committee responsible for the C99 standard. Part of his response was:
"isinf() and isnan() are macros not functions in C99 they are defined as macros in subclause 7.12.3 Classification macros. "The other macros defined by this subclause are: fpclassify() isfinite() isnormal() signbit() So, I wouldn't call it an oversight, HUGEVAL has nothing to do with the classification of a floating-point values." Hope this helps, Don >Date: Fri, 10 Nov 2006 02:02:41 +0100 >From: Roland Mainz <roland.mainz at nrubsig.org> > >Hi! > >---- > >[This is slightly offtopic for ksh93 (or better: It may be interesting >for the C99 math stuff... or not...)] > >Question for our standard+compi?er experts: >C99 defines |HUGE_VAL|, |HUGE_VALF| and |HUGE_VALL| but there seems to >be no |ishugeval()| function (at least /usr/include/iso/math_c99.h >doesn't have such a function) to probe for this value while |NaN| and >|+Inf|/|-Inf| have such probing functions (e.g. |isinf()|, |isnan()|) - >is that an oversight in the C99 standard or something obmitted >intentional ? > >---- > >Bye, >Roland