2020-12-05 12:20:41 -08:00
|
|
|
#include "libc/runtime/valist.h"
|
2020-12-01 03:43:40 -08:00
|
|
|
|
2020-12-05 12:20:41 -08:00
|
|
|
#define __GNUC_VA_LIST 1
|
|
|
|
#define __gnuc_va_list va_list
|
2020-12-01 03:43:40 -08:00
|
|
|
|
2020-12-05 12:20:41 -08:00
|
|
|
#define va_end(AP)
|
|
|
|
#define va_copy(DST, SRC) ((DST)[0] = (SRC)[0])
|
2020-12-27 17:05:03 -08:00
|
|
|
#define va_start(AP, LAST) \
|
|
|
|
do { \
|
|
|
|
*(AP) = *(struct __va_list *)__va_area__; \
|
2020-12-01 03:43:40 -08:00
|
|
|
} while (0)
|
|
|
|
|
2020-12-05 12:20:41 -08:00
|
|
|
#define va_arg(AP, TYPE) \
|
|
|
|
(*(TYPE *)__va_arg(AP, sizeof(TYPE), _Alignof(TYPE), \
|
|
|
|
__builtin_reg_class(TYPE)))
|
2020-12-01 03:43:40 -08:00
|
|
|
|
2020-12-27 17:05:03 -08:00
|
|
|
typedef struct __va_list va_list[1];
|