The use of '__argv' as parameter names, causes this error from clang-cl: argz.c(234,1): error: conflicting types for 'argz_extract' argz_extract (const char *argz, size_t len, char **argv) ^ .\argz.h(68,13): note: previous declaration is here extern void argz_extract (const char *restrict __argz, size_t __len, ^ argz.c(251,1): error: conflicting types for 'argz_create' argz_create (char *const argv[], char **argz, size_t *len) ^ .\argz.h(48,16): note: previous declaration is here extern error_t argz_create (char *const __argv[], char **restrict __argz, ^
'__argv' is a macro in Windows' <stdlib.h> that expands to '(*__p___argv())'. I could tweak it by a '#undef __argv' first, but... Ref. the line: # elif HAVE_DECL___ARGV /* mingw, MSVC */ in getprogname.c. -- --gv