Hi,
I need to specialize an inner template class, but gcc
refuses to compile. Here is a minimal example exposing the issue:
template<int astruct Outer {
template<int bstruct Inner {
};
};
template<int atemplate<struct Outer<a>::Inner<0{
};
gcc reports:
$ g++ -c inner.cc
inner.cc:5: error: invalid explicit specialization before ?>? token
inner.cc:5: error: enclosing class templates are not explicitly specialized
inner.cc:5: error: template parameters not used in partial specialization:
inner.cc:5: error: 'a'
Is this a gcc-specific bug or am I doing something wrong?
Thanks,
Christof