diff options
author | Paolo Carlini <paolo.carlini@oracle.com> | 2008-07-03 19:07:35 +0000 |
---|---|---|
committer | Paolo Carlini <paolo@gcc.gnu.org> | 2008-07-03 19:07:35 +0000 |
commit | 5d13614ab0bb9db850d281023385054e01797e6a (patch) | |
tree | 4d52a0d28b604882413d34f5a8dc242613849ec3 | |
parent | dcde22ac512ea1f529ad173bb03be38d79fb0d18 (diff) | |
download | gcc-5d13614ab0bb9db850d281023385054e01797e6a.zip gcc-5d13614ab0bb9db850d281023385054e01797e6a.tar.gz gcc-5d13614ab0bb9db850d281023385054e01797e6a.tar.bz2 |
stof.cc: Improve check on long double limits.
2008-07-03 Paolo Carlini <paolo.carlini@oracle.com>
* testsuite/21_strings/basic_string/numeric_conversions/char/stof.cc:
Improve check on long double limits.
* testsuite/21_strings/basic_string/numeric_conversions/char/stod.cc:
Likewise.
* testsuite/21_strings/basic_string/numeric_conversions/wchar_t/
stof.cc: Likewise.
* testsuite/21_strings/basic_string/numeric_conversions/wchar_t/
stod.cc: Likewise.
From-SVN: r137428
5 files changed, 19 insertions, 4 deletions
diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog index 6459c75..a937a52 100644 --- a/libstdc++-v3/ChangeLog +++ b/libstdc++-v3/ChangeLog @@ -1,5 +1,16 @@ 2008-07-03 Paolo Carlini <paolo.carlini@oracle.com> + * testsuite/21_strings/basic_string/numeric_conversions/char/stof.cc: + Improve check on long double limits. + * testsuite/21_strings/basic_string/numeric_conversions/char/stod.cc: + Likewise. + * testsuite/21_strings/basic_string/numeric_conversions/wchar_t/ + stof.cc: Likewise. + * testsuite/21_strings/basic_string/numeric_conversions/wchar_t/ + stod.cc: Likewise. + +2008-07-03 Paolo Carlini <paolo.carlini@oracle.com> + * libsupc++/Makefile.am: Add initializer_list to the headers. * libsupc++/Makefile.in: Regenerate. diff --git a/libstdc++-v3/testsuite/21_strings/basic_string/numeric_conversions/char/stod.cc b/libstdc++-v3/testsuite/21_strings/basic_string/numeric_conversions/char/stod.cc index f26a865..765c5a2 100644 --- a/libstdc++-v3/testsuite/21_strings/basic_string/numeric_conversions/char/stod.cc +++ b/libstdc++-v3/testsuite/21_strings/basic_string/numeric_conversions/char/stod.cc @@ -107,7 +107,8 @@ test01() } VERIFY( test ); - if (sizeof(double) < sizeof(long double)) + if ((numeric_limits<long double>::max() / 10000.0L) + > numeric_limits<double>::max()) { test = false; d1 = -1.0; diff --git a/libstdc++-v3/testsuite/21_strings/basic_string/numeric_conversions/char/stof.cc b/libstdc++-v3/testsuite/21_strings/basic_string/numeric_conversions/char/stof.cc index 515769e..5645c0a 100644 --- a/libstdc++-v3/testsuite/21_strings/basic_string/numeric_conversions/char/stof.cc +++ b/libstdc++-v3/testsuite/21_strings/basic_string/numeric_conversions/char/stof.cc @@ -107,7 +107,8 @@ test01() } VERIFY( test ); - if (sizeof(float) < sizeof(long double)) + if ((numeric_limits<long double>::max() / 10000.0L) + > numeric_limits<float>::max()) { test = false; f1 = -1.0f; diff --git a/libstdc++-v3/testsuite/21_strings/basic_string/numeric_conversions/wchar_t/stod.cc b/libstdc++-v3/testsuite/21_strings/basic_string/numeric_conversions/wchar_t/stod.cc index c1ebbb2..e494f42 100644 --- a/libstdc++-v3/testsuite/21_strings/basic_string/numeric_conversions/wchar_t/stod.cc +++ b/libstdc++-v3/testsuite/21_strings/basic_string/numeric_conversions/wchar_t/stod.cc @@ -107,7 +107,8 @@ test01() } VERIFY( test ); - if (sizeof(double) < sizeof(long double)) + if ((numeric_limits<long double>::max() / 10000.0L) + > numeric_limits<double>::max()) { test = false; d1 = -1.0; diff --git a/libstdc++-v3/testsuite/21_strings/basic_string/numeric_conversions/wchar_t/stof.cc b/libstdc++-v3/testsuite/21_strings/basic_string/numeric_conversions/wchar_t/stof.cc index 6f443c8..a6319f8 100644 --- a/libstdc++-v3/testsuite/21_strings/basic_string/numeric_conversions/wchar_t/stof.cc +++ b/libstdc++-v3/testsuite/21_strings/basic_string/numeric_conversions/wchar_t/stof.cc @@ -107,7 +107,8 @@ test01() } VERIFY( test ); - if (sizeof(float) < sizeof(long double)) + if ((numeric_limits<long double>::max() / 10000.0L) + > numeric_limits<float>::max()) { test = false; f1 = -1.0f; |