stdarg.h is usually shipped with the compiler itself and that's what we currently use for non-mingw builds (including clang MSVC builds). This mostly works fine for us, but (in addition to GCC/clang), mingw-w64 also ships this header. This may be problematic in some cases, because it pulls _mingw.h, which may define things like _UCRT.