Listing 6

/*
 * stdarg.h - variable-length argument processing (for stack-
 * oriented argument passing with the 1st argument at the
 * highest address)
 */
#ifndef _STDARG_H_INCLUDED

#include <quirks.h>

typedef char *va_list;

#define va_start(ap, p) ((void)((ap) = (va_list)&(p)))

#define va_arg(ap, t) (*(t *)((ap) -= sizeof(t)))

#define va_end(ap) ((void)0)

#define _STDARG_H_INCLUDED
#endif