xref: /llvm-project/clang/test/CXX/temp/temp.spec/temp.expl.spec/p20-2.cpp (revision 1510595dce9c48b9e7ddd49becd422c4e5e66fc9)
1 // RUN: %clang_cc1 -fsyntax-only -verify %s
2 template<typename T>
3 void f(T);
4 
5 template<typename T>
6 struct A {
7   // expected-error@+1{{cannot declare an explicit specialization in a friend}}
f(int)8   template <> friend void f<>(int) {}
9 };
10 
11 // Makes sure implicit instantiation here does not trigger
12 // the assertion "Member specialization must be an explicit specialization"
foo(void)13 void foo(void) {
14     A<int> a;
15 }
16