Outil gratuit d’analyse statique C / C ++ pour détecter la promotion intégrale, le débordement / la troncature

Markus

Outil gratuit d’analyse statique C / C ++ pour détecter la promotion intégrale, le débordement / la troncature


Pour les projets C / C ++ (en particulier les grands), la détection de toutes ces erreurs peut être très difficile.

Plus d’informations peuvent être trouvées ici .

Le logiciel PC-Lint / FlexeLint de Gimpel Software LLC peut le faire. Testé avec leur web checker. Il détecte l’avertissement suivant: main.c (13): avertissement 647 : troncature suspecte

J’ai également essayé avec frama-c, attelle et cppcheck sans le détecter.

Quel outil gratuit puis-je utiliser pour détecter ce problème dans mon code?

 #include <stdio.h> #include <stdint.h> #include <inttypes.h> int main() { int32_t a, b; int64_t result; a = INT32_MAX; b = 2; // Wrong result = a * b; printf("result = %" PRId64 "n", result); // Right result = (int64_t)a * b; printf("result = %" PRId64 "n", result); } 

Réponses


 Chenmunka

AdLint est disponible sur SourceForge.

Il s’agit d’un analyseur de code statique gratuit et open source. Il devrait couvrir la plupart de vos besoins.

Markus

Dans ce cas, met-il un avertissement à la ligne 13?

Markus

Met W0722 et W0578 sur la ligne, pas aussi clair et PC-Lint mais c’est assez bon, merci

 

«détecter, /, #la, #pour, ++, C, d’analyse, débordement, gratuit,, intégrale, Le, Outil, promotion, statique?, troncature

 

elle.fr

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *