1 // PR c++/42328
2 
3 template<typename T, typename U>
4 class freeList
5 {
6 public:
foo()7   void foo() {};
8 };
9 
10 class bar {};
11 
12 class baz : protected freeList<bar, baz>
13 {
14   template<typename T>
15   friend
16   void freeList<T, baz>::foo();  // { dg-error "friend" }
17 };
18 
19 baz b;
20