diff options
-rw-r--r-- | gcc/testsuite/g++.dg/template/fnspec3.C | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/gcc/testsuite/g++.dg/template/fnspec3.C b/gcc/testsuite/g++.dg/template/fnspec3.C new file mode 100644 index 0000000..c36cb17 --- /dev/null +++ b/gcc/testsuite/g++.dg/template/fnspec3.C @@ -0,0 +1,20 @@ +// PR c++/63378 +// { dg-do compile { target c++11 } } + +template<class T1, class S1> +struct B { }; + +template<class T1> +struct A { +private: + template<class T2, class S2> + static B<T2, S2> g(); + +public: + template<class S2> + auto f() -> decltype(g<T1, S2>()); +}; + +template<> +template<> +auto A<int>::f<float>() -> B<int, float>; |