From 7ef8a7379f7f7d09e71ccae2a0b688c3cd80423f Mon Sep 17 00:00:00 2001 From: Jakob Kaivo Date: Fri, 8 Feb 2019 18:42:39 -0500 Subject: merge sources into single tree --- src/stdarg/va_arg.c | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) create mode 100644 src/stdarg/va_arg.c (limited to 'src/stdarg/va_arg.c') 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 +#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) +*/ -- cgit v1.2.1