25 lines · cpp
1// RUN: %clang_cc1 -std=c++2a -x c++ -verify %s2 3namespace nodiag {4 5struct B {6 template <typename T> requires (bool(T()))7 static int A;8};9 10template <typename U> requires (bool(U()))11int B::A = int(U());12 13} // end namespace nodiag14 15namespace diag {16 17struct B {18 template <typename T> requires (bool(T())) // expected-note{{previous template declaration is here}}19 static int A;20};21 22template <typename U> requires (!bool(U())) // expected-error{{requires clause differs in template redeclaration}}23int B::A = int(U());24 25} // end namespace diag