Which, I believe, is a violation of the C++ standard.
The easiest way to reproduce the problem is to use the outline feature to move the last method in a file above the previous one. Then go to the end of the file. The cursor will be positioned at the end of the last line which has text.
Which version of Visual Assist and Visual Studio are you using?
I've just tried to reproduce this problem, but wasn't able to. I used a clean new win32 test project, and VA has always put empty line @ EOF. I even tried to manually removed it, but once I move the last function (via drag-and-drop) VA put it back to the EOF. Using VA1840 and VS2010.
Of course, when I then try to create a simple case, it doesn't always happen. My details are:
VA_X.dll file version 10.6.1837.0 built 2010.11.19 DevEnv.exe version 9.0.30729.1 Standard msenv.dll version 9.0.30729.1 Font: Consolas 15(Pixels) Comctl32.dll version 6.10.7600.16661 Windows 7 6.1 Build 7600 8 processors (x86-64; WOW64)
Platform: Custom Stable Includes:
Other Includes:
Stable Source Directories:
I managed to reproduce the problem by creating a new source file in an existing project, and then adding the code between the "====" lines. When I use the VA outline to move Func3 above Func2, the closing brace at the end of Func2 is the last character in the file - i.e. it is missing the final newline.