testsuite: Fix concepts-using2.C failure on 32-bit targets [PR93907]
authorJakub Jelinek <jakub@redhat.com>
Thu, 12 Mar 2020 00:28:55 +0000 (01:28 +0100)
committerJakub Jelinek <jakub@redhat.com>
Thu, 12 Mar 2020 00:28:55 +0000 (01:28 +0100)
The test FAILs on 32-bit targets that don't have __int128 type.

2020-03-12  Jakub Jelinek  <jakub@redhat.com>

PR c++/93907
* g++.dg/cpp2a/concepts-using2.C (cc): Use long long instead of
__int128 if __SIZEOF_INT128__ isn't defined.

gcc/testsuite/ChangeLog
gcc/testsuite/g++.dg/cpp2a/concepts-using2.C

index 1ed0071..18427eb 100644 (file)
@@ -1,3 +1,9 @@
+2020-03-12  Jakub Jelinek  <jakub@redhat.com>
+
+       PR c++/93907
+       * g++.dg/cpp2a/concepts-using2.C (cc): Use long long instead of
+       __int128 if __SIZEOF_INT128__ isn't defined.
+
 2020-03-06  Marek Polacek  <polacek@redhat.com>
 
        PR c++/94074 - wrong modifying const object error for COMPONENT_REF.
index b1a45d5..206b54a 100644 (file)
@@ -15,7 +15,11 @@ template <typename b> using an = typename n<b>::e;
 template <typename> constexpr bool ao = c<true>::d;
 template <typename> constexpr bool i = c<1>::d;
 template <typename> concept bb = i<b>;
+#ifdef __SIZEOF_INT128__
 using cc = __int128;
+#else
+using cc = long long;
+#endif
 template <typename> concept cd = bb<cc>;
 template <typename bt> concept ce = requires { requires cd<bt>; };
 template <typename bt> concept h = ce<bt>;