If I understand it correctly it's not mandatory to use second form.
Correct. If you don't use the second form, you may encounter just the sort of difficulties that you are now encountering.
So what might be the reason for "ovf" ?
It is likely that the random bits in the memory location assigned to the uninitialized floating point variable represent an invalid floating point number.