Place the definition of 'va_list' within a preprocessor guard. This matches the behavior of GCC, and avoids potential conflicts with system headers (e.g., stdio.h). Fixes <rdar://problem/7727145>.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98003 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/Headers/stdarg.h b/lib/Headers/stdarg.h
index bbbaff9..c36ab12 100644
--- a/lib/Headers/stdarg.h
+++ b/lib/Headers/stdarg.h
@@ -26,7 +26,10 @@
#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)