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
 Problem with listboxes using "common files".
 New Topic  Reply to Topic
 Printer Friendly
Author Previous Topic Topic Next Topic  

__Daniel__
Senior Member

Poland
36 Posts

Posted - Sep 22 2009 :  05:35:30 AM  Show Profile  Reply with Quote
Hello.
I have:
/SDK/defines.h
/solution/project1
-def.h
/solution/project2
-def.h

project1 and project2 use /sdk/defines.h
project1 and project2 are in one solution "solution".
in defines.h:
#include "def.h"
struct SStructCommon
{
SStructSpecific s;
};

in project1/def.h
struct SStructSpecific
{
int i;
};
in project2/def.h
struct SStructSpecific
{
int j;
};

during writing code in project1/2
SStructCommon sCom;
sCom.s <- in listbox appears "i" and "j" not only "i" or "j" suitably

In my "real" solution usually listbox is empty for sCom.s ( sCom.s.i is underlined )

accord
Whole Tomato Software

United Kingdom
3287 Posts

Posted - Sep 23 2009 :  5:11:24 PM  Show Profile  Reply with Quote
Firstly, about the your test (not-real) project: VAX pre-parses the header files in your solution, and later will use this cached database in order to be faster. So it parses both your "SStructSpecific" structs and adds the members from both.

About the "real" project: not getting the symbols at all is clearly a problem. It may mean that VA's parser got confused at some point. For example, do you use complex (i.e. recursive and/or very long and complex) macros?
Do you get a lot of "odd" underlines in your files? (which shouldn't be there)

You can try turning on

VA Options -> Advanced -> Listboxes -> Get content from default Intellisense

as a workaround. It may help, but only with listboxes.

Edited by - accord on Sep 23 2009 5:15:04 PM
Go to Top of Page

__Daniel__
Senior Member

Poland
36 Posts

Posted - Sep 24 2009 :  01:55:56 AM  Show Profile  Reply with Quote
1. "Real" project: yes, complex macros ( witch registry LimitMacro/LimitMacroParsing is better but not enougth ) - tough luck
2. "So it parses both your "SStructSpecific" structs and adds the members from both." - not good, i have 15 - 20 projects like "project1" in solution so my real "listbox" is very crazy
Go to Top of Page

accord
Whole Tomato Software

United Kingdom
3287 Posts

Posted - Sep 24 2009 :  5:30:35 PM  Show Profile  Reply with Quote
1. If you can share these macros, and an example cpp with the corresponding header file, then I can investigate the problem and find the cause of the underline. You can submit the files via the form:

http://www.wholetomato.com/support/contact.asp

including this thread ID or URL in the description, so we can match it up.
It would only be used for testing this problem, and would be kept private. I understand this is often not possible, but it is worth asking.

Alternatively a test code that demonstrate the problem with the macro/macros also good.

2. Unfortunately this is how the parser currently works. But it enormously speeds up things: consider a long cpp file with lots of includes and with complex macros: it could take a while to reparse such a file every time you stop typing... But after the macros will be understood, maybe it won't be a problem: you will get much more suggestions but it will refines as you type 1-2 more characters of the symbols.
Go to Top of Page

__Daniel__
Senior Member

Poland
36 Posts

Posted - Sep 25 2009 :  04:43:25 AM  Show Profile  Reply with Quote
When i copy "problematic" files to new project everything are ok.
Only in "real" program is problem. I can't send to your program. Maybe exist special build VA which can write logs with problems during parsing?
Go to Top of Page

accord
Whole Tomato Software

United Kingdom
3287 Posts

Posted - Sep 25 2009 :  3:31:40 PM  Show Profile  Reply with Quote
You can turn on VA logging:

http://docs.wholetomato.com?W305

so we can give it a try. However, posting or sending privately some example macros (via the form) may help spotting the problem and to build a simplified version of the macro. You can ask VA to use simplified version of macros or to skip them completely:

http://docs.wholetomato.com?W302

Maybe we can help with this process.
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