aboutsummaryrefslogtreecommitdiff
path: root/libstdc++-v3
diff options
context:
space:
mode:
authorJonathan Wakely <jwakely@redhat.com>2019-01-09 09:37:34 +0000
committerJonathan Wakely <redi@gcc.gnu.org>2019-01-09 09:37:34 +0000
commitc86fab9d08853121dfe3d001b973af1e1c44fddd (patch)
treec355e5124ff17620f3ba495706ad1e35899f6619 /libstdc++-v3
parent73075e06b7591dacd413e2e9a944d9fe6722dde9 (diff)
downloadgcc-c86fab9d08853121dfe3d001b973af1e1c44fddd.zip
gcc-c86fab9d08853121dfe3d001b973af1e1c44fddd.tar.gz
gcc-c86fab9d08853121dfe3d001b973af1e1c44fddd.tar.bz2
PR libstdc++/88204 disable std::complex<long double> tests
The IBM128 long double format isn't foldable in constant expressions, so conditionally skip the std::complex<long double> cases when they'll fail. PR libstdc++/88204 * testsuite/26_numerics/complex/operators/more_constexpr.cc: Do not test std::complex<long double> if long double format is IBM128. * testsuite/26_numerics/complex/requirements/more_constexpr.cc: Likewise. From-SVN: r267757
Diffstat (limited to 'libstdc++-v3')
-rw-r--r--libstdc++-v3/ChangeLog8
-rw-r--r--libstdc++-v3/testsuite/26_numerics/complex/operators/more_constexpr.cc2
-rw-r--r--libstdc++-v3/testsuite/26_numerics/complex/requirements/more_constexpr.cc3
3 files changed, 12 insertions, 1 deletions
diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog
index f1aa1c3..870fce2 100644
--- a/libstdc++-v3/ChangeLog
+++ b/libstdc++-v3/ChangeLog
@@ -1,3 +1,11 @@
+2019-01-09 Jonathan Wakely <jwakely@redhat.com>
+
+ PR libstdc++/88204
+ * testsuite/26_numerics/complex/operators/more_constexpr.cc: Do not
+ test std::complex<long double> if long double format is IBM128.
+ * testsuite/26_numerics/complex/requirements/more_constexpr.cc:
+ Likewise.
+
2019-01-08 Jonathan Wakely <jwakely@redhat.com>
* testsuite/libstdc++-prettyprinters/compat.cc: Test printer support
diff --git a/libstdc++-v3/testsuite/26_numerics/complex/operators/more_constexpr.cc b/libstdc++-v3/testsuite/26_numerics/complex/operators/more_constexpr.cc
index 725e789..3def7db 100644
--- a/libstdc++-v3/testsuite/26_numerics/complex/operators/more_constexpr.cc
+++ b/libstdc++-v3/testsuite/26_numerics/complex/operators/more_constexpr.cc
@@ -56,7 +56,9 @@ int main()
{
__gnu_test::test_operators<float>();
__gnu_test::test_operators<double>();
+#ifndef __LONG_DOUBLE_IBM128__ // IBM128 format is not constexpr foldable
__gnu_test::test_operators<long double>();
+#endif
return 0;
}
diff --git a/libstdc++-v3/testsuite/26_numerics/complex/requirements/more_constexpr.cc b/libstdc++-v3/testsuite/26_numerics/complex/requirements/more_constexpr.cc
index 4b17d42..670378d 100644
--- a/libstdc++-v3/testsuite/26_numerics/complex/requirements/more_constexpr.cc
+++ b/libstdc++-v3/testsuite/26_numerics/complex/requirements/more_constexpr.cc
@@ -23,7 +23,6 @@
namespace __gnu_test
{
-
// Test constexpr real(val) imag(val).
template<typename _Tp, const int _Val = 42>
inline void
@@ -160,9 +159,11 @@ int main()
__gnu_test::test_operator_members<double, float>();
__gnu_test::test_operator_members<double, double>();
__gnu_test::test_operator_members<double, long double>();
+#ifndef __LONG_DOUBLE_IBM128__ // IBM128 format is not constexpr foldable
__gnu_test::test_operator_members<long double, float>();
__gnu_test::test_operator_members<long double, double>();
__gnu_test::test_operator_members<long double, long double>();
+#endif
#if defined(_GLIBCXX_USE_FLOAT128)
// Test primary template.