I installed Service Pack 5 for MSVC 6 tonight and now all of my code that has templates is giving me run-time errors when a template function is called.
For instance I wrote a templated function to handle releasing all of my DirectX objects that looks like this:
Code:
template<typename _T> void SafeRelease(_T T)
{
if(T)
{
T->Release();
T=0;
}
}
Where I pass my DirectX objects as the parameter in my destructors. Before the SP5 upgrade everything compiled and ran fine. Afterwards every time I exit (which is when SafeRelease is called by the respective destructors) I get an error.
If I comment out the template function and replace it with a C-style macro that does the same thing the error is gone.
I'm attaching a jpg of the error message.
My question is does anyone know how to fix this (since you can't uninstall a service pack)? I've spent the last 3 hours on google and haven't found a solution yet.
Thanks in advance.