
This reverts r360271 (git commit a0933bd8ec1515167ea653f7ee788b8bbde27d51) There are concerns on the review that this breaks EFI builds and that the transitive includes (sal.h) are actually heavy enough that we might care. llvm-svn: 360291
36 lines
1.1 KiB
C++
36 lines
1.1 KiB
C++
/*===---- stdarg.h - Variable argument handling ----------------------------===
|
|
*
|
|
* Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
|
|
* See https://llvm.org/LICENSE.txt for license information.
|
|
* SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
|
|
*
|
|
*===-----------------------------------------------------------------------===
|
|
*/
|
|
|
|
#ifndef __STDARG_H
|
|
#define __STDARG_H
|
|
|
|
#ifndef _VA_LIST
|
|
typedef __builtin_va_list va_list;
|
|
#define _VA_LIST
|
|
#endif
|
|
#define va_start(ap, param) __builtin_va_start(ap, param)
|
|
#define va_end(ap) __builtin_va_end(ap)
|
|
#define va_arg(ap, type) __builtin_va_arg(ap, type)
|
|
|
|
/* GCC always defines __va_copy, but does not define va_copy unless in c99 mode
|
|
* or -ansi is not specified, since it was not part of C90.
|
|
*/
|
|
#define __va_copy(d,s) __builtin_va_copy(d,s)
|
|
|
|
#if __STDC_VERSION__ >= 199901L || __cplusplus >= 201103L || !defined(__STRICT_ANSI__)
|
|
#define va_copy(dest, src) __builtin_va_copy(dest, src)
|
|
#endif
|
|
|
|
#ifndef __GNUC_VA_LIST
|
|
#define __GNUC_VA_LIST 1
|
|
typedef __builtin_va_list __gnuc_va_list;
|
|
#endif
|
|
|
|
#endif /* __STDARG_H */
|