diff options
| author | Douglas Gregor <dgregor@apple.com> | 2010-10-05 14:55:45 +0000 |
|---|---|---|
| committer | Douglas Gregor <dgregor@apple.com> | 2010-10-05 14:55:45 +0000 |
| commit | 93269380e7fe3c1e203f029eee216020bbf196d1 (patch) | |
| tree | 09c2a059f0c273dd22d18d140a97babec70dad8e /clang/test | |
| parent | 9ddb678d4520e7aad9f7570bd77e3aff02a7f713 (diff) | |
| download | bcm5719-llvm-93269380e7fe3c1e203f029eee216020bbf196d1.tar.gz bcm5719-llvm-93269380e7fe3c1e203f029eee216020bbf196d1.zip | |
Register the __builtin_va_list_type node when we parse it, rather than
waiting until we think we need it: we didn't catch all of the places
where we actually needed it, and we probably wouldn't ever. Fixes a
C++ PCH crasher.
llvm-svn: 115617
Diffstat (limited to 'clang/test')
| -rw-r--r-- | clang/test/Index/c-index-api-loadTU-test.m | 2 | ||||
| -rw-r--r-- | clang/test/PCH/Inputs/va_arg.h | 2 | ||||
| -rw-r--r-- | clang/test/PCH/va_arg.cpp | 16 |
3 files changed, 19 insertions, 1 deletions
diff --git a/clang/test/Index/c-index-api-loadTU-test.m b/clang/test/Index/c-index-api-loadTU-test.m index f34593f3e85..2176ea21525 100644 --- a/clang/test/Index/c-index-api-loadTU-test.m +++ b/clang/test/Index/c-index-api-loadTU-test.m @@ -28,7 +28,7 @@ @protocol SubP <Proto> - spMethod; -@end +@endxb @interface Baz : Bar <SubP> { diff --git a/clang/test/PCH/Inputs/va_arg.h b/clang/test/PCH/Inputs/va_arg.h new file mode 100644 index 00000000000..1244e9faa36 --- /dev/null +++ b/clang/test/PCH/Inputs/va_arg.h @@ -0,0 +1,2 @@ +#include <stdarg.h> + diff --git a/clang/test/PCH/va_arg.cpp b/clang/test/PCH/va_arg.cpp new file mode 100644 index 00000000000..7c8dc6b316f --- /dev/null +++ b/clang/test/PCH/va_arg.cpp @@ -0,0 +1,16 @@ +// Test this without pch. +// RUN: %clang_cc1 -triple=x86_64-unknown-freebsd7.0 -include %S/Inputs/va_arg.h %s -emit-llvm -o - + +// Test with pch. +// RUN: %clang_cc1 -triple=x86_64-unknown-freebsd7.0 -emit-pch -x c++-header -o %t %S/Inputs/va_arg.h +// RUN: %clang_cc1 -triple=x86_64-unknown-freebsd7.0 -include-pch %t %s -emit-llvm -o - + +typedef __SIZE_TYPE__ size_t; + +extern "C" { +int vsnprintf(char * , size_t, const char * , va_list) ; +} + +void f(char *buffer, unsigned count, const char* format, va_list argptr) { + vsnprintf(buffer, count, format, argptr); +} |

