3 // Origin: Philippe Van Deyck <hetadres@email.com>
5 // PR c++/13520: Default template template argument that is a qualified id
6 // with dependent scope.
8 template<typename regular_type> class Policy {};
10 template <typename regular_type, template<typename> class OriginalPolicy>
11 class ChangedPolicy_impl {};
13 template <template<typename> class OriginalPolicy > class ChangedPolicy {
15 template<typename regular_type> class Type : public
16 ChangedPolicy_impl<regular_type,OriginalPolicy> { };
19 template <typename regular_type, template<typename> class Policy1,
20 template<typename> class Policy2
21 = ChangedPolicy<Policy1>::template Type>
22 class Host : public Policy1<regular_type>, public Policy2<regular_type> { };