#include #include #include #include #include using VaListFnPtr = int32_t(*)(int32_t count, ...); using VaListFnPtr2 = int32_t(*)(int32_t count, ...); template struct Interface { T fn1; }; extern "C" { int32_t va_list_test(int32_t count, ...); int32_t va_list_test2(int32_t count, ...); void va_list_fn_ptrs(int32_t (*fn1)(int32_t count, ...), int32_t (*fn2)(int32_t count, ...), VaListFnPtr fn3, VaListFnPtr2 fn4, Interface fn5, Interface fn6); } // extern "C"