1 // PR c++/70466
2 
3 template < class T, class S >
4 struct A
5 {
AA6   explicit A (...) {}
7 };
8 
9 template < class T, class S >
foo(T (S::* f)())10 A < T, S > foo (T (S::*f) ())
11 {
12   return A < T, S > (f);
13 }
14 
15 struct B
16 {
barB17   void bar () {}
18 };
19 
20 int
main()21 main ()
22 {
23   foo (&B::bar);
24   return 0;
25 }
26