perl -wle 'if (0) {no_such_func()}'
no_such_func() が呼び出されることはないため、上記は -w にもかかわらずエラーなしで実行されます。
使用していないものも含め、参照するすべての関数/モジュールを Perl にチェックさせるにはどうすればよいですか?
より現実的なケースでは、一部の関数は特別な場合にのみ呼び出される可能性がありますが、それでもそれらが存在することを確認したいと思います.
編集: perlcritic をインストールしましたが、まだ何か間違っていると思います。このファイルを作成しました:
#!/bin/perl -w
use strict;
if (0) {no_such_func();}
そして、perlcritic は問題ないと言いました ("source OK")。no_such_func() が存在しないことを静的解析で検出できるのでしょうか? プログラムも正常に実行されます (出力は生成されません)。