Release av cppcheck 2.7, en statisk kodanalysator för C++ och C-språk

En ny version av den statiska kodanalysatorn cppcheck 2.7 har släppts, som låter dig identifiera olika klasser av fel i kod i C- och C++-språken, inklusive när du använder icke-standardsyntax, typisk för inbyggda system. En samling plugins tillhandahålls genom vilka cppcheck integreras med olika utvecklings-, kontinuerliga integrations- och testsystem, och tillhandahåller även sådana funktioner som att kontrollera kodöverensstämmelse med kodstilen. För att analysera kod kan du använda antingen din egen parser eller en extern parser från Clang. Det innehåller också skriptet donate-cpu.py för att tillhandahålla lokala resurser för att utföra samverkande kodgranskningsarbete för Debian-paket. Källkoden för projektet distribueras under GPLv3-licensen.

Utvecklingen av cppcheck är inriktad på att identifiera problem associerade med odefinierat beteende och användning av design som är farlig ur säkerhetssynpunkt. Målet är också att minimera falska positiva resultat. Bland de identifierade problemen: pekare till icke-existerande objekt, divisioner med noll, heltalsspill, felaktiga bitskiftsoperationer, felaktiga konverteringar, problem vid arbete med minne, felaktig användning av STL, nollpekaredereferenser, användning av kontroller efter den faktiska åtkomsten till bufferten, buffertöverskridanden, användning av oinitierade variabler.

Parallellt utvecklar det svenska företaget Cppcheck Solutions AB en utökad version av Cppcheck Premium, som ger analys av förekomsten av oändliga loopar, förbättrad sökning efter oinitierade variabler och avancerad buffertspillanalys.

I den nya versionen:

  • Lagt till stöd för vyer av behållare - vyattributet har lagts till i bibliotekstaggen, vilket indikerar att klassen är en vy. Livstidsanalyskoden har uppdaterats för att använda detta attribut vid sökning efter dinglande behållare;
  • Förbättrade kontroller;
  • Ackumulerade fel har åtgärdats och brister i analysatorn har åtgärdats.

Källa: opennet.ru

Lägg en kommentar