| T O P I C    R E V I E W | 
               
              
                | thruska | 
                Posted - Aug 24 2006 : 02:27:49 AM  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.
  | 
               
              
                | 4   L A T E S T    R E P L I E S    (Newest First) | 
               
              
                | feline | 
                Posted - Aug 28 2006 : 4:15:24 PM  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   | 
               
              
                | thruska | 
                Posted - Aug 28 2006 : 4:11:31 PM  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. | 
               
              
                | feline | 
                Posted - Aug 26 2006 : 3:08:39 PM  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? | 
               
              
                | thruska | 
                Posted - Aug 24 2006 : 03:45:07 AM  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. | 
               
             
           | 
         
       
       
     |