my %capital : Hash::Sorted; #### use strict; use warnings; use Attribute::Handlers; package H; sub Sorted :ATTR { print "sorted" } package main; my $tst :H::Sorted; sub tst :H::Sorted { print "hui" } tst(); #### Invalid separator character ':' in attribute list at /home/lanx/B/PL/PM/uni_attr.pl line 16, near "$tst :H" syntax error at /home/lanx/B/PL/PM/uni_attr.pl line 16, near "$tst :H" Invalid separator character ':' in attribute list at /home/lanx/B/PL/PM/uni_attr.pl line 18, near "sub tst :H" syntax error at /home/lanx/B/PL/PM/uni_attr.pl line 18, near "sub tst :H" Execution of /home/lanx/B/PL/PM/uni_attr.pl aborted due to compilation errors.