1. No it never works on function declarations
2. No
3. No
Here I should mention that my solution structure is maybe a bit special.
-Inside the Solution I have a Project which is a static library.
-Every time I compile this project, a post build event copies all headers in the static library to a folder called Lib in the root folder of the Solution.
-Inside the same Solution there are more projects that include the Lib folder (that contains the headers of the static lib)
Eg:
\Solution
\\Static Lib Project
---Static lib files (includes .h and .cpp)
\\Lib
---Copy of static lib header files
\\App1 (Include Directory ..\Lib)
\\App2 (Include Directory ..\Lib)
.....
4. When I use VAssistX.GotoRelated ( alt+shift+g ) on a function declaration it displays a list that contains a button to go to function declaration (jumps the same declaration on the Lib folder).
Looks like VSAssist gets confused by the fact that there's a copy of all static lib headers in Lib folder.
5. It displays all references including the function definition.
I managed to work around the problem by having App1/App2 include the actual "Static Lib Project" folder that contains both headers/files, this way Visual Studio doesn't know about the copy and VSX doesn't get confused.
But my setup used to work without problems before, and I believe it should still work.
I've created a modified version of Hieroglyph 3 (https://hieroglyph3.codeplex.com/) that has the same problem:
You can download it here:
https://mega.nz/#!yEIATB4b!L42ESkAohlpkEPWRiy790VfpKqVG__UihEoeLB_fp_Y
Don't need to compile or anything just open \trunk\Hieroglyph3\Hieroglyph3_Desktop.sln go to file \trunk\Hieroglyph3\Include\RendererDX11.h and try to use Alt+G on any of the member function declarations.