Patch #15146: [snip snip]
+The C<:std> subpragma on its own has no effect, but if combined with +the C<:utf8> or C<:encoding> subpragmas, it converts the standard +filehandles (STDIN, STDOUT, STDERR) to comply with encoding selected +for input/output handles. For example, if both input and out are +chosen to be C<:utf8>, a C<:std> will mean that STDIN, STDOUT, and +STDERR are also in C<:utf8>. On the other hand, if only output is +chosen to be in C<:encoding(koi8r)', a C<:std> will cause only the +STDOUT and STDERR to be in C<koi8r>. The C<:locale> subpragma +implicitly turns on C<:std>. [snip snip] This is what it looks like in Solaris which has UTF-8 locales. Notice how the last two do not warn (the 0x80 after the 0xc4 has been destroyed by my cut and paste, though, this is a MacOS 9 terminal program I'm using...) mimosa:/tmp/jhi/perl ; env LC_ALL=en_US ./perl -Ilib -wle 'print chr(0x100)' Wide character in print at -e line 1. � mimosa:/tmp/jhi/perl ; env LC_ALL=en_US.UTF-8 ./perl -Ilib -wle 'print chr(0x100)' Wide character in print at -e line 1. � mimosa:/tmp/jhi/perl ; env LC_ALL=en_US.UTF-8 ./perl -Ilib -Mopen=:std -wle 'print chr(0x100)' Wide character in print at -e line 1. � mimosa:/tmp/jhi/perl ; env LC_ALL=en_US.UTF-8 ./perl -Ilib -Mopen=:std,:utf8 -wle 'print chr(0x100)' � mimosa:/tmp/jhi/perl ; env LC_ALL=en_US.UTF-8 ./perl -Ilib -Mopen=:locale -wle 'print chr(0x100)' � mimosa:/tmp/jhi/perl ; -- $jhi++; # http://www.iki.fi/jhi/ # There is this special biologist word we use for 'stable'. # It is 'dead'. -- Jack Cohen
