I have the following template declaration:
template
void IterTable(int& rIdx,
std::vector
My guess is that max has been made a macro. This happens at some point inside windows.h.
Define NOMINMAX prior to including to stop windows.h from doing that.
I'm still confident this is your problem. (Not including would result in a different error). Place #undef max and #undef min just before the function and try again. If that fixes it, I was correct, and your NOMINMAX isn't being defined properly. (Add it as a project setting.)
You can also prevent macro expansion by: (std::numeric_limits.
On a side note, why not do std::numeric_limits instead of negating the max?