You could do it like AmigaOS does it:
void SomeFunctionA (int a,int *b)
{
/* whatever it does, do it here */
}
VARARGS68K void SomeFunction (int a,...)
{
va_list ap;
va_startlinear (ap,a);
return (SomeFunctionA (a,va_getlinearva (ap,int *)));
}
void SecondFuncA (int a,int *b)
{
/* do some stuff */
SomeFunction (a,b);
/* do some stuff */
}
VARARGS68K void SecondFunc (int a,...)
{
va_list ap;
va_startlinear (ap,a);
return (SecondFunc (a,va_getlinearva (ap,int *)));
}
Bye,
Thomas