I'm having some problems with a templated member function of a templated class. Unfortunately I can't replicate it with a simple example so I know something odd must be going on!!!
Basically it's like this...
I have a few classes all templated by one type. Inside one of the classes is a templated member function. When I try to use this templated function in another class, the compiler complains with:
error: expected primary-expression before 'int'
error: expected ',' or ';' before 'int'
The odd thing is that if I remove the <int> from the call to the function it compiles fine. Currently this part of the code isn't actually used as I never create an instance of the class, it's just there in my code for later. So I am thinking this might be something to do with it.
It's confusing I know and I'll try to get a simple example working.
I think basically the compiler isn't noticing that the function I am calling is a template and so it's wondering why I am putting in the <int>. How can I force it to know it's going to be a template?