set errno properly when parsing floating point