{ } や ( ) の閉じ忘れで、ファイル末尾を指してエラーになります。
出るコード
use strict;
my %h = (a => 1, b => 2; # ) の閉じ忘れ
エラーメッセージ
Missing right curly or square bracket at script.pl line 2, at end of line
syntax error at script.pl line 2, at EOF
直し方
開きかっこと閉じかっこの数を合わせます。エディタのかっこ対応表示が助けになります。