Perl に末尾で Missing right curly or square bracket と言われたら


Perl の文法チェックをしていると、エラー箇所がファイルの末尾ですと表示される事がある。
例えば以下のように、どこかでカッコが抜けているけど、1500行目はファイルの末尾だったりする場合。

% perl -c blabla.pl
Missing right curly or square bracket at blabla.pl line 1500, at end of line
syntax error at blabla.pl line 1500, at EOF
blabla.pl had compilation errors.

あたりを付けるためには、ファイル中間、たとえば700行目付近のどこか切りのいいところに「__END__」 を挟んで再度 perl -c する。

Perl コンパイラは「__END__」以降のコードを無視するので、もしカッコの不足が「__END__」を挿入したより上にあれば、また文法エラーが出る。
もし「__END__」を挿入したより下にあれば、文法エラーは出ない。

文法エラーが出れば今度は350行目付近、文法エラーが出なければ1000行目付近に「__END__」を移動して文法チェックを繰り返す。
何度かやると、エラーが出ているか所を特定できる。