1// { dg-do run } 2extern "C" void abort (); 3 4template <class T> void f () 5{ 6 abort (); 7} 8 9template <> void f<char> () 10{ 11 abort (); 12} 13 14template <class T> void f (int) 15{ 16 abort (); 17} 18 19template <> void f<char> (int) 20{ 21} 22 23template <class T> class C 24{ 25 friend void f<char> (int); 26 public: 27 void ff () { f<char> (0); } 28}; 29 30int main () 31{ 32 C<int> c; 33 c.ff(); 34} 35