In linux gcc cries: io.c:23:7: error: assignment to expression with array type arg2 = va_arg(*arg, va_list);
I have seen other errors like that in the web, and solutions involving va_copy(). I don't know... I'm just learning but the source seems correct, arg2 is a va_list, and va_arg(*arg, va_list) expand to a va_list, doesn't it?. Anyway: --- abaco/webfs/io.c 2008-02-17 19:27:12.000000000 +0000 +++ abaco_patched/webfs/io.c 2014-10-25 18:03:11.990925835 +0100 @@ -16,11 +16,11 @@ { int fd; char *fmt; - va_list arg2; + void *arg2; fd = va_arg(*arg, int); fmt = va_arg(*arg, char*); - arg2 = va_arg(*arg, va_list); + arg2 = va_arg(*arg, void*); return vfprint(fd, fmt, arg2); }