If you don’t have a function analogous to vfprintf
that takes a va_list
instead of a variable number of arguments, you can’t do it. See http://c-faq.com/varargs/handoff.html.
Example:
void myfun(const char *fmt, va_list argp) {
vfprintf(stderr, fmt, argp);
}