Floating point literals don't work in non-US locale in 2.5. Patch and
new locale tests by Hye-Shik Chang.
loc, set_locale))
+ def test_float_parsing(self):
+ # Bug #1391872: Test whether float parsing is okay on European
+ # locales.
+ for loc in candidate_locales:
+ try:
+ setlocale(LC_NUMERIC, loc)
+ except Error:
+ continue
+ self.assertEquals(int(eval('3.14') * 100), 314)
+ self.assertEquals(int(float('3.14') * 100), 314)
+
+
def test_main():
run_unittest(_LocaleTests)
if (imflag) {
c.real = 0.;
PyFPE_START_PROTECT("atof", return 0)
- c.imag = atof(s);
+ c.imag = PyOS_ascii_atof(s);
PyFPE_END_PROTECT(c)
return PyComplex_FromCComplex(c);
}
#endif
{
PyFPE_START_PROTECT("atof", return 0)
- dx = atof(s);
+ dx = PyOS_ascii_atof(s);
PyFPE_END_PROTECT(dx)
return PyFloat_FromDouble(dx);
}