Project

General

Profile

Bug #12548

Updated by nobu (Nobuyoshi Nakada) over 7 years ago

Hi 

 I've found this possible bug with `sprintf` sprintf in our production code, but it 
 seems very odd that no one has reported it so I'm doubting myself. 

 I've tested a few versions (CRuby 2.3.1 and 2.1.9) and it was present in 
 both. 

 To reproduce in irb: 

 ```ruby 
 sprintf('%1.0f', 12.5) 
 ``` 

 Expected result 13 actual 12 

 In fact if you look at the number sequence 0.5 -> 99.5 you find the even 
 half will all round down and the odd half round up. 12.5.round produces the correct result (13) 

 If you do the same in jruby 2.2.1 you get the expected result of 13. 

 Many thanks 

 Kieran 

Back