On Thu, 4 Jul 2013, Tobias Burnus wrote:

> It sounds like the following bug:
> http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47007
> 
> libgfortran calls libc's strtof/strtod/strtold/libquadmath's strtoflt128
> to convert the number. And that function is locale dependent - but
> gfortran assumes that it uses a "." as decimal separator.
> 
> It's surely fixable - the question is only what's the best approach. I
> see the following possibilities:
> 
> - Ignore the issue (not the best approach but the simplest. Also known
> as: The compiler user has to handle it.)
> - libgfortran should have its own parsing of the string.
> - (Temporarily) reset the local setting before calling
> strtof/strtod/strtold/libquadmath
> - Convert the input to the used locale before calling
> strtof/strtod/strtold/libquadmath

* On systems using glibc, use the functions such as strtod_l that take an 
explicit locale argument.

-- 
Joseph S. Myers
jos...@codesourcery.com

Reply via email to