develooper Front page | perl.perl5.porters | Postings from July 2012

[perl #82418] sprintf() not respecting locale in 5.10+

Thread Previous | Thread Next
Father Chrysostomos via RT
July 2, 2012 23:14
[perl #82418] sprintf() not respecting locale in 5.10+
Message ID:
On Mon Jul 02 22:41:20 2012, sprout wrote:
> On Mon Jul 02 20:17:15 2012, doy wrote:
> > If changes to the runtime environment can cause sprintf to need to
> > output different things, shouldn't we really just not be constant
> > folding sprintf?
> I could have sworn this was already fixed (see commit b3fd6149), but it
> was only fixed for ‘use locale’, not POSIX::setlocale.

Actually, the perllocale page seems to say that setlocale is for
switching locales at run time, but ‘use locale’ is necessary for
enabling it.  It’s a bit vague, though.  This is what perl actually does:

$  ./perl -Ilib -MPOSIX -e 'setlocale(LC_ALL, "nl_NL"); print
sprintf("%f", $_=2.5)."\n";'
$  ./perl -Ilib -MPOSIX -e 'setlocale(LC_ALL, "nl_NL"); print
sprintf("%f", 2.5)."\n";'


Father Chrysostomos

via perlbug:  queue: perl5 status: open

Thread Previous | Thread Next Perl Programming lists via nntp and http.
Comments to Ask Bjørn Hansen at | Group listing | About