fixed using strtod() by resetting errno to detect overflow/underflow