numeric_limits.cc (test_extrema<long double>): Remove specialization for FreeBSD systems.

* testsuite/18_support/numeric_limits.cc (test_extrema<long double>):
	Remove specialization for FreeBSD systems.

From-SVN: r58409
This commit is contained in:
Loren J. Rittle 2002-10-22 09:35:10 +00:00 committed by Loren J. Rittle
parent 8fe734a3fe
commit 312af83702
2 changed files with 5 additions and 28 deletions

View File

@ -1,3 +1,8 @@
2002-10-22 Loren J. Rittle <ljrittle@acm.org>
* testsuite/18_support/numeric_limits.cc (test_extrema<long double>):
Remove specialization for FreeBSD systems.
2002-10-18 Loren J. Rittle <ljrittle@acm.org>
* configure.target (freebsd*): Use abi_baseline_triplet.

View File

@ -71,34 +71,6 @@ void test_extrema()
VERIFY( extrema_max == limits_max );
}
#ifdef __FreeBSD__
// This specialization allows the extra precision unmentioned in
// system headers yet supported by long double on FreeBSD or Solaris
// to not cause a gratuitous FAIL for the entire test. Using this
// technique to compare the residual against epsilon ensures that any
// major breakage will still be detected (although obviously not as
// tight as the exact equality check that would have been generated by
// default). This replacement test is allowable by the fact that C++
// limits should match the system provided limits for C even if they
// were wrong verses the actual FP hardware.
template<>
void test_extrema<long double>()
{
typedef long double T;
bool test = true;
T limits_min = std::numeric_limits<T>::min();
T limits_max = std::numeric_limits<T>::max();
T extrema_min = extrema<T>::min;
T extrema_max = extrema<T>::max;
T epsilon = std::numeric_limits<T>::epsilon();
VERIFY( (extrema_min - limits_min) < epsilon );
VERIFY( (limits_min - extrema_min) < epsilon );
VERIFY( (extrema_max / limits_max) < (1 + epsilon) );
VERIFY( (limits_max / extrema_max) < (1 + epsilon) );
}
#endif
template<typename T>
void test_epsilon()
{