template < int ...Indices>
class T1 {
template <int _1, int _2>
class T2;
};
template <int ...Indices>
template <int _1>
class T1<Indices...>::T2<_1, sizeof...(Indices)> {};
//^--error: non-type template argument depends on a template parameter of the partial specialization
compiles on gcc 4.5+ but neither on clang 3.1 nor icc, both complaining about the usage of sizeof...(Indices).
Is it just a not-yet implemented feature in the latter compilers or some special case?
Thanks,
Buote
T1'sclass {}block, perhaps delegating to a separate member template if necessary.