Parrot's sprintf implementation is currently quite buggy, as
evidenced by failing Tcl tests for the [format] command. Parrot
should take Perl 5's sprintf tests rather than writing up new ones.
I've now gone through the sprintf.t and sprintf_tests and skipped only
those tests that need to be skipped. The skipped tests are generally
due to: (1) perl5-specific features in the test, (2) parrot provides a
conversion that perl5 doesn't, or (3) the test contains a '*' modifier
and the harness can't deal with this yet.
The remaining tests have been left as errors, and should either be fixed
or marked as 'todo'. Most of the failing tests seem to be due to one of
~ a '+' flag on unsigned conversions is generating a leading '+' (e.g.,
"%+b" and "%+x" should not result in a leading '+' in output)
~ incorrectly zero-padding fixed-width, left-justified fields
~ sprintf doesn't generate an exception or error when passed an
incomplete format specifier (e.g., '%h' or '%l')