aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2008-11-16 18:43:46 +0000
committerChris Lattner <sabre@nondot.org>2008-11-16 18:43:46 +0000
commit58ace88985b920971b052de8a9a7b89de0654dc0 (patch)
treec95934b7dd68c75a6dd91de1961414576c88d969
parente7f74fc1964527bcaeff1bdb979d67f8e9087097 (diff)
Fix PR3075, __builtin_stdarg_start being misprototyped. This affects netbsd headers.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59419 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r--include/clang/AST/Builtins.def2
-rw-r--r--test/Sema/varargs.c9
2 files changed, 10 insertions, 1 deletions
diff --git a/include/clang/AST/Builtins.def b/include/clang/AST/Builtins.def
index a2d54df18d..5c2666b26a 100644
--- a/include/clang/AST/Builtins.def
+++ b/include/clang/AST/Builtins.def
@@ -118,7 +118,7 @@ BUILTIN(__builtin___CFStringMakeConstantString, "FC*cC*", "nc")
BUILTIN(__builtin_va_start, "va&.", "n")
BUILTIN(__builtin_va_end, "va&", "n")
BUILTIN(__builtin_va_copy, "va&a", "n")
-BUILTIN(__builtin_stdarg_start, "va&a", "n")
+BUILTIN(__builtin_stdarg_start, "va&.", "n")
BUILTIN(__builtin_bzero, "vv*z", "n")
BUILTIN(__builtin_memcpy, "v*v*vC*z", "n")
BUILTIN(__builtin_memmove, "v*v*vC*z", "n")
diff --git a/test/Sema/varargs.c b/test/Sema/varargs.c
index 90568e0298..efde2f0a7c 100644
--- a/test/Sema/varargs.c
+++ b/test/Sema/varargs.c
@@ -25,3 +25,12 @@ void f3(float a, ...)
__builtin_va_start(ap, a);
__builtin_va_start(ap, (a));
}
+
+
+// stdarg: PR3075
+void f4(const char *msg, ...) {
+ __builtin_va_list ap;
+ __builtin_stdarg_start((ap), (msg));
+ __builtin_va_end (ap);
+}
+