Daily bump.
[official-gcc.git] / gcc / testsuite / g++.dg / cpp2a / concepts-partial-spec2.C
blob566d8dd55b653edf7ddd6066747f7bf417f5b043
1 // PR c++/67084
2 // { dg-do compile { target c++17 } }
3 // { dg-additional-options "-fconcepts" }
5 template <class T>
6 concept True = true;
7 template <class T>
8 concept False = false;
10 template <class T>
11 constexpr bool p = false;
13 template <class T>
14 constexpr bool p<T*> = false;
16 template <class T>
17   requires True<T>
18 constexpr bool p<T*> = false;
20 template <class T>
21   requires True<T> && (T() == 0)
22 constexpr bool p<T*> = true;
24 template <class T>
25 constexpr bool q = false;
27 template <class T>
28 constexpr bool q<T*> = true;
30 template <class T>
31   requires False<T>
32 constexpr bool q<T*> = false;
34 template <class T>
35   requires False<T> && (T() != 0)
36 constexpr bool q<T*> = false;
38 static_assert (p<int*>,"");