Were these symbols recognised in an older version of VA? If so, do you have any idea which version of VA you were using before?
Can you please make or open a new, empty .cpp file and paste the following test code into it, I have simply matched up the brackets in your code sample, and provided a couple of hopefully unique function names:
void testingSymbolsVS2008()
{
//* Symbol 'i' not recognized:
// Feline testing - Find References works correctly on symbol "i"
for(size_t i=0; i<m_visibles.added.size(); ++i) CDL1(" added ")(m_visibles.added[i].name)(' ')(m_visibles.added[i].s);
}
//* Symbols 'now', 'ev', 'v', 'dir', 'ea' 'ace' not recognized:
// Feline testing - Find References works correctly on symbol "ev"
void moreTestingSymbolsVS2008(double now, Event * ev)
{
FNCNAME("Cxx::onEvent: ");
switch(ev->number()) {
case E1::nbr:
{
// Feline testing - Find References works correctly on symbol "v"
double v = ((E1*)ev)->speed();
// Feline testing - Find References works correctly on symbol "dir"
long dir = ((E1*)ev)->dire();
CDL1("got E1 v ")(v)(" dir ")(dir);
if (dir == DIR_REV) v = -v;
break;
}
case E2::nbr:
{
E2 const & ace(*reinterpret_cast<E2*>(ev));
...
}
}
}
I have included comments on the tests I have run. VA does not understand most of this code, since the class is missing, the macros are unknown, and so on. But the local variables and parameters you are mentioning VA is quite happy with here for me, using VS2008 and VA 2283.2
If you see the same results in a new, empty cpp file this would suggest that something further up the file is confusing our parser. Can you please try looking at VA Outline and see if it looks correct for the file where you have the problem? If the Outline breaks or has problems part way down the file this may well help to explain why you are seeing this problem.