diff options
author | Loren J. Rittle <ljrittle@acm.org> | 2002-10-22 09:35:10 +0000 |
---|---|---|
committer | Loren J. Rittle <ljrittle@gcc.gnu.org> | 2002-10-22 09:35:10 +0000 |
commit | 312af83702d437edfca82e98fb7ee31bbfd3c7de (patch) | |
tree | edbe024a71457795f1334045ad982796becb7368 | |
parent | 8fe734a3fed78612103e1821e70871b0250c764e (diff) | |
download | gcc-312af83702d437edfca82e98fb7ee31bbfd3c7de.zip gcc-312af83702d437edfca82e98fb7ee31bbfd3c7de.tar.gz gcc-312af83702d437edfca82e98fb7ee31bbfd3c7de.tar.bz2 |
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
-rw-r--r-- | libstdc++-v3/ChangeLog | 5 | ||||
-rw-r--r-- | libstdc++-v3/testsuite/18_support/numeric_limits.cc | 28 |
2 files changed, 5 insertions, 28 deletions
diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog index 0cd9e61..7021bae 100644 --- a/libstdc++-v3/ChangeLog +++ b/libstdc++-v3/ChangeLog @@ -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. diff --git a/libstdc++-v3/testsuite/18_support/numeric_limits.cc b/libstdc++-v3/testsuite/18_support/numeric_limits.cc index 7dd5a6c..4a1c498 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<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() { |