diff options
Diffstat (limited to 'src/stdarg/va_arg.c')
| -rw-r--r-- | src/stdarg/va_arg.c | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/src/stdarg/va_arg.c b/src/stdarg/va_arg.c new file mode 100644 index 00000000..37353882 --- /dev/null +++ b/src/stdarg/va_arg.c @@ -0,0 +1,22 @@ +#include <stdarg.h> +#define va_arg(ap, type) __builtin_va_arg(ap, type) + +/** get an unnamed parameter **/ + +/*** +retrieves the next unnamed parameter for use. The +ARGUMENT(ap) parameter must be first initialized with a call to FUNCTION(va_start). +Each successive call to FUNCTION(va_arg) evaluates the next argument as an +object of type ARGUMENT(type) and returns that value, modifying ARGUMENT(ap) for use in +the next call to FUNCTION(va_arg). +***/ + +/* +PROTOTYPE(TYPE(VAR(type)) va_arg(va_list ap, TYPE(VAR(type)));) +UNDEFINED(There is no next argument) +UNDEFINED(The next argument is not compatible with TYPE(ARGUMENT(type))) +RETURN_SUCCESS(an object of TYPE(ARGUMENT(type)) which is the next unnamed function parameter) +*/ +/* +STDC(1) +*/ |
