diff options
Diffstat (limited to 'gcc/testsuite/g++.dg/template/pr70466-1.C')
-rw-r--r-- | gcc/testsuite/g++.dg/template/pr70466-1.C | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/gcc/testsuite/g++.dg/template/pr70466-1.C b/gcc/testsuite/g++.dg/template/pr70466-1.C new file mode 100644 index 0000000000..7eb83eab95 --- /dev/null +++ b/gcc/testsuite/g++.dg/template/pr70466-1.C @@ -0,0 +1,27 @@ +// PR c++/70466 + +template < class T, class T > // { dg-error "conflicting" } +class A +{ +public: + explicit A (T (S::*f) ()) {} // { dg-error "expected" } +}; + +template < class T, class S > +A < T, S > foo (T (S::*f) ()) +{ + return A < T, S > (f); +} + +class B +{ +public: + void bar () {} +}; + +int +main () +{ + foo (&B::bar); + return 0; +} |