diff options
Diffstat (limited to 'test/SemaTemplate/deduction.cpp')
-rw-r--r-- | test/SemaTemplate/deduction.cpp | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/test/SemaTemplate/deduction.cpp b/test/SemaTemplate/deduction.cpp index c089573a9c..e9422898c0 100644 --- a/test/SemaTemplate/deduction.cpp +++ b/test/SemaTemplate/deduction.cpp @@ -178,3 +178,17 @@ namespace PR21536 { template<typename ...T> void f(S<T...>); void g() { f(S<int, int>()); } } + +namespace PR19372 { + template <template<typename...> class C, typename ...Us> struct BindBack { + template <typename ...Ts> using apply = C<Ts..., Us...>; + }; + template <typename, typename...> struct Y; + template <typename ...Ts> using Z = Y<Ts...>; + + using T = BindBack<Z, int>::apply<>; + using T = Z<int>; + + using U = BindBack<Z, int, int>::apply<char>; + using U = Z<char, int, int>; +} |