While testing the Log4r module I've discovered that the sprintf function has 
changed in 1.8.

Using the following test script 

#!/usr/bin/ruby -w

puts sprintf("%*3$s %s", "abcd", "abcd", 10)

I get

[mark@laptop log4r-1.0.2]$ ruby1.6 -v test.rb
ruby 1.6.7 (2002-03-01) [i586-linux-gnu]
      abcd abcd

[mark@laptop log4r-1.0.2]$ ruby -v test.rb
ruby 1.8.0 (2003-08-04) [i686-linux]
test.rb:3:in `sprintf': unnumbered(1) mixed with numbered (ArgumentError)
        from test.rb:3

Does anyone know the correct way to call sprintf under 1.8? I've looked at the 
ruby-lang site to see if this change is mentioned but that just lists the new 
&p modifier.

Thanks in advance

Best Regards

Mark Sparshatt