1 // PR c++/68884 2 // { dg-do compile { target c++11 } } 3 4 namespace std { 5 template <typename _Tp, _Tp __v> struct A { static constexpr _Tp value = __v; }; 6 typedef A<bool, true> true_type; 7 } 8 template <int> struct VsA; 9 template <class ValueType> struct ValueTemplate { 10 template <template <ValueType> class, class> struct IsInstanceOf; 11 template <template <ValueType> class TemplateA, ValueType... TypesA> 12 struct IsInstanceOf<TemplateA, TemplateA<TypesA...>> : std::true_type {}; 13 }; 14 bool foo = ValueTemplate<int>::IsInstanceOf<VsA, VsA<0>>::value; 15