I tried changing to ints and it didnt make any difference, still fails on compile, "Wrong number/type of parameters".
ALL the overloads have a different NUMBER of parameters, and this number of parameters is unique to each overload variant, as in
the example in my original post. So shouldnt this 'number of parameters' variation override any type-casting issues?

FYI : I get the same problem whether I use prototypes for my overloaded functions or not.

What work and what doesnt is as follows, using these prototypes
Code:
//Prototypes
void PopupMenu(PANEL* *ReturnPanel, STRING* SourceData, var layer);
void PopupMenu(PANEL* *ReturnPanel, STRING* SourceData, var layer, var pos_x, var pos_y);
void PopupMenu(PANEL* *ReturnPanel, STRING* SourceData, var layer, var pos_x, var pos_y, STRING* font);
All compiles OK as long as I only call PopupMenu with three parameters (ie first overload).
Any other number of parameters and I get the compile error
Quote:
'PopupMenu'. Wrong number/type of parameters

But if I change the order to say
Code:
//Prototypes
void PopupMenu(PANEL* *ReturnPanel, STRING* SourceData, var layer, var pos_x, var pos_y);
void PopupMenu(PANEL* *ReturnPanel, STRING* SourceData, var layer, var pos_x, var pos_y, STRING* font);
void PopupMenu(PANEL* *ReturnPanel, STRING* SourceData, var layer);
All NOW compiles OK as long as I only call PopupMenu with FIVE parameters (ie new first overload).

Any ideas?


PS again please remember I get the same problem whether I use prototypes for my overloaded functions or not.


"There is no fate but what WE make." - CEO Cyberdyne Systems Corp.
A8.30.5 Commercial