math.h constants, aren't constant
According to C99, HUGE_VAL, HUGE_VALF, HUGE_VALL, INFINITY, and NAN need to be
constant expressions. We use some gcc __builtin() call when defining them, which
violates the standard.
Test case to reproduce it:
NetBSD is affected as well. FreeBSD + Opensolaris not.