Follows from C variadic functions (a)
A convention is followed for functions taking a va_list
. This includes functions like vprintf
. We call va_start
on the list before the function is called and call va_end
on it after the function returns. This means that the v*
functions don’t make calls to va_start
or va_end
.
Observe that call to va_start
will only make sense in a function taking variadic arguments, so it has to be made by the function calling the v*
function. The part about who calls va_end
is a convention.