Compiler projects using llvm
extern int __isnanf(float f);
extern int __isnan(double f);
extern int __isnanl(long double f);
#define isnan(x) \
	(sizeof (x) == sizeof (float)                \
	? __isnanf (x)                    \
	: sizeof (x) == sizeof (double)               \
	? __isnan (x) : __isnanl (x))