#include <float.h>
#include <stdlib.h>
#include <stdio.h>
+#include <math-tests.h>
+
+#if !defined(FE_OVERFLOW) && !defined(FE_UNDERFLOW)
+/* If there's no support for the exceptions this test is checking,
+ then just return success and allow the test to be compiled. */
+# define fetestexcept(e) 1
+#endif
float zero = 0.0;
float inf = INFINITY;
puts ("nextafterf+ failed");
++result;
}
- if (fetestexcept (FE_OVERFLOW) == 0)
+ if (EXCEPTION_TESTS (float) && fetestexcept (FE_OVERFLOW) == 0)
{
puts ("nextafterf+ did not overflow");
++result;
puts ("nextafterf- failed");
++result;
}
- if (fetestexcept (FE_OVERFLOW) == 0)
+ if (EXCEPTION_TESTS (float) && fetestexcept (FE_OVERFLOW) == 0)
{
puts ("nextafterf- did not overflow");
++result;
puts ("nextafterf+ failed");
++result;
}
- if (fetestexcept (FE_UNDERFLOW) == 0)
+ if (EXCEPTION_TESTS (float) && fetestexcept (FE_UNDERFLOW) == 0)
{
puts ("nextafterf+ did not underflow");
++result;
puts ("nextafterf- failed");
++result;
}
- if (fetestexcept (FE_UNDERFLOW) == 0)
+ if (EXCEPTION_TESTS (float) && fetestexcept (FE_UNDERFLOW) == 0)
{
puts ("nextafterf- did not underflow");
++result;
puts ("nextafterf+ failed");
++result;
}
- if (fetestexcept (FE_UNDERFLOW) == 0)
+ if (EXCEPTION_TESTS (float) && fetestexcept (FE_UNDERFLOW) == 0)
{
puts ("nextafterf+ did not underflow");
++result;
puts ("nextafterf+ failed");
++result;
}
- if (fetestexcept (FE_UNDERFLOW) == 0)
+ if (EXCEPTION_TESTS (float) && fetestexcept (FE_UNDERFLOW) == 0)
{
puts ("nextafterf+ did not underflow");
++result;
puts ("nextafterf- failed");
++result;
}
- if (fetestexcept (FE_UNDERFLOW) == 0)
+ if (EXCEPTION_TESTS (float) && fetestexcept (FE_UNDERFLOW) == 0)
{
puts ("nextafterf- did not underflow");
++result;
puts ("nextafterf- failed");
++result;
}
- if (fetestexcept (FE_UNDERFLOW) == 0)
+ if (EXCEPTION_TESTS (float) && fetestexcept (FE_UNDERFLOW) == 0)
{
puts ("nextafterf- did not underflow");
++result;
puts ("nextafter+ failed");
++result;
}
- if (fetestexcept (FE_OVERFLOW) == 0)
+ if (EXCEPTION_TESTS (double) && fetestexcept (FE_OVERFLOW) == 0)
{
puts ("nextafter+ did not overflow");
++result;
puts ("nextafter failed");
++result;
}
- if (fetestexcept (FE_OVERFLOW) == 0)
+ if (EXCEPTION_TESTS (double) && fetestexcept (FE_OVERFLOW) == 0)
{
puts ("nextafter- did not overflow");
++result;
puts ("nextafter+ failed");
++result;
}
- if (fetestexcept (FE_UNDERFLOW) == 0)
+ if (EXCEPTION_TESTS (double) && fetestexcept (FE_UNDERFLOW) == 0)
{
puts ("nextafter+ did not underflow");
++result;
puts ("nextafter- failed");
++result;
}
- if (fetestexcept (FE_UNDERFLOW) == 0)
+ if (EXCEPTION_TESTS (double) && fetestexcept (FE_UNDERFLOW) == 0)
{
puts ("nextafter- did not underflow");
++result;
puts ("nextafter+ failed");
++result;
}
- if (fetestexcept (FE_UNDERFLOW) == 0)
+ if (EXCEPTION_TESTS (double) && fetestexcept (FE_UNDERFLOW) == 0)
{
puts ("nextafter+ did not underflow");
++result;
puts ("nextafter+ failed");
++result;
}
- if (fetestexcept (FE_UNDERFLOW) == 0)
+ if (EXCEPTION_TESTS (double) && fetestexcept (FE_UNDERFLOW) == 0)
{
puts ("nextafter+ did not underflow");
++result;
puts ("nextafter- failed");
++result;
}
- if (fetestexcept (FE_UNDERFLOW) == 0)
+ if (EXCEPTION_TESTS (double) && fetestexcept (FE_UNDERFLOW) == 0)
{
puts ("nextafter- did not underflow");
++result;
puts ("nextafter- failed");
++result;
}
- if (fetestexcept (FE_UNDERFLOW) == 0)
+ if (EXCEPTION_TESTS (double) && fetestexcept (FE_UNDERFLOW) == 0)
{
puts ("nextafter- did not underflow");
++result;
puts ("nextafterl+ failed");
++result;
}
- if (fetestexcept (FE_OVERFLOW) == 0)
+ if (EXCEPTION_TESTS (long double) && fetestexcept (FE_OVERFLOW) == 0)
{
puts ("nextafterl+ did not overflow");
++result;
puts ("nextafterl failed");
++result;
}
- if (fetestexcept (FE_OVERFLOW) == 0)
+ if (EXCEPTION_TESTS (long double) && fetestexcept (FE_OVERFLOW) == 0)
{
puts ("nextafterl- did not overflow");
++result;
puts ("nextafterl+ failed");
++result;
}
- if (fetestexcept (FE_UNDERFLOW) == 0)
+ if (EXCEPTION_TESTS (long double) && fetestexcept (FE_UNDERFLOW) == 0)
{
puts ("nextafterl+ did not underflow");
++result;
puts ("nextafterl- failed");
++result;
}
- if (fetestexcept (FE_UNDERFLOW) == 0)
+ if (EXCEPTION_TESTS (long double) && fetestexcept (FE_UNDERFLOW) == 0)
{
puts ("nextafterl- did not underflow");
++result;
puts ("nextafterl+ failed");
++result;
}
- if (fetestexcept (FE_UNDERFLOW) == 0)
+ if (EXCEPTION_TESTS (long double) && fetestexcept (FE_UNDERFLOW) == 0)
{
puts ("nextafterl+ did not underflow");
++result;
puts ("nextafterl+ failed");
++result;
}
- if (fetestexcept (FE_UNDERFLOW) == 0)
+ if (EXCEPTION_TESTS (long double) && fetestexcept (FE_UNDERFLOW) == 0)
{
puts ("nextafterl+ did not underflow");
++result;
puts ("nextafterl- failed");
++result;
}
- if (fetestexcept (FE_UNDERFLOW) == 0)
+ if (EXCEPTION_TESTS (long double) && fetestexcept (FE_UNDERFLOW) == 0)
{
puts ("nextafterl- did not underflow");
++result;
puts ("nextafterl- failed");
++result;
}
- if (fetestexcept (FE_UNDERFLOW) == 0)
+ if (EXCEPTION_TESTS (long double) && fetestexcept (FE_UNDERFLOW) == 0)
{
puts ("nextafterl- did not underflow");
++result;