Veja se a função retorna sempre float, pode ser que algum valor específico esteja voltando como int. Por exemplo, se a função retorna 5 é int, mas se ela retornar 5.0 aí é float...Ele não vai assumir que 5 é igual a 5.0 por questões de tipo...
Fórum