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);
}