-#define va_arg( va_list ap, Ty ) // TODO
-#define va_copy( va_list dest, va_list src ) // TODO
-#define va_end( va_list ap ) // TODO
-#define va_start( va_list ap, last-par ) // TODO
+#ifndef _PDCLIB_CONFIG_H
+#define _PDCLIB_CONFIG_H _PDCLIB_CONFIG_H
+#include <_PDCLIB_config.h>
+#endif
+
+typedef _PDCLIB_va_list va_list;
+
+#define va_arg( ap, type ) _PDCLIB_va_arg( ap, type )
+#define va_copy( dest, src ) _PDCLIB_va_copy( dest, src )
+#define va_end( ap ) _PDCLIB_va_end( ap )
+#define va_start( ap, parmN ) _PDCLIB_va_start( ap, parmN )
+
+#endif