If you have a class member that is initialized in the constructor using a parameter of the same name, VA X does not see that the member being initialized belongs to the class
struct Foo
{
int bar;
// ^ #1
Foo(int bar) : bar(bar) { }
// ^#2 ^#3 ^#4
};
If you place the cursor on 'bar' in #1, VA will not highlight #3. If you place it on #2, it will highlight both #3 and #4. This also has implications for certain refactoring operations such as Rename.
Note that this is in fact correct syntax. The C++ standard says that name lookup for member and base initialization only searches in the members and bases of the class. So the parameter 'bar' doesn't hide the member 'bar' in #3 (but it does in #4).