C++ ja C keelte staatilise koodianalüsaatori cppcheck 2.7 väljalase

Välja on antud uus versioon staatilisest koodianalüsaatorist cppcheck 2.7, mis võimaldab tuvastada C- ja C++-keelte koodis erinevaid veaklasse, sealhulgas manussüsteemidele omase mittestandardse süntaksi kasutamisel. Pakutakse pistikprogrammide kogu, mille kaudu cppcheck on integreeritud erinevate arendus-, pidevintegreerimis- ja testimissüsteemidega ning pakub ka selliseid funktsioone nagu koodi vastavuse kontrollimine koodistiilile. Koodi sõelumiseks võite kasutada kas oma parserit või välist Clangi parserit. See sisaldab ka skripti donate-cpu.py, et pakkuda kohalikke ressursse, et teha Debiani pakettide koodiülevaatustööd. Projekti lähtekoodi levitatakse GPLv3 litsentsi all.

Cppchecki arendus on keskendunud määratlemata käitumisega seotud probleemide tuvastamisele ja ohutuse seisukohalt ohtlike disainilahenduste kasutamisele. Eesmärk on ka minimeerida valepositiivseid tulemusi. Tuvastatud probleemide hulgas: osutid olematutele objektidele, jagamine nulliga, täisarvude ületäitumised, valed biti nihke toimingud, valed teisendused, probleemid mäluga töötamisel, STL-i vale kasutamine, nullkursori viited, kontrollide kasutamine pärast tegelikku juurdepääsu puhvrile, puhvri ülekoormused, initsialiseerimata muutujate kasutamine.

Paralleelselt töötab Rootsi ettevõte Cppcheck Solutions AB välja Cppcheck Premiumi laiendatud versiooni, mis võimaldab analüüsida lõpmatute silmuste olemasolu, täiustatud initsialiseerimata muutujate otsingut ja täiustatud puhvri ületäitumise analüüsi.

Uues versioonis:

  • Lisatud konteinerivaadete tugi – teegi märgendile on lisatud vaate atribuut, mis näitab, et klass on vaade. Eluaegse analüüsi koodi on värskendatud, et kasutada seda atribuuti rippuvate konteinerite otsimisel;
  • Täiustatud kontrollid;
  • Kuhjunud vead on parandatud ja analüsaatori puudused kõrvaldatud.

Allikas: opennet.ru

Lisa kommentaar