isnan(3) not available in C99/POSIX2001 mode

David Schultz das at FreeBSD.ORG
Sat Jun 12 17:35:50 UTC 2010

On Mon, May 04, 2009, Florian Forster wrote:
> Hi,
> I'm having problems compiling a C99 program and I believe this to be a
> problem in FreeBSD's libc.
> In <math.h> the macro `isnan' is defined. The macro checks the size of
> its argument to determine whether it's a float, double, or long double
> and calls `isnanf', `isnan', or `__isnanl' respectively. The problem is
> that the `isnan' macro is defined if `__ISO_C_VISIBLE >= 1999' but
> `isnanf' is only declared if `__BSD_VISIBLE' is defined. In my case (C99
> and POSIX 2001 requested) this results in a syntax error:

This is fixed in 9-CURRENT. Sorry for the delay.

More information about the freebsd-standards mailing list