diff options
Diffstat (limited to 'gcc/testsuite/g++.dg/template/dependent-name6.C')
-rw-r--r-- | gcc/testsuite/g++.dg/template/dependent-name6.C | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/gcc/testsuite/g++.dg/template/dependent-name6.C b/gcc/testsuite/g++.dg/template/dependent-name6.C new file mode 100644 index 000000000..e08bbe1aa --- /dev/null +++ b/gcc/testsuite/g++.dg/template/dependent-name6.C @@ -0,0 +1,17 @@ +// PR c++/26261 +// { dg-final { scan-assembler "_ZN1YIiE1fIiEE1XILi1EEv" } } + +template <int dim> class X {}; + +template <class T> struct Y { + static const unsigned int dim = 1; + template <class U> X<Y<T>::dim> f(); +}; + +template <class T> template <class U> +X<Y<T>::dim> Y<T>::f() { return X<dim>(); } + +int main() +{ + Y<int>().f<int>(); +} |