diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog index 0cd9e614a43..7021bae0566 100644 --- a/libstdc++-v3/ChangeLog +++ b/libstdc++-v3/ChangeLog @@ -1,3 +1,8 @@ +2002-10-22 Loren J. Rittle + + * testsuite/18_support/numeric_limits.cc (test_extrema): + Remove specialization for FreeBSD systems. + 2002-10-18 Loren J. Rittle * configure.target (freebsd*): Use abi_baseline_triplet. diff --git a/libstdc++-v3/testsuite/18_support/numeric_limits.cc b/libstdc++-v3/testsuite/18_support/numeric_limits.cc index 7dd5a6c191e..4a1c498bb2d 100644 --- a/libstdc++-v3/testsuite/18_support/numeric_limits.cc +++ b/libstdc++-v3/testsuite/18_support/numeric_limits.cc @@ -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() -{ - typedef long double T; - bool test = true; - T limits_min = std::numeric_limits::min(); - T limits_max = std::numeric_limits::max(); - T extrema_min = extrema::min; - T extrema_max = extrema::max; - T epsilon = std::numeric_limits::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 void test_epsilon() {