Vrystelling van cppcheck 2.7, 'n statiese kode-ontleder vir C++ en C-tale

'n Nuwe weergawe van die statiese kode-ontleder cppcheck 2.7 is vrygestel, wat jou toelaat om verskeie klasse foute in kode in die C- en C++-tale te identifiseer, insluitend wanneer nie-standaardsintaksis gebruik word, tipies vir ingebedde stelsels. 'n Versameling inproppe word verskaf waardeur cppcheck geïntegreer word met verskeie ontwikkelings-, deurlopende integrasie- en toetsstelsels, en bied ook funksies soos om kode-nakoming met die kodestyl na te gaan. Om kode te ontleed, kan jy óf jou eie ontleder of 'n eksterne ontleder van Clang gebruik. Dit sluit ook die donate-cpu.py-skrip in om plaaslike hulpbronne te verskaf om samewerkende kode-oorsigwerk vir Debian-pakkette te doen. Die bronkode van die projek word onder die GPLv3-lisensie versprei.

Die ontwikkeling van cppcheck is gefokus op die identifisering van probleme wat verband hou met ongedefinieerde gedrag en die gebruik van ontwerpe wat gevaarlik is uit 'n veiligheidsoogpunt. Die doel is ook om vals positiewe te minimaliseer. Onder die geïdentifiseerde probleme: wysers na nie-bestaande voorwerpe, delings deur nul, heelgetal oorvloeie, verkeerde bisverskuiwing bedrywighede, verkeerde omskakelings, probleme wanneer daar met geheue gewerk word, verkeerde gebruik van STL, nulwyser-verwysings, die gebruik van tjeks na die werklike toegang na die buffer, buffer oorskry, gebruik van ongeïnitialiseerde veranderlikes.

Terselfdertyd ontwikkel die Sweedse maatskappy Cppcheck Solutions AB 'n uitgebreide weergawe van Cppcheck Premium, wat ontleding bied van die teenwoordigheid van oneindige lusse, verbeterde soektog na ongeïnitialiseerde veranderlikes en gevorderde buffer-oorloop-analise.

In die nuwe weergawe:

  • Bygevoeg ondersteuning vir aansigte van houers - die aansig-kenmerk is by die biblioteekmerker gevoeg, wat aandui dat die klas 'n aansig is. Die leeftydontledingskode is opgedateer om hierdie kenmerk te gebruik wanneer daar na hangende houers gesoek word;
  • Verbeterde tjeks;
  • Opgehoopte foute is reggestel en tekortkominge in die ontleder is uitgeskakel.

Bron: opennet.ru

Voeg 'n opmerking