| 
Change fmt to preserve width, flags, and
precision, and change the logic of
fmt[v]print appropriately.  That
__fmtdispatch discards the flags of the
Fmt structure it receives, is broken
behaviour.  I see no present code in
sources that relies on this behaviour,
and I have been running my Plan 9 boxes
with these changes for a while (having
rebuilt the whole source tree and
kernel).  Moreover, the Go compilers
[568]g rely on the preservation of
flags.
 |