diff gcc/testsuite/g++.dg/cpp2a/concepts4.C @ 145:1830386684a0

gcc-9.2.0
author anatofuz
date Thu, 13 Feb 2020 11:34:05 +0900
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/gcc/testsuite/g++.dg/cpp2a/concepts4.C	Thu Feb 13 11:34:05 2020 +0900
@@ -0,0 +1,10 @@
+// { dg-do compile { target c++2a } }
+
+template <class T> struct A { static const int x = 42; };
+
+template <class Ta> concept A42 = A<Ta>::x == 42;
+template <class Tv> concept Void = __is_same_as(Tv, void);
+template <class Tb, class Ub> concept A42b = Void<Tb> || A42<Ub>;
+template <class Tc> concept R42c = A42b<Tc, Tc&>;
+
+static_assert (R42c<void>);