Implicit conversion from float -15.5 to int loses precision