clang ++ - trata o nome da classe de modelo como modelo no escopo da classe
Parece que o clang ++ (eu tentei clang 3.2) trata o nome de uma classe de template como uma classe instanciada, não um template para qualquer ocorrência dentro do escopo da classe. Por exemplo, os seguintes códigos
template <template <class> class T>
class A {};
template <typename T>
class B {
A<B> member;
// ^---- clang++ treats B as an instantiated class
// but I want it to be a template here
// this code could compile in g++
};
int main()
{
B<int> b;
return 0;
}
O que devo fazer para compilar isso?