xref: /aosp_15_r20/external/clang/test/PCH/va_arg.cpp (revision 67e74705e28f6214e480b399dd47ea732279e315)
1*67e74705SXin Li // Test this without pch.
2*67e74705SXin Li // RUN: %clang_cc1 -triple=x86_64-unknown-freebsd7.0 -include %S/Inputs/va_arg.h %s -emit-llvm -o -
3*67e74705SXin Li // REQUIRES: x86-registered-target
4*67e74705SXin Li 
5*67e74705SXin Li // Test with pch.
6*67e74705SXin Li // RUN: %clang_cc1 -triple=x86_64-unknown-freebsd7.0 -emit-pch -x c++-header -o %t %S/Inputs/va_arg.h
7*67e74705SXin Li // RUN: %clang_cc1 -triple=x86_64-unknown-freebsd7.0 -include-pch %t %s -emit-llvm -o -
8*67e74705SXin Li 
9*67e74705SXin Li typedef __SIZE_TYPE__ size_t;
10*67e74705SXin Li 
11*67e74705SXin Li extern "C" {
12*67e74705SXin Li int vsnprintf(char * , size_t, const char * , va_list) ;
13*67e74705SXin Li int __attribute__((ms_abi)) wvsprintfA(char *, const char *, __ms_va_list);
14*67e74705SXin Li }
15*67e74705SXin Li 
f(char * buffer,unsigned count,const char * format,va_list argptr)16*67e74705SXin Li void f(char *buffer, unsigned count, const char* format, va_list argptr) {
17*67e74705SXin Li   vsnprintf(buffer, count, format, argptr);
18*67e74705SXin Li }
19*67e74705SXin Li 
g(char * buffer,const char * format,__ms_va_list argptr)20*67e74705SXin Li void g(char *buffer, const char *format, __ms_va_list argptr) {
21*67e74705SXin Li   wvsprintfA(buffer, format, argptr);
22*67e74705SXin Li }
23