veracode tools tool sonar software sast code perl lint static-code-analysis

perl - tools - static analysis software



¿Un programa parecido a la pelusa para Perl? (4)

Además de Perl :: Critic, es posible que desee ver el nuevo Perl::Lint .

Estoy buscando una pelusa para Perl, algo que atraparía código muerto y otros problemas potenciales. ¿Alguna sugerencia?

yo tengo

use strict; use warnings;

Ya pero me gustaría tener más.


Perl no tiene un equivalente directo a la pelusa. Una gran parte de la razón de esto es que Perl no proporciona tantas formas de ahorcarte como C lo hace. La versión básica de "pelusa" para Perl es esta:

perl -Mstrict [-Mdiagnostics] -cw <file>

Esto hace que perl compile (pero no ejecute) el archivo especificado con las restricciones y advertencias activadas. Puede usar los diagnósticos si desea mensajes más detallados o omitirlos si los breves son suficientes para usted.

Si desea algo más, intente usar Perl :: Critic , pero tenga en cuenta que esto tampoco es una pelusa. la pelusa se ocupa principalmente de los errores (por ejemplo, cosas que podrían impedir la compilación, desencadenar errores de tiempo de ejecución, no ser portátiles, depender de un comportamiento indefinido, etc.). Perl :: Critic está más centrado en la aplicación de estándares de codificación . Si bien hay algunas coincidencias son cosas muy diferentes.


Utilice B::Lint . Puede usarlo en la línea de comandos llamando al módulo O con Lint como argumento, por ejemplo:

you@there:~/sandbox$ perl -MO=Lint Some.pm Implicit scalar context for array in logical and (&&) at Some.pm line 121 Implicit scalar context for array in conditional expression at Some.pm line 49 Implicit scalar context for array in logical and (&&) at Some.pm line 132 Some.pm syntax OK