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
 Telling VAX to ignore certain code segments?
 New Topic  Reply to Topic
 Printer Friendly
Author Previous Topic Topic Next Topic  

Til
New Member

2 Posts

Posted - Jun 05 2012 :  08:10:05 AM  Show Profile  Reply with Quote
In our code we have fairly complex macros that obviously confuse VAX. The result is that autocompletion suggests only global identifiers. Local variables and so on are no longer understood by VAX as soon as those macros come into play.

I guess the soloution would be to tell VAX to ignore the macros that seem to cause the trouble. Is there a way to do this?

The best thing would be a preprocessor definition that is set inside the VAX-Parser. So i could write something like this:


#ifdef _INSIDE_VAX_PARSER_
// Special case for VAX, do something harmless that does not confuse VAX
#define MyMacro(a, b)
#else
// Compiler gets the real definition
#define MyMacro(a, b)\class C ## a ## _ ## b Foo {
#endif


Something like a "virtual" _INSIDE_VAX_PARSER_ define would really make us happy.

Manual configuration of VAX settings is not acceptable. We do not want every team member to configure VAX before he can get to work.

accord
Whole Tomato Software

United Kingdom
3277 Posts

Posted - Jun 06 2012 :  5:30:45 PM  Show Profile  Reply with Quote
The basic rule is that VA will use the first #define it sees. So a construct like you had presented should work because when VA see an #ifdef, it will parse both branches (this way it can offer suggestions from not currently active branches) thus the define will be considered in your _INSIDE_VAX_PARSER_ branch. You can use any other string as far it is not defined in your project.
So, you can either skip complex macros or provide a simplified version for VA.
(We have other solutions as well, but those require local configuration.)
Go to Top of Page

Til
New Member

2 Posts

Posted - Jun 08 2012 :  04:18:36 AM  Show Profile  Reply with Quote
Thank you. Yesterday i figured this way out by myself. Now i use something like this:


#if 0
// Definitions that do not confuse VAX
#else
// The real definitions
#endif


Good to know that this solution is officially supported. I feared this could break with some update of VAX.

Edited by - Til on Jun 08 2012 04:19:26 AM
Go to Top of Page
  Previous Topic Topic Next Topic  
 New Topic  Reply to Topic
 Printer Friendly
Jump To:
© 2019 Whole Tomato Software, LLC Go To Top Of Page
Snitz Forums 2000