handle i64 to float, not just double