#define __va_ellipsis
#endif
-#define va_alist __builtin_va_alist
-#define va_dcl char *__builtin_va_alist; __va_ellipsis
-
/* The first element is the address of the first argument.
The second element is the number of bytes skipped past so far. */
typedef unsigned va_list[2];
#define va_start(AP, LASTARG) ((AP)[1] = 0, \
*(AP) = (unsigned) __builtin_next_arg ())
#else
+
+#define va_alist __builtin_va_alist
+#define va_dcl char *__builtin_va_alist; __va_ellipsis
#define va_start(AP) ((AP)[1] = 0, *(AP) = (unsigned) &va_alist)
#endif
#define __va_ellipsis
#endif
-#define va_alist __builtin_va_alist
-#define va_dcl int __builtin_va_alist; __va_ellipsis
#ifndef _VA_LIST_
#define _VA_LIST_
/* Make this a macro rather than a typedef, so we can undef any other defn. */
#define va_start(AP, LASTARG) \
(AP = ((char *) &(LASTARG) + __va_rounded_size (LASTARG)))
#else
+#define va_alist __builtin_va_alist
+#define va_dcl int __builtin_va_alist; __va_ellipsis
#define va_start(AP) AP = (char *) &__builtin_va_alist
#endif
#define __va_ellipsis
#endif
-#define va_alist __builtin_va_alist
-/* The ... causes current_function_varargs to be set in cc1. */
-#define va_dcl int __builtin_va_alist; __va_ellipsis
-
#ifdef _STDARG_H
#define va_start(AP, LASTARG) \
(__builtin_saveregs (), AP = ((char *) __builtin_next_arg ()))
#else
+#define va_alist __builtin_va_alist
+/* The ... causes current_function_varargs to be set in cc1. */
+#define va_dcl int __builtin_va_alist; __va_ellipsis
+
#define va_start(AP) \
(__builtin_saveregs (), (AP) = ((char *) &__builtin_va_alist))
#endif