Implicit conversion from float -3.125 to int loses precision