Andy Dougherty: # You'll probably also want the enhanced sprintf tests (or # something like # them.) Currently, the only one that fails for me is the # %5.3f test, which gives 0.500 in stdio, but # 0.500000000000000000000000000000000 from Parrot.
I finally tracked down this bug. If you look, there are fifty-three zeroes. The format in question is %5.3g. Get the picture? What was happening was that gen_sprintf_call(), which reconstructs a format string from the info structure so it can be passed to the native snprintf, called uint_to_string() once to convert the width to a string, then again to convert the precedence. Unfortunately, the target given to uint_to_string() wasn't being cleared by either it or gen_sprintf_call(), so the sprintf format generated was %5.53g. This is cleared up in my local copy. # Thanks again for all this work, You're quite welcome. :^) And thanks for being a patient and helpful tester and debugger. Once I clear up the issue with the Sun compiler, I'll be committing this. Well, a slightly modified version. Relax, it's nothing drastic--I just ran it through check_source_standards.pl and run_indent.pl. --Brent Dax <[EMAIL PROTECTED]> @roles=map {"Parrot $_"} qw(embedding regexen Configure) Wire telegraph is a kind of a very, very long cat. You pull his tail in New York and his head is meowing in Los Angeles. And radio operates exactly the same way. The only difference is that there is no cat. --Albert Einstein (explaining radio)