I've tried trial version of VAssist:
VA_X.dll file version 10.2.1445.0 built 2006.04.12
VAOpsWin.dll version 1.3.2.4
VATE.dll version 1.0.4.15
DevEnv.exe version 8.0.50727.42
msenv.dll version 8.0.50727.42
Font: Courier New 12(Pixels)
Comctl32.dll version 6.0.3790.1830
WindowsNT 5.2 Build 3790 Service Pack 1
Single processor
Platform: Win32
Stable Includes:
c:\\Program Files\\_Dev\\Microsoft Visual Studio 8\\VC\\include;
c:\\Program Files\\_Dev\\Microsoft Visual Studio 8\\VC\\atlmfc\\include;
c:\\Program Files\\_Dev\\Microsoft Visual Studio 8\\VC\\PlatformSDK\\include;
c:\\Program Files\\_Dev\\Microsoft Visual Studio 8\\SDK\\v2.0\\include;
Library Includes:
c:\\Program Files\\_Dev\\Microsoft Visual Studio 8\\VC\\atlmfc\\src\\mfc;
c:\\Program Files\\_Dev\\Microsoft Visual Studio 8\\VC\\atlmfc\\src\\mfcm;
c:\\Program Files\\_Dev\\Microsoft Visual Studio 8\\VC\\atlmfc\\src\\atl;
c:\\Program Files\\_Dev\\Microsoft Visual Studio 8\\VC\\crt\\src;
Other Includes:
-----------------------
File main.cpp:
#include "TestApp.h"
int main(int argc, char* argv[])
{
return TestSafe();
}
File TestApp.h:
#include "TestHdr.h"
const int TestSafe() SAFE;
File TestApp2.cpp:
#include "TestApp.h"
const int TestSafe()
{
return 0;
}
File Testhdr.h:
#define SAFE throw()
Result: TestSafe() function is not recognized in main.cpp.
Expected: TestSafe() function should appear as a 'good' function in main.cpp.
Sometimes macros SAFE is treated as a class on a bigger projects. I can add more info about this bug if there will be need.