Without the change, it should get any example wrong. This is with native Plan 9, though. Plan9port's fltfmt.c is not the same, so it must be working correctly.
term% cat foo.c #include <u.h> #include <libc.h> void main(void) { print("%.5g\n", 12345.67890); exits(nil); } term% 8.out 12345.7