I'm not using lambdas yet for everyday work, but I tried to create a simplified test case that compiles:
class testassignment
{
int foo;
};
void testfunction()
{
testassignment x;
testassignment y = [=]()->testassignment {return testassignment();}();
}
With this test case, I wasn't able to reproduce the problem. Every occurrences of testassignment were renamed. Can you please try if you are able to reproduce the problem using the above code snippet?
What Visual Studio and Visual Assist versions are you using?
What's the use of the ^ symbol? It doesn't make any difference regarding the rename problem though.
You are using C++. Is that right?