while running following script on active perl 5.24 build 2404 x64
perl freezes!.
#!/perl/bin/perl -w
use utf8;
my $enc_os = ‘cp932’;
#binmode STDIN, “:encoding($enc_os)”;
binmode STDOUT, “:encoding($enc_os)”;
binmode STDERR, “:encoding($enc_os)”;
use strict;
{my $uuuu;
print “uuuu=$uuuu\n”;}
on active perl v5.12.2 or on Strawberry perl v5.30.3 at least this script does not freeze,outpot is following.
Use of uninitialized value $uuuu in concatenation (.) or string at b.pl line 9.
uuuu=
Do you know why this script freezes?
Build 2404 has been end of life for several years, and if there’s a bug in Encode or the UTF8 support, it cannot be fixed. Does ActivePerl 5.28.1 work with your code? If there’s a problem in the current version, we could possibly fix it.
self review
If Japanese is included in the script path, the problem will be reproduced.
I am trying to install 5.28. But installer ActivePerl-5.28.msi (5,771,264 bytes) is stuck at status [installing State Tool …]. I am trying to install to c:\perl64_528, but no files are created in this folder. The installer does not exit when I press the cancel button.
self review.
I just have installed from [Alternate Installers for Perl] 5.28.1.0000-MSWin32-x64-e90bcbf1.exe.
then I’ve made sure that perl 5.28 doesn’t freeze while running the above script.
I thought it was resolved, but I was wrong.
When I started it with perl test.pl, the problem was resolved, but when I started it with test.pl, it still freezes.
I think the reason is that the script path contains wide characters, but it’s hard to freeze.