Implicit conversion from float -1.5625 to int loses precision