Izdaja cppcheck 2.7, statičnega analizatorja kode za jezika C++ in C

Izdana je bila nova različica analizatorja statične kode cppcheck 2.7, ki vam omogoča prepoznavanje različnih razredov napak v kodi v jezikih C in C++, vključno z uporabo nestandardne sintakse, značilne za vgrajene sisteme. Zagotovljena je zbirka vtičnikov, prek katerih je cppcheck integriran z različnimi sistemi za razvoj, stalno integracijo in testiranje ter nudi tudi funkcije, kot je preverjanje skladnosti kode s slogom kode. Za razčlenjevanje kode lahko uporabite svoj lastni razčlenjevalnik ali zunanji razčlenjevalnik podjetja Clang. Vključuje tudi skript donate-cpu.py za zagotavljanje lokalnih virov za sodelovanje pri pregledu kode za pakete Debian. Izvorna koda projekta se distribuira pod licenco GPLv3.

Razvoj cppcheck je osredotočen na prepoznavanje težav, povezanih z nedefiniranim vedenjem in uporabo dizajnov, ki so nevarni z varnostnega vidika. Cilj je tudi zmanjšati lažne pozitivne rezultate. Med ugotovljenimi težavami: kazalci na neobstoječe objekte, deljenja z ničlo, prelivi celih števil, nepravilne operacije bitnega premika, nepravilne pretvorbe, težave pri delu s pomnilnikom, nepravilna uporaba STL, dereference ničelnega kazalca, uporaba preverjanj po dejanskem dostopu. v medpomnilnik, prekoračitev medpomnilnika, uporaba neinicializiranih spremenljivk.

Vzporedno s tem švedsko podjetje Cppcheck Solutions AB razvija razširjeno različico Cppcheck Premium, ki omogoča analizo prisotnosti neskončnih zank, izboljšano iskanje neinicializiranih spremenljivk in napredno analizo prelivanja medpomnilnika.

V novi različici:

  • Dodana podpora za poglede vsebnikov – atribut pogleda je bil dodan oznaki knjižnice, kar označuje, da je razred pogled. Koda analize življenjske dobe je bila posodobljena za uporabo tega atributa pri iskanju visečih vsebnikov;
  • Izboljšani pregledi;
  • Odpravljene so bile nakopičene napake in odpravljene pomanjkljivosti na analizatorju.

Vir: opennet.ru

Dodaj komentar