Matt Provost <mprov...@termcap.net> writes:

> Is there a portable way to pass a va_list between threads?

This question would be more appropriate for the gcc-h...@gcc.gnu.org
mailing list.

The answer is no: you can not pass va_list values between threads.  If
you think about it you will realize that the va_list value can not hold
the complete set of variable arguments, as there is no way to know how
many there are.  Therefore, if you pass enough variable arguments to a
function, it is guaranteed that some will be on the stack.  You can not
reliably pass a reference to the stack of one thread to another thread,
because the first thread might exit before the second thread runs.

Ian

Reply via email to