There is no guaranteed or portable way to do this.
Instead of an actual argument list, you might consider passing an array of generic
(void *) pointers. The called function can then step through the array, much like
main() might step through argv. (Obviously this works only if you have control over
all the called functions.)