Tests for use charnames with compilation errors and aliases.
__END__
-# unsupported pragma
+# NAME illegal :pragma
use warnings;
use charnames ":scoobydoo";
"Here: \N{e_ACUTE}!\n";
Undefined subroutine &charnames::string_vianame called at - line 2.
Here: 4
########
-# wrong type of alias (missing colon)
+# NAME wrong type of alias (missing colon)
no warnings;
use charnames "alias";
"Here: \N{e_ACUTE}!\n";
OPTIONS regex
Unknown charname 'e_ACUTE' at
########
-# alias without an argument
+# NAME alias without an argument
use warnings;
use charnames ":alias";
"Here: \N{e_ACUTE}!\n";
OPTIONS regex
:alias needs an argument in charnames at
########
-# reversed sequence
+# NAME reversed sequence
use warnings;
use charnames ":alias" => ":full";
"Here: \N{e_ACUTE}!\n";
OPTIONS regex
:alias cannot use existing pragma :full \(reversed order\?\) at
########
-# alias with hashref but no :full
+# NAME alias with hashref but no :full
use warnings;
use charnames ":alias" => { e_ACUTE => "LATIN SMALL LETTER E WITH ACUTE" };
"Here: \N{e_ACUTE}!\n";
OPTIONS regex
Unknown charname 'LATIN SMALL LETTER E WITH ACUTE' at
########
-# alias with hashref but with :short
+# NAME alias with hashref but with :short
use warnings;
no warnings 'void';
use charnames ":short", ":alias" => { e_ACUTE => "LATIN SMALL LETTER E WITH ACUTE" };
OPTIONS regex
Unknown charname 'LATIN SMALL LETTER E WITH ACUTE' at
########
-# alias with hashref to :full OK
+# NAME alias with hashref to :full OK
use warnings;
no warnings 'void';
use charnames ":full", ":alias" => { e_ACUTE => "LATIN SMALL LETTER E WITH ACUTE" };
OPTIONS regex
$
########
-# alias with hashref to :loose OK
+# NAME alias with hashref to :loose OK
use warnings;
no warnings 'void';
use charnames ":loose", ":alias" => { e_ACUTE => "LATIN SMALL LETTER E WITH ACUTE" };
OPTIONS regex
$
########
-# alias with :loose requires :full type name
+# NAME alias with :loose requires :full type name
use warnings;
no warnings 'void';
use charnames ":loose", ":alias" => { e_ACUTE => "latin SMALL LETTER E WITH ACUTE" };
OPTIONS regex
Unknown charname 'latin SMALL LETTER E WITH ACUTE' at
########
-# alias with hashref to :short but using :full
+# NAME alias with hashref to :short but using :full
use warnings;
no warnings 'void';
use charnames ":full", ":alias" => { e_ACUTE => "LATIN:e WITH ACUTE" };
OPTIONS regex
Unknown charname 'LATIN:e WITH ACUTE' at
########
-# alias with hashref to :short OK
+# NAME alias with hashref to :short OK
use warnings;
no warnings 'void';
use charnames ":short", ":alias" => { e_ACUTE => "LATIN:e WITH ACUTE" };
OPTIONS regex
$
########
-# alias with bad hashref
+# NAME alias with bad hashref
use warnings;
no warnings 'void';
use charnames ":short", ":alias" => "e_ACUTE";
OPTIONS regex
unicore/e_ACUTE_alias.pl cannot be used as alias file for charnames at
########
-# alias with arrayref
+# NAME alias with arrayref
use warnings;
no warnings 'void';
use charnames ":short", ":alias" => [ e_ACUTE => "LATIN:e WITH ACUTE" ];
OPTIONS regex
Only HASH reference supported as argument to :alias at
########
-# alias with bad hashref
+# NAME alias with bad hashref
no warnings;
use charnames ":short", ":alias" => { e_ACUTE => "LATIN:e WITH ACUTE", "a_ACUTE" };
"Here: \N{e_ACUTE}\N{a_ACUTE}!\n";
OPTIONS regex
Unknown charname 'a_ACUTE' at
########
-# alias with hashref two aliases
+# NAME alias with hashref two aliases
use warnings;
no warnings 'void';
use charnames ":short", ":alias" => {
OPTIONS regex
Unknown charname '' at
########
-# alias with hashref two aliases
+# NAME alias with hashref two aliases
use warnings;
no warnings 'void';
use charnames ":short", ":alias" => {
OPTIONS regex
$
########
-# alias with hashref using mixed aliases
+# NAME alias with hashref using mixed aliases
use warnings;
use charnames ":short", ":alias" => {
e_ACUTE => "LATIN:e WITH ACUTE",
OPTIONS regex
Unknown charname 'LATIN SMALL LETTER A WITH ACUT' at
########
-# alias with hashref using mixed aliases
+# NAME alias with hashref using mixed aliases
use warnings;
use charnames ":short", ":alias" => {
e_ACUTE => "LATIN:e WITH ACUTE",
OPTIONS regex
Unknown charname 'LATIN SMALL LETTER A WITH ACUTE' at
########
-# alias with hashref using mixed aliases
+# NAME alias with hashref using mixed aliases
use warnings;
no warnings 'void';
use charnames ":full", ":alias" => {
OPTIONS regex
Unknown charname 'LATIN:e WITH ACUTE' at
########
-# alias with nonexisting file
+# NAME alias with nonexisting file
use warnings;
no warnings 'void';
use charnames ":full", ":alias" => "xyzzy";
OPTIONS regex
unicore/xyzzy_alias.pl cannot be used as alias file for charnames at
########
-# alias with bad file name
+# NAME alias with bad file name
use warnings;
no warnings 'void';
use charnames ":full", ":alias" => "xy 7-";
OPTIONS regex
Charnames alias files can only have identifier characters at
########
-# alias with non_absolute (existing) file name (which it should /not/ use)
+# NAME alias with non_absolute (existing) file name (which it should /not/ use)
use warnings;
no warnings 'void';
use charnames ":full", ":alias" => "perl";
OPTIONS regex
$
########
-# charnames with no import still works for runtime functions
+# NAME charnames with no import still works for runtime functions
use warnings;
no warnings 'void';
use charnames ();