use Unicode::UCD qw/charscript charblock/; my $infile = shift @ARGV; open (INPUT, "<:utf8", "$infile") or die "cant open $infile: $!"; $/ = undef; my $string = ; my @array = split //, $string; foreach my $uChar (@array) { $uChar = ord($uChar); print "DEBUG uChar: $uChar\n"; #works fine (decimal value of each char is printed) $c = charblock($uChar); print "DEBUG: $c\n"; #produces warning and prints blank } #### my $c = charblock(1578); print "$c\n";