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
 AutoCompletion suggestions make no sense
 New Topic  Reply to Topic
 Printer Friendly
Previous Page
Author Previous Topic Topic Next Topic
Page: of 2

feline
Whole Tomato Software

United Kingdom
19022 Posts

Posted - Jan 18 2008 :  3:08:25 PM  Show Profile  Reply with Quote
Can you try VA 1626 please and see if this makes any difference to anything? It should help a bit with at least some of this.

http://www.wholetomato.com/downloads/getBuild.asp?1626

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

EvilSquirrel
Junior Member

Canada
12 Posts

Posted - Jan 23 2008 :  12:07:18 PM  Show Profile  Reply with Quote
quote:
Originally posted by feline

Can you try VA 1626 please and see if this makes any difference to anything? It should help a bit with at least some of this.


At first glance, 1626 does fix one problem: typing an open parenthesis no longer activates the selected auto-complete item.

Unfortunately, I see no difference with respect to the underlines and the incorrect or missing auto-completes. I still have to turn off the underlines and "Get content from default intellisense" to make things work acceptably.
Go to Top of Page

feline
Whole Tomato Software

United Kingdom
19022 Posts

Posted - Jan 23 2008 :  3:29:46 PM  Show Profile  Reply with Quote
Can you try a quick test please. Turn off "Get content from default Intellisense" and restart the IDE. Immediately after re-starting the IDE does VA work more correctly?

I have finally managed to reproduce some of the strange problems Uniwares is having, see here:

http://forum.wholetomato.com/forum/topic.asp?TOPIC_ID=7101&whichpage=2

There might be a connection between what he is seeing and what you are seeing. For me the problem goes away when I restart the IDE, and takes 10+ minutes to show up. It shows up a lot more quickly for Uniwares, but the same pattern is at work. If you are seeing the same, or a related problem then restarting the IDE should help for a couple of minutes.

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

EvilSquirrel
Junior Member

Canada
12 Posts

Posted - Jan 23 2008 :  5:11:38 PM  Show Profile  Reply with Quote
quote:
Originally posted by feline

Can you try a quick test please. Turn off "Get content from default Intellisense" and restart the IDE. Immediately after re-starting the IDE does VA work more correctly?


Unfortunately not. I have the exact same problems immediately after I restart the IDE and reload the project.

What I can say is that right now, I'm seeing the problems mostly in our unit test source code. It's written using the UnitTest++ library (http://unittest-cpp.sourceforge.net/), which makes heavy use of macros to perform its magic. Maybe there's a hint in there somewhere? A quick check tells me that other source code files seem to be working better (I've been away from Visual Studio for a week and a half).
Go to Top of Page

feline
Whole Tomato Software

United Kingdom
19022 Posts

Posted - Jan 24 2008 :  08:58:07 AM  Show Profile  Reply with Quote
I recall one or two mentions of unit test code causing problems before, but I was never able to reproduce the problems here.

Do you have time to try creating a new default test project and then add one of these problem cpp files to the test project? I am wondering if you still see the problems.

I am wondering if it is possible to get a test project from you, that you feel is safe to share, that shows some of the problems you are seeing for me to test.

It may be possible to work around the problem by using VA's "StdAfx.h" file as explained in this FAQ entry:

http://docs.wholetomato.com?W302

by adding simplified macro definitions to help our parser.

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

EvilSquirrel
Junior Member

Canada
12 Posts

Posted - Jan 24 2008 :  1:17:29 PM  Show Profile  Reply with Quote
quote:
Originally posted by feline

I recall one or two mentions of unit test code causing problems before, but I was never able to reproduce the problems here.

Do you have time to try creating a new default test project and then add one of these problem cpp files to the test project? I am wondering if you still see the problems.

I am wondering if it is possible to get a test project from you, that you feel is safe to share, that shows some of the problems you are seeing for me to test.

It may be possible to work around the problem by using VA's "StdAfx.h" file as explained in this FAQ entry:

http://docs.wholetomato.com?W302

by adding simplified macro definitions to help our parser.


I went into StdAfx.h and added all the #defines from UnitTest++, except with no body: just "#define CHECK(value)" for example. I rebuilt the database and all the borked underlines went away. Progress!

I saw that several of my local variables were now popping up auto-completions, but not those that were shared pointers. So I went back, added my "#define ShPtr boost::shared_ptr", rebuilt the database again, and now my shared pointers work better as well... but not perfectly. Typing a period pops up the APIs for the shared pointer class, that seems pretty much ok. Typing '->' pops up the correct auto-completion for one shared pointer, but for another (of a different class) I get a popup that contains the correct class API but mixed in with a whole bunch of other symbols. Those symbols that belong show a proper tooltip when I arrow-down to them, and the others don't show any tooltips.

I was curious about these other symbols, so I did a solution-wide text search on several of them... Each one was found in one and only one file: sqlite3.c. This is the SQLite 3 amalgamation file: 2.3MB and 72,449 lines long. Interesting?
Go to Top of Page

feline
Whole Tomato Software

United Kingdom
19022 Posts

Posted - Jan 24 2008 :  3:09:01 PM  Show Profile  Reply with Quote
Progress indeed!

From memory the last report of problems with unit testing used the Boost unit testing library. It sounds like the library you are using is using even more complex macros.

I am impressed with the ShPtr #define, I had not thought of doing it quite like that.

I am puzzled by your mixed results though. I would expect this to work all of the time or fail all of the time. VA should understand smart pointers correctly, when used directly. Certainly it does in my simple tests.

Is there any form of pattern to when this works and when it fails? Does it seem type specific? Something to do with the files the variable is declared in?

That is a very large file, but unless you are actually working in it I don't see why it should matter. Purely in terms of numbers, if you have a small solution then the odds could be good that any "random" symbol will come from that SQL file.

zen is the art of being at one with the two'ness
Go to Top of Page
Page: of 2 Previous Topic Topic Next Topic  
Previous Page
 New Topic  Reply to Topic
 Printer Friendly
Jump To:
© 2023 Whole Tomato Software, LLC Go To Top Of Page
Snitz Forums 2000