Note: In the following source code,
replace "∃" with the UTF-8 representation of "∃", and
replace "трщь" with the UTF-8 representation of "трщь".
outputsuse strict; use warnings; no warnings 'redefine'; for ( [ "Symbol, use utf8: " => "use utf8; sub ∃ {}" ], [ "Symbol, no utf8: " => "no utf8; sub ∃ {}" ], [ "Russian, use utf8: " => "use utf8; sub трщ +00; {}" ], [ "Russian, no utf8: " => "no utf8; sub трщ +00; {}" ], ) { print $_->[0], eval "$_->[1]; 1" ? "Success\n" : $@; }
Symbol, use utf8: Illegal declaration of anonymous subroutine at (eva +l 1) line 1. Symbol, no utf8: Illegal declaration of anonymous subroutine at (eva +l 2) line 1. Russian, use utf8: Success Russian, no utf8: Illegal declaration of anonymous subroutine at (eva +l 4) line 1.
If the problem is what you say it is, wouldn't use utf8 have no effect on the error?
In reply to Re^2: A sub named ∃
by ikegami
in thread A sub named ∃
by diotalevi
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |