summaryrefslogtreecommitdiff
path: root/src/stdarg/va_start.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/stdarg/va_start.h')
-rw-r--r--src/stdarg/va_start.h21
1 files changed, 21 insertions, 0 deletions
diff --git a/src/stdarg/va_start.h b/src/stdarg/va_start.h
new file mode 100644
index 00000000..2f08ee9a
--- /dev/null
+++ b/src/stdarg/va_start.h
@@ -0,0 +1,21 @@
+#define va_start(__ap, __parmN) __builtin_va_start(__ap, __parmN)
+
+/** begin processing unnamed arguments **/
+
+/***
+prepares unnamed arguments for use. It initializes ARGUMENT(ap) with the the
+first argument after the argument named by ARGUMENT(parmN). The argument named
+by ARGUMENT(parmN) must be the final named argument to function (i.e. the
+argument just prior to LITERAL(`, ...')).
+***/
+
+/*
+PROTOTYPE(void va_start(va_list ap, VAR(parmN));)
+
+UNDEFINED(ARGUMENT(parmN) is declared TYPE(register))
+UNDEFINED(ARGUMENT(parmN) is a function pointer)
+UNDEFINED(ARGUMENT(parmN) is an array type)
+UNDEFINED(ARGUMENT(parmN) is a type not compatible with default argument promotions)
+
+STDC(1)
+*/