With a struct, correcting the code to prevent the warning. Reference: /n/patches.lsub.org/patch/abacowarn Date: Mon Jul 2 15:55:31 CES 2012 Signed-off-by: paurea@lsub.org --- /sys/src/cmd/abaco/util.c Thu Apr 12 12:25:21 2012 +++ /sys/src/cmd/abaco/util.c Mon Jul 2 15:55:10 2012 @@ -687,22 +687,32 @@ error("can't exec"); } +typedef struct WprocArgs WprocArgs; + +struct WprocArgs { + Channel *sync; + int fd; + char *s; + long np; +}; + + static void writeproc(void *v) { + WprocArgs *w; Channel *sync; - void **a; char *s; long np; int fd, i, n; threadsetname("writeproc"); - a = v; - sync = a[0]; - fd = (int)a[1]; - s = a[2]; - np =(long)a[3]; - free(a); + w = v; + sync = w->sync; + fd = w->fd; + s = w->s; + np = w->np; + free(w); for(i=0; isync = sync; + w->fd = p[1]; + w->s = s; + w->np = *np; + proccreate(writeproc, w, STACK); s = nil; while((n = read(q[0], buf, sizeof(buf))) > 0){