__complex float __go_complex64_div (__complex float a, __complex float b) { if (__builtin_expect (b == 0+0i, 0)) { if (!__builtin_isinff (__real__ a) && !__builtin_isinff (__imag__ a) && (__builtin_isnanf (__real__ a) || __builtin_isnanf (__imag__ a))) { /* Pass "1" to nanf to match math/bits.go. */ return __builtin_nanf("1") + __builtin_nanf("1")*1i; } } return a / b; }
int main() { if (__builtin_isunordered (f, f) != 0) link_error (); if (__builtin_isunordered (d, d) != 0) link_error (); if (__builtin_isunordered (ld, ld) != 0) link_error (); if (__builtin_isnan (f) != 0) link_error (); if (__builtin_isnan (d) != 0) link_error (); if (__builtin_isnan (ld) != 0) link_error (); if (__builtin_isnanf (f) != 0) link_error (); if (__builtin_isnanl (ld) != 0) link_error (); if (__builtin_finite (f) != 1) link_error (); if (__builtin_finite (d) != 1) link_error (); if (__builtin_finite (ld) != 1) link_error (); if (__builtin_finitef (f) != 1) link_error (); if (__builtin_finitel (ld) != 1) link_error (); if (__builtin_isinf (f) != 0) link_error (); if (__builtin_isinf (d) != 0) link_error (); if (__builtin_isinf (ld) != 0) link_error (); if (__builtin_isfinite (f) != 1) link_error (); if (__builtin_isfinite (d) != 1) link_error (); if (__builtin_isfinite (ld) != 1) link_error (); if (f != f) link_error (); if (d != d) link_error (); if (ld != ld) link_error (); return 0; }
inline bool __isnan<float>(const float __x) { return __builtin_isnanf(__x); }