#include "internal.h" int fmt·vwrite(fmt·State *io, char *fmt, va_list args) { int n; va_list tmp; io->flag = io->width = io->prec = 0; va_copy(tmp, io->args); va_end(io->args); va_copy(io->args,args); n = fmt·do(io, fmt); va_end(io->args); va_copy(io->args, tmp); va_end(tmp); io->flag = io->width = io->prec = 0; if(n >= 0) return 0; return n; }