I'm having some trouble figuring out if this is a problem with my compiler:
class A
{
public:
A(int i) {}
};
template <typename T>
class B : public A
{
public:
B(int i) : A(i) {}
T test() {return T(10);}
};
class C : public B<C>
{
public:
C(int i) : B(i) {}
};
int main()
{
C c(5);
}
error: argument list for class template "B" is missing
This code seems to compile correctly in Visual Studio 2012, but it isn't working on icpc 9.1 (which I have to use for this project).