ハッシュは キー, 値 の対で作ります。要素の数が奇数(値の書き忘れなど)だと警告が出ます。
出るコード
use warnings;
my %h = ('a', 1, 'b'); # 'b' に対応する値が無い
エラーメッセージ
Odd number of elements in hash assignment at script.pl line 2.
直し方
キー => 値 の対になっているか数を数えます。この例なら my %h = ('a', 1, 'b', undef); のように値を補います。