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: Change Signiture on Overloaded Functions
 New Topic  Reply to Topic
 Printer Friendly
Author Previous Topic Topic Next Topic  

BrianCBecker
New Member

4 Posts

Posted - Aug 19 2006 :  5:02:50 PM  Show Profile  Reply with Quote
Hi,

I noticed that VA doesn't seem to support changing the signitures of overloaded functions. I did a quick search on the forums and didn't see anything about it, so here goes:

Let's say you have this class:

class Test123
{
void calculate(double a1);
int calculate(double a1, int b0);
};

I want to change the signiture of the second calculate to this:

class Test123
{
void calculate(double a1);
int calculate(double a1, int b0 = 0);
};


If I click "Change signiture" on the second calculate function, I get this window:



Which contains the signiture of the first calculate function. If I try to put in the signiture I want:

int calculate(double a1, int b0 = 0);

I get:

class Test123
{
int calculate(double a1, int b0 = 0);
int Test123::calculate(double a1, int b0 /*= 0*/)
};

Definitely not what I want.

Info is as follows:

VA_X.dll file version 10.3.1532.0 built 2006.08.10
VAOpsWin.dll version 1.3.3.6
VATE.dll version 1.0.5.8
DevEnv.exe version 8.0.50727.42
msenv.dll version 8.0.50727.42
Font: Courier New 12(Pixels)
Comctl32.dll version 6.0.2900.2180
Windows XP 5.1 Build 2600 Service Pack 2
Single processor

Platform: Win32
Stable Includes:
C:\\Program Files\\Microsoft DirectX SDK (April 2006)\\Include;
C:\\Program Files\\Microsoft Visual Studio 8\\VC\\include;
C:\\Program Files\\Microsoft Visual Studio 8\\VC\\atlmfc\\include;
C:\\Program Files\\Microsoft Visual Studio 8\\VC\\PlatformSDK\\include;
C:\\Program Files\\Microsoft Visual Studio 8\\VC\\PlatformSDK\\common\\include;
C:\\Program Files\\Microsoft Visual Studio 8\\SDK\\v2.0\\include;
C:\\Program Files\\wxWidgets-2.6.3\\include;
C:\\MATLAB6p5\\extern\\include;
C:\\Program Files\\wxWidgets-2.6.3\\include\\msvc;
C:\\Program Files\\Microsoft Platform SDK\\Include;
C:\\Program Files\\Microsoft Platform SDK\\Samples\\Multimedia\\DirectShow\\Common;
C:\\Program Files\\Microsoft Platform SDK\\Samples\\Multimedia\\DirectShow\\BaseClasses;
C:\\Program Files\\wxWidgets-2.6.3\\contrib\\include;
C:\\Program Files\\WMSDK\\WMFSDK95\\include;
C:\\Downloads\\jit\\froofyjit-0.20.tar\\froofyjit;
C:\\Downloads\\jit\\lightning-1.2.tar\\lightning-1.2;

Library Includes:
C:\\Program Files\\Microsoft Visual Studio 8\\VC\\atlmfc\\src\\mfc;
C:\\Program Files\\Microsoft Visual Studio 8\\VC\\atlmfc\\src\\atl;
C:\\Program Files\\Microsoft Visual Studio 8\\VC\\crt\\src;

Other Includes:



Thanks!

Sincerely,
Brian C. Becker @ www.BrianCBecker.com

BrianCBecker
New Member

4 Posts

Posted - Aug 19 2006 :  5:25:54 PM  Show Profile  Reply with Quote
Hi,

Correction to previous post: Because I forgot a semi-colon at the end of the second calculate function, the change signiture results are different, but still wrong:

class Test123
{
int calculate(double a1, int b0 = 0);
int calculate(double a1, int b0);
};

Notice that the first calculate function has been changed, not the first.

Sincerely,
Brian C. Becker @ www.BrianCBecker.com
Go to Top of Page

feline
Whole Tomato Software

United Kingdom
18951 Posts

Posted - Aug 20 2006 :  4:41:50 PM  Show Profile  Reply with Quote
currently this is a known limitation. VA does not currently "know" which overload you are talking about, and cannot reliably find both its definition and implementation. you will get the same problem with alt-g, where VA asks you which item you want.

we are hoping to handle this eventually, but i am not sure when this will happen.

i have added a case for this, to make it a bit easier to track this.

case=2164

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

jpizzi
Tomato Guru

USA
642 Posts

Posted - Aug 21 2006 :  10:56:20 PM  Show Profile  Reply with Quote
Just as a side note, I don't believe your code will work. You have created two functions that are overloaded only on return type, since the second parameter is optional.

Joe Pizzi
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