D
Daniel DeLorme
I've just stumbled across the following:
machine1$ ruby -ve 'printf("(%*-s)\n", 10,"hello")'
ruby 1.8.6 (2007-03-13 patchlevel 0) [i386-freebsd6]
(hello )
machine2$ ruby -ve 'printf("(%*-s)\n", 10,"hello")'
ruby 1.8.6 (2007-09-24 patchlevel 111) [i386-freebsd6]
-e:1:in `printf': flag after width (ArgumentError)
from -e:1
I can fix it by changing the pattern to "%-*s", but is that a bug in
patchlevel 111 or is it a "bugfix" for a syntax that was never supposed
to be valid? And if the second case, what is the point of making things
more restrictive?
Daniel
machine1$ ruby -ve 'printf("(%*-s)\n", 10,"hello")'
ruby 1.8.6 (2007-03-13 patchlevel 0) [i386-freebsd6]
(hello )
machine2$ ruby -ve 'printf("(%*-s)\n", 10,"hello")'
ruby 1.8.6 (2007-09-24 patchlevel 111) [i386-freebsd6]
-e:1:in `printf': flag after width (ArgumentError)
from -e:1
I can fix it by changing the pattern to "%-*s", but is that a bug in
patchlevel 111 or is it a "bugfix" for a syntax that was never supposed
to be valid? And if the second case, what is the point of making things
more restrictive?
Daniel