For a while Go To Definition (and by extension Productivity Power Tools' ctrl+click) took from call to declaration and from declaration to definition, and back again, even if the definition and declaration didn't match completely, but the names were the same.
For instance I could toggle between the declaration and definition of Purr() by ctrl+clicking on either despite the fact that their argument lists don't match. I found this immensely useful, because in my workflow I routinely change the argument list in the source file and then want to quickly navigate to the declaration, which is now out of date. VS did this for a while, but then it stopped. Now, Go To Definition works as intended when there are no differences, but only navigates to the declaration if no exact matching definition is found.
This may be due to some extension or maybe because I removed one at some point, but I'm unable find anything that could be the culprit.
struct Cat {
void Purr(int32 iLenInMs);
void CoughFurballForNoReasonInstead();
};
void Cat::Purr(uint32 iLenInMs)
{
cout << "purring is for pussies" << std::endl;
CoughFurballForNoReasonInstead();
}
I have the following extensions installed:
AStyle
Code alignment
CodeMaid
Concurrency Visualizer
Disable Mouse Wheel Zoom
Hide Main Menu
I Hate #Regions
Productivity Power Tools (everything enabled, except for Column Guides, Fix Mixed Tabs and Organize VB Imports)
WakaTime
VA X, latest version
VSColorOutput
There are a few more, but these are not related to C++ in any way. I'm using VS2013.