1 // PR c++/30044 2 3 template <typename T1, typename T2, template <T2> class Comp, class Result = Comp<1> > 4 struct sort { }; 5 6 7 template <typename Type, template <Type, Type> class Comp, class Result = Comp<1, 2> > 8 struct sort2 { }; 9 10 template <typename Type, template <int, Type> class Comp, class Result = Comp<1, 2> > 11 struct sort3 { }; 12 13 template <template <typename T1, typename T2, template <T2> class Comp, class Result = Comp<1> > class Foo> 14 struct sort4 { }; 15