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
 1532: Default Intellisense finds 2, VAX finds 1
 New Topic  Reply to Topic
 Printer Friendly
Author Previous Topic Topic Next Topic  

thruska
Ketchup Master

71 Posts

Posted - Aug 24 2006 :  02:27:49 AM  Show Profile  Reply with Quote
I have two functions in a class with the same name, different number of parameters, and different return types. Here are the prototypes (part of the BString class):

BString fread(size_t Num);
int fread(BString &Result, size_t Num);

VAX only displays the latter one in both hover and edit modes. If I turn off VAX, the normal Intellisense correctly displays both prototypes in both hover and edit modes. I don't use fread() very often as it is a CPU-intensive function.

Best guess is that VAX is either confused about 'fread' as a function name in a class or returning a class from a function or some combination of the two.

Didn't test this with 1446 to see if it is a problem there.

Thomas Hruska
CubicleSoft President
http://www.cubiclesoft.com/

thruska
Ketchup Master

71 Posts

Posted - Aug 24 2006 :  03:45:07 AM  Show Profile  Reply with Quote
Just ran into a similar scenario with a different class. This time, however, the prototypes are as follows:

int Create(SInt32, SInt32);
int Create(SInt32, SInt32, const SomeClass &);

VAX picks up just the latter function for both hover and edit modes. Default Intellisense picks up both in edit mode but doesn't display a hover tooltip. 'SomeClass' and this class are both part of a wrapper/parent class:

class ParentClass
{
public:
class SomeClass
{
public:
...
};

class MyClass
{
public:
...
int Create(SInt32, SInt32);
int Create(SInt32, SInt32, const SomeClass &);
...
};
};

I'm now stumped as to why this is a problem because the name 'Create' isn't a global function and the class isn't being self-referenced. This could be part of the same issue (number of parameters with same name affects display) or it could be totally unrelated (i.e. both could be separate issues).

NOTE: The main .cpp file being parsed by VAX in this case is about 1.4MB in size. The header file is 300K. I don't know if that's important, but figured I'd mention it anyway.

Thomas Hruska
CubicleSoft President
http://www.cubiclesoft.com/
Go to Top of Page

feline
Whole Tomato Software

United Kingdom
19020 Posts

Posted - Aug 26 2006 :  3:08:39 PM  Show Profile  Reply with Quote
when you say VA does not pick up both functions, what do you mean?
is one of the functions missing from a completion listbox - the listbox you get after CTRL-SPACE.
is one of the functions missing when you call the function and are typing in the parameters, so that only one overload is listed.

or are you looking at something else?

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

thruska
Ketchup Master

71 Posts

Posted - Aug 28 2006 :  4:11:31 PM  Show Profile  Reply with Quote
I'm not so sure that this is a problem anymore. I've introduced too many variables into the equation. After writing this I disabled the "Allow Acronyms" option which, in turn, rebuilt the cache and lot of problems simply disappeared and I'm not sure why. Since I just upgraded to 1533, I'll do some more testing again.

Thomas Hruska
CubicleSoft President
http://www.cubiclesoft.com/
Go to Top of Page

feline
Whole Tomato Software

United Kingdom
19020 Posts

Posted - Aug 28 2006 :  4:15:24 PM  Show Profile  Reply with Quote
upgrading to 1533 will have triggered a rebuild of the symbol database. if you start running into odd effects again then the more details you can provide the better

zen is the art of being at one with the two'ness
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