Whole Tomato Software Forums
Whole Tomato Software Forums
Main Site | Profile | Register | Active Topics | Members | Search | FAQ
User name:
Password:
Save Password
Forgot your password?

 All Forums
 Visual Assist
 Technical Support
 VAX confused by include directories
 New Topic  Reply to Topic
 Printer Friendly
Author Previous Topic Topic Next Topic  

Dan Forever
Junior Member

10 Posts

Posted - May 09 2019 :  07:25:55 AM  Show Profile  Reply with Quote
In order to simplify #include paths across the various projects that comprise our solution, each vcxproj now has Configuration Properties->VC++ Directories->Include Directories set to:

$(SolutionDir);$(IncludePath)

This means a cpp in one project can simply do:
#include <MyOtherProject/somefile.h>
rather than:
#include "../../../MyOtherProject/somefile.h"

However, this seems to confuse visual assist when the option in C/C++ Directories is set to "Project Defined". In this particular instance a whole bunch of symbols start being rendered as if they were external to the solution. Also, alt-g seems to fail a lot more in general.

Switching the platform the x64 seems to have improved the behaviour of visual assist quite a bit (though I need to stick with it a bit more to be sure).

I'm wondering if it would be possible for VAX to only consider files and symbols to be external (or "system") if they weren't explicitly brought in by the vcxproj?

feline
Whole Tomato Software

United Kingdom
19020 Posts

Posted - May 10 2019 :  07:12:17 AM  Show Profile  Reply with Quote
Out of interest, why did you put these include directories into the "VC++ Directories" setting? Include directories listed here are considered to be stable include directories by VA, rather than just additional directories to check for your project.

If you just want to tell VA about extra include directories to check for your project, you should set them via:

Project properties -> C/C++ -> General -> Additional Include Directories

Not exactly obvious though, to be fair.

zen is the art of being at one with the two'ness
Go to Top of Page

Dan Forever
Junior Member

10 Posts

Posted - May 13 2019 :  05:13:03 AM  Show Profile  Reply with Quote
It wasn't my choice, it was made before I joined the team.

Do you think moving this from "VC++ Directories" to "Additional Include Directories" will help VAX? 'cause in both cases, we're pointing to headers that are also part of the current solution.
Go to Top of Page

feline
Whole Tomato Software

United Kingdom
19020 Posts

Posted - May 13 2019 :  09:26:03 AM  Show Profile  Reply with Quote
VA makes the assumption that stable include directories are NOT part of the solution. When you consider that stable include directories normally are thinks like standard Windows headers and 3rd party libraries, like Boost, this makes sense.

So you won't get ideal results telling VA that parts of your solution are stable include directories, which may well be what is causing this problem. By "definition" stable include directories are not seen as part of your solution, so VA will think these header files and symbols are outside of your solution.

So as a first test can you please try moving these include directories to the "C/C++ -> General" setting, and then tell VA to rebuild its symbol database, via:

VA Options -> Performance -> Rebuild symbol databases

and now restart the IDE. This is because stable include directories are being changed here, but VA does not normally reparse these, since they don't normally change.

zen is the art of being at one with the two'ness

Edited by - feline on May 13 2019 09:34:26 AM
Go to Top of Page
  Previous Topic Topic Next Topic  
 New Topic  Reply to Topic
 Printer Friendly
Jump To:
© 2023 Whole Tomato Software, LLC Go To Top Of Page
Snitz Forums 2000