[PATCH] D28620: Guard __gnuc_va_list typedef
Paul Robinson via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Thu Jan 12 11:28:10 PST 2017
probinson created this revision.
probinson added a reviewer: yaron.keren.
probinson added a subscriber: cfe-commits.
https://reviews.llvm.org/D28620
Files:
lib/Headers/stdarg.h
test/Headers/stdarg-gnuc_va_list.c
Index: test/Headers/stdarg-gnuc_va_list.c
===================================================================
--- test/Headers/stdarg-gnuc_va_list.c
+++ test/Headers/stdarg-gnuc_va_list.c
@@ -0,0 +1,10 @@
+// RUN: %clang_cc1 -fsyntax-only -verify -Wsystem-headers -std=c99 %s
+// expected-no-diagnostics
+
+// Check that no warnings are emitted from stdarg.h if __gnuc_va_list has
+// previously been defined in another header file.
+typedef __builtin_va_list __va_list;
+typedef __va_list __gnuc_va_list;
+#define __GNUC_VA_LIST
+
+#include <stdarg.h>
Index: lib/Headers/stdarg.h
===================================================================
--- lib/Headers/stdarg.h
+++ lib/Headers/stdarg.h
@@ -46,7 +46,7 @@
/* Hack required to make standard headers work, at least on Ubuntu */
#ifndef __GNUC_VA_LIST
#define __GNUC_VA_LIST 1
-#endif
typedef __builtin_va_list __gnuc_va_list;
+#endif
#endif /* __STDARG_H */
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D28620.84151.patch
Type: text/x-patch
Size: 924 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20170112/f75241bb/attachment.bin>
More information about the cfe-commits
mailing list