Nová verze cppcheck 2.6 již byla vydána a toto jsou její novinky

Uvolnění verze analyzátoru statického kódu cppcheck 2.6Že umožňuje detekovat různé druhy chyb v kódu C a C ++i při použití nestandardní syntaxe typické pro vestavěné systémy.

K dispozici je kolekce modulů plug -in, jejichž prostřednictvím je zajištěna integrace cppcheck s různými vývojovými, kontinuálními integračními a testovacími systémy, a také funkce, jako je kontrola souladu kódu se stylem kódování.

Chcete -li analyzovat kód, můžete použít svůj vlastní analyzátor i externí analyzátor Clang. Obsahuje také skript donate-cpu.py, který poskytuje místní zdroje pro spolupráci při kontrole kódu pro balíčky Debianu.

Vývoj cppcheck zaměřuje se na identifikaci problémů spojených s nedefinovaným chováním a používání konstrukcí, které jsou nebezpečné z hlediska bezpečnosti.

Cílem je také minimalizovat falešně pozitivní výsledky. Mezi identifikované problémy: ukazatele na neexistující objekty, dělení nulou, přetečení celých čísel, nesprávné operace posunu bitů, nesprávné převody, problémy s pamětí, nesprávné použití STL, dereferencování nulových ukazatelů, použití kontrol po přístupu reálného do vyrovnávací paměti, přetečení limitů vyrovnávací paměti pomocí neinicializovaných proměnných.

Hlavní nové funkce cppcheck 2.6

V této nové verziPřidali jsme do jádra analyzátoru různé kontroly, mezi nimiž vyniká ověření absence prohlášení o vrácení v těle funkce, stejně jako ověření překrývajících se datových záznamů, nedefinovaných definic chování a také ověření porovnávané hodnoty je mimo rozsah zastoupení hodnotu typu.

Další novinkou, která vyniká, je optimalizace kopírování neplatí pro návrat std :: move (local);, plus byla přidána podpora pro zobrazování diagnostických zpráv v různých barvách pro platformy Unix a že tag knihovny nyní může obsahovat značku pro inteligentní ukazatele, které mají jedinečnou vlastnost. Varování před visícími odkazy je nyní vydáváno tomuto druhu chytrých ukazatelů.

Navíc, Ovládací prvky Misra C 2012 byly plně implementovány, včetně změny 1 a změny 2, kromě pravidel 1.1, 1.2 a 17.3. Kompilátor by měl provádět kontroly 1.1 a 1.2. Kompilátor jako GCC může zkontrolovat 17.3.

Z dalších změn, které vynikají této nové verze:

  • Soubor nelze otevřít současně pro čtení a zápis v různých proudech;
  • Přidána symbolická analýza pro ValueFlow. Při výpočtu rozdílu mezi dvěma neznámými proměnnými se používá jednoduchá delta;
  • Pravidla použitá pro seznam tokenů "definovat" mohou také odpovídat #include;
  • Značka knihovny nyní může obsahovat značku a tedy volné funkce, které mohou přijímat kontejnery jako std :: size, std :: empty, std :: begin, std :: end atd. u kontejnerů můžete určit žloutnutí nebo akci;
  • Opravené problémy se zpracováním parametru –cppcheck-build-dir;
    htmlreport nyní může tisknout informace o autorovi (pomocí git blame);
  • Rozšířené vydávání varování na proměnné, které nejsou konstantní, ale mohou se stát konstantní;
  • Hromadné chyby a nedostatky analyzátoru byly opraveny.

Nakonec, pokud máte zájem dozvědět se více o této nové verzi, můžete se poradit podrobnosti v následujícím odkazu.

Jak nainstalovat cppcheck na Linux?

Pro ty, kteří mají zájem nainstalovat cppcheck do své distribuce Linuxu, mohou postupovat podle pokynů, které sdílíme níže.

Pokud jste uživatelem Debianu nebo jakékoli jiné distribuce z něj odvozené nebo odvozené, jako je Deepin nebo Ubuntu, můžete instalaci provést přímo z terminálu zadáním následujícího příkazu:

sudo apt-get install cppcheck

Nyní pro ty, kteří jsou uživateli Fedory a od nich odvozenými, mohou instalaci provést zadáním následujícího příkazu:

sudo yum instalar cppcheck

Nebo pro ty, kteří jsou uživateli Arch Linuxu nebo jiných derivátů, si mohou nainstalovat následující příkaz:

sudo pacman -S cppcheck


Zanechte svůj komentář

Vaše e-mailová adresa nebude zveřejněna. Povinné položky jsou označeny *

*

*

  1. Odpovědný za údaje: Miguel Ángel Gatón
  2. Účel údajů: Ovládací SPAM, správa komentářů.
  3. Legitimace: Váš souhlas
  4. Sdělování údajů: Údaje nebudou sděleny třetím osobám, s výjimkou zákonných povinností.
  5. Úložiště dat: Databáze hostovaná společností Occentus Networks (EU)
  6. Práva: Vaše údaje můžete kdykoli omezit, obnovit a odstranit.