Take the following code snippet and copy into VC++ 8. VA X b1539 then does the following: everything in test::nvTest2 will be correct all the details picked out by VA for test::volatileTest2 are wrong or incomplete, execpt for the local var i2
class test { void volatileTest2(const int i1) volatile; int volatileTest1() volatile {return 1}; void nvTest2(const int i1); void nvTest3(const int i1);
int m_i1; };
void test::nvTest2(const int i1) { int i2; i1; m_i1; volatileTest1(); volatileTest2(volatileTest1()); i2; }
void test::volatileTest2(const int i1) volatile { int i2; i1; m_i1; volatileTest1(); volatileTest2(volatileTest1()); i2; }