Report a bug
If you spot a problem with this page, click here to create a Bugzilla issue.
Improve this page
Quickly fork, edit online, and submit a pull request for this page. Requires a signed-in GitHub account. This works well for small changes. If you'd like to make larger changes you may want to consider using a local clone.


D header file for C99.
This module contains bindings to selected types and functions from the standard C header <stdarg.h>. Note that this is not automatically generated, and may omit some types/functions from the original C header.
Walter Bright, Hauke Duden
ISO/IEC 9899:1999 (E)
alias va_list = __va_list_tag*;
The argument pointer type.
public import core.internal.vararg.sysv_x64 : __va_list, __va_list_tag;
The argument pointer type.
void va_start(T)(out va_list ap, ref T parmn);
Initialize ap. parmn should be the last named parameter.
T va_arg(T)(ref va_list ap);
Retrieve and return the next value that is of type T.
void va_arg(T)(ref va_list ap, ref T parmn);
Retrieve and store in parmn the next value that is of type T.
nothrow @nogc void va_end(va_list ap);
End use of ap.
nothrow @nogc void va_copy(out va_list dest, va_list src, void* storage = alloca(__va_list_tag.sizeof));
Make a copy of ap.